def return_list_of_cards_from_request(request):	
	carrinho = request.session.get('carrinho')
	
	if carrinho == None:
		return None
	
	pais = page_users_utils.get_pais_from_request(request)
	
	carrinho = eval(carrinho)
	
	if int(carrinho['number_cards']) == 0:
		return None
	
	cards_cart = []
	
	number_cards = carrinho['number_cards']
	
	
	logging.info("number_cards " + str(number_cards))
	logging.info("total_number_cards " + str(carrinho['total_number_cards']))
	
	for card in range(number_cards):
		card_id = "card" + str(card+1)
		
		try:
			name = carrinho['cards'][card_id]['name']
			edition = carrinho['cards'][card_id]['edition']
			quantity = carrinho['cards'][card_id]['quantity']
			
			logging.info(name)
			logging.info(edition)
			logging.info(quantity)
	
			real_card = cartas_mtg.all().filter('nome =',name).filter('edicao =',edition).get()
		
			stock = real_card.stock
			real_value = real_card.real_value
			conversion = card_database_utils.real_price_by_credits(real_value,pais)
			raridade = real_card.raridade
		
			#to not use card and to add field quantity
			card_in_cart = cartas_mtg_store(name,raridade,edition,stock,real_value,conversion,quantity)
		
			cards_cart.append(card_in_cart)
		except:
			pass
			
	if cards_cart == []:
		return None
		
	return cards_cart
def search_cards_user(request):

    number_cards = 0

    country = page_users_utils.get_pais_from_request(request)

    dic = {"number_cards": number_cards, "cards": {}}

    try:
        keywords = request.POST["keywords"]
    except:
        return HttpResponse(simplejson.dumps(dic), mimetype="application/json")
    try:
        edition = request.POST["edition"]
    except:
        return HttpResponse(simplejson.dumps(dic), mimetype="application/json")
    try:
        colour = request.POST["colour"]
    except:
        return HttpResponse(simplejson.dumps(dic), mimetype="application/json")

    if country not in constants.ALLOWED_COUNTRIES or colour not in constants.ALLOWED_COLOURS_USER_CARD_SEARCH:
        return HttpResponse(simplejson.dumps(dic), mimetype="application/json")

    cards = cartas_mtg.user_search(keywords, colour, edition)

    for card in cards:
        number_cards = number_cards + 1
        dic["cards"]["card" + str(number_cards)] = {
            "name": card.nome,
            "colour": card.cor,
            "cost": card_cost_to_images(card.custo),
            "type": card.tipo,
            "power_res": card.poder_resistencia,
            "raridade": card.raridade,
            "edition": card.edicao,
            "stock": card.stock,
            "preco": card.real_value,
            "preco_conversao": real_price_by_credits(card.real_value, country),
            "texto": clean_card_text(card.texto),
        }

    logging.info("User = "******"Keywords = " + keywords)
    logging.info("Edition = " + edition)
    logging.info("Colour = " + colour)

    dic["number_cards"] = number_cards
    return HttpResponse(simplejson.dumps(dic), mimetype="application/json")
Example #3
0
def payment(request):
	pais = page_users_utils.get_pais_from_request(request)
	
	if pais == "Portugal":
		return direct_to_template(request, 'payment.html',
			{'portugal':pais, 
			'saldo': str(page_users_utils.get_saldo_from_email(request.user.email)), 
			'moeda': constants.MOEDA_DA_PAGINA,
			'valor_do_site': constants.VALOR_MOEDA_DO_SITE_PORTUGAL})
	if pais == "Brasil":
		return direct_to_template(request, 
			'payment.html',{'brasil':pais, 
			'saldo': str(page_users_utils.get_saldo_from_email(request.user.email)), 
			'moeda': constants.MOEDA_DA_PAGINA,
			'valor_do_site': constants.VALOR_MOEDA_DO_SITE_BRASIL})
Example #4
0
def main_page(request):
	pais = page_users_utils.get_pais_from_request(request)
	
	if pais == "Portugal":
		valor_moeda = constants.VALOR_MOEDA_DO_SITE_PORTUGAL
		return direct_to_template(request, "main_page.html", 
			{'portugal':pais,
			'valor_do_site':valor_moeda, 
			'moeda':constants.MOEDA_DA_PAGINA ,
			'preco_comum':constants.VALUE_OF_COMMON_CARD,
			'preco_incomum': constants.VALUE_OF_UNCOMMON_CARD, 
			'preco_rara': constants.VALUE_OF_RARE_CARD,
			'preco_venda_comum':constants.VALUE_OF_COMMON_CARD/2, 
			'preco_venda_incomum': constants.VALUE_OF_UNCOMMON_CARD/2, 
			'preco_venda_rara': constants.VALUE_OF_RARE_CARD/2, 
			'saldo': str(page_users_utils.get_saldo_from_email(request.user.email)),
			'internacional': constants.CORREIO_INTERNACIONAL,
			'azul': constants.CORREIO_AZUL,
			'registado': constants.CORREIO_REGISTADO})
	if pais == "Brasil":	
		valor_moeda = constants.VALOR_MOEDA_DO_SITE_BRASIL
		return direct_to_template(request, "main_page.html", 
			{'brasil':pais,'valor_do_site':valor_moeda, 
			'moeda':constants.MOEDA_DA_PAGINA ,
			'preco_comum':constants.VALUE_OF_COMMON_CARD,
			'preco_incomum': constants.VALUE_OF_UNCOMMON_CARD, 
			'preco_rara': constants.VALUE_OF_RARE_CARD,
			'preco_venda_comum':constants.VALUE_OF_COMMON_CARD/2, 
			'preco_venda_incomum': constants.VALUE_OF_UNCOMMON_CARD/2, 
			'preco_venda_rara': constants.VALUE_OF_RARE_CARD/2, 
			'saldo': str(page_users_utils.get_saldo_from_email(request.user.email)),
			'internacional': constants.CORREIO_INTERNACIONAL,
			'azul': constants.CORREIO_AZUL,
			'registado': constants.CORREIO_REGISTADO,
			'internacional_rastreio': constants.CORREIO_INTERNACIONAL_COM_RASTREIO})
		
	return direct_to_template(request, "main_page.html", 
		{'portugal':pais,'valor_do_site':valor_moeda, 
		'moeda':constants.MOEDA_DA_PAGINA ,
		'preco_comum':constants.VALUE_OF_COMMON_CARD,
		'preco_incomum': constants.VALUE_OF_UNCOMMON_CARD, 
		'preco_rara': constants.VALUE_OF_RARE_CARD,
		'preco_venda_comum':constants.VALUE_OF_COMMON_CARD/2, 
		'preco_venda_incomum': constants.VALUE_OF_UNCOMMON_CARD/2, 
		'preco_venda_rara': constants.VALUE_OF_RARE_CARD/2, 
		'saldo': str(page_users_utils.get_saldo_from_email(request.user.email)),
		'internacional': constants.CORREIO_INTERNACIONAL,
		'azul': constants.CORREIO_AZUL,'registado': constants.CORREIO_REGISTADO})
Example #5
0
def payment_registered(request):
	pais = page_users_utils.get_pais_from_request(request)
	metodo = page_users_utils.get_payment_method_by_user(request)
	
	metodo_code = 0
	if metodo == "Transferencia Bancaria":
		metodo = "transferencia"
		metodo_code = 1
	elif metodo == "Paypal":
		metodo = "paypal"
		metodo_code = 2
	elif metodo == "Pagamento servicos":
		metodo = "pagamento"
		metodo_code = 3
	
	if pais == "Portugal":
		return direct_to_template(request, 'payment_registered.html',{'portugal':pais,metodo:metodo_code})
	if pais == "Brasil":
		return direct_to_template(request, 'payment_registered.html',{'brasil':pais,metodo:metodo_code})
Example #6
0
def view_cards(request):

	#random card list
	card_list = compras_historico_utils.return_list_of_cards_from_compras(request.user.email)
	
	#store card list
	card_list_store = compras_historico_utils.return_list_of_cards_from_request(request)
	
	#User country
	pais = page_users_utils.get_pais_from_request(request)
	
	#get total price for store cart
	total_price = compras_historico_utils.get_total_price_cart(card_list_store)
	
	#total price convertion
	total_price_conversion = card_database_utils.real_price_by_credits(total_price,pais)
	
	if pais == "Portugal":
		valor_moeda = constants.VALOR_MOEDA_DO_SITE_PORTUGAL
	if pais == "Brasil":	
		valor_moeda = constants.VALOR_MOEDA_DO_SITE_BRASIL
		
	if card_list == None and card_list_store == None:
		return direct_to_template(request, 'view_cartas.html', 
			{'valor_do_site':valor_moeda, 
			'moeda': constants.MOEDA_DA_PAGINA,
			'saldo': str(page_users_utils.get_saldo_from_email(request.user.email)),'no_cards': "Nao tem cartas no seu carrinho"} )
	
	return direct_to_template(request, 'view_cartas.html', 
		{'valor_do_site':valor_moeda, 
		'moeda': constants.MOEDA_DA_PAGINA,
		'saldo': str(page_users_utils.get_saldo_from_email(request.user.email)),
		'cartas_random': card_list,
		'cartas_store': card_list_store,
		'total_price':total_price, 
		'total_price_conversion':total_price_conversion})