def GET(self): per = users.get_permission_by_douid(user.douban_id) rights = per[0].rights if rights > 1 : #管理员权限 #post rec_posts = admin.get_rec_posts() rec_nodes = admin.get_rec_nodes() #post postList = [] for i in xrange(len(rec_posts)): postList += postModel.getPostsByPostId(rec_posts[i].pid) a = [] for post in postList: a += str(post.postAuthor).split() post_authors = [] for i in xrange(len(a)): post_authors += users.get_users_by_id(a[i]) p= [] for post in postList: p += str(post.nodeId).split() post_nodes = [] for i in xrange(len(p)): post_nodes += nodeModel.getNodesByNodeId(p[i]) #node nodeList = [] for i in xrange(len(rec_nodes)): nodeList += nodeModel.getNodesByNodeId(rec_nodes[i].nid) n = [] for node in nodeList: n += str(node.node_author).split() node_authors = [] for i in xrange(len(n)): node_authors += users.get_users_by_id(n[i]) # if rec_nodes or rec_posts: return view.template_admin(view.admin_home(postList, post_authors, post_nodes, nodeList, node_authors)) else: raise web.notfound()
def GET(self): # if user.is_logged: rec_posts = admin.get_rec_posts() # if rec_posts: postList = [] for i in xrange(len(rec_posts)): postList += postModel.getPostsByPostId(rec_posts[i].pid) a = [] for post in postList: a += str(post.postAuthor).split() authors = [] for i in xrange(len(a)): authors += users.get_users_by_id(a[i]) n = [] for post in postList: n += str(post.nodeId).split() nodes = [] for i in xrange(len(n)): nodes += nodeModel.getNodesByNodeId(n[i]) if user.is_logged: per = users.get_permission_by_douid(user.douban_id) rights = per[0].rights if users.is_user_exist_in_apply_log( user.douban_id): #如果申请记录表中有此用户记录: apply_log = users.get_log_result(user.douban_id) else: apply_log = {} #得到提醒 notification_results, notification_num = notification.get_unread_notification( user.id) #得到@提醒 notification_mention_results, mention_num = notification.get_unread_metion_notifition( user.id) #链表 得到提醒的详细id\名称等 ntf_posts = [] ntf_users = [] mtf_posts = [] mtf_users = [] ntf_list = notification_results.list() mtf_list = notification_mention_results.list() for x in xrange(len(ntf_list)): ntf_posts += postModel.getPostsByPostId(ntf_list[x].pid) ntf_users += users.get_users_by_id(ntf_list[x].uid) for x in xrange(len(mtf_list)): mtf_posts += postModel.getPostsByPostId(mtf_list[x].pid) mtf_users += users.get_users_by_id(mtf_list[x].uid) ntf_list = ntf_list + mtf_list ntf_posts = ntf_posts + mtf_posts ntf_users = ntf_users + mtf_users notification_num = notification_num + mention_num else: rights = None apply_log = None ntf_list = None notification_num = None ntf_posts = None ntf_users = None return view.base( view.recommend_posts(postList, authors, nodes, user, rights, apply_log), user, siteName, rights, ntf_list, notification_num, ntf_posts, ntf_users)
def GET(self): # if user.is_logged: rec_posts = admin.get_rec_posts() # if rec_posts: postList = [] for i in xrange(len(rec_posts)): postList += postModel.getPostsByPostId(rec_posts[i].pid) a = [] for post in postList: a += str(post.postAuthor).split() authors = [] for i in xrange(len(a)): authors += users.get_users_by_id(a[i]) n= [] for post in postList: n += str(post.nodeId).split() nodes = [] for i in xrange(len(n)): nodes += nodeModel.getNodesByNodeId(n[i]) if user.is_logged: per = users.get_permission_by_douid(user.douban_id) rights = per[0].rights if users.is_user_exist_in_apply_log(user.douban_id): #如果申请记录表中有此用户记录: apply_log = users.get_log_result(user.douban_id) else: apply_log = {} #得到提醒 notification_results, notification_num = notification.get_unread_notification(user.id) #得到@提醒 notification_mention_results, mention_num= notification.get_unread_metion_notifition(user.id) #链表 得到提醒的详细id\名称等 ntf_posts = [] ntf_users = [] mtf_posts = [] mtf_users = [] ntf_list = notification_results.list() mtf_list = notification_mention_results.list() for x in xrange(len(ntf_list)): ntf_posts += postModel.getPostsByPostId(ntf_list[x].pid) ntf_users += users.get_users_by_id(ntf_list[x].uid) for x in xrange(len(mtf_list)): mtf_posts += postModel.getPostsByPostId(mtf_list[x].pid) mtf_users += users.get_users_by_id(mtf_list[x].uid) ntf_list = ntf_list + mtf_list ntf_posts = ntf_posts + mtf_posts ntf_users = ntf_users + mtf_users notification_num = notification_num+mention_num else: rights = None apply_log = None ntf_list = None notification_num = None ntf_posts = None ntf_users = None return view.base(view.recommend_posts(postList, authors, nodes, user, rights, apply_log), user, siteName, rights, ntf_list, notification_num, ntf_posts, ntf_users)
def GET(self): # foo = web.cookies(cookieName=defaultValue) # foo.age #if user.is_logged: if True: # 全部开放 rec_posts = admin.get_rec_posts() postList = [] # if len(rec_posts) > 20: # map(lambda x:postList.extend(postModel.getPostsByPostId(x.pid)), rec_posts) # else: # postList = list(postModel.getRecent20Posts()) map(lambda x:postList.extend(postModel.getPostsByPostId(x.pid)), rec_posts) #postList = sort_dict_by_multi_key(postList, ['magnitude', 'creation_ts'], reverse=True) #postList = sorted(postList, key=lambda x:x.creation_ts, reverse=True) authors = [] map(lambda x:authors.extend(users.get_users_by_id(x)), [x.postAuthor for x in postList]) nodes = [] map(lambda x:nodes.extend(nodeModel.getNodesByNodeId(x)), [x.nodeId for x in postList]) if user.is_logged: rights = users.get_permission_by_douid(user.douban_id)[0].rights if users.is_user_exist_in_apply_log(user.douban_id): #如果申请记录表中有此用户记录: apply_log = users.get_log_result(user.douban_id) else: apply_log = {} #得到提醒 notification_results, notification_num = notification.get_unread_notification(user.id) #得到@提醒 notification_mention_results, mention_num= notification.get_unread_metion_notifition(user.id) #链表 得到提醒的详细id\名称等 ntf_posts = [] ntf_users = [] mtf_posts = [] mtf_users = [] ntf_list = notification_results.list() mtf_list = notification_mention_results.list() for notify in ntf_list: ntf_posts.extend(postModel.getPostsByPostId(notify.pid)) ntf_users.extend(users.get_users_by_id(notify.uid)) for notify in mtf_list: mtf_posts.extend(postModel.getPostsByPostId(notify.pid)) mtf_users.extend(users.get_users_by_id(notify.uid)) ntf_list = ntf_list + mtf_list ntf_posts = ntf_posts + mtf_posts ntf_users = ntf_users + mtf_users notification_num = notification_num+mention_num else: rights = None apply_log = None ntf_list = None notification_num = None ntf_posts = None ntf_users = None return view.base(view.recommend_posts(postList, authors, nodes, user, rights, apply_log, filter_tags), user, siteName, rights, ntf_list, notification_num, ntf_posts, ntf_users) else: from config import db #得到上线时间距今多少天 t = time.strptime('2013-03-15 02:15:57', "%Y-%m-%d %X") ts = datetime.datetime(* t[:6]) delta = (datetime.datetime.now() - ts).days #得到用户数 user_count = int(db.select('users', what='count(distinct id) as c')[0].c) #得到话题数 node_count = int(db.select('_node', what='count(distinct id) as c')[0].c) #得到片段数 post_count = int(db.select('_post', what='count(distinct id) as c')[0].c) #得到喜欢数 vote_count = int(db.select('_post_vote_user', what='count(distinct id) as c')[0].c) #得到评论数 comm_count = int(db.select('_post_comments', what='count(distinct id) as c')[0].c) r = str(random.randint(1, 17)) return view.base01(view.landing(r, delta, user_count, node_count, post_count, vote_count, comm_count), siteName)