예제 #1
0
def student_cru(request, uuid=None):

    if uuid:
        student = get_object_or_404(Student, uuid=uuid)
        if student.owner != request.user:
            return HttpResponseForbidden()
    else:
        student = Student(owner=request.user)

    if request.POST:
        form = StudentForm(request.POST, instance=student)
        if form.is_valid():
            student = form.save(commit=False)
            student.owner = request.user
            student.save()
            redirect_url = reverse('student_detail', args=(student.uuid, ))
            return HttpResponseRedirect(redirect_url)
    else:
        form = StudentForm(instance=student)

    variables = {'form': form, 'student': student}

    if request.is_ajax():
        template = 'students/student_item_form.html'
    else:
        template = 'students/student_cru.html'

    return render(request, template, variables)
예제 #2
0
def online_admission(request):
    if request.method == 'POST':
        form = StudentForm(request.POST, request.FILES)
        if form.is_valid():
            data = form.save()
            return redirect('pages:online_admission_payment', pk=data.pk)
    else:
        form = StudentForm()
    return render(request, 'pages/students/admission.html', {'form': form})
예제 #3
0
def create(request):
    form = StudentForm()
    if (request.method == "POST"):
        form = StudentForm(request.POST)
        if (form.is_valid()):
            form.save()
            return redirect('/')

    data = {"form": form}
    return render(request, 'students/create.html', data)
예제 #4
0
def update(request, pk):
    student = Student.objects.get(id=pk)
    form = StudentForm(instance=student)

    if (request.method == "POST"):
        form = StudentForm(request.POST, instance=student)
        if (form.is_valid()):
            form.save()
            return redirect('/')

    data = {"student": student, "form": form}
    return render(request, 'students/update.html', data)
예제 #5
0
def edit_form(request,student_usn):
    student=Student.objects.get(usn=student_usn)
    if request.method == "POST":
        form=StudentForm(request.POST,instance=student)
        if form.is_valid():
            form.save()
            msg_html = render_to_string('email_template.html', {'student': student})
            send_mail('Hostel Management System','hey','*****@*****.**',(student.email,),html_message=msg_html)
            return HttpResponse('<script type="text/javascript">window.close();window.opener.parent.location.reload() ;</script>')
    else:
        form=StudentForm(instance=student)
    return render_to_response('edit_form.html',{"form":form,"student":student},context_instance=RequestContext(request))
예제 #6
0
def stud(request):
    if request.method == "POST":
        form = StudentForm(request.POST)
        if form.is_valid():
            try:
                form.save()
                return redirect('/show')
            except:
                pass
    else:
        form = StudentForm()
    return render(request, 'create.html', {'form': form})
def add_student(request):
    if not request.user.username in request.session:
        return HttpResponseRedirect(reverse('accounts:login'))

    if request.method == "POST":
        form = StudentForm(request.POST, request.FILES)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect(reverse('students:studentlist'))
    else:
        form = StudentForm()
    args = {}
    args.update(csrf(request))
    args['form'] = form
    return render(request, 'students/student_add.html', args)
예제 #8
0
def update(request, id):
    student = Student.objects.get(id=id)
    form = StudentForm(request.POST, instance=student)
    if form.is_valid():
        form.save()
        return redirect("/show")
    return render(request, 'edit.html', {'student': student})
예제 #9
0
def new_student(request):
    if request.method == "POST":
        # s = Student.objects.get(id=1)
        f = StudentForm(request.POST)
        #f = StudentForm(request.POST, instance=s)
        if f.is_valid():
            st = f.save(commit=False)  #not saving
            #st = f.save(commit=False) #not savin
            st.save()
            return HttpResponse("Saved")
        return HttpResponse(f.errors)
    elif request.method == "GET":
        f = StudentForm()
        #f = StudentForm(instance=Student.objects.get(id=1))
        context = {"f": f}
        return render(request, 'students/new_student.html', context)
def save_student(request):
    student = Student.objects.get(pk=1)
    form = StudentForm(request.POST, instance=student)
    form.save()
    args = {}
    args.update(csrf(request))
    args['form'] = form
    return render(request, 'students/student_add.html', args)
예제 #11
0
def store(request):
    if request.method == "POST":
        form = StudentForm(request.POST)
        if form.is_valid():
            try:
                form.save()
            except Exception as e:
                pass
    return redirect('/students')
def add_student_view(request):
    """
    :param request:
    :return: admission form to
    logged in user.
    """
    if request.method == 'POST':
        form = StudentForm(request.POST, request.FILES)
        if form.is_valid():
            student = form.save(commit=False)
            # check student as offline registration
            student.application_type = '2'
            student.save()
            return redirect('students:all_applicants')
    else:
        form = StudentForm()
    context = {'form': form}
    return render(request, 'students/addstudent.html', context)
예제 #13
0
    def dispatch(self, request, *args, **kwargs):
        form = StudentForm()

        group_id = kwargs["group_id"]
        group = Group.objects.get(id=group_id)

        if request.method == "POST":
            form = StudentForm(request.POST)

            if form.is_valid():
                form.instance.group = group
                form.save()
                messages.success(request, "Студент успешно создан")
                return redirect("/")
        return render(request, self.template_name, {
            "form": form,
            "group": group
        })
예제 #14
0
파일: views.py 프로젝트: jzjhappy/avpass
def add_Student(request):
    form = StudentForm()
    if request.method == 'POST':
        form = StudentForm(request.POST)

        if form.is_valid():
            form.save(commit=True)
            # Step 1 complete. Return student id, etc. Move to success page.
            context_dict = {
                'student_id': form['student_id'].value,
                'first_name': form['first_name'].value,
                'last_name': form['last_name'].value
            }
            return render(request, 'students/add_student_success.html',
                          context_dict)
        else:
            print(form.errors)

    return render(request, 'students/add_student.html', {'form': form})
예제 #15
0
def edit_student(request, student_id=None):
    if request.method == 'POST':
        if student_id is None:
            form = StudentForm(request.POST)
        else:
            edit_student = get_object_or_404(Student, id=student_id)
            form = StudentForm(request.POST, instance=edit_student)
        if form.is_valid():
            form.save()
            return redirect(reverse('students:students_list', args={}))
    else:
        if student_id is None:
            form = StudentForm()
        else:
            student = get_object_or_404(Student, id=student_id)
            form = StudentForm(instance=student)
        return render(request, 'students/edit_student.html', {
            'form': form,
        })
예제 #16
0
def update_student(request, roll_no=None):
    if roll_no:
        student = Student.objects.get(s_roll = roll_no)
        form = StudentForm(data=request.POST or None, files=request.FILES or None, instance=student)

        if form.is_valid():
            form.save()
            return redirect('/home/')
        

        return render(request, 'students/update.html', {'form': form})
예제 #17
0
def add_student(request):
    form = StudentForm(request.POST, request.FILES)

    # print(request.POST, request.FILES,  form.is_valid(), form)

    if form.is_valid():
        print(form, 'a')
        form.save()
        return redirect('/home/')
    
    
    return render(request, 'students/student-form.html', {'form': form})
예제 #18
0
def addstudent(request):
    created = False
    if request.method == "POST":
        student_form = StudentForm(data = request.POST)
        if student_form.is_valid():
            try:
		    student = student_form.save(commit=False)
		    student.save()
		    created = True
		    print "student added"
            except Exception, Arguement:
                    print Exception, Arguement
        else:
            print student_form.errors()
예제 #19
0
def create(request):
    form = StudentForm()
    return render(request, 'students/add.html', {'form': form})
예제 #20
0
def student_registration(request, *args, **kwargs):
    if request.method == "POST":
        form = StudentForm(request.POST or None)
        if form.is_valid():
            details = form.cleaned_data
            new_passwd = details['passwd']
            new_username = details['username']
            new_fName = details['firstName']
            new_mName = details['middleName']
            new_lName = details['lastName']
            new_email = details['email']
            new_enrolment = details['enrolment']
            new_dob = details['date']
            new_gender = details['gender']
            new_mobile = details['mobile']
            new_branch = details['branch']
            new_sem = details['sem']
            new_account_id = id_generator()

            try:
                validate_password(new_passwd, form)
            except ValidationError as e:
                form.add_error('passwd', e)
                return render(request, "common/studentregistration.html",
                              {'form': form})

            # try:
            #     user_credentials = [new_username, new_fName, new_lName, new_mName, new_mobile, new_enrolment]
            #     for item in user_credentials:
            #         if item.lower() in new_passwd.lower():
            #             raise ValidationError('Password too similar to credentials...')
            # except ValidationError as e:
            #     form.add_error('passwd', e)
            #     return render(request, "common/studentregistration.html", {'form': form})

            newStudent = Student(firstName=str(new_fName.capitalize()),
                                 middleName=str(new_mName.capitalize()),
                                 lastName=str(new_lName.capitalize()),
                                 username=str(new_username),
                                 passwd=str(new_passwd),
                                 account_id=str(new_account_id),
                                 enrolment=str(new_enrolment),
                                 date=str(new_dob),
                                 mobile=str(new_mobile),
                                 branch=str(new_branch),
                                 sem=str(new_sem),
                                 email=str(new_email.lower()),
                                 gender=str(new_gender),
                                 isPending=True)

            # newUser = AppUser(
            #             firstName=str(new_fName.capitalize()),
            #             lastName=str(new_lName.capitalize()),
            #             username=str(new_username),
            #             passwd=str(new_passwd),
            #             email=str(new_email.lower()),
            #             category='Student',
            #             isAdmin=False,
            #             isPending=True
            # )

            newUser = User.objects.create_user(
                username=str(new_username),
                password=str(new_passwd),
                first_name=str(new_fName.capitalize()),
                last_name=str(new_lName.capitalize()),
                email=str(new_email.lower()),
            )

            # newDjangoUser.save()
            newUser.save()
            newStudent.save()
            # Student.objects.create(**form.cleaned_data)
            return redirect("../pending-account")
    else:
        form = StudentForm(request.POST or None)
        for field in form.errors:
            form[field].field.widget.attrs['class'] += 'error'

    return render(request, "common/studentregistration.html", {'form': form})
예제 #21
0
def student_registration(request, *args, **kwargs):
    if not request.user.is_anonymous:
        userEmail = request.user.email
        user = Staff.objects.filter(email=userEmail, isPending=False)
        if user:
            if user[0].isAdmin:
                return redirect('../college-admin/home/')
            else:
                return redirect('../staff/home/')
        else:
            user = Student.objects.filter(email=userEmail, isPending=False)
            if user:
                return redirect('../students/home/')
            else:
                return render(request, "common/no_permission.html")
    if request.method == "POST":
        form = StudentForm(request.POST or None)
        if form.is_valid():
            details = form.cleaned_data
            new_passwd = details['passwd']
            new_username = details['username']
            new_fName = details['firstName']
            new_mName = details['middleName']
            new_lName = details['lastName']
            new_email = details['email']
            new_enrolment = details['enrolment']
            new_dob = details['date']
            new_gender = details['gender']
            new_mobile = details['mobile']
            new_branch = details['branch']
            new_sem = details['sem']
            new_account_id = id_generator()

            try:
                validate_password(new_passwd, form)
            except ValidationError as e:
                form.add_error('passwd', e)
                return render(request, "common/studentregistration.html",
                              {'form': form})

            # try:
            #     user_credentials = [new_username, new_fName, new_lName, new_mName, new_mobile, new_enrolment]
            #     for item in user_credentials:
            #         if item.lower() in new_passwd.lower():
            #             raise ValidationError('Password too similar to credentials...')
            # except ValidationError as e:
            #     form.add_error('passwd', e)
            #     return render(request, "common/studentregistration.html", {'form': form})

            newStudent = Student(firstName=str(new_fName.capitalize()),
                                 middleName=str(new_mName.capitalize()),
                                 lastName=str(new_lName.capitalize()),
                                 username=str(new_username),
                                 passwd=str(new_passwd),
                                 account_id=str(new_account_id),
                                 enrolment=str(new_enrolment),
                                 date=str(new_dob),
                                 mobile=str(new_mobile),
                                 branch=str(new_branch),
                                 sem=str(new_sem),
                                 email=str(new_email.lower()),
                                 gender=str(new_gender),
                                 isPending=True)

            newUser = User.objects.create_user(
                username=str(new_username),
                password=str(new_passwd),
                first_name=str(new_fName.capitalize()),
                last_name=str(new_lName.capitalize()),
                email=str(new_email.lower()),
            )

            newUser.save()
            newStudent.save()
            return redirect("../pending-account")
    else:
        form = StudentForm(request.POST or None)
        for field in form.errors:
            form[field].field.widget.attrs['class'] += 'error'

    return render(request, "common/studentregistration.html", {'form': form})