Example #1
0
    def run (self) :

        required = ('user_id',)

        if not self.ensure_args(required) :
            return 

	user_id = self.request.get('user_id')
        
        user = User.get_user_by_nsid(user_id)
        
        if not user :
            self.api_error(1, 'Not a valid user')
            return

        if user.path_alias :
            self.api_ok({'buddyicon_url' : user.buddyicon_url})
            return

        rsp = self.get_people_info(self, user.nsid)

        if not rsp :
            self.api_error(2, 'Failed to retrieve buddyicon')
            return

        url = rsp['person']['photosurl']['_content']

        if url.endswith("/") :
            url = url[:-1]

        path_alias = os.path.basename(url)

        if path_alias == user.nsid :
            self.api_error(1, 'No path alias defined')

        User.set_path_alias(user, path_alias)

        self.api_ok({'path_alias' : path_alias})
        return