Пример #1
0
def saveSfdcCampaignsToMaster(user_id=None, company_id=None, job_id=None, run_type=None):    
    #job_id = ObjectId("56d25c6af6fd2a15df46cd60")
    if run_type == 'initial':
        campaigns = TempData.objects(Q(company_id=company_id) & Q(record_type='campaign') & Q(source_system='sfdc') & Q(job_id=job_id) ).only('source_record') #& Q(job_id=job_id) 
    else:
        campaigns = TempDataDelta.objects(Q(company_id=company_id) & Q(record_type='campaign') & Q(source_system='sfdc') & Q(job_id=job_id) ).only('source_record') #& Q(job_id=job_id) 
    
    campaignListTemp = list(campaigns)
    campaignList = [i['source_record'] for i in campaignListTemp]
    
    try: 
        for newCampaign in campaignList: #['records']: 
            #company_id = request.user.company_id
            guid = 'sfdc_' + str(newCampaign['Id']) 
            Campaign.objects(Q(guid = guid) & Q(company_id=company_id)).modify(upsert=True, new=True, set__campaigns__sfdc = newCampaign, set__updated_date = datetime.utcnow, set_on_insert__source_system = 'sfdc', set_on_insert__guid = guid, set_on_insert__company_id = company_id)

#         for oldCampaign in campaignList['records']: 
# #             mktoCampaigns = []  
# #             mktoCampaigns.append(campaign)            
#             campaign = Campaign()
#             campaign.company_id = request.user.company_id
#             campaign.derived_id = 'sfdc_' + str(oldCampaign['Id'])
#             campaign.campaigns["sfdc"] = oldCampaign
#             campaign.save()
    except Exception as e:
        print 'error while saving sfdc campaign: ' + str(e)
        send_notification(dict(
         type='error',
         success=False,
         message=str(e)
        ))    
Пример #2
0
def new_campaign(request):
    if request.is_ajax():
        if (request.POST.get("author") == request.user.username):
            c = Campaign()
            c.creator = request.user
            c.owner = request.user
            c.title = request.POST.get("title")
            c.description = request.POST.get("description")
            c.private = request.POST.get("private")
            if (request.POST.get("hasImg") == "true"):
                c.img = request.FILES['img']
            c.save()
            return HttpResponse(json.dumps(str(c.id)),
                                content_type="application/json")
        else:
            return HttpResponse(json.dumps("invalid credentials"),
                                content_type="application/json")
    else:
        return Http404
Пример #3
0
    def test_campaign_is_related_to_user(self):
        user_ = User.objects.create_user('Flumphy', '*****@*****.**',
                                         'dire565Flumpher')
        user_.save()
        _campaign = Campaign()
        _campaign.Name = 'Test of the Flumph'
        _campaign.save()
        _campaign.Users.add(user_)
        _campaign.save()

        self.assertIn(_campaign, user_.campaigns.all())
Пример #4
0
    def restore_object(self, attrs, instance=None):
        """
        Create or update a new snippet instance, given a dictionary
        of deserialized field values.

        Note that if we don't define this method, then deserializing
        data will simply return a dictionary of items.
        """
        if instance:
            # Update existing instance
            instance.name = attrs.get('name', instance.name)
            instance.slug = attrs.get('slug', instance.slug)
            instance.ended_at = attrs.get('ended_at', instance.ended_at)
            return instance

        # Create new instance
        return Campaign(**attrs)
Пример #5
0
 def get_context_data(self, **kwargs):
     from campaigns.models import Campaign
     kwargs['current_campaign'] = Campaign.get_latest_top_level_campaign()
     return super(HomepageView, self).get_context_data(**kwargs)
Пример #6
0
 def post(self, request):
     attrs = json.loads(request.body)
     campaign = Campaign()
     return self.update_attrs(request, campaign, attrs)