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.buddyicon_url :
            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

        if rsp['person']['iconfarm'] == 0 :
            self.api_error(3, 'User has not chosen a buddyicon')
            return
        
        buddyicon = "http://farm%s.static.flickr.com/%s/buddyicons/%s.jpg" % (rsp['person']['iconfarm'], rsp['person']['iconserver'], self.user.nsid)

        User.set_buddyicon_url(user, buddyicon)

        self.api_ok({'buddyicon_url' : buddyicon})
        return