Esempio n. 1
0
def activar_usuarios(request):
    if request.session['rol'] == 3:
        if request.method == 'POST':
            usuarios = Usuario.objects.exclude(user__username = '******').order_by('user__username')

            for x in usuarios:
                estado = request.POST.get(x.user.username,'')

                if estado=='active' and not x.user.is_active:
                    x.user.is_active = True
                    registro = Registro.modificacion(request.session['usuario']['nick'],
                            'Se activo el usuario "'+
                            x.user.username +'"', 'Inactivo',
                            'Activo', 'Usuarios', None)
                    x.user.save()
                    registro.save()
                elif estado=='unactive' and x.user.is_active:
                    x.user.is_active = False
                    registro = Registro.modificacion(request.session['usuario']['nick'],
                            'Se desactivo el usuario "'+
                            x.user.username +'"', 'Activo',
                            'Inactivo', 'Usuarios', None)
                    x.user.save()
                    registro.save()

            return redirect('/')
        else:
            usuarios = Usuario.objects.exclude(user__username = '******').order_by('user__username')
            return render(request, 'Usuarios/activar-usuarios.html', locals())
    else:
        return redirect('error403', origen=request.path)
Esempio n. 2
0
def activar_usuarios(request):
    if request.session['rol'] == 3:
        if request.method == 'POST':
            usuarios = Usuario.objects.exclude(user__username = '******').order_by('user__username')

            for x in usuarios:
                estado = request.POST.get(x.user.username,'')

                if estado=='active' and not x.user.is_active:
                    x.user.is_active = True
                    registro = Registro.modificacion(request.session['usuario']['nick'],
                            'Se activo el usuario "'+
                            x.user.username +'"', 'Inactivo',
                            'Activo', 'Usuarios', None)
                    x.user.save()
                    registro.save()
                elif estado=='unactive' and x.user.is_active:
                    x.user.is_active = False
                    registro = Registro.modificacion(request.session['usuario']['nick'],
                            'Se desactivo el usuario "'+
                            x.user.username +'"', 'Activo',
                            'Inactivo', 'Usuarios', None)
                    x.user.save()
                    registro.save()

            return redirect('/')
        else:
            usuarios = Usuario.objects.exclude(user__username = '******').order_by('user__username')
            return render(request, 'Usuarios/activar-usuarios.html', locals())
    else:
        return redirect('error403', origen=request.path)
Esempio n. 3
0
def sistema_modificar_jefedep(request, dpto):
    if request.session['rol'] == 3:
        form_size = 'small'
        if request.method == 'POST':
            #Tomar valores del POST
            post_jefeActual = request.POST.get('jefeActual', '')
            post_departamento = request.POST.get('departamento', '')
            post_nuevoJefe = request.POST.get('nuevoJefe', '')

            #¿Qué hacer con el antiguo jefe de departamento?
            username_jefeActual = post_jefeActual.split(",",1)[0]
                
            #Query del objeto del nuevo jefe
            nuevoJefe = Usuario.objects.get(user__username = post_nuevoJefe)

            #Query del departamento del jefe actual
            departamento = Departamento.objects.get(nombre = post_departamento)

            #Sustitución del jefe actual por el nuevo
            nuevoJefe.hacer_jefe()
            departamento.jefeDep = nuevoJefe

            #Guardar los cambios en la base de datos
            departamento.save()

            dpto = Departamento.objects.get(nick=dpto)

            try:
                jefeActual = Usuario.objects.get(user__username=username_jefeActual)
            except ObjectDoesNotExist:
                registro = Registro.creacion(request.session['usuario']['nick'],
                        'Se creo el jefe del departamento "'+
                        post_departamento+'" "'+nuevoJefe.user.get_full_name()+'"',
                        nuevoJefe, 'Departamentos', dpto)
                registro.save()
                return redirect('/inicio-administrador/')
            registro = Registro.modificacion(request.session['usuario']['nick'],
                        'Se cambio el jefe del departamento "'+
                        post_departamento+'" de "'+jefeActual.user.get_full_name()+
                        '" a "'+nuevoJefe.user.get_full_name()+'"', jefeActual,
                        nuevoJefe, 'Departamentos', dpto)
            registro.save()
            return redirect('/inicio-administrador/')
        else:
            if Departamento.objects.filter(nick=dpto).exists():
                errors = ""
                try:
                    departamento = Departamento.objects.get(nick=dpto)
                    jefeActual = departamento.jefeDep
                    opcionesJefeDepartamento = Usuario.objects.filter(user__is_active=True, rol__id__gte=1, departamento=None)
                except ObjectDoesNotExist:
                    errors = "No existen jefes de este departamento, favor de crear uno."
                return render(request, 'Forms/modificar-jefe-departamento.html', locals())
            else:
                return redirect('/inicio-administrador/')
    else:
        return redirect('error403', origen=request.path)
Esempio n. 4
0
def nueva_secretaria(request):
    if request.session['rol'] >= 2:
        form_size = 'small'

        if request.method == 'POST':
            usuario = request.POST.get('username','')
            password = request.POST.get('password', '')
            codigo = request.POST.get('codigo','')
            nombre = request.POST.get('nombre','')
            apellido = request.POST.get('apellido','')
            correo = request.POST.get('correo', '')

            if User.objects.filter(Q(username=usuario) | Q(email=correo)).exists():

                errors = 'Ya existe registro con ese nombre'
                return render(request, TEMPLATE_ALTA_SECRE, locals())
            else:
                nuevo_usuario = Usuario.alta_secretaria(usuario, password, nombre, 
                                                    apellido, correo, codigo)
                nuevo_usuario.save()

                registro = Registro.creacion(request.session['usuario']['nick'],
                        'Se creo la secretaria "'+nuevo_usuario.user.get_full_name()+'"'
                        , usuario, 'Usuarios', None)
                registro.save()

                return redirect('/')
        else:
            return render(request, TEMPLATE_ALTA_SECRE, locals())
    else:
        return redirect('error403', origen=request.path)
Esempio n. 5
0
def nueva_secretaria(request):
    if request.session['rol'] >= 2:
        form_size = 'small'

        if request.method == 'POST':
            usuario = request.POST.get('username','')
            password = request.POST.get('password', '')
            codigo = request.POST.get('codigo','')
            nombre = request.POST.get('nombre','')
            apellido = request.POST.get('apellido','')
            correo = request.POST.get('correo', '')

            if User.objects.filter(Q(username=usuario) | Q(email=correo)).exists():

                errors = 'Ya existe registro con ese nombre'
                return render(request, TEMPLATE_ALTA_SECRE, locals())
            else:
                nuevo_usuario = Usuario.alta_secretaria(usuario, password, nombre, 
                                                    apellido, correo, codigo)
                nuevo_usuario.save()

                registro = Registro.creacion(request.session['usuario']['nick'],
                        'Se creo la secretaria "'+nuevo_usuario.user.get_full_name()+'"'
                        , usuario, 'Usuarios', None)
                registro.save()

                return redirect('/')
        else:
            return render(request, TEMPLATE_ALTA_SECRE, locals())
    else:
        return redirect('error403', origen=request.path)
Esempio n. 6
0
def nuevo_jefe(request):
    if request.session['rol'] == 3:
        form_size = 'small'

        if request.method == 'POST':
            usuario = request.POST.get('username','')
            password = request.POST.get('password', '')
            codigo = request.POST.get('codigo','')
            nombre = request.POST.get('nombre','')
            apellido = request.POST.get('apellido','')
            correo = request.POST.get('correo', '')
            
            if User.objects.filter(Q(username=usuario) | Q(email=correo)).exists():
                
                errors = 'Ya existe registro con ese nombre'
                return render(request, TEMPLATE_ALTA_JEFEDEP, locals())
            else:
                nuevo_usuario = Usuario.alta_jefe(usuario, password, nombre, 
                                                    apellido, correo, codigo)
                nuevo_usuario.save()
                try:
                    dpto = Departamento.objects.get(jefeDep=nuevo_usuario)
                    registro = Registro.creacion(request.session['usuario']['nick'],
                        'Se creo el jefe de departamento "'
                        + nuevo_usuario.user.get_full_name() +'"',
                        usuario, 'Usuarios', dpto)
                except:
                    registro = Registro.creacion(request.session['usuario']['nick'],
                        'Se creo el jefe de departamento "'
                        + nuevo_usuario.user.get_full_name() +'"',
                        usuario, 'Usuarios', None)
                registro.save()

                return redirect('/inicio-administrador/')
        else:
            return render(request, TEMPLATE_ALTA_JEFEDEP, locals())
    else:
        return redirect('error403', origen=request.path)
Esempio n. 7
0
def nuevo_jefe(request):
    if request.session['rol'] == 3:
        form_size = 'small'

        if request.method == 'POST':
            usuario = request.POST.get('username','')
            password = request.POST.get('password', '')
            codigo = request.POST.get('codigo','')
            nombre = request.POST.get('nombre','')
            apellido = request.POST.get('apellido','')
            correo = request.POST.get('correo', '')
            
            if User.objects.filter(Q(username=usuario) | Q(email=correo)).exists():
                
                errors = 'Ya existe registro con ese nombre'
                return render(request, TEMPLATE_ALTA_JEFEDEP, locals())
            else:
                nuevo_usuario = Usuario.alta_jefe(usuario, password, nombre, 
                                                    apellido, correo, codigo)
                nuevo_usuario.save()
                try:
                    dpto = Departamento.objects.get(jefeDep=nuevo_usuario)
                    registro = Registro.creacion(request.session['usuario']['nick'],
                        'Se creo el jefe de departamento "'
                        + nuevo_usuario.user.get_full_name() +'"',
                        usuario, 'Usuarios', dpto)
                except:
                    registro = Registro.creacion(request.session['usuario']['nick'],
                        'Se creo el jefe de departamento "'
                        + nuevo_usuario.user.get_full_name() +'"',
                        usuario, 'Usuarios', None)
                registro.save()

                return redirect('/inicio-administrador/')
        else:
            return render(request, TEMPLATE_ALTA_JEFEDEP, locals())
    else:
        return redirect('error403', origen=request.path)
Esempio n. 8
0
def nuevo_departamento(request):
    if request.session['rol'] == 3:
        form_size = 'small'
        #Revisar si se entra a la página por POST
        if request.method == 'POST':
            #Obtener los campos del nuevo departamento
            post_abreviacion = request.POST.get('abreviacion','')
            post_nombre = request.POST.get('nombre', '')
            post_nuevoJefe = request.POST.get('nuevoJefe', '')
            
            #Hacer query del nuvo jefe
            nuevoJefe = Usuario.objects.get(user__username=post_nuevoJefe)

            #Crear el nuevo departamento
            nuevoDepartamento = Departamento(nick=post_abreviacion, nombre=post_nombre, jefeDep=nuevoJefe)
            
            #Guardar en la base de datos el nuevo departamento
            nuevoDepartamento.save()

            dpto = Departamento.objects.get(nick=post_abreviacion)
            registro = Registro.creacion(request.session['usuario']['nick'],
                        'Se creo el departamento "'+post_nombre+'"'
                        , post_nombre, 'Departamentos', dpto)
            registro.save()

            return redirect('/inicio-administrador/')

        #Si no se entra con POST, se regresa el formulario de nuevo departamento
        else:
            opcionesJefeDepartamento = Usuario.objects.filter(user__is_active=True, rol__id__gte=1, departamento=None)
            return render(request, 'Forms/nuevo-departamento.html', {
                                                'opcionesJefeDepartamento':opcionesJefeDepartamento,
                                                'form_size':form_size,
                                                })
    else:
        return redirect('error403', origen=request.path)
Esempio n. 9
0
def nuevo_departamento(request):
    if request.session['rol'] == 3:
        form_size = 'small'
        #Revisar si se entra a la página por POST
        if request.method == 'POST':
            #Obtener los campos del nuevo departamento
            post_abreviacion = request.POST.get('abreviacion','')
            post_nombre = request.POST.get('nombre', '')
            post_nuevoJefe = request.POST.get('nuevoJefe', '')
            
            #Hacer query del nuvo jefe
            nuevoJefe = Usuario.objects.get(user__username=post_nuevoJefe)

            #Crear el nuevo departamento
            nuevoDepartamento = Departamento(nick=post_abreviacion, nombre=post_nombre, jefeDep=nuevoJefe)
            
            #Guardar en la base de datos el nuevo departamento
            nuevoDepartamento.save()

            dpto = Departamento.objects.get(nick=post_abreviacion)
            registro = Registro.creacion(request.session['usuario']['nick'],
                        'Se creo el departamento "'+post_nombre+'"'
                        , post_nombre, 'Departamentos', dpto)
            registro.save()

            return redirect('/inicio-administrador/')

        #Si no se entra con POST, se regresa el formulario de nuevo departamento
        else:
            opcionesJefeDepartamento = Usuario.objects.filter(user__is_active=True, rol__id__gte=1, departamento=None)
            return render(request, 'Forms/nuevo-departamento.html', {
                                                'opcionesJefeDepartamento':opcionesJefeDepartamento,
                                                'form_size':form_size,
                                                })
    else:
        return redirect('error403', origen=request.path)