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")
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})
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})
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})
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})