Beispiel #1
0
    def update_photo_data(self, data):
        success = False
        old_id = self.photo_id
        try:
            new_id = old_id + 1
            doubanfs.set("/me/card/%s/photo/%s/%s" % (self.id, new_id, Cate.ORIGIN), data)
            from webapp.models.utils import scale
            d = scale(data, Cate.LARGE, DEFAULT_CONFIG)
            doubanfs.set("/me/card/%s/photo/%s/%s" % (self.id, new_id, Cate.LARGE), d)
            print "update photo success photo_id=%s" % new_id
            store.execute("update me_card set `photo`=%s where `user_id`=%s", (new_id, self.id))
            store.commit()
            success = True
        except:
            print "doubanfs write fail!!! %s" % self.id
            self.photo_id = old_id
            store.execute("update me_card set `photo`=`photo`-1 where `user_id`=%s", self.id)
            store.commit()
            doubanfs.delete("/me/card/%s/photo/%s/%s" % (self.id, new_id, Cate.LARGE))
            doubanfs.delete("/me/card/%s/photo/%s/%s" % (self.id, new_id, Cate.ORIGIN))
            print 'rollback photo to old_id', old_id

        if success:
            Notify.new(self.id, self.id, Notify.TYPE_CHANGE_PHOTO, extra={'photo_id':new_id})
            print "send change photo blog"
            from webapp.models.blog import Blog
            Blog.new(self.id, Blog.TYPE_BLOG, Blog.BLOG_ICON, extra={'photo_id':new_id})


        doubanmc.delete(self.MC_KEY % self.id)
        doubanmc.delete(self.MC_KEY % self.uid)
Beispiel #2
0
 def hide(cls, card_id, admin_id):
     if admin_id in ADMINS:
         store.execute("update me_card set flag=%s where user_id=%s", (cls.FLAG_HIDE, card_id))
         store.commit()
         card = cls.get(card_id)
         if card:
             doubanmc.delete(cls.MC_KEY % card.id)
             doubanmc.delete(cls.MC_KEY % card.uid)
Beispiel #3
0
 def update_photo_id(self, photo_id):
     store.execute("update me_card set `photo`=%s where `user_id`=%s", (photo_id, self.id))
     store.commit()
     doubanmc.delete(self.MC_KEY % self.id)
     doubanmc.delete(self.MC_KEY % self.uid)
Beispiel #4
0
 def update_basic(self, name, skype, alias, join_time):
     store.execute("update me_card set `name`=%s, skype=%s, `alias`=%s, join_time=%s where"
         " `user_id`=%s", (name, skype, alias, join_time, self.id))
     store.commit()
     doubanmc.delete(self.MC_KEY % self.id)
     doubanmc.delete(self.MC_KEY % self.uid)
Beispiel #5
0
 def update_account(self, name, email):
     store.execute("update me_card set email=%s, `name`=%s where `user_id`=%s", (email, name, self.id))
     store.commit()
     doubanmc.delete(self.MC_KEY % self.id)
     doubanmc.delete(self.MC_KEY % self.uid)
Beispiel #6
0
 def new(cls, user_id, uid):
     now = datetime.now()
     store.execute("insert into me_card(`user_id`,`uid`, `ctime`) values(%s,%s,%s)"
             " on duplicate key update rtime=%s", (user_id, uid, now, now))
     store.commit()
     doubanmc.delete("me:users:dict")