def evento_list_get(): usuario_id = get_session() cidade = IBGE().findAll() categoria = Categoria().findAll() if request.method == 'GET': evento = Evento().listAll(1) elif request.method == 'POST': categoria_id = request.POST.categoria_id cidade_id = request.POST.cidade_id evento = Evento().searchEvento(categoria_id, cidade_id) return template('view/evento/catalog', categoria=categoria, evento=evento, cidade=cidade, usuario_id=usuario_id)
def ingresso_insert_get(): has_session() usuario_id = get_session() evento = Evento().findAll(usuario_id, 1) return template('view/ingresso/insert', evento=evento, usuario_id=usuario_id)
def page_evento_get(_id): usuario_id = get_session() dado = Evento().find_by_evento_id(_id, 1) ingresso = Ingresso().find_by_evento_id(_id, 1) return template('view/evento/show', dado=dado, ingresso=ingresso, usuario_id=usuario_id)
def evento_delete_get(_id): has_session() usuario_id = get_session() if Evento().update_status(0, usuario_id, _id): if Ingresso().update_status_by_evento(0, usuario_id, _id): return redirect('/evento') return redirect( '/message_err/Ocorreu um erro!<br/>Não foi possivel realizar as alterações.' )
def ingresso_edit_get(_id): has_session() usuario_id = get_session() evento = Evento().findAll(usuario_id, 1) dado = Ingresso().find(usuario_id, _id) return template('view/ingresso/edit', evento=evento, dado=dado, usuario_id=usuario_id)
def evento_edit_get(_id): has_session() usuario_id = get_session() dado = Evento().find(usuario_id, _id) cidade = IBGE().findAll() categoria = Categoria().findAll() return template('view/evento/edit', cidade=cidade, categoria=categoria, dado=dado, usuario_id=usuario_id)
def query_all_eventos(self): try: self.c.execute(QUERY_ALL_EVENTOS) eventos_data = self.c.fetchall() eventos = [] for evento_data in eventos_data: nome = evento_data[0] inicio = (datetime.strptime(evento_data[1], "%Y-%m-%d")).date() fim = (datetime.strptime(evento_data[2], "%Y-%m-%d")).date() eventos.append(Evento(nome, inicio, fim)) return eventos except sqlite3.Error: return []
def query_evento_by_nome(self, nome): try: self.c.execute(QUERY_EVENTO_BY_NAME, (nome, )) evento_data = self.c.fetchone() evento = None if evento_data is not None: nome = evento_data[0] inicio = (datetime.strptime(evento_data[1], "%Y-%m-%d")).date() fim = (datetime.strptime(evento_data[2], "%Y-%m-%d")).date() evento = Evento(nome, inicio, fim) return evento except sqlite3.Error: return None
def usuario_delete_post(): has_session() usuario_id = get_session() if Conta().delete_by_usuario(usuario_id): print 'Conta deletada!' if Usuario().delete(usuario_id): print 'Usuario deletado!' if Evento().update_status_by_usuario(0, usuario_id): print 'Eventos inativos!' if Ingresso().update_status_by_usuario(0, usuario_id): print 'Ingressos inativos!' if Carrinho().delete_by_usuario(usuario_id): print 'Carrinho deletado!' del_session() return redirect('/')
def evento_edit_post(_id): has_session() usuario_id = get_session() titulo = request.POST.titulo categoria_id = request.POST.categoria_id descricao = request.POST.descricao endereco = request.POST.endereco numero = request.POST.numero cidade_id = request.POST.cidade_id bairro = request.POST.bairro telefone = request.POST.telefone if Evento().update(_id, usuario_id, categoria_id, cidade_id, titulo, descricao, endereco, numero, bairro, telefone): return redirect('/evento') return redirect( '/message_err/Ocorreu um erro!<br/>Não foi possivel realizar as alterações.' )
def evento_insert_post(): has_session() usuario_id = get_session() titulo = request.POST.titulo categoria_id = request.POST.categoria_id descricao = request.POST.descricao endereco = request.POST.endereco numero = request.POST.numero cidade_id = request.POST.cidade_id bairro = request.POST.bairro telefone = request.POST.telefone if Evento().add(usuario_id, categoria_id, cidade_id, titulo, descricao, endereco, numero, bairro, telefone): return redirect('/evento') return redirect( '/message_err/Ocorreu um erro!<br/>Não foi possivel adicionar o evento.' )
def evento_index_get(): has_session() usuario_id = get_session() dado = Evento().findAll(usuario_id, 1) # Mostrar somente eventos ativos. return template('view/evento/index', dado=dado, usuario_id=usuario_id)
def cadastrar_evento(): print("\n====== CADASTRAR EVENTO ======") evento_nome = input("Nome: ") evento = controller_eventos.find_evento(evento_nome) if evento is not None: print("Ja existe evento cadastrado com esse nome") return try: inicio = datetime.strptime(input("Data inicio (\"DD/MM/AAAA\"): "), "%d/%m/%Y").date() fim = datetime.strptime(input("Data fim (\"DD/MM/AAAA\"): "), "%d/%m/%Y").date() except: print("Input invalido.") return if inicio > fim: print("A data final nao pode ser antes da data de inicio") return if inicio <= datetime.now().date(): print("Um novo evento so pode ser cadastrado para datas futuras") return evento = Evento(evento_nome, inicio, fim) eventos_cadastrados = controller_eventos.find_all_eventos() for evento_cadastrado in eventos_cadastrados: if evento_cadastrado.get_data_inicial( ) <= inicio <= evento_cadastrado.get_data_final(): print("Ja existe evento cadastrado nesse periodo") return if evento_cadastrado.get_data_inicial( ) <= fim <= evento_cadastrado.get_data_final(): print("Ja existe evento cadastrado nesse periodo") return if inicio < evento_cadastrado.get_data_inicial() < fim: print("Ja existe evento cadastrado nesse periodo") return areas = controller_areas.find_all_areas() reservas = dict() print("Defina quantas vagas serao reservadas para o evento em cada area:") for area in areas: try: input_str = "Area: " + area.get_nome() + \ "; Maximo: " + str(area.get_capacidade()) + \ "; Vagas: " vagas = int(input(input_str)) if vagas > area.get_capacidade(): print( "Voce nao pode reservar mais vagas do que a capacidade maxima da area" ) return # reservas[area.get_nome()] = vagas reservas[area] = vagas except: print("Input invalido") return evento.set_reservas(reservas) controller_eventos.register_evento(evento)