mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-03 21:43:21 +00:00 
			
		
		
		
	python: Consistently use from…import for datetime.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
		@@ -1,6 +1,6 @@
 | 
			
		||||
import datetime
 | 
			
		||||
import time
 | 
			
		||||
from collections import defaultdict
 | 
			
		||||
from datetime import datetime, timedelta
 | 
			
		||||
from typing import Any, Dict, Mapping, Optional, Sequence, Set
 | 
			
		||||
 | 
			
		||||
from django.conf import settings
 | 
			
		||||
@@ -45,14 +45,14 @@ def get_presence_dicts_for_rows(
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def user_presence_datetime_with_date_joined_default(
 | 
			
		||||
    dt: Optional[datetime.datetime], date_joined: datetime.datetime
 | 
			
		||||
) -> datetime.datetime:
 | 
			
		||||
    dt: Optional[datetime], date_joined: datetime
 | 
			
		||||
) -> datetime:
 | 
			
		||||
    """
 | 
			
		||||
    Our data models support UserPresence objects not having None
 | 
			
		||||
    values for last_active_time/last_connected_time. The legacy API
 | 
			
		||||
    however has always sent timestamps, so for backward
 | 
			
		||||
    compatibility we cannot send such values through the API and need
 | 
			
		||||
    to default to a sane datetime.
 | 
			
		||||
    to default to a sane
 | 
			
		||||
 | 
			
		||||
    This helper functions expects to take a last_active_time or
 | 
			
		||||
    last_connected_time value and the date_joined of the user, which
 | 
			
		||||
@@ -65,7 +65,7 @@ def user_presence_datetime_with_date_joined_default(
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def get_modern_user_presence_info(
 | 
			
		||||
    last_active_time: datetime.datetime, last_connected_time: datetime.datetime
 | 
			
		||||
    last_active_time: datetime, last_connected_time: datetime
 | 
			
		||||
) -> Dict[str, Any]:
 | 
			
		||||
    # TODO: Do further bandwidth optimizations to this structure.
 | 
			
		||||
    result = {}
 | 
			
		||||
@@ -75,7 +75,7 @@ def get_modern_user_presence_info(
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def get_legacy_user_presence_info(
 | 
			
		||||
    last_active_time: datetime.datetime, last_connected_time: datetime.datetime
 | 
			
		||||
    last_active_time: datetime, last_connected_time: datetime
 | 
			
		||||
) -> Dict[str, Any]:
 | 
			
		||||
    """
 | 
			
		||||
    Reformats the modern UserPresence data structure so that legacy
 | 
			
		||||
@@ -106,7 +106,7 @@ def get_legacy_user_presence_info(
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def format_legacy_presence_dict(
 | 
			
		||||
    last_active_time: datetime.datetime, last_connected_time: datetime.datetime
 | 
			
		||||
    last_active_time: datetime, last_connected_time: datetime
 | 
			
		||||
) -> Dict[str, Any]:
 | 
			
		||||
    """
 | 
			
		||||
    This function assumes it's being called right after the presence object was updated,
 | 
			
		||||
@@ -114,7 +114,7 @@ def format_legacy_presence_dict(
 | 
			
		||||
    """
 | 
			
		||||
    if (
 | 
			
		||||
        last_active_time
 | 
			
		||||
        + datetime.timedelta(seconds=settings.PRESENCE_LEGACY_EVENT_OFFSET_FOR_ACTIVITY_SECONDS)
 | 
			
		||||
        + timedelta(seconds=settings.PRESENCE_LEGACY_EVENT_OFFSET_FOR_ACTIVITY_SECONDS)
 | 
			
		||||
        >= last_connected_time
 | 
			
		||||
    ):
 | 
			
		||||
        status = UserPresence.LEGACY_STATUS_ACTIVE
 | 
			
		||||
@@ -154,7 +154,7 @@ def get_presence_for_user(
 | 
			
		||||
def get_presence_dict_by_realm(
 | 
			
		||||
    realm: Realm, slim_presence: bool = False, requesting_user_profile: Optional[UserProfile] = None
 | 
			
		||||
) -> Dict[str, Dict[str, Any]]:
 | 
			
		||||
    two_weeks_ago = timezone_now() - datetime.timedelta(weeks=2)
 | 
			
		||||
    two_weeks_ago = timezone_now() - timedelta(weeks=2)
 | 
			
		||||
    query = UserPresence.objects.filter(
 | 
			
		||||
        realm_id=realm.id,
 | 
			
		||||
        last_connected_time__gte=two_weeks_ago,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user