def processProd(request): data = request.POST.get('data', None) key = request.POST.get('key', None) resp = '' if data and str(key) == env['SECRET_KEY']: # {sender : (content, [comm_prods], date, subject)} data = json.loads(data) sender = data.keys()[0] content, commprods, date, subject = data[sender] user = None email_search = User.objects.filter(email=sender) alt_email_search = cpm.UserProfile.objects.filter( email__email=sender, email__confirmed=True) if email_search.exists(): user = email_search[0] elif alt_email_search.exists(): user = alt_email_search[0].user else: user, created = create_user(sender, sender) resp += """\nUser %(sender)s with comm prods:\n %(commprods)s""" % { 'sender': sender, 'commprods': commprods } for commprod in commprods: email_content, created = cpm.CommProdEmail\ .objects.get_or_create( user_profile=user.profile, content=content, subject=subject, date=date) if created: email_content.save() media = commprod_contains_media(commprod) media_content = '' if media: media_content = urlize_text(commprod) commprod, created = cpm.CommProd.objects.get_or_create( email_content=email_content, content=commprod, original_content=commprod, user_profile=user.profile, media=media, media_content=media_content, date=date) if created: commprod.save() resp += '\nAdded? %s' % created else: resp = 'No data' if str(key) != env['SECRET_KEY']: # patlsotw resp = 'Success!' return dict(res=resp)
def use_correction(self, save=False): Correction.objects.filter( commprod=self.commprod).update(is_active=False) self.is_active = False self.used = True self.commprod.content = self.content self.commprod.media_content = urlize_text(self.content) self.commprod.media = commprod_contains_media( self.content) self.commprod.save() if save: self.save() # normally called at the end of update_score
def handle(self, **options): self.stdout.write('Starting...\n') commprods = cpm.CommProd.objects.all() for commprod in commprods.iterator(): media = commprod_contains_media(commprod.content) self.stdout.write("""Updating commprod id %(id)s, media? %(media)s\n""" % { 'id': commprod.id, 'media': media }) commprod.media = media if media: # write the media content commprod.media_content = urlize_text( commprod.content) commprod.save() self.stdout.write('Done.\n')