Example #1
0
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
Example #2
0
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
Example #3
0
    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
        )
Example #4
0
    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)
Example #5
0
    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)