def create_link_student_file(student_data, subject, file_type, import_errors_link, user_create, user_link): if file_type == "text/xml": data_form = StudentService.get_form_data_xml(student_data) else: data_form = StudentService.get_form_data_csv(student_data) form_student = UserEditForm(data=data_form) if form_student.is_valid(): student = StudentService.create(form_student) StudentService.save(student) password = id_generator() UserService.save_password(student, password) user_create[student] = password student.asignaturas.add(subject) else: fullname = form_student.data['last_name'] + ", " + form_student.data['first_name'] username = form_student.data['user'] user = UserService.find_by_username(username) if user: student = Alumno.objects.get(id=user.id) if student: student.asignaturas.add(subject) user_link.append(student) else: import_errors_link.append(_("Student") + ": " + fullname + " - " + form_student.data['dni']) else: import_errors_link.append(_("Student") + ": " + fullname + " - " + form_student.data['dni'])
def create_link_student_file(student_data, subject, file_type, import_errors_link, user_create, user_link): if file_type == "text/xml": data_form = StudentService.get_form_data_xml(student_data) else: data_form = StudentService.get_form_data_csv(student_data) form_student = UserEditForm(data=data_form) if form_student.is_valid(): student = StudentService.create(form_student) StudentService.save(student) password = id_generator() UserService.save_password(student, password) user_create[student] = password student.asignaturas.add(subject) else: fullname = form_student.data['last_name'] + ", " + form_student.data[ 'first_name'] username = form_student.data['user'] user = UserService.find_by_username(username) if user: student = Alumno.objects.get(id=user.id) if student: student.asignaturas.add(subject) user_link.append(student) else: import_errors_link.append( _("Student") + ": " + fullname + " - " + form_student.data['dni']) else: import_errors_link.append( _("Student") + ": " + fullname + " - " + form_student.data['dni'])
def clean(self): username = self.cleaned_data.get('user') if username is not None: user = UserService.find_by_username(username) if user is not None: self.add_error( 'user', _("There cannot be two users with the same username")) else: dni = self.cleaned_data.get('dni') user = StudentService.find_by_dni(dni) if user is not None: self.add_error( 'dni', _("There cannot be two users with the same ID number")) else: user = LecturerService.find_by_dni(dni) if user is not None: self.add_error( 'dni', _("There cannot be two users with the same ID number" )) return self.cleaned_data
def get_form_data_xml(lecturer, subject): data = {} if lecturer: subject_id = subject.id data['subject_id'] = subject_id user = UserService.find_by_username(lecturer['uvus']) if user is not None: data['lecturer_id'] = user.id data['lecturer'] = user.first_name + user.last_name position = lecturer['cargo'] data['position'] = position return data
def clean(self): username = self.cleaned_data.get('user') if username is not None: user = UserService.find_by_username(username) if user is not None: self.add_error('user', _("There cannot be two users with the same username")) else: dni = self.cleaned_data.get('dni') user = StudentService.find_by_dni(dni) if user is not None: self.add_error('dni', _("There cannot be two users with the same ID number")) else: user = LecturerService.find_by_dni(dni) if user is not None: self.add_error('dni', _("There cannot be two users with the same ID number")) return self.cleaned_data