示例#1
0
    def update_user_profile(self, user_info):
        user_id = user_info['email']
        profile = JBoxUserProfile(user_id, create=True)
        updated = False

        if 'given_name' in user_info:
            val = user_info['given_name']
            if profile.can_set(JBoxUserProfile.ATTR_FIRST_NAME, val):
                updated |= profile.set_profile(JBoxUserProfile.ATTR_FIRST_NAME,
                                               val, 'google')

        if 'family_name' in user_info:
            val = user_info['family_name']
            if profile.can_set(JBoxUserProfile.ATTR_LAST_NAME, val):
                updated |= profile.set_profile(JBoxUserProfile.ATTR_LAST_NAME,
                                               val, 'google')

        client_ip = self.get_client_ip()
        if profile.can_set(JBoxUserProfile.ATTR_IP, client_ip):
            updated |= profile.set_profile(JBoxUserProfile.ATTR_IP, client_ip,
                                           'http')

        if updated:
            GoogleAuthHandler.log_debug("updating ip=%r and profile=%r",
                                        client_ip, user_info)
            profile.save()
示例#2
0
    def update_user_profile(self, user_info):
        user_id = user_info['emailAddress']
        profile = JBoxUserProfile(user_id, create=True)
        updated = False

        if 'firstName' in user_info:
            val = user_info['firstName']
            if profile.can_set(JBoxUserProfile.ATTR_FIRST_NAME, val):
                updated |= profile.set_profile(JBoxUserProfile.ATTR_FIRST_NAME, val, 'linkedin')

        if 'lastName' in user_info:
            val = user_info['lastName']
            if profile.can_set(JBoxUserProfile.ATTR_LAST_NAME, val):
                updated |= profile.set_profile(JBoxUserProfile.ATTR_LAST_NAME, val, 'linkedin')

        if 'industry' in user_info:
            val = user_info['industry']
            if profile.can_set(JBoxUserProfile.ATTR_INDUSTRY, val):
                updated |= profile.set_profile(JBoxUserProfile.ATTR_INDUSTRY, val, 'linkedin')

        if 'location' in user_info:
            loc = user_info['location']
            if 'name' in loc:
                val = loc['name']
                if profile.can_set(JBoxUserProfile.ATTR_LOCATION, val):
                    updated |= profile.set_profile(JBoxUserProfile.ATTR_LOCATION, val, 'linkedin')
            if 'country' in loc:
                country = loc['country']
                if 'code' in country:
                    val = country['code'].lower()
                    if profile.can_set(JBoxUserProfile.ATTR_COUNTRY, val):
                        updated |= profile.set_profile(JBoxUserProfile.ATTR_COUNTRY, val, 'linkedin')

        client_ip = self.get_client_ip()
        if profile.can_set(JBoxUserProfile.ATTR_IP, client_ip):
            updated |= profile.set_profile(JBoxUserProfile.ATTR_IP, client_ip, 'http')

        if updated:
            LinkedInAuthHandler.log_debug("updating ip=%r and profile=%r", client_ip, user_info)
            profile.save()
示例#3
0
    def update_user_profile(self, user_id, user_info):
        profile = JBoxUserProfile(user_id, create=True)
        updated = False

        if 'location' in user_info:
            val = user_info['location']
            if profile.can_set(JBoxUserProfile.ATTR_LOCATION, val):
                updated |= profile.set_profile(JBoxUserProfile.ATTR_LOCATION, val, 'github')

        if 'company' in user_info:
            val = user_info['company']
            if profile.can_set(JBoxUserProfile.ATTR_ORGANIZATION, val):
                updated |= profile.set_profile(JBoxUserProfile.ATTR_ORGANIZATION, val, 'github')

        if 'name' in user_info:
            val = user_info['name'].split(' ', 1)
            firstname = val[0]
            lastname = val[1] if len(val) > 1 else ''

            if profile.can_set(JBoxUserProfile.ATTR_FIRST_NAME, firstname):
                updated |= profile.set_profile(JBoxUserProfile.ATTR_FIRST_NAME, firstname, 'github')

            if profile.can_set(JBoxUserProfile.ATTR_LAST_NAME, lastname):
                updated |= profile.set_profile(JBoxUserProfile.ATTR_LAST_NAME, lastname, 'github')

        client_ip = self.get_client_ip()
        if profile.can_set(JBoxUserProfile.ATTR_IP, client_ip):
            updated |= profile.set_profile(JBoxUserProfile.ATTR_IP, client_ip, 'http')

        if updated:
            GitHubAuthHandler.log_debug("updating ip=%r and profile=%r", client_ip, user_info)
            profile.save()