Exemplo n.º 1
0
def get_cart(request, slug):
	if request.method == 'GET':
		venue = get_object_or_404(Venue, slug=slug)
		itemlist = MenuItem.objects.filter(venue=venue)
		cart = Cart(request)
		cart_total = cart.cart_total()
	if request.method == 'POST':
		venue = get_object_or_404(Venue, slug=slug)
		itemlist = MenuItem.objects.filter(venue=venue)
		cart = Cart(request)
		for item in cart:
			id = item.object_id
			menu_item = get_object_or_404(MenuItem, id=id)
			name = str(item.product.item_name)
			remove_name = name+'_remove'
			if remove_name in request.POST:
				cart.remove(menu_item)
			else:
				quantity = request.POST[name]
				if quantity:
					cart.update(menu_item, quantity, item.unit_price)
		return HttpResponseRedirect(reverse('kiosk.views.get_cart', args=(slug,)))
	note_list = []
	for item in cart:
		note_list.append(str(item.quantity)+" "+item.product.item_name)
	note = ", ".join(note_list)
	link_note = urllib.quote(note)	
	link = 'https://venmo.com?txn=Pay&recipients='+venue.venmo_account+'&amount='+str(cart_total)+"&note="+link_note	
	content = dict(venue=venue, cart=cart, cart_total=cart_total, link=link, note=note)
	return render_to_response('kiosk/cart.html', content, context_instance=RequestContext(request))
Exemplo n.º 2
0
def menu(request, slug):
    if request.method == 'GET':
        venue = get_object_or_404(Venue, slug=slug)
        itemlist = MenuItem.objects.filter(venue=venue)
        cart = Cart(request)
        cart_total = cart.cart_total()
    if request.method == 'POST':
        venue = get_object_or_404(Venue, slug=slug)
        itemlist = MenuItem.objects.filter(venue=venue)
        cart = Cart(request)
        for item in itemlist:
            add_name = str(item.item_name) + '_add'
            if add_name in request.POST:
                uptd = 0
                for c in cart:
                    if c.product.item_name == item.item_name:
                        quantity = c.quantity
                        cart.update(item, quantity + 1, item.price)
                        uptd = 1
                if uptd == 0:
                    cart.add(item, item.price, 1)
        for item in cart:
            id = item.object_id
            menu_item = get_object_or_404(MenuItem, id=id)
            name = str(item.product.item_name)
            remove_name = name + '_remove'
            if remove_name in request.POST:
                cart.remove(menu_item)
            else:
                if name in request.POST:
                    quantity = request.POST[name]
                    if quantity:
                        cart.update(menu_item, quantity, item.unit_price)
        return HttpResponseRedirect(reverse('kiosk.views.menu', args=(slug, )))
    content = dict(venue=venue,
                   itemlist=itemlist,
                   cart=cart,
                   cart_total=cart_total)
    return render_to_response('kiosk/menu.html',
                              content,
                              context_instance=RequestContext(request))
Exemplo n.º 3
0
def get_cart(request, slug):
    if request.method == 'GET':
        venue = get_object_or_404(Venue, slug=slug)
        itemlist = MenuItem.objects.filter(venue=venue)
        cart = Cart(request)
        cart_total = cart.cart_total()
    if request.method == 'POST':
        venue = get_object_or_404(Venue, slug=slug)
        itemlist = MenuItem.objects.filter(venue=venue)
        cart = Cart(request)
        for item in cart:
            id = item.object_id
            menu_item = get_object_or_404(MenuItem, id=id)
            name = str(item.product.item_name)
            remove_name = name + '_remove'
            if remove_name in request.POST:
                cart.remove(menu_item)
            else:
                quantity = request.POST[name]
                if quantity:
                    cart.update(menu_item, quantity, item.unit_price)
        return HttpResponseRedirect(
            reverse('kiosk.views.get_cart', args=(slug, )))
    note_list = []
    for item in cart:
        note_list.append(str(item.quantity) + " " + item.product.item_name)
    note = ", ".join(note_list)
    link_note = urllib.quote(note)
    link = 'https://venmo.com?txn=Pay&recipients=' + venue.venmo_account + '&amount=' + str(
        cart_total) + "&note=" + link_note
    content = dict(venue=venue,
                   cart=cart,
                   cart_total=cart_total,
                   link=link,
                   note=note)
    return render_to_response('kiosk/cart.html',
                              content,
                              context_instance=RequestContext(request))
Exemplo n.º 4
0
def menu(request, slug):
	if request.method == 'GET':
		venue = get_object_or_404(Venue, slug = slug)
		itemlist = MenuItem.objects.filter(venue=venue)
		cart = Cart(request)
		cart_total = cart.cart_total()
	if request.method == 'POST':
		venue = get_object_or_404(Venue, slug = slug)
		itemlist = MenuItem.objects.filter(venue=venue)
		cart = Cart(request)
		for item in itemlist:
			add_name = str(item.item_name)+'_add'
			if add_name in request.POST:
				uptd = 0
				for c in cart:
					if c.product.item_name == item.item_name:
						quantity = c.quantity
						cart.update(item, quantity + 1, item.price)
						uptd = 1
				if uptd == 0:
					cart.add(item, item.price, 1)
		for item in cart:
			id = item.object_id
			menu_item = get_object_or_404(MenuItem, id=id)
			name = str(item.product.item_name)
			remove_name = name+'_remove'
			if remove_name in request.POST:
				cart.remove(menu_item)
			else:
				if name in request.POST:
					quantity = request.POST[name]
					if quantity:
						cart.update(menu_item, quantity, item.unit_price)
		return HttpResponseRedirect(reverse('kiosk.views.menu', args=(slug,)))	
	content = dict(venue=venue, itemlist=itemlist, cart=cart, cart_total=cart_total)
	return render_to_response('kiosk/menu.html', content, context_instance=RequestContext(request))