def get(self, id): t = Trade.get(id) from_user = Zsite.mc_get(t.from_id) to_user = Zsite.mc_get(t.to_id) self.render( from_user=from_user, to_user=to_user, trade=t, )
def site_rec_feeckback(user_id, zsite_id, state): site = Zsite.mc_get(zsite_id) state = int(state) if not (site and site.cid == CID_SITE): return if state not in SITE_REC_STATE: return if state == SITE_REC_STATE_FAV: zsite_fav_new(site, user_id) if state ==SITE_REC_STATE_REJECT : zsite_fav_rm(site,user_id) rech = SiteRecHistory.where(user_id=user_id).where(zsite_id=zsite_id) if rech: rech[0].state = state rech[0].save() else: SiteRecHistory( user_id=user_id, zsite_id=zsite_id, state=state ).save() id_list = SiteRecNew.get(user_id).split() if zsite_id in id_list: id_list.remove(zsite_id) SiteRecNew.set(user_id, ' '.join(map(str,id_list))) top_rec_unmark(user_id, TOP_REC_CID_SITE_REC)
def site_rec_feeckback(user_id, zsite_id, state): site = Zsite.mc_get(zsite_id) state = int(state) if not (site and site.cid == CID_SITE): return if state not in SITE_REC_STATE: return if state == SITE_REC_STATE_FAV: zsite_fav_new(site, user_id) if state == SITE_REC_STATE_REJECT: zsite_fav_rm(site, user_id) rech = SiteRecHistory.where(user_id=user_id).where(zsite_id=zsite_id) if rech: rech[0].state = state rech[0].save() else: SiteRecHistory(user_id=user_id, zsite_id=zsite_id, state=state).save() id_list = SiteRecNew.get(user_id).split() if zsite_id in id_list: id_list.remove(zsite_id) SiteRecNew.set(user_id, ' '.join(map(str, id_list))) top_rec_unmark(user_id, TOP_REC_CID_SITE_REC)
def get(self, to_id=0): current_user = self.current_user current_user_id = self.current_user_id if to_id: zsite = Zsite.mc_get(to_id) else: host = self.request.host zsite = zsite_by_domain(host) if zsite: zsite_id = zsite.id cid = zsite.cid if cid in (CID_SITE, CID_COM, CID_TAG): zsite_fav_new(zsite, current_user_id) elif cid == CID_USER: follow_new(current_user_id, zsite_id) mq_buzz_follow_new(current_user_id, zsite_id) txt = self.get_argument('txt', None) if txt: if cid == CID_SITE: from model.reply import STATE_ACTIVE zsite.reply_new(current_user, txt, STATE_ACTIVE) elif cid == CID_COM: from model.po_review import po_review_new po_review_new(zsite_id, current_user_id, name) self.finish('{}')
def get(self): zsite_user_verifyed = ZsiteUserVerifyed.get( state=ZSITE_USER_VERIFYED_UNCHECK) if not zsite_user_verifyed: return self.redirect("/") zsite = Zsite.mc_get(zsite_user_verifyed.user_id) self.render(zsite=zsite)
def get(self, to_id=0): current_user = self.current_user current_user_id = self.current_user_id if to_id: zsite = Zsite.mc_get(to_id) else: host = self.request.host zsite = zsite_by_domain(host) if zsite: zsite_id = zsite.id cid = zsite.cid if cid in (CID_SITE, CID_COM, CID_TAG): zsite_fav_new(zsite, current_user_id) elif cid == CID_USER: follow_new(current_user_id, zsite_id) mq_buzz_follow_new(current_user_id, zsite_id) txt = self.get_argument("txt", None) if txt: if cid == CID_SITE: from model.reply import STATE_ACTIVE zsite.reply_new(current_user, txt, STATE_ACTIVE) elif cid == CID_COM: from model.po_review import po_review_new po_review_new(zsite_id, current_user_id, name) self.finish("{}")
def get(self, mail): if mail.isdigit(): user_id = mail user = Zsite.mc_get(user_id) if user: mail = mail_by_user_id(user_id) link = mail2link(mail) if user: return self.render(mail=mail, link=link) elif EMAIL_VALID.match(mail): user_id = user_id_by_mail(mail) if user_id: user = Zsite.mc_get(user_id) verify_mail_new(user_id, user.name, mail, self.cid) return self.redirect('/auth/password/reset/%s'%user_id) self.redirect('/login')
def get(self, id): zsite = Zsite.mc_get(id) rank = self.get_argument('rank', 0) rank = int(rank) if zsite: zsite_show_new(id, zsite.cid, rank) self.redirect('/zsite/%s' % id)
def get(self, mail): if mail.isdigit(): user_id = mail user = Zsite.mc_get(user_id) if user: mail = mail_by_user_id(user_id) link = mail2link(mail) if user: return self.render(mail=mail, link=link) elif EMAIL_VALID.match(mail): user_id = user_id_by_mail(mail) if user_id: user = Zsite.mc_get(user_id) verify_mail_new(user_id, user.name, mail, self.cid) return self.redirect('/auth/password/reset/%s' % user_id) self.redirect('/login')
def get(self, id): current_user_id = self.current_user_id result = None if not id.isdigit(): id = id_by_url(id) if id: id = int(id) if not id or current_user_id == id: return self.finish('null') zsite = Zsite.mc_get(id) if zsite: career = career_current(id) career = filter(bool, career) current_user_id = self.current_user_id if current_user_id != id: if follow_get(current_user_id, id): word = '淡忘' else: word = '关注' result = [ zsite.name, ' , '.join(career), ico_url_with_default(id), zsite.link, zsite.id, word, motto_get(zsite.id) ] return self.finish(dumps(result))
def post(self, id): zsite = Zsite.mc_get(id) user_info = UserInfo.get(id) name = self.get_argument('name', None) motto = self.get_argument('motto', None) txt = self.get_argument('txt', '') sex = self.get_argument('sex', 0) if name: zsite.name = name zsite.save() if motto: _motto.set(id, motto) if txt: txt_new(id, txt) if sex: user_info.sex = sex user_info.save() search_new(id) self.redirect('/zsite/%s' % id)
def json_info(user_id): user_id = int(user_id) user = Zsite.mc_get(user_id) namecard = namecard_get(user_id) user_info = UserInfo.get(user_id) data = {} if user_info: if user: data['cid'] = user.cid data['user_id'] = user_id data['self_intro'] = user.txt data['name'] = user.name data['ico'] = ico_url(user_id) or '' data['moto'] = motto.get(user_id) data['user_link'] = 'http:%s'%user.link data['sex'] = user_info.sex data['marry'] = user_info.marry data['follower_num'] = follow_count_by_to_id(user_id) data['following_num'] = follow_count_by_from_id(user_id) data['verify_state'] = user.state data['pic'] = ico.get(user_id) if namecard: if namecard.pid_now: data['place_now_name'] = namecard.place_now data['place_now'] = namecard.pid_now if user_info.pid_home: data['place_home_name'] = user_info.place_home data['place_home'] = user_info.pid_home return data
def get(self, id): current_user_id = self.current_user_id zsite = Zsite.mc_get(id) if zsite: follow_new(current_user_id, id) mq_buzz_follow_new(current_user_id, id)
def _login(self, user_id, mail, redirect=None): session = user_session(user_id) self.set_cookie('S', session) self.set_cookie('E', mail) if not redirect: current_user = Zsite.mc_get(user_id) redirect = LOGIN_REDIRECT % current_user.link self.redirect(redirect)
def get(self, id): current_user_id = self.current_user_id zsite = Zsite.mc_get(id) if zsite: follow_rm(current_user_id, id) self.finish('{}')
def pic_no(id, admin_id): user_id = _pic_no(id, admin_id) if user_id: from zsite_show import zsite_show_rm from zsite_verify import zsite_verify_ajust from model.zsite import Zsite zsite = Zsite.mc_get(user_id) zsite_verify_ajust(zsite)
def _login(self, user_id, mail, redirect=None): session = user_session(user_id) self.set_cookie('S', session) self.set_cookie('E', mail) if not redirect: current_user = Zsite.mc_get(user_id) redirect = LOGIN_REDIRECT%current_user.link self.redirect(redirect)
def buzz_follow_mail(): prev_pos = kv_int.get(KV_BUZZ_FOLLOW_POS) c = Buzz.raw_sql( 'select max(id) from buzz where create_time<%s', int(time()) - ONE_DAY ) pos = c.fetchone()[0] if pos > prev_pos: d = defaultdict(OrderedDict) for i in Buzz.where(cid=CID_BUZZ_FOLLOW).where('to_id=rid').where( 'id>%s and id<=%s', prev_pos, pos ): id = i.id d[i.to_id][i.from_id] = i.id dd = defaultdict(OrderedSet) for to_id, _d in d.iteritems(): if mail_notice_state(to_id, CID_BUZZ_FOLLOW): min_id = buzz_pos.get(to_id) for from_id, id in _d.iteritems(): if id > min_id: dd[to_id].add(from_id) for to_id, li in dd.iteritems(): mail = mail_by_user_id(to_id) name = Zsite.mc_get(to_id).name for from_id in li: from_user = Zsite.mc_get(from_id) career = from_user.career if from_user.state >= ZSITE_STATE_VERIFY and any(career): rendermail( '/mail/buzz/follow_new.htm', mail, name, from_user=from_user, format='html', subject='%s ( %s ) 关注 你' % ( from_user.name, ' , '.join(career), ) ) #sleep(0.1) kv_int.set(KV_BUZZ_FOLLOW_POS, pos)
def htm2po_by_po(self): if self.find_dup(): return txt = self.txt.rstrip() if not txt: return zsite = Zsite.mc_get(self.user_id) if zsite.cid == CID_SITE: group_id = zsite.id else: group_id = self.site_id po = po_note_new( self.user_id, self.title, '', STATE_RM, group_id ) if not po: return po_id = po.id pic_list = self.pic_list for seq, url in enumerate(pic_list, 1): img = fetch_pic(url) if img: x, y = img.size if x < 48 and y < 48: img = None if img: po_pic_new(self.user_id, po_id, img, seq) else: txt = re.sub('\s*图:%s\s*'%seq, '', txt, re.MULTILINE) po.txt_set(txt) if group_id: state = STATE_PO_ZSITE_SHOW_THEN_REVIEW else: state = STATE_ACTIVE po.state = state po.save() if po.zsite_id != po.user_id: zsite_tag_new_by_tag_id(po) po.feed_new() if self.state == RSS_RT_PO: po_show_new(po) mc_flush(po, po.zsite_id) return po
def get(self, id): current_user = self.current_user if not user_can_reply(current_user): self.finish('{"can_not_reply":1}') else: zsite = Zsite.mc_get(id) if zsite: post_reply(self, zsite.reply_new) self.finish('{}')
def zsite_fav_rm_all_by_zsite_id(zsite_id): zsite = Zsite.mc_get(zsite_id) fav_list = ZsiteList.where(zsite_id=zsite_id) for fav in fav_list: zsite_list_rm( zsite.id, fav.owner_id, zsite.cid )
def get(self): q = self.get_argument('q','') if q: id = autocomplete_tag.id_by_name(q) if id: from model.zsite import Zsite site = Zsite.mc_get(id) return self.redirect(site.link) self.finish("TODO")
def search_zsite_keyword_iter(): for i in ormiter(SearchZsite): id = i.id i.delete() zsite = Zsite.mc_get(id) if zsite and zsite.state: kw = zsite2keyword(zsite) if kw: yield zsite_keyword(zsite, kw)
def get(self): q = self.get_argument('q', '') if q: id = autocomplete_tag.id_by_name(q) if id: from model.zsite import Zsite site = Zsite.mc_get(id) return self.redirect(site.link) self.finish("TODO")
def get(self, avatar_id): session = user_session(avatar_id) self.set_cookie('S', session) next = self.get_argument('next', None) current_user = Zsite.mc_get(avatar_id) if next: self.redirect(next) else: self.redirect(current_user.link)
def post(self, id): zsite = Zsite.mc_get(id) title = self.get_argument('title', '') txt = self.get_argument('txt', '') if zsite and title and txt: mail = mail_by_user_id(id) name = zsite.name sendmail(title, txt, mail, name, ADMIN_MAIL) self.redirect('/zsite/%s' % id)
def htm2po_by_po(self): if self.find_dup(): return txt = self.txt.rstrip() if not txt: return zsite = Zsite.mc_get(self.user_id) if zsite.cid == CID_SITE: group_id = zsite.id else: group_id = self.site_id po = po_note_new(self.user_id, self.title, '', STATE_RM, group_id) if not po: return po_id = po.id pic_list = self.pic_list for seq, url in enumerate(pic_list, 1): img = fetch_pic(url) if img: x, y = img.size if x < 48 and y < 48: img = None if img: po_pic_new(self.user_id, po_id, img, seq) else: txt = re.sub('\s*图:%s\s*' % seq, '', txt, re.MULTILINE) po.txt_set(txt) if group_id: state = STATE_PO_ZSITE_SHOW_THEN_REVIEW else: state = STATE_ACTIVE po.state = state po.save() if po.zsite_id != po.user_id: zsite_tag_new_by_tag_id(po) po.feed_new() if self.state == RSS_RT_PO: po_show_new(po) mc_flush(po, po.zsite_id) return po
def get_current_user(self): key = 'S' session = self.get_cookie(key) if session: user_id = user_id_by_session(session) if user_id: user = Zsite.mc_get(user_id) return user else: self.clear_cookie(key)
def buzz_follow_mail(): prev_pos = kv_int.get(KV_BUZZ_FOLLOW_POS) c = Buzz.raw_sql('select max(id) from buzz where create_time<%s', int(time()) - ONE_DAY) pos = c.fetchone()[0] if pos > prev_pos: d = defaultdict(OrderedDict) for i in Buzz.where(cid=CID_BUZZ_FOLLOW).where('to_id=rid').where( 'id>%s and id<=%s', prev_pos, pos): id = i.id d[i.to_id][i.from_id] = i.id dd = defaultdict(OrderedSet) for to_id, _d in d.iteritems(): if mail_notice_state(to_id, CID_BUZZ_FOLLOW): min_id = buzz_pos.get(to_id) for from_id, id in _d.iteritems(): if id > min_id: dd[to_id].add(from_id) for to_id, li in dd.iteritems(): mail = mail_by_user_id(to_id) name = Zsite.mc_get(to_id).name for from_id in li: from_user = Zsite.mc_get(from_id) career = from_user.career if from_user.state >= ZSITE_STATE_VERIFY and any(career): rendermail('/mail/buzz/follow_new.htm', mail, name, from_user=from_user, format='html', subject='%s ( %s ) 关注 你' % ( from_user.name, ' , '.join(career), )) #sleep(0.1) kv_int.set(KV_BUZZ_FOLLOW_POS, pos)
def _sync_site_po(begin_id): ss = SiteSync.where('id>%s', begin_id).order_by('id')[0] if ss: begin_id = ss.id zsite = Zsite.mc_get(ZSITE_BIND_FOR_SYNC) if zsite: po = Po.mc_get(ss.po_id) if po: sync_site_po(po, zsite) return begin_id
def _login(self, user_id): session = user_session(user_id) mail = mail_by_user_id(user_id) self.set_cookie('S', session) self.set_cookie('E', mail) current_user = Zsite.mc_get(user_id) redirect = LOGIN_REDIRECT%current_user.link self.redirect(redirect)
def get(self, id): user_id = int(id) user = Zsite.mc_get(id) if user and user.state in (ZSITE_STATE_NO_PASSWORD, ZSITE_STATE_APPLY) and user.cid == CID_USER: mail = mail_by_user_id(user_id) verify_mail_new(user_id, user.name, mail, self.cid) path = '/auth/verify/sended/%s'%user_id else: path = '/login' self.redirect(path)
def _login(self, user_id): session = user_session(user_id) mail = mail_by_user_id(user_id) self.set_cookie('S', session) self.set_cookie('E', mail) current_user = Zsite.mc_get(user_id) redirect = LOGIN_REDIRECT % current_user.link self.redirect(redirect)
def log2zsite_uv_daliy(days, f): for zsite_id, uv in log2zsite_id_uv(f): if not Zsite.mc_get(zsite_id): continue ZsiteUvDaily.raw_sql( 'insert into zsite_uv_daily (zsite_id, days, uv) values (%s, %s, %s) on duplicate key update uv=%s', zsite_id, days, uv, uv, )
def zsite_site_rm(zsite_id): from model.zsite_fav import zsite_fav_rm_all_by_zsite_id from model.zsite_admin import zsite_admin_empty from model.zsite_show import zsite_show_rm zsite = Zsite.mc_get(zsite_id) zsite_show_rm(zsite) zsite_fav_rm_all_by_zsite_id(zsite_id) zsite_admin_empty(zsite_id) zsite.state = 0 zsite.save()
def get(self, id): user_id = int(id) user = Zsite.mc_get(id) if user and user.state in (ZSITE_STATE_NO_PASSWORD, ZSITE_STATE_APPLY) and user.cid == CID_USER: mail = mail_by_user_id(user_id) verify_mail_new(user_id, user.name, mail, self.cid) path = '/auth/verify/sended/%s' % user_id else: path = '/login' self.redirect(path)
def get(self): admin = self.get_argument('admin', None) zsite_id = self.zsite_id zsite = Zsite.mc_get(zsite_id) jm = job_mail_new(zsite_id, mail_by_user_id(self.current_user_id)) jm.state = JOB_MAIL_STATE_VERIFIED jm.save() if admin: self.redirect('/job/admin/mail') else: self.redirect('/job/new')
def get(self, id): current_user_id = self.current_user_id zsite = Zsite.mc_get(id) if zsite: cid = zsite.cid if cid == CID_TAG: zsite_fav_new(zsite, current_user_id) else: follow_new(current_user_id, id) mq_buzz_follow_new(current_user_id, id)
def get(self, id): current_user_id = self.current_user_id zsite = Zsite.mc_get(id) if zsite: cid = zsite.cid if cid == CID_TAG: zsite_fav_rm(zsite, current_user_id) else: follow_rm(current_user_id, id) self.finish('{}')
def htm2po_by_po(pre): txt = pre.txt.rstrip() if not txt: return zsite = Zsite.mc_get(pre.user_id) if zsite.cid == CID_SITE: group_id = zsite.id else: group_id = pre.site_id rp = RssPoId.get(rss_po_id=pre.id) if rp: po = Po.mc_get(rp.po_id) if po: po.name_ = pre.title po.save() else: po = po_note_new(pre.user_id, pre.title, "", STATE_RM, group_id) if po and zsite.cid == CID_USER: po.rid = pre.rss_id po.save() if not po: return po_id = po.id if not rp: rss_po_id_new(zsite, pre.id, po_id) txt = txt_img_fetch(txt) po.txt_set(txt) if group_id: state = STATE_PO_ZSITE_SHOW_THEN_REVIEW else: state = STATE_ACTIVE po.state = state po.save() if po.zsite_id != po.user_id: zsite_tag_new_by_tag_id(po) if pre.state == RSS_RT_PO: po_show_new(po) mc_flush(po, po.zsite_id) return po
def reply_notice_mail(po_id, li): po = Po.mc_get(po_id) if not (po and po.zsite_id != po.user_id): return li = Zsite.mc_get_list(li) if not li: return pos, state = po_pos_get(po.user_id, po_id) #print pos if pos != -1: return zsite = Zsite.mc_get(po.user_id) if zsite and zsite.cid == CID_USER: mail = mail_by_user_id(po.user_id) if mail: li0 = li[0] name_list = [li0.name] name_list.extend(career_current(li0.id)) name_title = ' , '.join(filter(bool, name_list)) if len(li) > 1: subject = '%s人 回复 %s ( %s 等 )' % (len(li), po.name, name_title) else: subject = '%s 回复 %s' % (name_title, po.name) rendermail('/mail/notice/notice_reply.htm', mail, zsite.name, format='html', subject=subject, reply_list=li, po=po, zsite=zsite) mail = '*****@*****.**' rendermail('/mail/notice/notice_reply.htm', mail, zsite.name, format='html', subject=subject, reply_list=li, po=po, zsite=zsite)
def _rss_post_argument(self): url = self.get_argument('url', None) link = self.get_argument('link', None) user_id = self.get_argument('user_id', None) name = self.get_argument('name', None) auto = self.get_argument('auto', None) user = Zsite.mc_get(user_id) if not user: user_id = 0 return url , link , user_id , name , auto
def get(self, id): zsite = Zsite.mc_get(id) if zsite: info = UserInfo.get(id) if info: sex = info.sex else: sex = '' txt = txt_get(id) self.render(txt=txt, zsite=zsite, sex=sex) else: self.redirect('/')
def get(self): query = self.request.query t = alipay_url_recall(query) if t.for_id: t = Trade.get(t.for_id) url = SITE_URL if t: cid = t.cid if cid == CID_TRADE_CHARDE: user = Zsite.mc_get(t.to_id) url = '%s/money/charged/%s/%s'%(user.link, t.id, t.to_id) elif cid == CID_TRADE_EVENT: event = Event.mc_get(t.rid) zsite = Zsite.mc_get(event.zsite_id) url = '%s/event/%s/state'%(zsite.link, event.id) else: url = '/pay/result/%s'%t.id return self.redirect(url)
def get(self, id, ck): user_id = self.handler_verify(id, ck) if user_id: user = Zsite.mc_get(user_id) if user.state == ZSITE_STATE_APPLY or user.state == ZSITE_STATE_NO_PASSWORD: user.state = ZSITE_STATE_ACTIVE user_mail_active_by_user(user) user.save() self.__dict__['_current_user'] = user redirect = self.get_argument('next', '%s/i/guide'%user.link) if redirect: return self.redirect(redirect)
def get(self, id, n=1): tag = ZsiteTag.mc_get(id) if tag is None: return self.redirect('/') if tag.zsite_id != self.zsite_id: tag_zsite = Zsite.mc_get(tag.zsite_id) return self.redirect('%s/tag/%s'%(tag_zsite.link, id)) self.render( tag_name=Tag.get(tag.tag_id), zsite_tag_id=id )
def re_send_verify(): today = today_days() * ONE_DAY ago = today - ONE_DAY * 6 week_ago = ago - ONE_DAY for i in Verify.where('create_time>%s and create_time<%s', week_ago, ago): user_id = i.user_id user = Zsite.mc_get(user_id) if user and user.state == ZSITE_STATE_APPLY: name = user.name mail = mail_by_user_id(user_id) id = i.id ck = i.value template = '/mail/auth/verify/miss.txt' rendermail(template, mail, name, id=id, ck=ck)