Beispiel #1
0
def network_advertiser_tracking_edit(request, advertiser_id, action_id):
    ''' View to allow a Network Admin to edit the tracking actions of an Advertiser '''

    advertiser = get_object_or_404(request.user.get_profile().admin_assigned_advertisers(), id=advertiser_id)
    action = get_object_or_404(advertiser.action_set, id=action_id)
    apeRedirect = 0
    securePixel = ""
    nonSecurePixel = ""
    if request.method == 'POST':
        form = NetworkActionForm(request.POST)

        if form.is_valid():
            
            if action.ape_redirect_id == None or action.ape_redirect_id == 0:
                apeClient = Ape()
                success, createPixel = apeClient.execute_redirect_create()
                if success:
                    action.ape_redirect_id = createPixel['redirect_id']
            
            action.status = form.cleaned_data['status']
            action.name = form.cleaned_data['name']
            if form.cleaned_data['invite_id']:
                action.invite_id = form.cleaned_data['invite_id']
                
            action.network_fee = 0
            action.advertiser_payout_type=str(form.cleaned_data['advertiser_payout_type'])
            action.advertiser_payout_amount=str(form.cleaned_data['advertiser_payout_amount'])
            action.save()            
            return HttpResponseRedirect('/network/advertiser/tracking/%d/' % advertiser.id)
    else:
        if action.ape_redirect_id > 0:
            apeRedirect = base36_encode(action.ape_redirect_id)            
            securePixel = settings.APE_SECURE_PIXEL_URL + str(apeRedirect)
            nonSecurePixel = settings.APE_PIXEL_URL + str(apeRedirect)
            if action.ape_action_id != None:
                apeAction = base36_encode(action.ape_action_id)      
                securePixel = '%s/%s/' % (securePixel, apeAction)
                nonSecurePixel = '%s/%s/' % (nonSecurePixel, apeAction)
                
        else:
            apeRedirect = 0
        form = NetworkActionForm(initial={ 'name' : action.name, 'status' : action.status,
                                           'advertiser_payout_type' : action.advertiser_payout_type,
                                           'advertiser_payout_amount' : action.advertiser_payout_amount,
                                           'invite_id' : action.invite_id })

    
    return AQ_render_to_response(request, 'network/tracking-edit.html', {
            'advertiser' : advertiser,
            'action' : action,
            'form' : form,
            'apeRedirect' : apeRedirect,
            'securePixel' : securePixel,
            'nonSecurePixel' : nonSecurePixel,
        }, context_instance=RequestContext(request))
Beispiel #2
0
def phil_test(request):
    import tempfile
    from atrinsic.base.models import Website
    from atrinsic.web.helpers import base36_encode
    from django.utils.encoding import smart_str
    from atrinsic.util.xls import write_rows
    
    file_id,file_path = tempfile.mkstemp()
	
    #date joined in PublisherRelationship
	
    res = [["Website ID","Encoded id","Website Url"]]
    qs = Website.objects.filter(publisher=1101)
    for row in qs:
        """dateJoined = smart_str(PublisherRelationship.objects.get(advertiser=request.organization, publisher=row, status = 3).date_accepted)
        if dateJoined == 'None':
            dateJoined = smart_str(PublisherRelationship.objects.get(advertiser=request.organization, publisher=row, status = 3).date_initiated)
            print '****** %s', dateJoined"""
        #base publisher relationship.. for Date Joined

        res.append([str(int(row.pk)),
                    str(base36_encode(int(row.pk))),
                    smart_str(row.url)])
    write_rows(file_path,res)
    print res
    res = open(file_path).read()
    
    response = HttpResponse(res,mimetype="application/vnd.ms-excel")
    response['Content-Disposition'] = 'attachment; filename=mypublishers.xls'
    return response
Beispiel #3
0
def phil_test(request):
    import tempfile
    from atrinsic.base.models import Website
    from atrinsic.web.helpers import base36_encode
    from django.utils.encoding import smart_str
    from atrinsic.util.xls import write_rows

    file_id, file_path = tempfile.mkstemp()

    #date joined in PublisherRelationship

    res = [["Website ID", "Encoded id", "Website Url"]]
    qs = Website.objects.filter(publisher=1101)
    for row in qs:
        """dateJoined = smart_str(PublisherRelationship.objects.get(advertiser=request.organization, publisher=row, status = 3).date_accepted)
        if dateJoined == 'None':
            dateJoined = smart_str(PublisherRelationship.objects.get(advertiser=request.organization, publisher=row, status = 3).date_initiated)
            print '****** %s', dateJoined"""
        #base publisher relationship.. for Date Joined

        res.append([
            str(int(row.pk)),
            str(base36_encode(int(row.pk))),
            smart_str(row.url)
        ])
    write_rows(file_path, res)
    print res
    res = open(file_path).read()

    response = HttpResponse(res, mimetype="application/vnd.ms-excel")
    response['Content-Disposition'] = 'attachment; filename=mypublishers.xls'
    return response
Beispiel #4
0
def old_invite_redirects(request):
    from atrinsic.base.models import Action, Link, Website
    from atrinsic.web.helpers import base36_encode
    params = request.GET
    url = ""
    if request.GET.get('pixelID', None):
        #if its conversion reported by the advertiser
        action = Action.objects.get(invite_id=request.GET.get('pixelID', None))
        apeRedirect = base36_encode(action.ape_redirect_id)
        if request.is_secure():
            url = settings.APE_SECURE_PIXEL_URL + str(apeRedirect)
        else:
            url = settings.APE_PIXEL_URL + str(apeRedirect)
    elif params.get('igCode', None) and params.get('crID', None):
        #if its click/impression reported by the publisher
        website = Website.objects.get(pk=params['igCode'])
        link = Link.objects.get(invite_id=params['crID'])
        url = link.track_html_ape(website, True)
    return HttpResponseRedirect(url)
Beispiel #5
0
def old_invite_redirects(request):
    from atrinsic.base.models import Action, Link, Website
    from atrinsic.web.helpers import base36_encode
    params = request.GET
    url = ""
    if request.GET.get('pixelID',None):
        #if its conversion reported by the advertiser
        action = Action.objects.get(invite_id=request.GET.get('pixelID',None))
        apeRedirect = base36_encode(action.ape_redirect_id)
        if request.is_secure():
            url = settings.APE_SECURE_PIXEL_URL + str(apeRedirect)
        else:
            url = settings.APE_PIXEL_URL + str(apeRedirect)
    elif params.get('igCode',None) and params.get('crID',None):
        #if its click/impression reported by the publisher
        website = Website.objects.get(pk = params['igCode'])
        link = Link.objects.get(invite_id = params['crID'])
        url = link.track_html_ape(website,True)
    return HttpResponseRedirect(url)
Beispiel #6
0
def publisher_links_adbuilder(request):
    '''@tab("Publisher","Links","Links")'''
    from forms import adbuilderForm
    from atrinsic.base.models import Organization, PublisherRelationship
    from atrinsic.util.xls import write_rows
    import tempfile
    from atrinsic.web.helpers import base36_encode

    pubs = PublisherRelationship.objects.filter(advertiser='711')
    res = [["pub id", "encrypted"]]

    file_id, file_path = tempfile.mkstemp()
    filename = 'pubs.xls'

    for p in pubs:
        res.append([str(p.publisher.pk), str(base36_encode(p.publisher.pk))])

    write_rows(file_path, res)
    res = open(file_path).read()

    response = HttpResponse(res, mimetype="application/vnd.ms-excel")
    response['Content-Disposition'] = 'attachment; filename=%s' % filename

    return response
Beispiel #7
0
def publisher_links_adbuilder(request):
    '''@tab("Publisher","Links","Links")'''
    from forms import adbuilderForm
    from atrinsic.base.models import Organization,PublisherRelationship
    from atrinsic.util.xls import write_rows
    import tempfile
    from atrinsic.web.helpers import base36_encode 
    
    pubs =  PublisherRelationship.objects.filter(advertiser='711')
    res = [["pub id", "encrypted"]]
    
    file_id,file_path = tempfile.mkstemp()
    filename = 'pubs.xls'
    
    for p in pubs:
        res.append([str(p.publisher.pk),str(base36_encode(p.publisher.pk))])
    
    write_rows(file_path,res)
    res = open(file_path).read()

    response = HttpResponse(res,mimetype="application/vnd.ms-excel")
    response['Content-Disposition'] = 'attachment; filename=%s' % filename

    return response
Beispiel #8
0
def network_advertiser_tracking_edit(request, advertiser_id, action_id):
    ''' View to allow a Network Admin to edit the tracking actions of an Advertiser '''

    advertiser = get_object_or_404(
        request.user.get_profile().admin_assigned_advertisers(),
        id=advertiser_id)
    action = get_object_or_404(advertiser.action_set, id=action_id)
    apeRedirect = 0
    securePixel = ""
    nonSecurePixel = ""
    if request.method == 'POST':
        form = NetworkActionForm(request.POST)

        if form.is_valid():

            if action.ape_redirect_id == None or action.ape_redirect_id == 0:
                apeClient = Ape()
                success, createPixel = apeClient.execute_redirect_create()
                if success:
                    action.ape_redirect_id = createPixel['redirect_id']

            action.status = form.cleaned_data['status']
            action.name = form.cleaned_data['name']
            if form.cleaned_data['invite_id']:
                action.invite_id = form.cleaned_data['invite_id']

            action.network_fee = 0
            action.advertiser_payout_type = str(
                form.cleaned_data['advertiser_payout_type'])
            action.advertiser_payout_amount = str(
                form.cleaned_data['advertiser_payout_amount'])
            action.save()
            return HttpResponseRedirect('/network/advertiser/tracking/%d/' %
                                        advertiser.id)
    else:
        if action.ape_redirect_id > 0:
            apeRedirect = base36_encode(action.ape_redirect_id)
            securePixel = settings.APE_SECURE_PIXEL_URL + str(apeRedirect)
            nonSecurePixel = settings.APE_PIXEL_URL + str(apeRedirect)
            if action.ape_action_id != None:
                apeAction = base36_encode(action.ape_action_id)
                securePixel = '%s/%s/' % (securePixel, apeAction)
                nonSecurePixel = '%s/%s/' % (nonSecurePixel, apeAction)

        else:
            apeRedirect = 0
        form = NetworkActionForm(
            initial={
                'name': action.name,
                'status': action.status,
                'advertiser_payout_type': action.advertiser_payout_type,
                'advertiser_payout_amount': action.advertiser_payout_amount,
                'invite_id': action.invite_id
            })

    return AQ_render_to_response(request,
                                 'network/tracking-edit.html', {
                                     'advertiser': advertiser,
                                     'action': action,
                                     'form': form,
                                     'apeRedirect': apeRedirect,
                                     'securePixel': securePixel,
                                     'nonSecurePixel': nonSecurePixel,
                                 },
                                 context_instance=RequestContext(request))