def submit(request): """ returns a message submission page processes a message submission """ # Process message form if it has been submitted if request.method == 'POST': message_form = MessageForm(request.POST) recipient_form = RecipientForm(request.POST) attachment_form = AttachmentForm(request.POST, request.FILES) # Enter into database and email users if valid if (message_form.is_valid() and recipient_form.is_valid() and attachment_form.is_valid()): message = message_form.save() attachment_form.save(message) recipient_form.save(message) return render_to_response('thanks.html') # If message has not submitted, render message form else: message_form = MessageForm() recipient_form = RecipientForm() attachment_form = AttachmentForm() return render(request, "submit.html", { "formset": message_form, "recipients": recipient_form, "attachments": attachment_form })
def upload_attachments(request): if request.method == "POST": attachment_form = AttachmentForm(request.POST, request.FILES) print request.POST, request.FILES if attachment_form.is_valid(): attachment_form.save() return HttpResponseRedirect('/') else: form = AttachmentForm() return render_to_response('posts/upload_attachments.html', RequestContext(request, {'form':form}))
def form_valid(self, form): topic = get_object_or_404(Topic, pk=self.kwargs['topic_id']) form.instance.topic = topic form.instance.creator = self.request.user comment = form.save() attachment_form = AttachmentForm(self.request.POST, self.request.FILES) attachment_form.instance.comment = comment if attachment_form.is_valid(): attachment_form.save() return HttpResponseRedirect(topic.get_absolute_url())
def step_diagrams(self, request): context = {} # short circuit all mutators if not in edit mode... if self.order.status != WorkingOrder.Const.DEALER_EDIT: if request.method == "POST": return self.dispatch_next_step() if "delete" in request.GET: return HttpResponseRedirect("./") if request.method == "POST": if "upload_file" not in request.POST: self.order.finish_step(self.step) return self.dispatch_next_step() form = AttachmentForm(request.POST, request.FILES) if form.is_valid(): obj = form.save(commit=False) obj.order = self.order obj.save() if obj.file.path.lower().endswith("pdf"): obj.split_pages() # context['confirm_attach'] = obj.id return HttpResponseRedirect("./") # GET processing form = AttachmentForm() if "delete" in request.GET: attach = get_object_or_404(Attachment, order=self.order, id=int(request.GET["delete"])) attach.delete() return HttpResponseRedirect("./") attachments = Attachment.objects.filter(order=self.order) context.update({"form": form, "order": self.order, "attachments": attachments}) return context
def new_attachment(request, attach_to=None, template_name='uploads/new_upload.html', extra_context={}, success_url=None): if attach_to is None: attach_to = request.user if request.method == 'POST': form = AttachmentForm(request.POST, request.FILES) if form.is_valid(): success = form.save(request, attach_to) if success_url is not None: return HttpResponseRedirect(success_url) return HttpResponseRedirect(attach_to.get_absolute_url()) else: form = AttachmentForm() data = {'form': form} data.update(extra_context) return render_to_response(template_name, data, context_instance=RequestContext(request))
def ajax_upload(request): data = {'valid': False, 'errors': ugettext('no file')} attachment_form = AttachmentForm(user=request.user) if request.method == "POST": attachment_form = AttachmentForm(request.POST, request.FILES, user=request.user, \ actived=False) #TODO improve validate if attachment_form.is_valid(): attachment = attachment_form.save() data['valid'] = True data.pop('errors') data['attachment'] = {'id': attachment.id, \ 'fn': attachment.org_filename, 'url': attachment.file.url, 'descn': ''} else: print attachment_form.errors return json_response(data)
def ajax_upload(request): data = {'valid': False, 'errors': ugettext('no file')} attachment_form = AttachmentForm(user=request.user) if request.method == "POST": attachment_form = AttachmentForm(request.POST, request.FILES, user=request.user, \ actived=False) #TODO improve validate if attachment_form.is_valid(): attachment = attachment_form.save() data['valid'] = True data.pop('errors') data['attachment'] = {'id': attachment.id, \ 'fn': attachment.org_filename, 'url': attachment.file.url, 'descn': ''} else: print attachment_form.errors return json_response(data)
def new_attachment(request, attach_to=None, template_name='uploads/new_upload.html', extra_context={}, success_url=None): if attach_to is None: attach_to = request.user if request.method == 'POST': form = AttachmentForm(request.POST, request.FILES) if form.is_valid(): success = form.save(request, attach_to) if success_url is not None: return HttpResponseRedirect(success_url) return HttpResponseRedirect(attach_to.get_absolute_url()) else: form = AttachmentForm() data = {'form': form} data.update(extra_context) return render_to_response(template_name, data, context_instance=RequestContext(request))