コード例 #1
0
 def get(self):
     """Set a new device token for the user"""
     user = get_current_youtify_user_model()
     user.device = generate_device_token()
     user.save()
     json = {'device': user.device}
     self.response.headers['Content-Type'] = 'application/json'
     self.response.out.write(simplejson.dumps(json))
コード例 #2
0
ファイル: me.py プロジェクト: glesperance/youtify
 def get(self):
     """Set a new device token for the user"""
     user = get_current_youtify_user_model()
     user.device = generate_device_token()
     user.save()
     json = {"device": user.device}
     self.response.headers["Content-Type"] = "application/json"
     self.response.out.write(simplejson.dumps(json))
コード例 #3
0
ファイル: main.py プロジェクト: glesperance/youtify
    def get(self):
        my_followers_struct = []
        my_followings_struct = []
        settings_struct = {}
        youtify_user_struct = None

        current_user = users.get_current_user()
        youtify_user_model = get_current_youtify_user_model()

        if (current_user is not None) and (youtify_user_model is None):
            youtify_user_model = create_youtify_user_model()

        if youtify_user_model is not None:
            youtify_user_model.device = generate_device_token()
            youtify_user_model.last_login = datetime.now()
            youtify_user_struct = get_youtify_user_struct(youtify_user_model, include_private_data=True)

            # https://developers.google.com/appengine/docs/python/runtime#Request_Headers
            youtify_user_model.country = self.request.headers.get('X-AppEngine-Country', None)
            youtify_user_model.reqion = self.request.headers.get('X-AppEngine-Region', None)
            youtify_user_model.city = self.request.headers.get('X-AppEngine-City', None)
            youtify_user_model.latlon = self.request.headers.get('X-AppEngine-CityLatLong', None)

            youtify_user_model.save()

            my_followers_struct = get_followers_for_youtify_user_model(youtify_user_model)
            my_followings_struct = get_followings_for_youtify_user_model(youtify_user_model)
            settings_struct = get_settings_struct_for_youtify_user_model(youtify_user_model)

        lang_code = auto_detect_language(self.request)

        json = {
            'ON_PRODUCTION': config.ON_PRODUCTION,
            'SEARCH_STATS_URL': config.SEARCH_STATS_URL,
            'languagesFromServer': [lang for lang in get_languages() if lang['enabled_on_site']],
            'device': youtify_user_model is not None and youtify_user_model.device,
            'user': youtify_user_struct,
            'lastNotificationSeenTimestamp': youtify_user_model is not None and youtify_user_model.last_notification_seen_timestamp, 
            'myFollowers': my_followers_struct,
            'myFollowings': my_followings_struct,
            'settingsFromServer': settings_struct,
            'autoDetectedLanguageByServer': lang_code,
            'autoDetectedTranslations': get_deployed_translations_struct(lang_code),
            'loginUrl': users.create_login_url('/'),
            'logoutUrl': users.create_logout_url('/'),
        }

        self.response.headers['Content-Type'] = 'application/json'
        self.response.out.write(simplejson.dumps(json));
コード例 #4
0
    def get(self):
        my_followers_struct = []
        my_followings_struct = []
        settings_struct = {}
        youtify_user_struct = None

        current_user = users.get_current_user()
        youtify_user_model = get_current_youtify_user_model()

        if (current_user is not None) and (youtify_user_model is None):
            youtify_user_model = create_youtify_user_model()

        if youtify_user_model is not None:
            youtify_user_model.device = generate_device_token()
            youtify_user_model.last_login = datetime.now()
            youtify_user_struct = get_youtify_user_struct(
                youtify_user_model, include_private_data=True)

            # https://developers.google.com/appengine/docs/python/runtime#Request_Headers
            youtify_user_model.country = self.request.headers.get(
                'X-AppEngine-Country', None)
            youtify_user_model.reqion = self.request.headers.get(
                'X-AppEngine-Region', None)
            youtify_user_model.city = self.request.headers.get(
                'X-AppEngine-City', None)
            youtify_user_model.latlon = self.request.headers.get(
                'X-AppEngine-CityLatLong', None)

            youtify_user_model.save()

            my_followers_struct = get_followers_for_youtify_user_model(
                youtify_user_model)
            my_followings_struct = get_followings_for_youtify_user_model(
                youtify_user_model)
            settings_struct = get_settings_struct_for_youtify_user_model(
                youtify_user_model)

        lang_code = auto_detect_language(self.request)

        json = {
            'ON_PRODUCTION':
            config.ON_PRODUCTION,
            'SEARCH_STATS_URL':
            config.SEARCH_STATS_URL,
            'languagesFromServer':
            get_languages(),
            'device':
            youtify_user_model is not None and youtify_user_model.device,
            'user':
            youtify_user_struct,
            'lastNotificationSeenTimestamp':
            youtify_user_model is not None
            and youtify_user_model.last_notification_seen_timestamp,
            'myFollowers':
            my_followers_struct,
            'myFollowings':
            my_followings_struct,
            'settingsFromServer':
            settings_struct,
            'autoDetectedLanguageByServer':
            lang_code,
            'autoDetectedTranslations':
            get_translations_for_lang(lang_code),
            'loginUrl':
            users.create_login_url('/'),
            'logoutUrl':
            users.create_logout_url('/'),
        }

        self.response.headers['Content-Type'] = 'application/json'
        self.response.out.write(simplejson.dumps(json))