def meusChats(request): user = request.user chats = Chat.objects.filter((Q(locador=user.id) | Q(locatario=user.id))) for chat in chats: if chat.locador != str(user.id): user = MyUser.objects.get(id=chat.locador) try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() if perfil.nome == None or perfil.sobrenome == None: identificador = user.email else: identificador = perfil.nome + " " + perfil.sobrenome chat.nomeSala = "Chat com " + identificador elif chat.locatario != str(user.id): user = MyUser.objects.get(id=chat.locatario) try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() if perfil.nome == None or perfil.sobrenome == None: identificador = user.email else: identificador = perfil.nome + " " + perfil.sobrenome chat.nomeSala = "Chat com " + identificador return render(request, 'chat/meus-chats.html', {'chats': chats})
def excluirContaSubmit(request, userId): user = MyUser.objects.get(id=userId) excluir = 'excluir' senha = request.POST.get("senha") auth = authenticate(email=user.email, password=senha) try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() form = Dados_usuarioForm(instance=perfil) if auth is not None: auth.delete() produtos = Product.objects.filter( Q(alugado=False)).order_by('-id')[0:8] context = {'products': produtos} messages.info(request, 'Sua conta foi excluída com sucesso!') return render(request, 'home/home.html', context) else: messages.error(request, 'Senha incorreta, favor informar a senha correta!') return render(request, 'user/perfil.html', { 'form': form, 'perfil': perfil, 'excluir': excluir })
def alugar(request, productId): user = request.user try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() return render( request, 'products/alugar.html', { 'cpf': perfil.cpf if perfil.cpf != None else "", 'cep': perfil.cep if perfil.cep != None else "", 'cidade': perfil.cidade if perfil.cidade != None else "", 'estado': perfil.estado if perfil.estado != None else "", 'rua': perfil.rua if perfil.rua != None else "", 'bairro': perfil.bairro if perfil.bairro != None else "", 'complemento': perfil.complemento if perfil.complemento != None else "", })
def room(request, room_name, userId): user = MyUser.objects.get(id=userId) try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() try: chat = Chat.objects.get(codigoSala=room_name) except ObjectDoesNotExist: return render(request, 'home/home.html') if perfil.nome == None or perfil.sobrenome == None: identificador = user.email else: identificador = perfil.nome + " " + perfil.sobrenome if chat.locatario == str(userId) or chat.locador == str(userId): mensagensChat = chat.mensagem_set.all() mensagens = '' for mensagemChat in mensagensChat: mensagens += mensagemChat.texto + "\n" return render( request, 'chat/chat.html', { 'room_name': chat.codigoSala, 'identificador': identificador, 'mensagems': mensagens }) return render(request, 'home/home.html')
def criarSalaSubmit(request, idLocatario, idLocador): mensagemEnviada = request.POST.get("mensagem") user = MyUser.objects.get(id=idLocador) try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() if perfil.nome == None or perfil.sobrenome == None: identificador = user.email else: identificador = perfil.nome + " " + perfil.sobrenome chat = Chat.objects.get(locador=idLocador, locatario=idLocatario) mensagem = Mensagem() mensagem.texto = identificador + ": " + mensagemEnviada mensagem.chat = chat mensagem.save() mensagensChat = chat.mensagem_set.all() mensagens = '' for mensagemChat in mensagensChat: mensagens += mensagemChat.texto + "\n" return render( request, 'chat/chat.html', { 'room_name': chat.codigoSala, 'identificador': identificador, 'mensagems': mensagens })
def criarSala(request, idLocatario, idLocador): user = MyUser.objects.get(id=idLocador) try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() try: chat = Chat.objects.get(locador=idLocador, locatario=idLocatario) except ObjectDoesNotExist: chat = Chat() chat.codigoSala = gerarHash(50) chat.locatario = idLocatario chat.locador = idLocador chat.save() if perfil.nome == None or perfil.sobrenome == None: identificador = user.email else: identificador = perfil.nome + " " + perfil.sobrenome mensagensChat = chat.mensagem_set.all() mensagens = '' for mensagemChat in mensagensChat: mensagens += mensagemChat.texto + "\n" return render( request, 'chat/chat.html', { 'room_name': chat.codigoSala, 'identificador': identificador, 'mensagems': mensagens })
def room(request, room_name): user = request.user try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() try: chat = Chat.objects.get(codigoSala=room_name) except ObjectDoesNotExist: return render(request, 'home/home.html') if perfil.nome == None or perfil.sobrenome == None: identificador = user.email else: identificador = perfil.nome + " " + perfil.sobrenome if chat.locatario == user or chat.locador == user: mensagensChat = chat.mensagem_set.all() mensagens = '' for mensagemChat in mensagensChat: mensagens += mensagemChat.texto + "\n" return render( request, 'chat/chat.html', { 'room_name': chat.codigoSala, 'identificador': identificador, 'mensagems': mensagens, 'produto': chat.produto, 'desabilitarAlugar': existeAluguelEmAndamento(chat.produto) }) return render(request, 'home/home.html')
def alugarSubmit(request, productId): user = request.user form = AlugarForm(request.POST or None) produto = Product.objects.get(id=productId) if request.POST.get("id_cpf") != None: salvarPerfil(request) locador1 = produto.user.id locador = MyUser.objects.get(id=locador1) if request.POST and form.is_valid(): alugar = form.save(commit=False) alugar.locatario = user alugar.locador = locador alugar.produto = produto alugar.inicio = str(form.cleaned_data['inicio']) alugar.fim = str(form.cleaned_data['fim']) alugar.confirmado = False alugar.save() status = StatusAguardando() status.locador = locador status.locatario = user status.produto = produto status.encerrado = False status.save() messages.info( request, 'O locador recebeu seu pedido de aluguel, aguarde o retorno dele, ou entre em contato com ele(a) pelo chat!' ) is_favourite = False if produto.favourite.filter(id=request.user.id).exists(): is_favourite = True try: perfil = Dados_usuario.objects.get(user=produto.user) except ObjectDoesNotExist: perfil = Dados_usuario() if perfil.nome != None: identificador = perfil.nome else: identificador = 'Anônimo' return render( request, 'products/products-detail.html', { 'is_favourite': is_favourite, 'product': produto, 'identificador': identificador }) context = { 'user': user, 'produto': produto, 'form': form, 'locador': locador, # 'productId':productId } return render(request, 'products/alugarProduto.html', context)
def exportarpdf(request, room_name, userId): user = MyUser.objects.get(id=userId) chat = Chat.objects.get(codigoSala=room_name) try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() try: chat = Chat.objects.get(codigoSala=room_name) except ObjectDoesNotExist: return render(request, 'home/home.html') if perfil.nome == None or perfil.sobrenome == None: identificador = user.email else: identificador = perfil.nome + " " + perfil.sobrenome if chat.locatario == str(userId) or chat.locador == str(userId): mensagensChat = chat.mensagem_set.all() mensagens = '' for mensagemChat in mensagensChat: mensagens += mensagemChat.texto + "\n" #ddaqui para baixo funciona usuario = 1 try: template = get_template('chat/chat2.html') context = { 'mensagems': mensagens, 'room_name': chat.codigoSala, 'user.id': user.id, 'title': 'chhat' } html = template.render(context) response = HttpResponse(content_type='application/pdf') response['Content-Disposition'] = 'attachment; filename="chat.pdf"' pisaStatus = pisa.CreatePDF(html, dest=response) return response except: pass return HttpResponseRedirect(reverse_lazy('meusChats'))
def roomSubmit(request, room_name): user = request.user try: chat = Chat.objects.get(codigoSala=room_name) except ObjectDoesNotExist: return render(request, 'home/home.html') try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() if perfil.nome == None or perfil.sobrenome == None: identificador = user.email else: identificador = perfil.nome + " " + perfil.sobrenome if user != chat.locatario: usuarioNotificacao = chat.locatario else: usuarioNotificacao = chat.locador mensagemEnviada = request.POST.get("mensagem") mensagem = Mensagem() mensagem.texto = identificador + ": " + mensagemEnviada mensagem.chat = chat mensagem.user = usuarioNotificacao mensagem.save() mensagensChat = chat.mensagem_set.all() mensagens = '' for mensagemChat in mensagensChat: mensagens += mensagemChat.texto + "\n" return render( request, 'chat/chat.html', { 'room_name': chat.codigoSala, 'identificador': identificador, 'mensagems': mensagens, 'produto': chat.produto, 'desabilitarAlugar': existeAluguelEmAndamento(chat.produto) })
def criarSala(request, idProduto): user = request.user produto = Product.objects.get(id=idProduto) locador = produto.user if user == produto.user: return render(request, 'paginaErro.html') try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() try: chat = Chat.objects.get(locatario=user, locador=locador, produto=produto) except ObjectDoesNotExist: chat = Chat() chat.codigoSala = gerarHash(20) chat.locatario = user chat.locador = locador chat.produto = produto chat.save() if perfil.nome == None or perfil.sobrenome == None: identificador = user.email else: identificador = perfil.nome + " " + perfil.sobrenome mensagensChat = chat.mensagem_set.all() mensagens = '' for mensagemChat in mensagensChat: mensagens += mensagemChat.texto + "\n" return render( request, 'chat/chat.html', { 'room_name': chat.codigoSala, 'identificador': identificador, 'mensagems': mensagens, 'produto': produto, 'desabilitarAlugar': existeAluguelEmAndamento(produto) })
def detail_product(request, id): product = get_object_or_404(Product, pk=id) is_favourite = False if product.favourite.filter(id=request.user.id).exists(): is_favourite = True try: perfil = Dados_usuario.objects.get(user=product.user) except ObjectDoesNotExist: perfil = Dados_usuario() if perfil.nome != None: identificador = perfil.nome else: identificador = 'Anônimo' return render( request, 'products/products-detail.html', { 'is_favourite': is_favourite, 'product': product, 'identificador': identificador })
def criarSalaSubmit(request, idProduto): mensagemEnviada = request.POST.get("mensagem") user = request.user produto = Product.objects.get(id=idProduto) locador = produto.user try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() if perfil.nome == None or perfil.sobrenome == None: identificador = user.email else: identificador = perfil.nome + " " + perfil.sobrenome chat = Chat.objects.get(locador=locador, locatario=user, produto=produto) mensagem = Mensagem() mensagem.texto = identificador + ": " + mensagemEnviada mensagem.chat = chat mensagem.user = locador mensagem.save() mensagensChat = chat.mensagem_set.all() mensagens = '' for mensagemChat in mensagensChat: mensagens += mensagemChat.texto + "\n" return render( request, 'chat/chat.html', { 'room_name': chat.codigoSala, 'identificador': identificador, 'mensagems': mensagens, 'produto': produto, 'desabilitarAlugar': existeAluguelEmAndamento(produto) })
def salvarPerfil(request): user = request.user try: perfil = Dados_usuario.objects.get(user=user) except ObjectDoesNotExist: perfil = Dados_usuario() perfil.cpf = request.POST.get("id_cpf") perfil.cep = request.POST.get("id_cep") perfil.rua = request.POST.get("id_rua") perfil.bairro = request.POST.get("id_bairro") perfil.cidade = request.POST.get("id_cidade") perfil.estado = request.POST.get("id_estado") perfil.complemento = request.POST.get("id_complemento") perfil.user = user perfil.save()