本文整理汇总了Python中r2.lib.emailer.accept_promo函数的典型用法代码示例。如果您正苦于以下问题:Python accept_promo函数的具体用法?Python accept_promo怎么用?Python accept_promo使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了accept_promo函数的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: accept_promotion
def accept_promotion(link):
was_edited_live = is_edited_live(link)
update_promote_status(link, PROMOTE_STATUS.accepted)
if link._spam:
link._spam = False
link._commit()
if not was_edited_live:
emailer.accept_promo(link)
# if the link has campaigns running now charge them and promote the link
now = promo_datetime_now()
campaigns = list(PromoCampaign._by_link(link._id))
is_live = False
for camp in campaigns:
if is_accepted_promo(now, link, camp):
# if link was edited live, do not check against Authorize.net
if not was_edited_live:
charge_campaign(link, camp)
if charged_or_not_needed(camp):
promote_link(link, camp)
is_live = True
if is_live:
all_live_promo_srnames(_update=True)
示例2: accept_promotion
def accept_promotion(link):
"""
Accepting is campaign agnostic. Accepting the ad just means that
it is allowed to run if payment has been processed.
If a campagn is able to run, this also requeues it.
"""
# update the query queue
set_promote_status(link, PROMOTE_STATUS.accepted)
# campaigns that should be live now must be updated
now = promo_datetime_now(0)
promotion_weights = PromotionWeights.get_campaigns(now)
live_campaigns = {pw.promo_idx for pw in promotion_weights if pw.thing_name == link._fullname}
if live_campaigns:
campaigns = PromoCampaign._byID(live_campaigns, data=True, return_dict=False)
PromotionLog.add(link, "has live campaigns, forcing live")
charge_pending(0) # campaign must be charged before it will go live
for campaign in campaigns:
hooks.get_hook("campaign.edit").call(link=link, campaign=campaign)
queue_changed_promo(link, "accepted")
# campaigns that were charged and will go live in the future must be updated
future_campaigns = [camp for camp in PromoCampaign._by_link(link._id) if camp.start_date > now]
transactions = get_transactions(link, future_campaigns)
charged_campaigns = [
camp for camp in future_campaigns if (transactions.get(camp._id) and transactions.get(camp._id).is_charged())
]
for campaign in charged_campaigns:
hooks.get_hook("campaign.edit").call(link=link, campaign=campaign)
if link._spam:
link._spam = False
link._commit()
emailer.accept_promo(link)
示例3: accept_promotion
def accept_promotion(link):
"""
Accepting is campaign agnostic. Accepting the ad just means that
it is allowed to run if payment has been processed.
If a campagn is able to run, this also requeues it.
"""
PromotionLog.add(link, 'status update: accepted')
# update the query queue
set_promote_status(link, PROMOTE_STATUS.accepted)
# campaigns that should be live now must be updated
now = promo_datetime_now(0)
if link._fullname in set(l.thing_name for l in
PromotionWeights.get_campaigns(now)):
PromotionLog.add(link, 'Marked promotion for acceptance')
charge_pending(0) # campaign must be charged before it will go live
queue_changed_promo(link, "accepted")
# campaigns that were charged and will go live in the future must be updated
future_campaigns = [camp for camp in PromoCampaign._by_link(link._id)
if camp.start_date > now]
transactions = get_transactions(link, future_campaigns)
charged_campaigns = [camp for camp in future_campaigns
if (transactions.get(camp._id) and
transactions.get(camp._id).is_charged())]
for campaign in charged_campaigns:
hooks.get_hook('campaign.edit').call(link=link, campaign=campaign)
if link._spam:
link._spam = False
link._commit()
emailer.accept_promo(link)
示例4: accept_promotion
def accept_promotion(link):
"""
Accepting is campaign agnostic. Accepting the ad just means that
it is allowed to run if payment has been processed.
If a campagn is able to run, this also requeues it.
"""
promotion_log(link, "status update: accepted")
# update the query queue
set_status(link, STATUS.accepted)
now = promo_datetime_now(0)
if link._fullname in set(l.thing_name for l in
PromotionWeights.get_campaigns(now)):
promotion_log(link, "requeued")
#TODO: smarter would be nice, but this will have to do for now
make_daily_promotions()
emailer.accept_promo(link)
示例5: accept_promo
def accept_promo(thing):
"""
Accept promotion and set its status as accepted if not already
charged, else pending.
"""
if thing.promote_status < STATUS.pending:
bid = Bid.one(thing.promote_trans_id)
if bid.status == Bid.STATUS.CHARGE:
thing.promote_status = STATUS.pending
# repromote if already promoted before
if hasattr(thing, "promoted_on"):
promote(thing)
else:
emailer.queue_promo(thing)
else:
thing.promote_status = STATUS.accepted
promotion_log(thing, "status update: accepted")
emailer.accept_promo(thing)
thing._commit()
示例6: accept_promotion
def accept_promotion(link):
"""
Accepting is campaign agnostic. Accepting the ad just means that
it is allowed to run if payment has been processed.
If a campagn is able to run, this also requeues it.
"""
promotion_log(link, "status update: accepted")
# update the query queue
set_status(link, STATUS.accepted)
now = promo_datetime_now(0)
if link._fullname in set(l.thing_name for l in PromotionWeights.get_campaigns(now)):
promotion_log(link, "requeued")
charge_pending(0) # campaign must be charged before it will go live
make_daily_promotions()
if link._spam:
link._spam = False
link._commit()
emailer.accept_promo(link)
示例7: accept_promotion
def accept_promotion(link):
"""
Accepting is campaign agnostic. Accepting the ad just means that
it is allowed to run if payment has been processed.
If a campagn is able to run, this also requeues it.
"""
PromotionLog.add(link, 'status update: accepted')
# update the query queue
set_promote_status(link, PROMOTE_STATUS.accepted)
now = promo_datetime_now(0)
if link._fullname in set(l.thing_name for l in
PromotionWeights.get_campaigns(now)):
PromotionLog.add(link, 'Marked promotion for acceptance')
charge_pending(0) # campaign must be charged before it will go live
queue_changed_promo(link, "accepted")
if link._spam:
link._spam = False
link._commit()
emailer.accept_promo(link)