Esempio n. 1
0
def edit(request, app_id):

    user = request.user
    app = Application.objects.get(pk=app_id)

    if app.user == user:

        form = ApplicationForm(request.POST or None, instance=app)

        if request.method == 'POST':

            if form.is_valid():

                obj = form.save(commit=False)

                obj.save()

                return HttpResponseRedirect('/tracker/user/{0}/'.format(
                    user.username))

            else:

                print form.errors

        else:

            form = ApplicationForm(instance=app)

    else:
        return HttpResponse('User mismatch, permission denied.')

    content = {'form': form, 'app': app}

    return render(request, 'tracker/edit.html', content)
Esempio n. 2
0
def TutorApplication(request, template = 'tutors/tutor_application.html'):
    if not settings.OPEN_SIGNUP:
        return HttpResponseRedirect('/')

    if request.method == 'POST':
        user_creation_form = EmailUserCreationForm(request.POST)
        profile_creation_form = ApplicationForm(request.POST)

        if user_creation_form.is_valid() and profile_creation_form.is_valid():
            # Create the user
            user_data = user_creation_form.cleaned_data
            user = create_user(user_data[ 'email' ], user_data[ 'password1' ])

            try:
                tutors_group = Group.objects.get(name = 'Tutors')
            except Group.DoesNotExist:
                tutors_group = Group.objects.create(name = 'Tutors')

            user.is_staff = False
            user.groups.add(tutors_group)

            profile_data = profile_creation_form.cleaned_data
            user.first_name = profile_data[ 'first_name' ][ 0 ].upper() + profile_data[ 'first_name' ][ 1: ].lower()
            user.last_name = profile_data[ 'last_name' ][ 0 ].upper() + profile_data[ 'last_name' ][ 1: ].lower()
            user.save()

            # Fill the tutor profile
            tutor = Tutor.objects.get(auth=user)
            tutor.name = user.get_full_name()
            tutor.email = user.email
            tutor.phone = profile_data[ 'phone' ]
            tutor.qualifications = profile_data[ 'qualifications' ]
            tutor.rate = profile_data[ 'rate' ]

            for course in profile_data[ 'taught_courses' ]:
                tutor.taught_courses.add(course)
            tutor.save()

            messages.add_message(request, messages.INFO,
                                 'Your application has been successfully received and is pending approval. Thank you '
                                 'for applying for Skule Tutors.')
            return HttpResponseRedirect('/')
    else:
        user_creation_form = EmailUserCreationForm()
        profile_creation_form = ApplicationForm()

    return render_to_response(template,
                              dict(user_creation_form = user_creation_form,
                                   profile_creation_form = profile_creation_form),
                              context_instance = RequestContext(request))
def register_application():
    application_form = ApplicationForm(meta={'csrf': False})

    if application_form.validate_on_submit():
        car_brand = request.form['car_brand']
        car_model = request.form['car_model']
        name = request.form['name']
        last_name = request.form['last_name']
        email = request.form['email']
        tel = request.form['tel']

        try:
            application = Application(name=name, last_name=last_name, email=email, tel=tel, car_brand_id=car_brand,
                                      car_model_id=car_model)
            db.session.add(application)
            db.session.commit()

            # !!!
            # Uncomment it if you want to use Mail
            # !!!

            # track_number = application.unique_track_number
            # send_application_registered_msg(name, email, track_number)

            return jsonify({'success': 'Ваша заявка была успешно подана!'})
        except Exception as e:
            return jsonify({'errors': f'Что-то пошло не так, попробуйте снова! {e}'})

    return jsonify({'errors': application_form.errors})
Esempio n. 4
0
def application_form(request, application_id):
    application = get_object_or_404(Application,
                                    project__owner=request.user,
                                    pk=application_id)
    context = {}
    if request.method == "POST":
        form = ApplicationForm(application.project,
                               request.POST,
                               instance=application,
                               prefix='app_%d_' % application.id)
        if form.is_valid():
            application = form.save()
            context['saved'] = True
            form = ApplicationForm(application.project,
                                   instance=application,
                                   prefix='app_%d_' % application.id)
    else:
        form = ApplicationForm(application.project,
                               instance=application,
                               prefix='app_%d_' % application.id)
    context.update({'application_form': form, 'application': application})
    return render_response(request, 'application_form.html', context)
Esempio n. 5
0
def addapp(request):

    if request.method == 'POST':

        app = Application(user=request.user)

        form = ApplicationForm(request.POST, instance=app)

        if form.is_valid():
            form.save(commit=True)

            return HttpResponseRedirect('/tracker/user/{0}/'.format(
                request.user.username))

        else:
            print form.errors

    else:

        form = ApplicationForm()

    content = {'form': form}

    return render(request, 'tracker/addapp.html', content)
Esempio n. 6
0
def web_hook_application_form():
    """ Web hook for incoming application forms.
    """
    request_id = log_request()
    log.info(u"request_id={} Received form: {}".format(request_id, request.form))
    data = request.form.to_dict()
    log.debug(u"request_id={} Data: {}".format(request_id, data))
    form = ApplicationForm(data=data)
    d = {
        'status': 'ok',
        'form': request.form,
        'data': data,
    }
    slack.post_form_to_webhook(form)
    log.debug(u"request_id={} d: {}".format(request_id, json.dumps(d)))
    return jsonify(**d)
Esempio n. 7
0
def return_loan_application():
    form = ApplicationForm()
    message = ''
    if form.validate_on_submit():
        age = form.age.data
        occupation = form.occupation.data

        credit = form.grade.data
        grade = convert_credit_grade(credit)
        Years_At_present_Employment = form.Years_At_present_Employment.data

        expenses = form.expenses.data
        income = form.income.data
        dti = round((expenses / (income / 12) * 100), 2)

        Delinquency = convert_to_binary(form.Delinquency.data)
        Collections = convert_to_binary(form.Collections.data)
        Derogatory = convert_to_binary(form.Derogatory.data)
        Housing = form.Housing.data

        application_data = [[grade, dti, Delinquency, Collections, Derogatory]]

        probabs_result = tfidf_model.predict_proba(application_data)

        default_chance = probabs_result[1][0][1]

        print('Chance of default: {}'.format(default_chance * 100))

        if default_chance > .3:
            message = 'However you have been rejected :('
            approval = 'rejected'
        else:
            message = 'You have been accepted! :)'
            approval = 'accepted'

        insert_query = "INSERT INTO loan_history VALUES(DEFAULT, {}, '{}', {}, '{}', '{}', '{}', '{}')".format(
            age, occupation, Years_At_present_Employment, income, Housing,
            credit, approval)

        # print(insert_query)

        cur.execute(insert_query)
        conn.commit()

        return render_template('application_complete.html', message=message)

    return render_template('loan_application.html', form=form)
Esempio n. 8
0
    def index():
        form = ApplicationForm()

        if form.validate_on_submit():
            if form.squirrel.data:
                # ANTI SPAM YO
                app.logger.info('SECRET SQUIRREL')
                return redirect(url_for('index'))

            form_data = "name: {}\nemail: {}\nphone: {}\n\n".format(
                form.name.data, form.email.data, form.phone.data)
            app.logger.info(form_data)

            # send the email
            email.send(form_data)

            flash(app.config['THANKS_FLASH'])

            return redirect(url_for('index'))

        return render_template('index.jade', form=form)
Esempio n. 9
0
def apply():
    if current_user.is_authenticated:
        if current_user.type == 'admin':
            return redirect(url_for('main.index'))
        return redirect(url_for('student.studentIndex'))
    form = ApplicationForm()
    if request.method == 'POST':
        if form.validate_on_submit():
            user = User.query.filter_by(email=form.email.data).first()
            if user is not None:
                flash('There is already an account with that email.',
                      'warning')
                return redirect(url_for('student.apply'))
            stu = Student.query.filter_by(email=form.email.data).first()
            if stu is not None:
                flash('There is already a student with that email.', 'warning')
                return redirect(url_for('student.apply'))
            applicant = Applicant.query.filter_by(
                email=form.email.data).first()
            if applicant is not None:
                flash('You have already applied with that email.', 'warning')
                return redirect(url_for('student.apply'))
            if form.document.data:
                document = save_doc(form.document.data)
            student = Applicant(name=form.name.data,
                                birthday=form.birthday.data,
                                phone=form.phone.data,
                                address=form.address.data,
                                email=form.email.data,
                                status=False,
                                city=form.city.data,
                                country=form.country.data,
                                program=form.program.data,
                                document=document)
            db.session.add(student)
            db.session.commit()
            flash('You application has been received!', 'success')
            return redirect(url_for('student.studentlogin'))
    return render_template('apply.html', form=form)
def index():
    application_form = ApplicationForm(meta={'csrf': False})

    return render_template('index.html', application_form=application_form)