def diaaberto_delete(request, id): obj = get_object_or_404(DiaAberto, ano=id) if DiaAberto.objects.filter(ano=id).exists(): user = request.session['user_id'] if Utilizador.objects.filter(dia_aberto_ano=id, pk=request.session['user_id']).exists(): del request.session['user_id'] del request.session['type'] obj.delete() if not (Utilizador.objects.filter(pk=user).exists()): notis = Notificacao.objects.all() dias = Dia.objects.all() for noti in notis: if noti.criadoem.year == id: noti.delete() for dia in dias: if dia.pk.year == id: dia.delete() return redirect("blog:blog-home") messages.success( request, f'Configurações do Dia Aberto eliminado com Sucesso!') noti_views.new_noti( request, request.session['user_id'], 'Submissao das Configurações do Dia Aberto', 'Configurações do Dia Aberto eliminado com Sucesso!') return redirect('menu:diaaberto_list')
def transporte_grupo_view(request, id): form = InscricaoForm(request.POST or None) if request.method == "POST": if form.is_valid(): #t= Transporte.objects.get(idtransporte=request.POST['transporte_idtransporte']) #tra =TransporteHasHorario.objects.get(id_transporte_has_horario = request.POST['horario']) #trans = TransporteHasHorario.objects.get(transporte_idtransporte = t, id_transporte_has_horario = tra) #inscricao = TransporteHasInscricao.objects.filter(horario = trans) #if len(inscricao)>0: # form.inscricao= 'Este grupo já está associado a este transporte' # context = { # 'form': form, # 'i':len(noti_not_checked(request)),'not_checked':noti_not_checked(request) # } # return render(request, "Transporte/grupos_ass.html", context) form.save(id) print("aaaaaaaaaaaaaaaaaaa") messages.success(request, f'Transporte associado com Sucesso!') noti_views.new_noti(request, request.session['user_id'], 'Submissao do Transporte', ' Transporte Associado com Sucesso!') return redirect("menu:transporte-list") context = { 'form': form, 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request) } return render(request, "Transporte/grupos_ass.html", context)
def type_user(data, user_id, request): t = True #print(data['departamento']==0) #print(type(data['departamento'])) if data['funcao'] == '1': if data['curso'] != '0' and user_id is not None: curso_id = Curso.objects.get(pk=data['curso'].split("_")[1]) colab = Colaborador(pk=user_id, curso_idcurso=curso_id) colab.save() elif data['UO'] == '0' or data['curso'] == '0': t = 1 return t elif data['funcao'] == '2': if data['UO'] != 0 and user_id is not None: #print("\n"+t) Coord = Coordenador( pk=user_id, unidade_organica_iduo=UnidadeOrganica.objects.get( pk=data['UO'])) Coord.save() elif data['UO'] == '0': t = 2 #print("\n"+t) return t elif data['funcao'] == '3': if data['departamento'] != '0' and user_id is not None: DC = ProfessorUniversitario.objects.create( pk=user_id, departamento_iddepartamento=Departamento.objects.get( pk=data['departamento'].split("_")[1])) elif data['UO'] == '0' or data['departamento'] == '0': t = 3 return t elif data['funcao'] == '4': if user_id is not None: admin = Administrador(pk=user_id) if len(Administrador.objects.all()) == 0: Utilizador.objects.filter(pk=user_id).update(validada=4) admin.save() else: t = 4 return t elif data['funcao'] == '0': if user_id is not None: part = Participante(pk=user_id) part.save() Utilizador.objects.filter(pk=user_id).update(validada=0) noti_views.new_noti(request, user_id, 'Bem-vindo', 'Seja bem-vindo ao site do dia aberto') return t
def criar_tarefa_grupo(request): user2 = Utilizador.objects.get(idutilizador=request.session["user_id"]) coord_user = Coordenador.objects.get(utilizador_idutilizador=user2) new_form = Tarefa(concluida=0, coordenador_utilizador_idutilizador=coord_user) form = TarefasFormGroup(request.POST, instance=new_form) dispos = Disponibilidade.objects.exclude(tipo_de_tarefa='Ajudar Docente') if request.method == "POST": if form.is_valid(): new_tarefa = form.save(commit=False) new_tarefa.hora_inicio = request.POST['hora_inicio'] new_tarefa.dia_dia = Dia.objects.get(dia=request.POST['dia_dia']) if request.POST['id_colaborador_utilizador_idutilizador'] != '': user = Utilizador.objects.get( idutilizador=request. POST['id_colaborador_utilizador_idutilizador'] ) #Vamos Buscar o Utilizador com o ID especificado no formulario colaborador_user = Colaborador.objects.get( utilizador_idutilizador=user ) #Vamos buscar o colaborador associado aquele objeto utilizador new_tarefa.colaborador_utilizador_idutilizador = colaborador_user #Enviamos esse colaborador para a nova tarefa ativid = Atividade.objects.get( idatividade=request.POST['atividade_idatividade']) new_tarefa.buscar = Espaco.objects.get( idespaco=ativid.espaco_idespaco.idespaco) new_tarefa.levar = Espaco.objects.get( idespaco=request.POST['levar']) grupo = Inscricao.objects.get(idinscricao=request.POST['grupos']) new_tarefa.inscricao_coletiva_inscricao_idinscricao = InscricaoColetiva.objects.get( inscricao_idinscricao=grupo) new_tarefa.save() if request.POST['id_colaborador_utilizador_idutilizador'] != '': noti_views.new_noti(request, colaborador_user.pk, 'Tarefa', 'Foi atribuido uma Nova Tarefa') messages.success(request, f'Tarefa Criada com Sucesso!') return redirect("tarefa_coordenador:consultar_tarefa") return render(request=request, template_name="main/criarTarefaAcompanhar.html", context={ 'form': form, 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request), 'dispo': dispos })
def transporte_grupo_view(request, id): form = InscricaoForm(request.POST or None) if request.method == "POST": if form.is_valid(): form.save(id) print("aaaaaaaaaaaaaaaaaaa") messages.success(request, f'Transporte associado com Sucesso!') noti_views.new_noti(request, request.session['user_id'], 'Submissao do Transporte', ' Transporte Associado com Sucesso!') return redirect("menu:transporte-list") context = { 'form': form, 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request) } return render(request, "Transporte/grupos_ass.html", context)
def diaaberto_delete(request, id): obj = get_object_or_404(DiaAberto, ano=id) if DiaAberto.objects.filter(ano=id).exists(): Utilizador.objects.filter(dia_aberto_ano=id).update( dia_aberto_ano=None) obj.delete() notis = Notificacao.objects.all() dias = Dia.objects.all() for dia in dias: if dia.pk.year == id: dia.delete() messages.success( request, f'Configurações do Dia Aberto eliminado com Sucesso!') noti_views.new_noti( request, request.session['user_id'], 'Submissao das Configurações do Dia Aberto', 'Configurações do Dia Aberto eliminado com Sucesso!') return redirect('menu:diaaberto_list')
def activity_session_view(request, idActivity): querysetSession = Sessao.objects.all().filter( atividade_idatividade=idActivity) atividade = get_object_or_404(Atividade, idatividade=idActivity) if request.method == "POST": id_prof = atividade.professor_universitario_utilizador_idutilizador.utilizador_idutilizador.idutilizador noti_views.new_noti(request, id_prof, "Motivo de rejeição", request.POST.get("motivo")) atividade.validada = -1 atividade.save() return redirect("atividades:consultar_atividades_coodernador") context = { "list": querysetSession, "activity": atividade, "account": return_account_type(request.session["user_id"]), 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request) } return render(request, "atividades/sessao_info.html", context)
def criar_tarefa_atividade(request): user_coord = Utilizador.objects.get( idutilizador=request.session["user_id"]) coord_user = Coordenador.objects.get(utilizador_idutilizador=user_coord) atividade = Atividade.objects.filter( unidade_organica_iduo=coord_user.unidade_organica_iduo) form = TarefasFormAtividade(request.POST) if request.method == "POST": if form.is_valid(): new_tarefa = form.save(commit=False) new_tarefa.concluida = 0 new_tarefa.coordenador_utilizador_idutilizador = coord_user new_tarefa.sessao_idsessao = Sessao.objects.get( idsessao=request.POST['idsession']) if request.POST['id_colaborador_utilizador_idutilizador'] != '': user = Utilizador.objects.get( idutilizador=request. POST['id_colaborador_utilizador_idutilizador'] ) #Vamos Buscar o Utilizador com o ID especificado no formulario colaborador_user = Colaborador.objects.get( utilizador_idutilizador=user ) #Vamos buscar o colaborador associado aquele objeto utilizador new_tarefa.colaborador_utilizador_idutilizador = colaborador_user #Enviamos esse colaborador para a nova tarefa new_tarefa.save() noti_views.new_noti( request, colaborador_user.pk, 'Tarefa ' + '"' + new_tarefa.nome + '"', 'Foi atribuido uma Nova Tarefa ' + '"' + new_tarefa.nome + '"') else: new_tarefa.save() messages.success(request, f'Tarefa Criada com Sucesso!') return redirect("tarefa_coordenador:consultar_tarefa") return render(request=request, template_name="main/criarTarefaAtividade.html", context={ 'atividade': atividade, 'form': form, 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request) })
def validacoes(request, acao, id): if not (Administrador.objects.filter(pk=request.session['user_id']).exists( ) or Coordenador.objects.filter(pk=request.session['user_id']).exists()): redirect("blog:blog-home") id = id user = Utilizador.objects.get(pk=id) if acao == 1: if Colaborador.objects.filter(pk=id).exists(): user.validada = 1 Participante.objects.filter(pk=id).delete() elif Coordenador.objects.filter(pk=id).exists(): user.validada = 2 Participante.objects.filter(pk=id).delete() elif ProfessorUniversitario.objects.filter(pk=id).exists(): user.validada = 3 Participante.objects.filter(pk=id).delete() elif Administrador.objects.filter(pk=id).exists(): user.validada = 4 Participante.objects.filter(pk=id).delete() user.save() noti_views.new_noti(request, id, 'Bem-vindo', 'Seja bem-vindo ao site do dia aberto') recepient = user.email from_user = Utilizador.objects.get(pk=request.session['user_id']).email subject = "Validação da conta" message = str("A sua conta foi aceite. Faça login no seguinte link: " + request.build_absolute_uri().split("validacoes")[0] + "login/") send_mail(subject, message, settings.EMAIL_HOST_USER, [recepient]) messages.success(request, f'Utilizador {user.nome} validado com sucesso.') else: recepient = user.email subject = "Validação da conta" message = str("A sua conta nao foi aceite. Crie uma nova conta " + request.build_absolute_uri().split("validacoes")[0]) send_mail(subject, message, settings.EMAIL_HOST_USER, [recepient]) messages.success(request, f'Email enviado com sucesso') user.delete() return redirect('profile_list')
def send_notification(request, form): #New #return None #print(form.sessao.extra_forms()) for sessao_form in form.sessao.extra_forms: sessao = sessao_form.cleaned_data['sessao_idsessao'] message = NEW_INSCRICAO_CONTENT.replace( "__ATV__", sessao.atividade_idatividade.titulo) message = message.replace( "__NUM__", str(sessao_form.cleaned_data['nr_inscritos'])) message = message.replace( "__HORAS__", sessao.horario_has_dia_id_dia_hora.horario_hora.__str__()) message = message.replace("__LUGARES__", str(sessao.capacidade - sessao.nrinscritos)) new_noti( request, sessao.atividade_idatividade. professor_universitario_utilizador_idutilizador. utilizador_idutilizador.pk, NEW_INSCRICAO_TITLE.replace('__ATV__', sessao.atividade_idatividade.titulo), message) #Deleted for sessao_form in form.sessao.deleted_forms: sessao = sessao_form.cleaned_data['sessao_idsessao'] message = DELETE_INSCRICAO_CONTENT.replace( "__ATV__", sessao.atividade_idatividade.titulo) message = message.replace( "__NUM__", str(sessao_form.cleaned_data['nr_inscritos'])) message = message.replace( "__HORAS__", sessao.horario_has_dia_id_dia_hora.horario_hora.__str__()) message = message.replace("__LUGARES__", str(sessao.capacidade - sessao.nrinscritos)) new_noti( request, sessao.atividade_idatividade. professor_universitario_utilizador_idutilizador. utilizador_idutilizador.pk, DELETE_INSCRICAO_TITLE.replace( '__ATV__', sessao.atividade_idatividade.titulo), message) #Changed for sessao_form in form.sessao.initial_forms: if sessao_form in form.sessao.deleted_forms: return sessao = sessao_form.cleaned_data['sessao_idsessao'] message = CHANGE_INSCRICAO_CONTENT.replace( "__ATV__", sessao.atividade_idatividade.titulo) message = message.replace( "__HORAS__", sessao.horario_has_dia_id_dia_hora.horario_hora.__str__()) message = message.replace("__LUGARES__", str(sessao.capacidade - sessao.nrinscritos)) new_noti( request, sessao.atividade_idatividade. professor_universitario_utilizador_idutilizador. utilizador_idutilizador.pk, CHANGE_INSCRICAO_TITLE.replace( '__ATV__', sessao.atividade_idatividade.titulo), message)
def criar_tarefa_atividade(request): user_coord = Utilizador.objects.get( idutilizador=request.session["user_id"]) coord_user = Coordenador.objects.get(utilizador_idutilizador=user_coord) new_form = Tarefa(concluida=0, coordenador_utilizador_idutilizador=coord_user) form = TarefasFormAtividade(request.POST, instance=new_form) dispos = Disponibilidade.objects.exclude(tipo_de_tarefa='Guiar Grupo') if request.method == "POST": if form.is_valid(): new_tarefa = form.save(commit=False) new_tarefa.sessao_idsessao = Sessao.objects.get( idsessao=request.POST['idsession']) if request.POST['id_colaborador_utilizador_idutilizador'] != '': user = Utilizador.objects.get( idutilizador=request. POST['id_colaborador_utilizador_idutilizador'] ) #Vamos Buscar o Utilizador com o ID especificado no formulario colaborador_user = Colaborador.objects.get( utilizador_idutilizador=user ) #Vamos buscar o colaborador associado aquele objeto utilizador new_tarefa.colaborador_utilizador_idutilizador = colaborador_user #Enviamos esse colaborador para a nova tarefa new_tarefa.save() noti_views.new_noti(request, colaborador_user.pk, 'Tarefa', 'Foi atribuido uma Nova Tarefa') else: new_tarefa.save() print(new_tarefa) messages.success(request, f'Tarefa Criada com Sucesso!') return redirect("tarefa_coordenador:consultar_tarefa") return render(request=request, template_name="main/criarTarefaAtividade.html", context={ 'form': form, 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request), 'dispo': dispos })
def editar_local_view(request, idActivity): account = return_account_type(request.session["user_id"]) atividade = get_object_or_404(Atividade, idatividade=idActivity) espaco = [] allbuildings = [] selectedBuilding = None fields = 0 if request.method == "POST": if request.POST.get('espaco'): if atividade.espaco_idespaco != request.POST.get('espaco'): notification = "Novo local: " + get_object_or_404( Espaco, idespaco=request.POST.get('espaco')).nome # Notificação de vagas-> part vagas(request, atividade.idatividade, "Mudança na local da atividade " + atividade.titulo, notification) atividade.espaco_idespaco = get_object_or_404( Espaco, idespaco=request.POST.get('espaco')) atividade.save() if account == 'coordinator': return redirect("atividades:consultar_atividades_coodernador") elif account == 'professor': return redirect("../../editar_sesao/" + str(idActivity)) elif request.POST.get('semSala'): atividade.espaco_idespaco = None atividade.save() uo = get_object_or_404( ProfessorUniversitario, utilizador_idutilizador=request.session["user_id"] ).departamento_iddepartamento.unidade_organica_iduo for x in get_list_or_404(Coordenador, unidade_organica_iduo=uo): noti_views.new_noti(request, x.utilizador_idutilizador.idutilizador, "Especificações de sala e material", request.POST.get("infoSala")) return redirect("../../editar_sesao/" + str(idActivity)) elif request.POST.get('tipoSala') == '1': fields = 1 for edificio in get_list_or_404( Espaco, campus_idcampus=atividade.unidade_organica_iduo. campus_idcampus): if edificio.idespaco in Sala.objects.all().values_list( 'espaco_idespaco', flat=True) and get_object_or_404( Sala, espaco_idespaco=edificio.idespaco ).edificio not in allbuildings: allbuildings.append( get_object_or_404( Sala, espaco_idespaco=edificio.idespaco).edificio) if request.POST.get('edificio'): selectedBuilding = request.POST.get('edificio') for edificio in get_list_or_404(Sala, edificio=selectedBuilding): espaco.append( get_object_or_404( Espaco, idespaco=edificio.espaco_idespaco.idespaco)) elif request.POST.get('tipoSala') == '2': fields = 2 for edificio in get_list_or_404( Espaco, campus_idcampus=atividade.unidade_organica_iduo. campus_idcampus): if edificio.idespaco in Anfiteatro.objects.all().values_list( 'espaco_idespaco', flat=True) and get_object_or_404( Anfiteatro, espaco_idespaco=edificio.idespaco ).edificio not in allbuildings: allbuildings.append( get_object_or_404( Anfiteatro, espaco_idespaco=edificio.idespaco).edificio) if request.POST.get('edificio'): selectedBuilding = request.POST.get('edificio') for edificio in get_list_or_404(Anfiteatro, edificio=selectedBuilding): espaco.append( get_object_or_404( Espaco, idespaco=edificio.espaco_idespaco.idespaco)) elif request.POST.get('tipoSala') == '3': fields = 3 selectedBuilding = None if Arlivre.objects.exists(): for local in get_list_or_404(Arlivre): espaco.append( get_object_or_404( Espaco, idespaco=local.espaco_idespaco.idespaco)) elif atividade.espaco_idespaco: if account == 'coordinator': return redirect("atividades:consultar_atividades_coodernador") elif account == 'professor': return redirect("../../editar_sesao/" + str(idActivity)) context = { "activity": atividade, "espacos": espaco, "account": account, "fields": fields, "edificios": allbuildings, "selectedBuilding": selectedBuilding, 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request) } return render(request, "atividades/editar_local.html", context)
def editar_tarefa(request, pk): tarefa = Tarefa.objects.get(idtarefa=pk) colab = tarefa.colaborador_utilizador_idutilizador sala = Sala.objects.all() anfi = Anfiteatro.objects.all() ar = Arlivre.objects.all() ati = Atividade.objects.filter( unidade_organica_iduo=tarefa.coordenador_utilizador_idutilizador. unidade_organica_iduo).exclude(idatividade=tarefa.sessao_idsessao. atividade_idatividade.idatividade) ati_levar = Atividade.objects.filter( unidade_organica_iduo=tarefa.coordenador_utilizador_idutilizador. unidade_organica_iduo) if tarefa.inscricao_coletiva_inscricao_idinscricao != None: # dispos=disponibilidades('Guiar Grupo') dispos = Disponibilidade.objects.exclude( tipo_de_tarefa='Ajudar Docente') template = "main/editarTarefaAcompanhar.html" form = TarefasFormGroup(instance=tarefa) if request.method == "POST": form = TarefasFormGroup(request.POST, instance=tarefa) if form.is_valid(): tarefa.nome = request.POST["nome"] tarefa.concluida = 0 ativid = Atividade.objects.get( idatividade=request.POST['atividade_idatividade']) tarefa.buscar = Espaco.objects.get( idespaco=ativid.espaco_idespaco.idespaco) tarefa.levar = Espaco.objects.get( idespaco=request.POST['levar']) grupo = Inscricao.objects.get( idinscricao=request.POST['grupos']) tarefa.inscricao_coletiva_inscricao_idinscricao = InscricaoColetiva.objects.get( inscricao_idinscricao=grupo) inicio = Sessao.objects.get( idsessao=request.POST['idsession'] ).horario_has_dia_id_dia_hora.horario_hora.hora duracao = ativid.duracao * 60 inicio_s = inicio.hour * 3600 + inicio.minute * 60 + inicio.second total = inicio_s + duracao tarefa.hora_inicio = time.strftime('%H:%M:%S', time.gmtime(total)) tarefa.dia_dia = Dia.objects.get( dia=Sessao.objects.get(idsessao=request.POST['idsession']). horario_has_dia_id_dia_hora.dia_dia.dia) if request.POST['id_colaborador_utilizador_idutilizador'] != '': c = Colaborador.objects.get( utilizador_idutilizador=Utilizador.objects.get( idutilizador=request. POST["id_colaborador_utilizador_idutilizador"])) tarefa.colaborador_utilizador_idutilizador = c noti_views.new_noti( request, c.pk, 'Tarefa Editada ' + '"' + tarefa.nome + '"', 'Foi editado a Tarefa ' + '"' + tarefa.nome + '"') else: tarefa.colaborador_utilizador_idutilizador = None tarefa.save() messages.success(request, f'Tarefa Editada com Sucesso!') return redirect("tarefa_coordenador:consultar_tarefa") else: dispos = Disponibilidade.objects.exclude(tipo_de_tarefa='Guiar Grupo') # dispos=disponibilidades('Ajudar Docente') template = "main/editarTarefaAtividade.html" form = TarefasFormAtividade(instance=tarefa) if request.method == "POST": form = TarefasFormAtividade(request.POST, instance=tarefa) if form.is_valid(): tarefa = form.save(commit=False) tarefa.concluida = 0 tarefa.nome = request.POST["nome"] tarefa.sessao_idsessao = Sessao.objects.get( idsessao=request.POST["idsession"]) if request.POST['id_colaborador_utilizador_idutilizador'] != '': c = Colaborador.objects.get( utilizador_idutilizador=Utilizador.objects.get( idutilizador=request. POST["id_colaborador_utilizador_idutilizador"])) tarefa.colaborador_utilizador_idutilizador = c noti_views.new_noti( request, c.pk, 'Tarefa Editada ' + '"' + tarefa.nome + '"', 'Foi editado a Tarefa ' + '"' + tarefa.nome + '"') else: tarefa.colaborador_utilizador_idutilizador = None tarefa.save() messages.success(request, f'Tarefa Editada com Sucesso!') return redirect("tarefa_coordenador:consultar_tarefa") return render(request=request, template_name=template, context={ 'sala': sala, 'ar': ar, 'anfi': anfi, 'ati': ati, 'ati_levar': ati_levar, 'tarefa': tarefa, 'form': form, 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request), 'dispo': dispos })
def criar_tarefa_grupo(request): user2 = Utilizador.objects.get(idutilizador=request.session["user_id"]) coord_user = Coordenador.objects.get(utilizador_idutilizador=user2) new_form = Tarefa(concluida=0, coordenador_utilizador_idutilizador=coord_user) atividade = Atividade.objects.filter( unidade_organica_iduo=coord_user.unidade_organica_iduo) ati = Atividade.objects.filter( unidade_organica_iduo=coord_user.unidade_organica_iduo) form = TarefasFormGroup(request.POST, instance=new_form) # dispos = disponibilidades("Guiar Grupo") if request.method == "POST": if form.is_valid(): new_tarefa = form.save(commit=False) if request.POST['id_colaborador_utilizador_idutilizador'] != '': user = Utilizador.objects.get( idutilizador=request. POST['id_colaborador_utilizador_idutilizador'] ) #Vamos Buscar o Utilizador com o ID especificado no formulario colaborador_user = Colaborador.objects.get( utilizador_idutilizador=user ) #Vamos buscar o colaborador associado aquele objeto utilizador new_tarefa.colaborador_utilizador_idutilizador = colaborador_user #Enviamos esse colaborador para a nova tarefa ativid = Atividade.objects.get( idatividade=request.POST['atividade_idatividade']) new_tarefa.buscar = Espaco.objects.get( idespaco=ativid.espaco_idespaco.idespaco) new_tarefa.levar = Espaco.objects.get( idespaco=request.POST['levar']) grupo = Inscricao.objects.get(idinscricao=request.POST['grupos']) new_tarefa.inscricao_coletiva_inscricao_idinscricao = InscricaoColetiva.objects.get( inscricao_idinscricao=grupo) new_tarefa.sessao_idsessao = Sessao.objects.get( idsessao=request.POST['idsession']) inicio = Sessao.objects.get( idsessao=request.POST['idsession'] ).horario_has_dia_id_dia_hora.horario_hora.hora duracao = ativid.duracao * 60 inicio_s = inicio.hour * 3600 + inicio.minute * 60 + inicio.second total = inicio_s + duracao new_tarefa.hora_inicio = time.strftime('%H:%M:%S', time.gmtime(total)) new_tarefa.dia_dia = Dia.objects.get( dia=Sessao.objects.get(idsessao=request.POST['idsession']). horario_has_dia_id_dia_hora.dia_dia.dia) new_tarefa.save() if request.POST['id_colaborador_utilizador_idutilizador'] != '': noti_views.new_noti( request, colaborador_user.pk, 'Tarefa ' + '"' + new_tarefa.nome + '"', 'Foi atribuido uma Nova Tarefa ' + '"' + new_tarefa.nome + '"') messages.success(request, f'Tarefa Criada com Sucesso!') return redirect("tarefa_coordenador:consultar_tarefa") return render(request=request, template_name="main/criarTarefaAcompanhar.html", context={ 'ati': ati, 'atividade': atividade, 'form': form, 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request) })
def modify_user(request, id): #print(id!=request.session['user_id'] or not(Administrador.objects.filter(pk=request.session['user_id']).exists())) if id != request.session['user_id'] and not (Administrador.objects.filter( pk=request.session['user_id']).exists()): context = { 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request) } return render(request, "not_for-u.html", context) name = Utilizador.objects.get(idutilizador=id).nome me = request.session['user_id'] if request.method == 'POST': form = ModifyForm(request.POST) print(request.POST['name'] != "") print(request.POST['email'] != "") print(not Utilizador.objects.filter( email=request.POST['email']).exists()) print(not Utilizador.objects.filter( telefone=request.POST['telefone']).exists()) print(request.POST['telefone'] != "") print(bool(validateEmail(request.POST['email']))) if (request.POST['name'] != "") and (request.POST['email'] != "") and ( not (Utilizador.objects.filter( email=request.POST['email']).exists()) or Utilizador.objects.get(pk=id).email == request.POST['email'] ) and (request.POST['telefone'] != "") and (validateEmail( request.POST['email'])): t = Utilizador.objects.get(pk=id) t.nome = request.POST['name'] t.email = request.POST['email'] t.telefone = request.POST['telefone'] if t.validada == 5: t.validada = 0 t.save() print("1") noti_views.new_noti( request, t.pk, 'Alteração de dados no perfil', 'Foram feitas alterações nos dados do seu perfil. Por favor consulte as alterações.' ) messages.success(request, f"Utilizador alterado com sucesso") if id == request.session['user_id']: return redirect('blog:blog-home') return redirect('profile_list') else: error = False error3 = False error5 = False data = request.POST telefone = data['telefone'] funcao = data['funcao'] email = data['email'] curso = False dep = False UO = False ano = False if 'ano' in data: ano = data['ano'] if 'curso' in data: curso = data['curso'] if 'dep' in data: dep = data['dep'] if 'UO' in data: UO = data['UO'] if request.POST['telefone'] == "": error3 = 'Preencha este campo.' if Utilizador.objects.filter(email=request.POST['email']).exists( ) and Utilizador.objects.get( email=request.POST['email']).idutilizador != id: error = "Email ja existe" return render( request, 'profile_modify.html', { 'email': email, 'UO': UO, 'telefone': telefone, 'funcao': funcao, 'curso': curso, 'dep': dep, "form": form, 'error4': error3, "error1": error, 'me': me, 'id': id, 'nome': name, 'ano': ano, 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request), 'error5': error5 }) else: form = ModifyForm() email = Utilizador.objects.get(idutilizador=id).email telefone = Utilizador.objects.get(idutilizador=id).telefone UO = False dep = False ano = False curso = False funcao = False atual = datetime.now().year u = Utilizador.objects.get(pk=id) if Administrador.objects.filter(utilizador_idutilizador=id).exists(): funcao = "Administardor" ano = year(u, atual) elif ProfessorUniversitario.objects.filter( utilizador_idutilizador=id).exists(): funcao = "Docente Univesitario" depid = ProfessorUniversitario.objects.get( utilizador_idutilizador=id).departamento_iddepartamento dep = Departamento.objects.get(pk=depid.pk).nome UO = depid.unidade_organica_iduo.sigla ano = year(u, atual) elif Coordenador.objects.filter(utilizador_idutilizador=id).exists(): funcao = "Coordenador" IDUO = Coordenador.objects.get(pk=id).unidade_organica_iduo UO = UnidadeOrganica.objects.get(pk=IDUO.pk).sigla ano = year(u, atual) elif Colaborador.objects.filter(utilizador_idutilizador=id).exists(): funcao = "Colaborador" cursoid = Colaborador.objects.get( utilizador_idutilizador=id).curso_idcurso UO = Curso.objects.get(pk=cursoid.pk).unidade_organica_iduo.sigla ano = year(u, atual) elif Participante.objects.filter(utilizador_idutilizador=id).exists(): funcao = "Participante" ano = year(u, atual) return render( request, 'profile_modify.html', { "form": form, 'nome': name, 'UO': UO, 'email': email, "ano": ano, 'telefone': telefone, 'funcao': funcao, 'ano': ano, 'curso': curso, 'dep': dep, "me": me, 'id': id, 'func': user(request), 'i': len(noti_not_checked(request)), 'not_checked': noti_not_checked(request) })