From e34c91205affedeb20d73cbc653a818f271c19f6 Mon Sep 17 00:00:00 2001 From: bsimpson63 Date: Tue, 19 Jun 2012 18:38:08 -0400 Subject: [PATCH] Put link to tear sheet on edit_promo page. --- r2/r2/lib/promote.py | 11 ++++++++++- r2/r2/public/static/js/sponsored.js | 17 +++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/r2/r2/lib/promote.py b/r2/r2/lib/promote.py index e3f67eb03..d22b83712 100644 --- a/r2/r2/lib/promote.py +++ b/r2/r2/lib/promote.py @@ -72,6 +72,12 @@ def promo_edit_url(l): def pay_url(l, indx): return "%spromoted/pay/%s/%d" % (g.payment_domain, l._id36, indx) +def view_live_url(l, srname): + url = get_domain(cname=False, subreddit=False) + if srname: + url += '/r/%s' % srname + return 'http://%s/?ad=%s' % (url, l._fullname) + # booleans def is_promo(link): @@ -249,12 +255,15 @@ class RenderableCampaign(): time = ungettext("day", "days", ndays)) self.bid = "%.2f" % bid self.sr = sr + live = is_live_on_sr(link, sr) self.status = dict(paid = bool(transaction), complete = False, free = (trans_id < 0), pay_url = pay_url(link, indx), - sponsor = c.user_is_sponsor) + view_live_url = view_live_url(link, sr), + sponsor = c.user_is_sponsor, + live = live) if transaction: if transaction.is_void(): self.status['paid'] = False diff --git a/r2/r2/public/static/js/sponsored.js b/r2/r2/public/static/js/sponsored.js index 2daad033f..81b61afac 100644 --- a/r2/r2/public/static/js/sponsored.js +++ b/r2/r2/public/static/js/sponsored.js @@ -105,6 +105,9 @@ function get_flag_class(flags) { if(flags.free) { css_class += " free"; } + if(flags.live) { + css_class += " live"; + } if(flags.complete) { css_class += " complete"; } @@ -134,6 +137,10 @@ $.new_campaign = function(indx, start_date, end_date, duration, data += (""); } + if (flags && flags.view_live_url) { + data += (""); + } var row = [start_date, end_date, duration, "$" + bid, targeting, data]; $(".existing-campaigns .error").hide(); var css_class = get_flag_class(flags); @@ -173,12 +180,18 @@ $.set_up_campaigns = function() { var pay = ""; var free = ""; var repay = ""; + var view = ""; $(".existing-campaigns tr").each(function() { var tr = $(this); var td = $(this).find("td:last"); var bid_td = $(this).find("td:first").next().next().next() .addClass("bid"); + var target_td = $(this).find("td:nth-child(5)") if(td.length && ! td.children("button, span").length ) { + if(tr.hasClass("live")) { + $(target_td).append($(view).addClass("view") + .click(function() { view_campaign(tr) })); + } /* once paid, we shouldn't muck around with the campaign */ if(!tr.hasClass("complete")) { if (tr.hasClass("sponsor") && !tr.hasClass("free")) { @@ -350,3 +363,7 @@ function free_campaign(elem) { function pay_campaign(elem) { $.redirect($(elem).find('input[name="pay_url"]').val()); } + +function view_campaign(elem) { + $.redirect($(elem).find('input[name="view_live_url"]').val()); +}