def render_zsite_feed_list(user_id, id_list): fav_dict = fav_cid_dict(user_id, id_list) r = [] rf = feed_tuple_list(id_list) zsite_id_set = set(i[0] for i in rf) z_dict = Zsite.mc_get_dict(zsite_id_set) c_dict = career_dict(id for id, i in z_dict.iteritems() if i.cid == CID_USER) z_dict = dict((i.id, (i.name, i.link)) for i in z_dict.itervalues()) for id, i in zip(id_list, rf): zsite_id = i[0] cid = i[1] result = [ zsite_id, id, fav_dict[id], ] if cid not in (CID_WORD, CID_EVENT): result.extend(i[1:9]) result.extend(zsite_tag_id_tag_name_by_po_id(zsite_id, id)) if len(i) > 9: result.extend(i[9:]) else: result.extend(i[1:]) r.append(result) return r, z_dict, c_dict
def render_zsite_feed_list(user_id, id_list): fav_dict = fav_cid_dict(user_id, id_list) r = [] rf = feed_tuple_list(id_list) zsite_id_set = set( i[0] for i in rf ) z_dict = Zsite.mc_get_dict(zsite_id_set) c_dict = career_dict(id for id, i in z_dict.iteritems() if i.cid == CID_USER) z_dict = dict( (i.id, (i.name, i.link)) for i in z_dict.itervalues() ) for id, i in zip(id_list, rf): zsite_id = i[0] cid = i[1] result = [ zsite_id, id, fav_dict[id], ] if cid not in (CID_WORD, CID_EVENT): result.extend(i[1:9]) result.extend(zsite_tag_id_tag_name_by_po_id(zsite_id, id)) if len(i) > 9: result.extend(i[9:]) else: result.extend(i[1:]) r.append(result) return r, z_dict, c_dict
def get(self, id): po = self.po(id) if po is None: return zsite_id = self.zsite_id user_id = self.current_user_id can_admin = po.can_admin(user_id) can_view = po.can_view(user_id) if can_view and user_id: self.mark() cid = po.cid if cid == CID_PRODUCT: return self.redirect(po.user.link) if cid == CID_EVENT: zsite_tag_id = tag_name = None event = Event.mc_get(id) if event.state <= EVENT_STATE_TO_REVIEW: tag_link = '/event/to_review' else: tag_link = '/event' elif cid == CID_EVENT_NOTICE: zsite_tag_id = tag_name = None tag_link = '/%s'%po.rid else: zsite_tag_id, tag_name = zsite_tag_id_tag_name_by_po_id(po.user_id, id) if zsite_tag_id: tag_link = '/tag/%s' % zsite_tag_id else: tag_link = '/po/cid/%s'%cid prev_id, next_id = po_prev_next( po, zsite_tag_id ) buzz_reply_hide(user_id,po.id) return self.render( self.template, po=po, can_admin=can_admin, can_view=can_view, zsite_tag_id=zsite_tag_id, prev_id=prev_id, next_id=next_id, tag_name=tag_name, tag_link=tag_link )
def get(self, id): id = int(id) if id == 0: id = MAXINT current_user_id = self.current_user_id result, last_id = render_feed_by_zsite_id(current_user_id, PAGE_LIMIT, id) result = tuple( (i, tuple(g)) for i, g in groupby(result, itemgetter(0)) ) zsite_id_set = set( i[0] for i in result ) c_dict = career_dict(zsite_id_set) r = [] if result: site_id_set = set() for zsite_id, item_list in result: zsite = Zsite.mc_get(zsite_id) t = [] for i in item_list: id = i[1] cid = i[4] rid = i[5] site_id = i[6] if site_id: site_id_set.add(site_id) if len(i) >= FEED_TUPLE_DEFAULT_LEN: after = i[FEED_TUPLE_DEFAULT_LEN:] i = i[:FEED_TUPLE_DEFAULT_LEN] else: after = None if cid not in (CID_WORD, CID_EVENT): i.extend(zsite_tag_id_tag_name_by_po_id(zsite_id, id)) if after: i.extend(after) t.append(i[1:]) unit, title = c_dict[zsite_id] if zsite: r.append(( zsite.cid, zsite.name, zsite.link, unit, title, pic_url_with_default(zsite_id, '219'), t )) else: print 'zsite_id', zsite_id feed_rm(id) r.append(zsite_name_id_dict(site_id_set)) r.append(last_id) result = dumps(r) self.finish(result)
sql, cid, zsite_id, tag_id, id, ): c = ZsiteTagPo.raw_sql( sql, cid, zsite_id, tag_id, id, ) r = c.fetchone() if r: r = r[0] return r if __name__ == '__main__': pass from model.po import Po po = Po.mc_get(10101228) print po.name from model.zsite_tag import zsite_tag_id_tag_name_by_po_id zsite_tag_id, tag_name = zsite_tag_id_tag_name_by_po_id(po.user_id, po.id) print zsite_tag_id, tag_name print po_prev_next(po, zsite_tag_id)