コード例 #1
0
def importar_estudiantes(archivo=None, paralelo=False):
    f = codecs.open(archivo, mode='rb', encoding='utf-8')
    lineas = f.readlines()
    estudiantes = []
    for linea in lineas:
        if paralelo:
            cedula, nombres, apellidos, titulo, email, periodoAcademicoId, paralelo  = linea.split(';')
        else:
            # Se toma solo los 6 primeros campos, por validacion
            cedula, nombres, apellidos, titulo, email, periodoAcademicoId = linea.split(';')[:6]
        try:
            usuario = Usuario.objects.get(cedula=cedula)
        except Usuario.DoesNotExist:
            usuario = Usuario()
            usuario.username = cedula
            usuario.cedula = cedula
            usuario.first_name = nombres
            usuario.last_name = apellidos
            usuario.titulo = titulo
            usuario.email = email
        try:
            periodoAcademicoId = int(periodoAcademicoId)
            periodoAcademico = PeriodoAcademico.objects.get(id=periodoAcademicoId)
        except (PeriodoAcademico.DoesNotExist, ValueError):
            periodoAcademico = None
        estudiante = EstudiantePeriodoAcademico(usuario=usuario, periodoAcademico=periodoAcademico)
        if paralelo:
            estudiantes.append(dict(estudiante=estudiante, paralelo=paralelo))
        else:
            estudiantes.append(estudiante)
    return estudiantes
コード例 #2
0
def importar_docentes(archivo, paralelo=False):
    f = codecs.open(archivo, mode='rb', encoding='utf-8')
    lineas = f.readlines()
    docentes = []
    for linea in lineas:
        # Con cierta validacion
        cedula, nombres, apellidos, titulo, email, periodoAcademicoId  = linea.split(';')[:6]
        try:
            usuario = Usuario.objects.get(cedula=cedula)
        except Usuario.DoesNotExist:
            usuario = Usuario()
            usuario.username = cedula
            usuario.cedula = cedula
            usuario.first_name = nombres
            usuario.last_name = apellidos
            usuario.titulo = titulo
            usuario.email = email
        try:
            periodoAcademicoId = int(periodoAcademicoId)
            periodoAcademico = PeriodoAcademico.objects.get(id=periodoAcademicoId)
        except (PeriodoAcademico.DoesNotExist, ValueError):
            periodoAcademico = None
        docente = DocentePeriodoAcademico(usuario=usuario, periodoAcademico=periodoAcademico)
        docentes.append(docente)
    return docentes
コード例 #3
0
 def authenticate(self, username=None, password=None):
     if self.sga.autenticar_estudiante(username, password):
         try:
             user = Usuario.objects.get(username=username)
         except Exception, ex:
             print "Error, revise los datos y la conexion al WebService del SGA: " + str(ex)
             user = None
         except User.DoesNotExist:
             e = self.sga.datos_estudiante(username)
             user = Usuario()
             user.username = e['cedula']
             # De ser necesario metodo de autenticacion por defecto                
             user.set_password(password)
             user.first_name = e['nombres']
             user.last_name = e['apellidos']
             user.email = e['email']
             user.cedula = e['cedula']
コード例 #4
0
                e = self.sga.datos_estudiante(username)
                user = Usuario()
                user.username = e['cedula']
                # De ser necesario metodo de autenticacion por defecto                
                user.set_password(password)
                user.first_name = e['nombres']
                user.last_name = e['apellidos']
                user.email = e['email']
                user.cedula = e['cedula']
            return user
        elif self.sga.autenticar_docente(username,password):
            try:
                user = Usuario.objects.get(username=username)
            except User.DoesNotExist:
                d = self.sga.datos_docente(username)
                user = Usuario()
                user.username = d['cedula']
                # De ser necesario metodo de autenticacion por defecto
                user.set_password(password)
                user.first_name = d['nombres']
                user.last_name = d['apellidos']
                user.cedula = d['cedula']
                user.titulo = d['titulo']
            return user
        else:
            return None

    def get_user(self,id):
        ###u=self.sga.datos_usuario(id)
        try:
            return Usuario.objects.get(pk=id)