Exemplo n.º 1
0
 def create(self, data):
     self.add_base_info(data)
     user = user_service.create_user(data['username'],
                                     data['password'],
                                     role='tutor')
     tutor = Tutor(fio=data['fio'])
     tutor.account = user
     tutor.add_to_db()
     db.session.commit()
     return data
Exemplo n.º 2
0
 def create_tutor(self, data):
     user = user_service.create_user(data['username'], data['password'])
     tutor = Tutor(lastname=data['lastname'],
                     firstname=data['firstname'],
                     patronymic=data['patronymic'],
                     rank=data['rank'], 
                     degree=data['degree'])
     tutor.account = user
     tutor.add_to_db()
     db.session.commit()
     return tutor
Exemplo n.º 3
0
def register_tutor():
    form = EmailFormTutor()

    if form.validate_on_submit():
        tutor = Tutor(username=form.username.data,
                      email=form.email.data,
                      password=form.password.data,
                      subject=form.subject.data)

        tutor.add_tutor()

        flash(f"{tutor.username}, You are successfully registered, please log in!")
        return redirect(url_for('tutors.tutor_login'))

    return render_template("register_tutor.html", form=form)
Exemplo n.º 4
0
def register_tutor():
    email = None
    password = None

    form = EmailFormTutor()

    if form.validate_on_submit():
        name = form.name.data
        email = form.email.data
        password = form.password.data
        subject = form.subject.data

        item = Tutor(name, email, password, subject)
        item.add_tutor()

        flash(f"{name}, You were successfully registered!")
        return redirect(url_for('tutors.register_tutor'))

    return render_template("register_tutor.html",
                           form=form,
                           email=email,
                           password=password)
Exemplo n.º 5
0
def register_tutor():
    data = request.get_json()
    user = User(data['username'], data['password'])
    db.session.add(user)
    db.session.commit()
    tutor = Tutor(user_id=user.id,
                  lastname=data.get('lastname'),
                  firstname=data.get('firstname'),
                  patronymic=data.get('patronymic'),
                  rank=data.get('rank'),
                  degree=data.get('degree'))
    db.session.add(tutor)
    db.session.commit()
    return jsonify({"message": "You are now a register user"}), 200
Exemplo n.º 6
0
 def get_subjects(self, username):
     student = self.find_student_by_username(username)
     group = student.group
     tgs = group.tgs.distinct(AssociationTGS.tutor_id).all()
     tmp = { el.tutor_id: [] for el in tgs }
     tutors = [Tutor.json(Tutor.query.get(el.tutor_id), ['user_id']) for el in tgs]
     pairs = group.tgs.with_entities(AssociationTGS.tutor_id, AssociationTGS.subject_name).all()
     for pair in pairs:
         tmp[pair[0]].append(pair[1])
     index = 0
     for key in tmp:
         tutors[index]["subjects"] = tmp[key]
         index += 1
     return tutors
         
Exemplo n.º 7
0
def tutor_login():
    form = LoginFormTutor()
    if form.validate_on_submit():
        user = Tutor.find_by_email(form.email.data)

        if user is not None and user.check_password(form.password.data):
            login_user(user)
            flash("User is successfully logged in!")

            next = request.args.get('next')

            if next is None:
                next = url_for('home')

            return redirect(next)

    return render_template('tutor_login.html', form=form, pages=nav_bar_pages_list)
Exemplo n.º 8
0
def tutorRegistration():
    if current_user.is_authenticated:
        return redirect(url_for('auth.index'))
    form = TutorRegForm()
    if form.validate_on_submit():
        user = User(firstname=form.firstname.data,
                    lastname=form.lastname.data,
                    email=form.email.data,
                    username=form.username.data)
        user.set_password(form.password1.data)
        tutor = Tutor(id_number=form.id_number.data, user=user)
        db.session.add(user)
        db.session.add(tutor)
        db.session.commit()
        flash('Congratulations, you are now a registered Tutor!')
        return redirect(url_for('tutor.tutor_home'))
    return render_template('tutor/tutor_reg.html',
                           title='tutor registation',
                           form=form)
Exemplo n.º 9
0
def tutForm():
    tutorForm = TutorForm()
    courses = db.session.query(Course)
    days = db.session.query(Day)

    if request.method == 'POST':
        id_number = request.form.get('ID')
        firstname = request.form.get('firstname')
        lastname = request.form.get('lastname')
        email = request.form.get('email')
        areaStudy = request.form.get('areaOfStudy')
        tutor_profile = Tutor(tutor_id=id_number,
                              tutor_firstname=firstname,
                              tutor_lastname=lastname,
                              tutor_email=email,
                              area_study=areaStudy)
        db.session.add(tutor_profile)
        db.session.commit()

        start1 = request.form.get('start1')
        start2 = request.form.get('start2')
        start3 = request.form.get('start3')
        start4 = request.form.get('start4')
        end1 = request.form.get('end1')
        end2 = request.form.get('end2')
        end3 = request.form.get('end3')
        end4 = request.form.get('end4')

        day1 = request.form.get('day1')
        tutor_availability1 = TutorAvailability(tutor_id=id_number,
                                                day_id=day1,
                                                start_time=start1,
                                                end_time=end1)
        db.session.add(tutor_availability1)
        db.session.commit()

        day2 = request.form.get('day2')
        day3 = request.form.get('day3')
        day4 = request.form.get('day4')
        if day2 != "":
            tutor_availability2 = TutorAvailability(tutor_id=id_number,
                                                    day_id=day2,
                                                    start_time=start2,
                                                    end_time=end2)
            db.session.add(tutor_availability2)
            db.session.commit()
        elif day3 != "":
            tutor_availability3 = TutorAvailability(tutor_id=id_number,
                                                    day_id=day3,
                                                    start_time=start3,
                                                    end_time=end3)
            db.session.add(tutor_availability3)
            db.session.commit()
        elif day4 != "":
            tutor_availability4 = TutorAvailability(tutor_id=id_number,
                                                    day_id=day4,
                                                    start_time=start4,
                                                    end_time=end4)
            db.session.add(tutor_availability4)
            db.session.commit()
        else:
            return (redirect(url_for('home')))

        option1 = request.form.get('options1')
        option2 = request.form.get('options2')

        course = TutorPreference(tutor_id=id_number,
                                 preference_1=option1,
                                 preference_2=option2)
        db.session.add(course)
        db.session.commit()

        return (redirect(url_for('tutView')))

    return render_template('tutForm.html',
                           form=tutorForm,
                           courses=courses,
                           days=days)
Exemplo n.º 10
0
 def validate_email_from_db(self, email):
     temp_email = self.email.data
     if Tutor.find_by_email(temp_email):
         raise ValidationError("Email already exists")