def moderation_pass(self, post, request): post.status = True post.is_spam = False post.user.get_profile().add_points(3) send_to_announce_mailing_list(post.__class__, post, created=True) send_mail('Content Approved', self.approved_message_text(post), settings.DEFAULT_FROM_EMAIL, [post.user.email])
def job_payment_thanks(request, job_id): context = RequestContext(request) announcement = '' job = Job.objects.get(pk = job_id, is_spam=False) if not job.status: job.status = True job.save() if request.GET.get("tx"): #paypal payment, so create payment and send receipt amount = decimal.Decimal('25.00') payment = JobPostingPayment(user=request.user, job=job, amount=amount) payment.save() payment.send_receipt() if not job.has_been_sent_to_list(): send_to_announce_mailing_list(job.__class__, job, created=True) return render_to_response("announce/job_payment_thanks.html", {"announcement":job,}, context)
def job_payment_thanks(request, job_id): context = RequestContext(request) announcement = '' job = Job.objects.get(pk=job_id, is_spam=False) if not job.status: job.status = True job.save() if request.GET.get("tx"): #paypal payment, so create payment and send receipt amount = decimal.Decimal('25.00') payment = JobPostingPayment(user=request.user, job=job, amount=amount) payment.save() payment.send_receipt() if not job.has_been_sent_to_list(): send_to_announce_mailing_list(job.__class__, job, created=True) return render_to_response("announce/job_payment_thanks.html", { "announcement": job, }, context)
def moderation_pass(self, post, request): post.status = True post.is_spam = False post.user.get_profile().add_points(3) send_to_announce_mailing_list(post.__class__, post, created=True) send_mail("Content Approved", self.approved_message_text(post), settings.DEFAULT_FROM_EMAIL, [post.user.email])
def edit(request, type, id): context = RequestContext(request) username = request.user.get_profile() #CHECK THE TYPE, GRAB OBJECT OR CATCH MISSING INFO if type == 'opportunities': announcement = get_object_or_404(Opportunity, id=id, is_spam=False) announcement_form = OpportunityForm( request.POST or None, request.FILES or None, instance=announcement, initial={'username':username} ) elif type == 'jobs': announcement = get_object_or_404(Job, id=id, is_spam=False) announcement_form = JobForm( request.POST or None, request.FILES or None, instance=announcement, initial={'username':username} ) elif type == 'events': announcement = get_object_or_404(Event, id=id, is_spam=False) announcement_form = EventForm( request.POST or None, request.FILES or None, instance=announcement, initial={'username':username} ) else: raise Http404 if not announcement.can_edit(): # can only edit if announcement less than 2 wks old... return HttpResponseRedirect(reverse('announce_index')) else: # MAKE SURE THE USER OWNS THE ANNOUNCEMENT if request.user != announcement.user: return HttpResponseRedirect(reverse('announce_index')) else: # HANDLE THE POST if request.method == 'POST': if request.POST.get("form-type") == "opportunity-form": announcement_form = OpportunityForm( request.POST, request.FILES or None, instance=announcement, initial={'username':username} ) if request.POST.get("form-type") == "job-form": announcement_form = JobForm( request.POST, request.FILES or None, instance=announcement, initial={'username':username} ) if request.POST.get("form-type") == "event-form": announcement_form = EventForm( request.POST, request.FILES or None, instance=announcement, initial={'username':username} ) if announcement_form.is_valid(): announcement = announcement_form.save(commit=False) announcement.user_id = request.user.id announcement.ip_address = request.META["REMOTE_ADDR"] if request.POST.get("delete_image"): if announcement.image: import os if os.path.exists(announcement.image.path): os.remove(announcement.image.path) announcement.image = None #save now so can create thumbanail with id in title announcement.save() if announcement.image and not announcement.thumbnail: announcement.thumbnail = create_thumbnail(announcement.image) announcement.save() #### # if announcement is not yet published #### if request.POST.get("status") == "preview": announcement.status = False announcement.save() return HttpResponseRedirect(reverse(preview, kwargs={'type':type, 'id':announcement.id})) if request.POST.get("status") == "publish": if type == 'jobs' and not announcement.is_paid() and not request.user.get_profile().is_member(): return HttpResponseRedirect(reverse(job_payment)) if not moderator.process(announcement, request): announcement.status = True announcement.save() send_to_announce_mailing_list(announcement.__class__, announcement, created=True) return HttpResponseRedirect(reverse(thanks, kwargs={'type':type,'id':announcement.id})) #### # if announcement is published #### if request.POST.get("status") == "unpublish": announcement.status = False announcement.save() #return HttpResponseRedirect('/announce/%s/%s/preview/' % (type, announcement.id)) return HttpResponseRedirect(reverse(edit,kwargs={'type':type,'id':announcement.id})) if request.POST.get("status") == "update": moderator.process(announcement, request) #return HttpResponseRedirect('/announce/%s/%s/preview/' % (type, announcement.id)) return HttpResponseRedirect(reverse(thanks,kwargs={'type':type,'id':announcement.id})) else: if type == 'opportunities': announcement_form = OpportunityForm(request.POST) if type == 'jobs': announcement_form = JobForm(request.POST) if type == 'events': announcement_form = EventForm(request.POST) return render_to_response( "announce/submit.html", {"announcement_form":announcement_form, "type": type }, context )
def submit(request, type = None): context = RequestContext(request) if type == 'opportunities': announcement_form = OpportunityForm() if type == 'jobs': announcement_form = JobForm() if type == 'events': announcement_form = EventForm() if type == None: type = "opportunities" announcement_form = OpportunityForm() if request.method == 'POST': if request.POST.get("form-type") == "opportunity-form": announcement_form = OpportunityForm(request.POST, request.FILES or None) if request.POST.get("form-type") == "job-form": announcement_form = JobForm(request.POST, request.FILES or None) if request.POST.get("form-type") == "event-form": announcement_form = EventForm(request.POST, request.FILES or None) if announcement_form.is_valid(): announcement = announcement_form.save(commit=False) announcement.user_id = request.user.id announcement.username = strip_tags(request.user.get_profile()) announcement.title = strip_tags(announcement.title) announcement.url = strip_tags(announcement.url) announcement.description = strip_tags(announcement.description) announcement.subtype = strip_tags(announcement.subtype) announcement.ip_address = request.META["REMOTE_ADDR"] announcement.status = False #save now so can create thumbanail with id in title announcement.save() if announcement.image: #create_thumbnails uses saved image announcement.thumbnail = create_thumbnail(announcement.image) announcement.save()#save again after creating thumbnail if request.POST.get("status") == "preview": #return HttpResponseRedirect('/announce/%s/%s/preview/' % (type, announcement.id)) return HttpResponseRedirect(reverse(preview,kwargs={'type':type,'id':announcement.id})) elif request.POST.get("status") == "publish": if type == 'jobs' and not announcement.is_paid() and not request.user.get_profile().is_member(): return HttpResponseRedirect(reverse(job_payment)) if not moderator.process(announcement, request): announcement.status = True announcement.save() send_to_announce_mailing_list(announcement.__class__, announcement, created=True) return HttpResponseRedirect(reverse(thanks, kwargs={'type':type,'id':announcement.id})) return render_to_response( "announce/submit.html", {"announcement_form":announcement_form, "type":type}, context )
def edit(request, type, id): context = RequestContext(request) username = request.user.get_profile() #CHECK THE TYPE, GRAB OBJECT OR CATCH MISSING INFO if type == 'opportunities': announcement = get_object_or_404(Opportunity, id=id, is_spam=False) announcement_form = OpportunityForm(request.POST or None, request.FILES or None, instance=announcement, initial={'username': username}) elif type == 'jobs': announcement = get_object_or_404(Job, id=id, is_spam=False) announcement_form = JobForm(request.POST or None, request.FILES or None, instance=announcement, initial={'username': username}) elif type == 'events': announcement = get_object_or_404(Event, id=id, is_spam=False) announcement_form = EventForm(request.POST or None, request.FILES or None, instance=announcement, initial={'username': username}) else: raise Http404 if not announcement.can_edit(): # can only edit if announcement less than 2 wks old... return HttpResponseRedirect(reverse('announce_index')) else: # MAKE SURE THE USER OWNS THE ANNOUNCEMENT if request.user != announcement.user: return HttpResponseRedirect(reverse('announce_index')) else: # HANDLE THE POST if request.method == 'POST': if request.POST.get("form-type") == "opportunity-form": announcement_form = OpportunityForm( request.POST, request.FILES or None, instance=announcement, initial={'username': username}) if request.POST.get("form-type") == "job-form": announcement_form = JobForm(request.POST, request.FILES or None, instance=announcement, initial={'username': username}) if request.POST.get("form-type") == "event-form": announcement_form = EventForm( request.POST, request.FILES or None, instance=announcement, initial={'username': username}) if announcement_form.is_valid(): announcement = announcement_form.save(commit=False) announcement.user_id = request.user.id announcement.ip_address = request.META["REMOTE_ADDR"] if request.POST.get("delete_image"): if announcement.image: import os if os.path.exists(announcement.image.path): os.remove(announcement.image.path) announcement.image = None #save now so can create thumbanail with id in title announcement.save() if announcement.image and not announcement.thumbnail: announcement.thumbnail = create_thumbnail( announcement.image) announcement.save() #### # if announcement is not yet published #### if request.POST.get("status") == "preview": announcement.status = False announcement.save() return HttpResponseRedirect( reverse(preview, kwargs={ 'type': type, 'id': announcement.id })) if request.POST.get("status") == "publish": if type == 'jobs' and not announcement.is_paid( ) and not request.user.get_profile().is_member(): return HttpResponseRedirect(reverse(job_payment)) if not moderator.process(announcement, request): announcement.status = True announcement.save() send_to_announce_mailing_list( announcement.__class__, announcement, created=True) return HttpResponseRedirect( reverse(thanks, kwargs={ 'type': type, 'id': announcement.id })) #### # if announcement is published #### if request.POST.get("status") == "unpublish": announcement.status = False announcement.save() #return HttpResponseRedirect('/announce/%s/%s/preview/' % (type, announcement.id)) return HttpResponseRedirect( reverse(edit, kwargs={ 'type': type, 'id': announcement.id })) if request.POST.get("status") == "update": moderator.process(announcement, request) #return HttpResponseRedirect('/announce/%s/%s/preview/' % (type, announcement.id)) return HttpResponseRedirect( reverse(thanks, kwargs={ 'type': type, 'id': announcement.id })) else: if type == 'opportunities': announcement_form = OpportunityForm(request.POST) if type == 'jobs': announcement_form = JobForm(request.POST) if type == 'events': announcement_form = EventForm(request.POST) return render_to_response("announce/submit.html", { "announcement_form": announcement_form, "type": type }, context)
def submit(request, type=None): context = RequestContext(request) if type == 'opportunities': announcement_form = OpportunityForm() if type == 'jobs': announcement_form = JobForm() if type == 'events': announcement_form = EventForm() if type == None: type = "opportunities" announcement_form = OpportunityForm() if request.method == 'POST': if request.POST.get("form-type") == "opportunity-form": announcement_form = OpportunityForm(request.POST, request.FILES or None) if request.POST.get("form-type") == "job-form": announcement_form = JobForm(request.POST, request.FILES or None) if request.POST.get("form-type") == "event-form": announcement_form = EventForm(request.POST, request.FILES or None) if announcement_form.is_valid(): announcement = announcement_form.save(commit=False) announcement.user_id = request.user.id announcement.username = strip_tags(request.user.get_profile()) announcement.title = strip_tags(announcement.title) announcement.url = strip_tags(announcement.url) announcement.description = strip_tags(announcement.description) announcement.subtype = strip_tags(announcement.subtype) announcement.ip_address = request.META["REMOTE_ADDR"] announcement.status = False #save now so can create thumbanail with id in title announcement.save() if announcement.image: #create_thumbnails uses saved image announcement.thumbnail = create_thumbnail(announcement.image) announcement.save() #save again after creating thumbnail if request.POST.get("status") == "preview": #return HttpResponseRedirect('/announce/%s/%s/preview/' % (type, announcement.id)) return HttpResponseRedirect( reverse(preview, kwargs={ 'type': type, 'id': announcement.id })) elif request.POST.get("status") == "publish": if type == 'jobs' and not announcement.is_paid( ) and not request.user.get_profile().is_member(): return HttpResponseRedirect(reverse(job_payment)) if not moderator.process(announcement, request): announcement.status = True announcement.save() send_to_announce_mailing_list(announcement.__class__, announcement, created=True) return HttpResponseRedirect( reverse(thanks, kwargs={ 'type': type, 'id': announcement.id })) return render_to_response("announce/submit.html", { "announcement_form": announcement_form, "type": type }, context)