def edit_sale(request, id): """ Updates a sale transaction """ sale = get_object_or_404(Sale, pk=id, user=request.user) if request.method == 'POST': form = SaleForm(request.POST, instance=sale, user_id=request.user.pk) if form.is_valid(): form.save() return HttpResponseRedirect('/core/sale/') else: form = SaleForm(instance=sale, user_id=request.user.pk) return render_to_response('core/manage_sale.html', {'form': form, 'is_new': False}, context_instance=RequestContext(request))
def edit_sale(request, id): """ Updates a sale transaction """ sale = get_object_or_404(Sale, pk=id, user=request.user) if request.method == 'POST': form = SaleForm(request.POST, instance=sale, user_id=request.user.pk) if form.is_valid(): form.save() return HttpResponseRedirect('/core/sale/') else: form = SaleForm(instance=sale, user_id=request.user.pk) return render_to_response('core/manage_sale.html', { 'form': form, 'is_new': False }, context_instance=RequestContext(request))
def new_sale(request): """View for handling the creation of new sales.""" form = SaleForm() error = "" facebook = get_facebook_graph(request) != None if request.method == "POST": data = request.POST.copy() data["merchant"] = request.user.id data["status"] = Sale.PENDING form = SaleForm(data) if form.is_valid(): sale = form.save(commit=False) sale.expires = form.cleaned_data["expires"] url = request.POST.get("image", "") if url == "" or len(url) > 1000: sale.image = File(open(os.path.join(STATIC_ROOT, "img/book_placeholder.gif"))) else: req = urllib2.Request(url, headers={"User-Agent": "Magic Browser"}) img_temp = NamedTemporaryFile(delete=True) image = urllib2.urlopen(req).read() img_temp.write(image) img_temp.flush() try: im = Image.open(StringIO.StringIO(image)) im.verify() except Exception, e: error = "Invalid image URL." + str(e) return load_page(request, "new_sale.html", {"form": form, "error": error}) filename = data["image"] if "." in data["image"][-5:] else data["image"] + ".png" sale.image.save(filename, File(img_temp)) sale.save() message = "Thanks, your sale has been listed!" try: if request.POST["facebook"]: share_sale(request, sale) message += " A post has been added to your timeline." except: pass return index(request, flash=message)
def add_sale(request): """ Creates a sale transaction """ if request.method == 'POST': form = SaleForm(request.POST, user_id=request.user.pk) if form.is_valid(): sale = form.save(commit=False) sale.user = request.user sale.save() return HttpResponseRedirect('/core/sale/') else: form = SaleForm(user_id=request.user.pk) return render_to_response('core/manage_sale.html', {'form': form, 'is_new': True, 'products': Product.objects.filter(user=request.user)}, context_instance=RequestContext(request))
def add_sale(request): """ Creates a sale transaction """ if request.method == 'POST': form = SaleForm(request.POST, user_id=request.user.pk) if form.is_valid(): sale = form.save(commit=False) sale.user = request.user sale.save() return HttpResponseRedirect('/core/sale/') else: form = SaleForm(user_id=request.user.pk) return render_to_response( 'core/manage_sale.html', { 'form': form, 'is_new': True, 'products': Product.objects.filter(user=request.user) }, context_instance=RequestContext(request))