def getUserBasicInfo(self,uids): user_list=list() if hasattr(self,'cur'): for uid in uids: self.cur.execute("select Sex,DisplayName,Photo,Online,SignContent,FontSetting from users,onlineuser where users.UserID=onlineuser.UserID and users.UserID='%s'"% uid) self.conn.commit() result=self.cur.fetchone() #logger.debug(result) if result is not None : Sex=result[0] DisplayName=result[1] if not result[2]: Photo='' else: Photo=result[2] Online=result[3] user_item={} user_item['UserGuid']=uid user_item['Sex']=Sex user_item['DisplayName']=DisplayName user_item['Photo']=Photo user_item['Online']=Online user_item['SignContent']=result[4] user_item['FontSetting']=result[5] user_item=doubleQuoteDict(user_item) user_list.append(user_item) else : Sex='1' DisplayName='' Photo='' Online='0' user_item={} user_item['UserGuid']=uid user_item['Sex']=Sex user_item['DisplayName']=DisplayName user_item['Photo']=Photo user_item['Online']=Online user_item['SignContent']='' user_item['FontSetting']='' user_item=doubleQuoteDict(user_item) user_list.append(user_item) else: logger.error("Database does not connected!!!") return user_list
def formatMsg(self,msg): msg=doubleQuoteDict(msg) msgLen=len(str(msg)) msg=pack("!i%ds" % msgLen,msgLen,str(msg)) return msg
def getGroups(self,sid,gname='ALL'): if hasattr(self,'cur'): groups_list=[] if gname == 'ALL': self.cur.execute("select gid,gname,created,weight from groups where uid='%s'" % sid) self.conn.commit() else : gname=gname.decode('utf8') self.cur.execute("select gid,gname,created,weight from groups where gname='%s' and uid='%s'" % (gname,sid)) self.conn.commit() groups=self.cur.fetchall() if groups is not None: for group in groups : gid=group[0] self.cur.execute("select gid,uid,created from group_users where gid='%s'" % gid) self.conn.commit() users=self.cur.fetchall() user_list=list() if users is not None: for user in users: uid=user[1] #print "uid=%s"%uid #self.cur.execute("select Sex,DisplayName,Photo from users where UserID='%s'" % uid) self.cur.execute("select Sex,DisplayName,Photo,Online,SignContent,FontSetting from users,onlineuser where users.UserID=onlineuser.UserID and users.UserID='%s'"% uid) self.conn.commit() result=self.cur.fetchone() logger.debug(result) if result is not None : Sex=result[0] DisplayName=result[1] if not result[2]: Photo='' else: Photo=result[2] Online=result[3] user_item={} user_item['UserGuid']=uid user_item['Sex']=Sex user_item['DisplayName']=DisplayName user_item['Photo']=Photo user_item['Online']=Online user_item['SignContent']=result[4] user_item['FontSetting']=result[5] user_item=doubleQuoteDict(user_item) user_list.append(user_item) else : Sex='1' DisplayName='' Photo='' Online='0' user_item={} user_item['UserGuid']=uid user_item['Sex']=Sex user_item['DisplayName']=DisplayName user_item['Photo']=Photo user_item['Online']=Online user_item['SignContent']='' user_item['FontSetting']='' user_item=doubleQuoteDict(user_item) user_list.append(user_item) group_item={} group_item["gid"]=gid group_item["gname"]=group[1] group_item["users"]=user_list group_item["created"]=group[2] group_item["weight"]=group[3] groups_list.append(group_item) return groups_list else: logger.error("Database does not connected!!!")