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)
def event_pay(event): owner = event.zsite owner_id = event.zsite_id cent = event.cent if event.state == EVENT_STATE_END and cent: pay_count = 0 for i in EventJoiner.where(event_id=event.id).where( 'state>=%s', EVENT_JOIN_STATE_YES): user_id = i.user_id if user_id != owner_id: t = pay_event_get(event, user_id) if t: trade_finish(t) pay_count += 1 if pay_count: pay_money = read_cent(cent * pay_count) po = event.po rendermail( '/mail/event/event_end_draw.txt', mail_by_user_id(owner_id), owner.name, join_count=event.join_count, pay_count=pay_count, pay_money=pay_money, title=po.name, link=po.link, )
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)
def event_pay(event): owner = event.zsite owner_id = event.zsite_id cent = event.cent if event.state == EVENT_STATE_END and cent: pay_count = 0 for i in EventJoiner.where(event_id=event.id).where('state>=%s', EVENT_JOIN_STATE_YES): user_id = i.user_id if user_id != owner_id: t = pay_event_get(event, user_id) if t: trade_finish(t) pay_count += 1 if pay_count: pay_money = read_cent(cent * pay_count) po = event.po rendermail( '/mail/event/event_end_draw.txt', mail_by_user_id(owner_id), owner.name, join_count=event.join_count, pay_count=pay_count, pay_money=pay_money, title=po.name, link=po.link, )
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)
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, )
def withdraw_success(id, trade_no): t = Trade.get(id) if t and t.cid == CID_TRADE_WITHDRAW and t.state == TRADE_STATE_ONWAY: trade_finish(t) trade_log.set(id, trade_no) mail = mail_by_user_id(id) rendermail( '/mail/notice/with_draw_success.txt', mail, t.name, cid=t.cid, account=t.account, value=t.value/100.0 )
def withdraw_success(id, trade_no): t = Trade.get(id) if t and t.cid == CID_TRADE_WITHDRAW and t.state == TRADE_STATE_ONWAY: trade_finish(t) trade_log.set(id, trade_no) mail = mail_by_user_id(id) rendermail('/mail/notice/with_draw_success.txt', mail, t.name, cid=t.cid, account=t.account, value=t.value / 100.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, )
def zsite_name_rm(id): from mail import rendermail from user_mail import mail_by_user_id from zsite_url import url_by_id url = url_by_id(id) if url: zsite_name_edit(id, url) else: zsite_name_edit(id, '') zsite = Zsite.mc_get(id) rendermail( '/mail/notice/name_rm.txt', mail_by_user_id(id), zsite.name, link=zsite.link, )
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)
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, )
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, )
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)
def pic_rm_mail(id): from ico import ico from user_mail import mail_by_user_id from zsite import Zsite pic = Pic.get(id) if pic: cid = pic.cid user_id = pic.user_id template = PIC_RM_TEMPLATE.get(cid) if template: user = Zsite.mc_get(user_id) name = user.name mail = mail_by_user_id(user_id) if cid == CID_ICO: if not ico.get(user_id): rendermail( template, mail, name, user=user, )