Beispiel #1
0
def po_event_feedback_list(event_id):
    ids = rank_po_id_list(event_id, CID_EVENT_FEEDBACK, 'confidence')

    li = Po.mc_get_list(ids)
    Zsite.mc_bind(li, 'user', 'user_id')

    return li
Beispiel #2
0
def po_event_feedback_list(event_id):
    ids = rank_po_id_list(event_id, CID_EVENT_FEEDBACK, 'confidence')

    li = Po.mc_get_list(ids)
    Zsite.mc_bind(li, 'user', 'user_id')

    return li
Beispiel #3
0
def event_joiner_list(event_id, limit, offset):
    id_list = event_joiner_id_list(event_id, limit, offset)
    li = EventJoiner.mc_get_list(id_list)
    split_before_id = event_joiner_split_before_id(li)
    Zsite.mc_bind(li, 'user', 'user_id')
    user_list = [i.user for i in li]
    namecard_bind(user_list)
    career_bind(user_list)
    pic_url_bind_with_default(user_list, '96')
    return li, split_before_id
Beispiel #4
0
def event_joiner_list(event_id, limit, offset):
    id_list = event_joiner_id_list(event_id, limit, offset)
    li = EventJoiner.mc_get_list(id_list)
    split_before_id = event_joiner_split_before_id(li)
    Zsite.mc_bind(li, 'user', 'user_id')
    user_list = [i.user for i in li]
    namecard_bind(user_list)
    career_bind(user_list)
    pic_url_bind_with_default(user_list, '96')
    return li, split_before_id
Beispiel #5
0
def notice_question_mail(notice):
    from_id = notice.from_id
    to_id = notice.to_id
    rid = notice.rid
    mail = mail_by_user_id(to_id)
    name = Zsite.mc_get(to_id).name
    from_name = Zsite.mc_get(from_id).name
    question = Po.mc_get(rid)
    rendermail('/mail/notice/notice_question.txt', mail, name,
               entry=question,
               from_name=from_name,
               notice=notice,
              )
Beispiel #6
0
def pay_notice(pay_id):
    from notice import notice_new
    trade = Trade.get(pay_id)
    notice_new(trade.from_id, trade.to_id, CID_NOTICE_PAY, pay_id)
    t_log = (trade_log.get(pay_id))
    if t_log:
        message = loads(t_log)
        if 'txt' in message:
            if 'secret' in message:
                state = STATE_SECRET
            else:
                state = STATE_ACTIVE
            to_user = Zsite.mc_get(trade.to_id)
            from_user = Zsite.mc_get(trade.from_id)
            to_user.reply_new(from_user, message['txt'], state)
Beispiel #7
0
def pay_notice(pay_id):
    from notice import notice_new
    trade = Trade.get(pay_id)
    notice_new(trade.from_id, trade.to_id, CID_NOTICE_PAY, pay_id)
    t_log = (trade_log.get(pay_id))
    if t_log:
        message = loads(t_log)
        if 'txt' in message:
            if 'secret' in message:
                state = STATE_SECRET
            else:
                state = STATE_ACTIVE
            to_user = Zsite.mc_get(trade.to_id)
            from_user = Zsite.mc_get(trade.from_id)
            to_user.reply_new(from_user, message['txt'], state)
Beispiel #8
0
def event_end_mail(event):
    event_id = event.id
    owner_id = event.zsite_id
    owner = event.zsite
    po = Po.mc_get(event_id)
    rendermail('/mail/event/event_end_owner.txt',
               mail_by_user_id(owner_id),
               owner.name,
               title=po.name,
               link=po.link,
               user_link=owner.link,
               price=event.price,
               feedback_link='/event/feedback/%s' % event_id)
    sleep(0.1)

    for user_id in event_joiner_user_id_list(event_id):
        if user_id != owner_id:
            user = Zsite.mc_get(user_id)
            rendermail('/mail/event/event_end_joiner.txt',
                       mail_by_user_id(user_id),
                       user.name,
                       title=po.name,
                       link=po.link,
                       user_link=user.link,
                       feedback_link='/event/feedback/%s' % event_id)
            sleep(0.1)
Beispiel #9
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
Beispiel #10
0
def render_feed_list(id_list, zsite_id, rt_dict):
    fav_dict = fav_cid_dict(zsite_id, id_list)
    r = []
    for id, i in zip(id_list, feed_tuple_list(id_list)):
        out = []
        if id in rt_dict:
            for v in rt_dict[id]:
                entry = []
                if v[2] > 0:
                    zsite = Zsite.mc_get(v[2])
                    _name = zsite.name
                    _link = zsite.link
                    _user_id = v[2]
                else:
                    _name = '1'
                    _link = '1'
                    _user_id = v[2]

                entry.extend([_name, _link, _user_id, v])
                out.append(entry)

        result = [
            i[0],
            id,
            out,
            fav_dict[id],
        ]
        result.extend(i[1:])

        r.append(result)

    return r
Beispiel #11
0
def buzz_po_bind_user(po_list ,po_user_id_list, user_id=0):
    from model.po_pos import po_pos_get_last_reply_id
    user_dict = Zsite.mc_get_dict(chain(*po_user_id_list))
    result = []
    for i, user_id_list in zip(po_list, po_user_id_list):
        id = i.id
        new_reply_show = []

        for uid in user_id_list:
            if uid not in new_reply_show and user_id != uid:
                new_reply_show.append(uid)
                if len(new_reply_show) == SHOW_LIMT:
                    break

        new_reply_show = [
            (z.id, z.name) 
            for z in map(user_dict.get, new_reply_show)
        ]
        new_reply_count = max(
            (len(set(user_id_list)) - SHOW_LIMT, 0)
        )


        t = (
            id, 
            i.name, 
            new_reply_count, 
            new_reply_show, 
            po_pos_get_last_reply_id(user_id,id)
        )
        result.append(t)

    return result
Beispiel #12
0
def follow_list_show_by_from_id(from_id, limit):
    from operator import itemgetter
    from zkit.algorithm.wrandom import wsample_k2
    following_tuple = following_id_rank_tuple(from_id)
    f = wsample_k2(following_tuple, limit, key=itemgetter(1))
    id_list = [i[0] for i in f()]
    return Zsite.mc_get_list(id_list)
Beispiel #13
0
def spammer_reset(user_id):
    from model.po import Po, po_rm, reply_rm_if_can
    from zsite_tag import zsite_tag_rm_by_po
    for i in Po.where(user_id=user_id):
        po_rm(user_id, i.id)
        zsite_tag_rm_by_po(i)

    from model.reply import Reply
    for i in Reply.where(user_id=user_id):
        reply_rm_if_can(user_id, i.id)



    from model.wall import Wall
    from model.zsite import Zsite
    z = Zsite.mc_get(user_id)
    total = z.reply_count
    if total:
        reply_list = z.reply_list_reversed(total, 0)
        for reply in reply_list:
            wall = Wall.mc_get(reply.rid)
            if wall:
                wall.reply_rm(reply)


    spammer_new(user_id)
Beispiel #14
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
Beispiel #15
0
def render_feed_list(id_list, zsite_id, rt_dict) :
    fav_dict = fav_cid_dict(zsite_id, id_list)
    r = []
    for id, i in zip(id_list, feed_tuple_list(id_list)):
        out = []
        if id in rt_dict:
            for  v in rt_dict[id]:
                entry = []
                if v[2]>0:
                    zsite = Zsite.mc_get(v[2])
                    _name = zsite.name
                    _link = zsite.link
                    _user_id = v[2]
                else:
                    _name = '1'
                    _link = '1'
                    _user_id = v[2]

                entry.extend([_name,_link, _user_id,v])
                out.append(entry)

        result = [
            i[0],
            id,
            out,
            fav_dict[id],
        ]
        result.extend(i[1:])

        r.append(result)

    return r
Beispiel #16
0
def event_review_join_apply(event_id):
    event = Event.mc_get(event_id)
    if event:
        event_new_joiner_id_list = EventJoiner.where(
            'event_id=%s and state=%s', event_id, EVENT_JOIN_STATE_NEW
        ).col_list(col='user_id')

        if event_new_joiner_id_list:
            event_joiner_list = [
                user.name
                for user in
                Zsite.mc_get_list(event_new_joiner_id_list)
            ]

            rendermail(
                '/mail/event/event_review_join_apply.txt',
                mail_by_user_id(event.zsite_id),
                event.zsite.name,
                event_link='http:%s/event/check/%s' % (
                    event.zsite.link, event_id
                ),
                title=event.po.name,
                event_join_apply_list=' , '.join(event_joiner_list)
            )
            sleep(0.1)
Beispiel #17
0
def event_end_mail(event):
    event_id = event.id
    owner_id = event.zsite_id
    owner = event.zsite
    po = Po.mc_get(event_id)
    rendermail(
        '/mail/event/event_end_owner.txt',
        mail_by_user_id(owner_id),
        owner.name,
        title=po.name,
        link=po.link,
        user_link=owner.link,
        price=event.price,
        feedback_link='/event/feedback/%s' % event_id
    )
    sleep(0.1)

    for user_id in event_joiner_user_id_list(event_id):
        if user_id != owner_id:
            user = Zsite.mc_get(user_id)
            rendermail(
                '/mail/event/event_end_joiner.txt',
                mail_by_user_id(user_id),
                user.name,
                title=po.name,
                link=po.link,
                user_link=user.link,
                feedback_link='/event/feedback/%s' % event_id
            )
            sleep(0.1)
Beispiel #18
0
def user_dict(user_id):
    user = Zsite.mc_get(user_id)
    unit, title = user.career
    d = dict(id=user_id, name=user.name, unit=unit, title=title)
    ico_url = user._ico96
    if ico_url:
        d['ico_url'] = ico_url
    return d
Beispiel #19
0
def po_show_zsite_channel():
    return tuple(zip(
        PO_SHOW_ZSITE_CHANNEL,
        [
            i.name for i in
            Zsite.mc_get_list(PO_SHOW_ZSITE_CHANNEL)
        ]
    ))
def user_dict(user_id):
    user = Zsite.mc_get(user_id)
    unit, title = user.career
    d = dict(id=user_id, name=user.name, unit=unit, title=title)
    ico_url = user._ico96
    if ico_url:
        d['ico_url'] = ico_url
    return d
Beispiel #21
0
def zsite_by_domain(domain):
    from zsite import Zsite
    if domain.endswith(SITE_DOMAIN_SUFFIX):
        domain = domain[:-len(SITE_DOMAIN_SUFFIX)]
        if domain.isdigit():
            zsite_id = domain
        else:
            zsite_id = id_by_url(domain.lower())
        return Zsite.mc_get(zsite_id)
Beispiel #22
0
def follow_rm(from_id, to_id):
    id = follow_get(from_id, to_id)
    if not id:
        return
    follow_cursor.execute(
        'delete from follow where id=%s', id
    )
    to = Zsite.mc_get(to_id)
    mc_flush(from_id, to_id, to.cid)
    return True
Beispiel #23
0
def notice_mail_day(to_id, li):
    from user_mail import mail_by_user_id

    to_user = Zsite.mc_get(to_id)
    name = to_user.name
    mail = mail_by_user_id(to_id)
    count = len(li)
    li_wall = []
    _li_wall_reply = defaultdict(list)

    for from_id, cid, rid in li:
        from_user = Zsite.mc_get(from_id)
        if cid == CID_NOTICE_WALL:
            li_wall.append(from_user)
        elif cid == CID_NOTICE_WALL_REPLY:
            o = Wall.mc_get(rid)
            _li_wall_reply[rid].append(from_user)

    li_wall_reply = {}

    for rid, from_list in _li_wall_reply.iteritems():
        o = Wall.mc_get(rid)
        li_wall_reply[o] = from_list

    if li_wall or li_wall_reply:

        subject = render_template(
            '/mail/notice/day_total.txt',
            count=count,
            li_wall=li_wall,
            li_wall_reply=li_wall_reply,
        )

        rendermail(
            '/mail/notice/day_total.htm',
            mail,
            name,
            to_user=to_user,
            li_wall=li_wall,
            li_wall_reply=li_wall_reply,
            format='html',
            subject=subject,
        )
Beispiel #24
0
def notice_event_kill_mail(user_id, title, link, txt, notice_link):
    name = Zsite.mc_get(user_id).name
    mail = mail_by_user_id(user_id)
    rendermail('/mail/event/event_notice.txt',
               mail, name,
               title=title,
               link=link,
               txt=txt,
               notice_link=notice_link,
              )
Beispiel #25
0
def name_dict_url_dict_by_zsite_id_list(zsite_id_list):
    url_dict = {}
    name_dict = defaultdict(list)

    zsite_list = Zsite.mc_get_list(zsite_id_list)
    for i in zsite_list:
        name_dict[i.name].append(i.id)

    url_dict = url_dict_by_zsite_id_list(zsite_id_list)

    return name_dict , url_dict
Beispiel #26
0
def pay_account_name_get(user_id, cid):
    a = PayAccount.get(user_id=user_id, cid=cid)
    account = None
    name = None
    if a:
        account = a.account
        name = a.name
    if not account:
        account = mail_by_user_id(user_id)
    if not name:
        name = Zsite.mc_get(user_id).name
    return account, name
Beispiel #27
0
def pay_account_name_get(user_id, cid):
    a = PayAccount.get(user_id=user_id, cid=cid)
    account = None
    name = None
    if a:
        account = a.account
        name = a.name
    if not account:
        account = mail_by_user_id(user_id)
    if not name:
        name = Zsite.mc_get(user_id).name
    return account, name
Beispiel #28
0
def po_answer_list(question_id, zsite_id=0, user_id=0):
    ids = rank_po_id_list(question_id, CID_QUESTION, 'confidence')

    if zsite_id == user_id:
        zsite_id = 0

    user_ids = filter(bool, (zsite_id, user_id))
    if user_ids:
        _ids = []
        for i in user_ids:
            user_answer_id = answer_id_get(i, question_id)
            if user_answer_id:
                _ids.append(user_answer_id)
                if user_answer_id in ids:
                    ids.remove(user_answer_id)
        if _ids:
            _ids.extend(ids)
            ids = _ids

    li = Po.mc_get_list(ids)
    Zsite.mc_bind(li, 'user', 'user_id')
    return li
Beispiel #29
0
def po_answer_list(question_id, zsite_id=0, user_id=0):
    ids = rank_po_id_list(question_id, CID_QUESTION, 'confidence')

    if zsite_id == user_id:
        zsite_id = 0

    user_ids = filter(bool, (zsite_id, user_id))
    if user_ids:
        _ids = []
        for i in user_ids:
            user_answer_id = answer_id_get(i, question_id)
            if user_answer_id:
                _ids.append(user_answer_id)
                if user_answer_id in ids:
                    ids.remove(user_answer_id)
        if _ids:
            _ids.extend(ids)
            ids = _ids

    li = Po.mc_get_list(ids)
    Zsite.mc_bind(li, 'user', 'user_id')
    return li
Beispiel #30
0
def notice_event_join_yes(from_id, to_id, event_id):
    n = notice_new(from_id, to_id, CID_NOTICE_EVENT_JOIN_YES, event_id)
    mail = mail_by_user_id(to_id)
    zsite = Zsite.mc_get(to_id)
    po = Po.mc_get(event_id)
    title = po.name
    link = po.link
    mq_rendermail('/mail/event/event_join_yes.txt',
                  mail, zsite.name,
                  link=link,
                  title=title
                 )
    return n
Beispiel #31
0
def notice_event_join_no(from_id, to_id, event_id, txt):
    cid = CID_NOTICE_EVENT_JOIN_NO
    n = notice_new(from_id, to_id, cid, event_id, txt=txt)
    mc_notice_last_id_by_zsite_id_cid.set('%s_%s' % (from_id, cid), n.id)
    mail = mail_by_user_id(to_id)
    zsite = Zsite.mc_get(to_id)
    po = Po.mc_get(event_id)
    title = po.name
    link = po.link
    mq_rendermail('/mail/event/event_join_no.txt',
                  mail, zsite.name,
                  link=link,
                  title=title,
                  reason=txt
                 )
    return n
Beispiel #32
0
def tag_new(name):
    found = Zsite.get(name=name, cid=CID_TAG)
    if not found:
        found = zsite_new(name, CID_TAG)

    id = found.id

    #1. 更新autocompelete
    from model.autocomplete import autocomplete_tag
    autocomplete_tag.append(name, id)
    #2. 更新别名库
    if '/' in name:
        for i in map(utf8_ftoj, map(str.strip, name.split('/'))):
            _tag_alias_new(id, i)
    else:
        _tag_alias_new(id, name)
    return id
Beispiel #33
0
def tag_new(name):
    found = Zsite.get(name=name, cid=CID_TAG)
    if not found:
        found = zsite_new(name, CID_TAG)

    id = found.id

    #1. 更新autocompelete
    from model.autocomplete import  autocomplete_tag
    autocomplete_tag.append(name, id)
    #2. 更新别名库
    if '/' in name:
        for i in map(utf8_ftoj, map(str.strip, name.split('/'))):
            _tag_alias_new(id, i)
    else:
        _tag_alias_new(id, name)
    return id
Beispiel #34
0
def event_ready(event):
    join_count = event.join_count
    po = event.po
    link = 'http:%s' % po.link
    title = po.name
    begin_time = date_time_by_minute(event.begin_time)
    user_id_list = event_joiner_user_id_list(event.id)
    user_id_list.append(event.zsite_id)
    for user_id in user_id_list:
        rendermail(
            '/mail/event/event_ready.txt',
            mail_by_user_id(user_id),
            Zsite.mc_get(user_id).name,
            link=link,
            title=title,
            begin_time=begin_time,
            join_count=join_count,
        )
        sleep(0.1)
Beispiel #35
0
def event_ready(event):
    join_count = event.join_count
    po = event.po
    link = 'http:%s' % po.link
    title = po.name
    begin_time = date_time_by_minute(event.begin_time)
    user_id_list = event_joiner_user_id_list(event.id)
    user_id_list.append(event.zsite_id)
    for user_id in user_id_list:
        rendermail(
            '/mail/event/event_ready.txt',
            mail_by_user_id(user_id),
            Zsite.mc_get(user_id).name,
            link=link,
            title=title,
            begin_time=begin_time,
            join_count=join_count,
        )
        sleep(0.1)
Beispiel #36
0
def notice_event_notice(from_id, event_id, po_id):
    from event import event_joiner_user_id_list
    po = Po.mc_get(event_id)
    title = po.name
    link = po.link
    notice_po = Po.mc_get(po_id)
    txt = notice_po.name
    notice_link = notice_po.link
    for user_id in event_joiner_user_id_list(event_id):
        notice_new(from_id, user_id, CID_NOTICE_EVENT_NOTICE, po_id)
        name = Zsite.mc_get(user_id).name
        mail = mail_by_user_id(user_id)
        rendermail('/mail/event/event_notice.txt',
                   mail, name,
                   title=title,
                   link=link,
                   txt=txt,
                   notice_link=notice_link,
                  )
Beispiel #37
0
def event_review_join_apply(event_id):
    event = Event.mc_get(event_id)
    if event:
        event_new_joiner_id_list = EventJoiner.where(
            'event_id=%s and state=%s', event_id,
            EVENT_JOIN_STATE_NEW).col_list(col='user_id')

        if event_new_joiner_id_list:
            event_joiner_list = [
                user.name
                for user in Zsite.mc_get_list(event_new_joiner_id_list)
            ]

            rendermail('/mail/event/event_review_join_apply.txt',
                       mail_by_user_id(event.zsite_id),
                       event.zsite.name,
                       event_link='http:%s/event/check/%s' %
                       (event.zsite.link, event_id),
                       title=event.po.name,
                       event_join_apply_list=' , '.join(event_joiner_list))
            sleep(0.1)
Beispiel #38
0
    def name_htm(self):
        q = self.target
        cid = self.cid

        if cid in (CID_EVENT_NOTICE, CID_REVIEW):
            return txt_withlink(self.name_)

        if q:
            u = q.user
            link = '<a href="%s">%s</a>' % (q.link, escape(q.name))

            if cid == CID_EVENT_FEEDBACK:
                if q.user_id == self.user_id:
                    name = '总结 : %s'
                else:
                    name = '评价 : %s'
                return name%link
            elif cid == CID_REC:
                pre_po_zsite = Zsite.mc_get(q.user_id)
                if pre_po_zsite:
                    if q.cid != CID_WORD:
                        name = '推荐 <a href="%s" >%s</a> ~ <a href="%s">%s</a>' % (q.link, escape(q.name), pre_po_zsite.link, escape(pre_po_zsite.name), )
                    else:
                        name = '推荐 <a href="%s" class="fcmname c0 TPH" >%s</a> : %s <a class="zsite_reply" href="%s" target="_blank"></a>'%(
                            pre_po_zsite.link, escape(pre_po_zsite.name), escape(q.name), q.link
                        )
                else:
                    name = '推荐 <a href="%s" >%s</a>' % (q.link, escape(q.name))
                return name
            else:
                if q.user_id == self.user_id:
                    return '自问自答 : %s' % link
                else:
                    return '答 <a href="%s">%s</a> 问 : %s' % (
                        u.link, escape(u.name), link
                    )
        if cid == CID_WORD:
            return txt_withlink(self.name)

        return escape(self.name)
Beispiel #39
0
def spammer_reset(user_id):
    from model.po import Po, po_rm, reply_rm_if_can
    from zsite_tag import zsite_tag_rm_by_po
    for i in Po.where(user_id=user_id):
        po_rm(user_id, i.id)
        zsite_tag_rm_by_po(i)

    from model.reply import Reply
    for i in Reply.where(user_id=user_id):
        reply_rm_if_can(user_id, i.id)

    from model.wall import Wall
    from model.zsite import Zsite
    z = Zsite.mc_get(user_id)
    total = z.reply_count
    if total:
        reply_list = z.reply_list_reversed(total, 0)
        for reply in reply_list:
            wall = Wall.mc_get(reply.rid)
            if wall:
                wall.reply_rm(reply)

    spammer_new(user_id)
def buzz_po_bind_user(po_list, po_user_id_list, user_id=0):
    from model.po_pos import po_pos_get_last_reply_id
    user_dict = Zsite.mc_get_dict(chain(*po_user_id_list))
    result = []
    for i, user_id_list in zip(po_list, po_user_id_list):
        id = i.id
        new_reply_show = []

        for uid in user_id_list:
            if uid not in new_reply_show and user_id != uid:
                new_reply_show.append(uid)
                if len(new_reply_show) == SHOW_LIMT:
                    break

        new_reply_show = [(z.id, z.name)
                          for z in map(user_dict.get, new_reply_show)]
        new_reply_count = max((len(set(user_id_list)) - SHOW_LIMT, 0))

        t = (id, i.name, new_reply_count, new_reply_show,
             po_pos_get_last_reply_id(user_id, id))
        result.append(t)

    return result
Beispiel #41
0
def _follow_new(from_id, to_id):
    if follow_get(from_id, to_id):
        return True
    if from_id == to_id:
        return
    to = Zsite.mc_get(to_id)
    if not to:
        return
    if follow_get(from_id, to_id):
        return
    cid = to.cid
    id = gid()
    follow_cursor.execute(
        'insert into follow (id, from_id, to_id, cid) values (%s,%s,%s,%s)',
        (id, from_id, to_id, cid)
    )
    follow_cursor.connection.commit()
    mc_flush(from_id, to_id, cid)
    if cid == CID_USER:
        from model.autocomplete_user import autocomplete_user
        autocomplete_user.rank_update(
            to_id, follow_count_by_to_id(to_id)
        )
    return True
Beispiel #42
0

if __name__ == '__main__':
    from zsite import Zsite
    from zsite_com import ZsiteCom
    from cid import CID_COM
    from zsite_show import zsite_show_list
    from zsite_member import zsite_member_admin_list
    from user_mail import mail_by_user_id
    #job_type_set(25, [2,3225])
    com0, com1, com2, com3 = set(), set(), set(), set()
    for i in ComJob.where():
        com0.add(i.com_id)
    com3 = set([i.id for i in zsite_show_list(CID_COM)])
    #print com3
    for i in Zsite.where(cid=CID_COM):
        com1.add(i.id)
    for i in ZsiteCom.where('video_id != %s', 0):
        com2.add(i.id)
    for i in com1 - com3:
        c = ZsiteCom.mc_get(i)
        z = Zsite.mc_get(i)
        print '---------'
        print '公司名:', z.name,
        print 'http:%s' % z.link
        print '公司愿望:', c.hope
        print '公司钱:', c.money,
        print '公司文化:', c.culture,
        print '公司团队:', c.team,
        print '公司视频:', c.video_id,
        print '公司电话:', c.phone
Beispiel #43
0
 def user(self):
     if self.user_id:
         return Zsite.mc_get(self.user_id)
Beispiel #44
0
def namecard_dict(id_list):
    return mc_func_get_dict(
        mc_namecard_id,
        namecard_get_id,
        id_list,
    )


def namecard_bind(li, key='id'):
    d = set()
    for i in li:
        k = getattr(i, key)
        d.add(k)

    r = namecard_dict(d)
    id_list = r.values()
    e = Namecard.mc_get_dict(id_list)

    for i in li:
        i.namecard = e.get(r.get(getattr(i, key)))


if __name__ == '__main__':
    from zsite import Zsite
    li = Zsite.mc_get_list([10000212, 10000000])
    namecard_bind(li, 'id')
    for i in li:
        print vars(i)
        o = i.namecard
        print o.id, vars(o)
Beispiel #45
0
def po_show_list(limit, offset):
    ids = feed_rt_list(0, limit, offset)
    li = Po.mc_get_list(ids)
    li = Po.mc_get_list(i.rid for i in li)
    Zsite.mc_bind(li, 'user', 'user_id')
    return li
Beispiel #46
0
def user_new_by_mail(mail, password=None, name=None):
    if not name:
        name = mail.split('@', 1)[0].split('+', 1)[0]
        if name.isdigit():
            name = ''
    if password:
        state = ZSITE_STATE_APPLY
    else:
        state = ZSITE_STATE_NO_PASSWORD
    zsite = zsite_new_user(name, state)
    user_id = zsite.id
    user_mail_new(user_id, mail)
    if password:
        user_password_new(user_id, password)
    from buzz_sys import buzz_sys_new_user
    buzz_sys_new_user(user_id)
    return zsite


def newbie_redirect(user):
    if user.state == ZSITE_STATE_NO_PASSWORD:
        return '/i/guide'

if __name__ == '__main__':
    z = Zsite.mc_get(10001299)
    print z.sex, '!'
    print user_password_sha256(1)


Beispiel #47
0
def fav_user_list_by_po_id(po_id, limit, offset=0):
    id_list = fav_user_id_list_by_po_id(po_id, limit, offset)
    return Zsite.mc_get_list(id_list)
Beispiel #48
0
    return c

def namecard_dict(id_list):
    return mc_func_get_dict(
        mc_namecard_id,
        namecard_get_id,
        id_list,
    )

def namecard_bind(li, key='id'):
    d = set()
    for i in li:
        k = getattr(i, key)
        d.add(k)

    r = namecard_dict(d)
    id_list = r.values()
    e = Namecard.mc_get_dict(id_list)

    for i in li:
        i.namecard = e.get(r.get(getattr(i, key)))

if __name__ == '__main__':
    from zsite import Zsite
    li = Zsite.mc_get_list([10000212, 10000000])
    namecard_bind(li, 'id')
    for i in li:
        print vars(i)
        o = i.namecard
        print o.id, vars(o)
Beispiel #49
0
def zsite_list_by_admin_id(id, limit=None, offset=0):
    id_list = zsite_id_list_by_admin_id(id)

    if id_list and (offset or limit is not None):
        id_list = id_list[offset:offset + limit]
    return Zsite.mc_get_list(id_list)
Beispiel #50
0
    return link_list, link_cid


if __name__ == '__main__':

    from cid import CID_USER
    from user_mail import mail_by_user_id
    from zsite import Zsite
    link = []
    sites = {}
    for zs in ZsiteLink.where(cid=0):
        link.extend([zs.zsite_id])
        sites[zs.link.rstrip('/')] = zs.zsite_id
    print len(link)
    link = filter(lambda x: Zsite.mc_get(x).cid == CID_USER, link)
    print len(link)
    s = """
    http://zerolabrary.appspot.com
    http://www.dongwm.com
    http://stonelee.info
    http://blog.chen-yuan.me
    http://www.cnxct.com
    http://blog.sina.com.cn/ggsddunet
    http://www.91python.com
    http://blog.linjunhalida.com
    http://bss.appspot.com
    http://www.imchao.net
    http://blog.timger.info
    http://heroicyang.com
    http://www.felizin.com
Beispiel #51
0
def tag_list_by_po_id(po_id):
    zsite_id_list = tag_id_list_by_po_id(po_id)
    return Zsite.mc_get_list(zsite_id_list)
Beispiel #52
0
def po_show_list(limit, offset):
    ids = feed_rt_list(0, limit, offset)
    li = Po.mc_get_list(ids)
    li = Po.mc_get_list(i.rid for i in li)
    Zsite.mc_bind(li, 'user', 'user_id')
    return li
Beispiel #53
0
def zsite_author_list(zsite_id):
    return Zsite.mc_get_list(zsite_id_list(zsite_id, CID_TAG))