Ejemplo n.º 1
0
def edit_profile(request):
    if request.user.is_certified is False:
        return render_to_response('not_certified.html')

    userob = AirpactUser.objects.get(username=request.user.username)
    if request.method == 'POST':
        # do stuff to save the new user data
        form = EditProfileForm(request.POST)
        if form.is_valid():
            userob.first_name = form.cleaned_data.get('first_name')
            userob.last_name = form.cleaned_data.get('last_name')
            userob.email = form.cleaned_data.get('email')
            userob.bio = form.cleaned_data.get('bio')
            userob.save()
        #reidrect back to their profile
        return HttpResponseRedirect('/user/profile/' + request.user.username +
                                    '/')
    form = EditProfileForm(instance=userob)
    pictures = picture.objects.filter(user=userob)
    return render_to_response('edit_profile.html', {
        'user': request.user,
        'form': form,
        'pictures': pictures
    },
                              context_instance=RequestContext(request))
Ejemplo n.º 2
0
def EditProfile_view(request):

    user = UserSite.objects.get(email__exact=request.user)

    #Si es que la lalmanda es POST entonces se actualiza la informacion
    if request.method == "POST":

        #se crea el formulario con los datos envaidos por el usuario
        form = EditProfileForm(request.POST, user=user)

        #Si es que el formulario es valido se actualizan los datos
        if form.is_valid():

            #Se limpian los datos
            form = form.cleaned_data
            firstName = form["firstName"]

            if 'middleName' in form:

                middleName = form["middleName"]
                user.middleName = middleName

            firstSurname = form["firstSurname"]
            middleSurname = form["middleSurname"]

            #Se actualizan los datos

            user.firstName = firstName
            user.firstSurname = firstSurname
            user.middleSurname = middleSurname
            user.public = form["public"]
            user.birthDate = form["birthDate"]

            #se guardan los cambiso definitamvente
            user.save()

            #Se agrega un mensaje de exito
            messages.add_message(request, messages.SUCCESS,
                                 mSuccessEditProfile)

            return redirect(reverse('miCuenta:myProfile'))

        #Si es que no sno validos, se reenvia hacia la misma vista (con peticion get) y se agrega un mensaje de error
        else:

            messages.add_message(request, messages.SUCCESS, mErrorEditProfile)
            return redirect(reverse('miCuenta:EditProfile'))

    #Si es que es GET, entonces se envia el formualrio para que actualice la informacion
    else:
        #Se crea el formualrio, el cual rquiere el parametro user, utilizado para rellenar inicialmente el formualrio conla finromacion actual del usuario
        form = EditProfileForm(user=user)
        context = {"user": user, "form": form}
        return render(request, templateEditProfile, context)
def edit_profile(request):
    if request.method == 'POST':
        form = EditProfileForm(request.POST, instance=request.user)

        if form.is_valid():
            form.save()
            return redirect('/apps/profile')
    else:
        form = EditProfileForm(instance=request.user)
        args = {'form': form}
        return render(request, '/apps/edit_profile.html', args)
Ejemplo n.º 4
0
def user_settings(request):
    if request.method == 'POST':
        form = EditProfileForm(request.POST, instance=request.user.drinker)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect('/u/%s' % request.user.username)
    else:
        form = EditProfileForm(instance=request.user.drinker)

    args = {}
    args.update(csrf(request))

    args['form'] = form

    return render_to_response('settings.html', args, context_instance=RequestContext(request))
Ejemplo n.º 5
0
def edit_profile():
    form = EditProfileForm()
    if form.validate_on_submit():
        conn = try_connect()
        cursor = conn.cursor()
        cursor.execute(
            'UPDATE uuser SET target_weight = %s, current_weight = %s, calories = %s, height = %s, age = %s WHERE '
            'uuser_id = %s',
            (form.target_weight.data, form.current_weight.data, form.calories.data, form.height.data, form.age.data,
             current_user.id))
        conn.commit()
        cursor.close()
        conn.close()
        flash('Your changes have been saved.')
        return redirect(url_for('profile', uuser_id=current_user.id))
    elif request.method == 'GET':
        conn = try_connect()
        cursor = conn.cursor()
        cursor.execute('SELECT target_weight, current_weight, calories, height, age '
                       'FROM uuser  '
                       'WHERE uuser_id = %s',
                       (current_user.id,))
        records = cursor.fetchone()
        form.target_weight.data = records[0]
        form.current_weight.data = records[1]
        form.calories.data = records[2]
        form.height.data = records[3]
        form.age.data = records[4]
    return render_template('edit_profile.html', title='Edit Profile', form=form)
Ejemplo n.º 6
0
def profile():
    """Update profile for current user."""

    if not g.user:
        flash("Access unauthorized.", "danger")
        return redirect('/')

    user = User.query.get(session[CURR_USER_KEY])

    form = EditProfileForm(obj=user)

    if form.validate_on_submit():
        if User.authenticate(form.username.data, form.password.data):
            user.username = form.username.data
            user.email = form.email.data
            user.image_url = form.image_url.data
            user.header_image_url = form.header_image_url.data
            user.bio = form.bio.data
            user.location = form.location.data

            db.session.commit()
            return redirect(f"/users/{user.id}")

        flash("Wrong password, please try agin.", "danger")

    return render_template('users/edit.html', form=form, user_id=user.id)
Ejemplo n.º 7
0
 def test_email_validator(self):
     form = EditProfileForm(first_name='Adam',
                            last_name='Mertz',
                            email='blah')
     self.assertFalse(
         form.validate(),
         'email should validate it is in the form of an email address')
Ejemplo n.º 8
0
def edit_profile(request):
    if request.method == 'POST':
        edit_form = EditProfileForm(user=request.user, data=request.POST)
        if edit_form.is_valid():
            edit_form.save()
            messages.add_message(request, messages.INFO,
                                 _('Your profile has been updated.'))
            return HttpResponseRedirect('.')

    if request.method == 'GET':
        edit_form = EditProfileForm(user=request.user)
    return render_to_response('user/editprofile.html',
                              context_instance=RequestContext(
                                  request, {
                                      'edit_form': edit_form,
                                  }))
Ejemplo n.º 9
0
def edit_profile():
    user = current_user
    form = EditProfileForm()
    
    if form.validate_on_submit():
        user.name = form.name.data
        user.farm_address = form.farm_address.data
        user.zip_code = form.zip_code.data
        user.city = form.city.data
        user.state = form.state.data
        user.country = form.country.data
        user.phone = form.phone.data
        user.description = form.description.data
        print("Profile Updated")
        return redirect(url_for('dashboard'))
    else:
        form.name.data = user.name
        form.farm_address.data = user.farm_address
        form.zip_code.data = user.zip_code
        form.city.data = user.city
        form.state.data = user.state
        form.country.data = user.country
        form.phone.data = user.phone
        form.description.data = user.description

    return render_template('edit_profile_consumer.html', form=form)
Ejemplo n.º 10
0
def edit_profile():
    form = EditProfileForm()
    userIdStr = str(current_user.get_id())
    avatarLocation = 'static/avatars/' + userIdStr + '.jpeg'
    avatarFromUser = '******' + userIdStr + '.jpeg'
    if form.validate_on_submit():
        uploaded_file = request.files['file']
        if uploaded_file.filename != '':
            file_ext = os.path.splitext(uploaded_file.filename)[1]
            if file_ext not in app.config['UPLOAD_EXTENSIONS']:
                abort(400)
            else:
                uploaded_file.save(avatarLocation)
        current_user.about_me = form.about_me.data
        db.session.commit()
        return redirect(
            url_for('user',
                    username=current_user.username,
                    avatarLocation=avatarLocation,
                    avatarFromUser=avatarFromUser))

    elif request.method == 'GET':
        form.username.data = current_user.username
        form.about_me.data = current_user.about_me
    return render_template('edit_profile.html',
                           title='edit profile',
                           form=form)
Ejemplo n.º 11
0
def edit_profile():
    form = EditProfileForm()
    if form.validate_on_submit():
        if form.picture.data:
            picture_file = save_picture(form.picture.data)
            current_user.image_file = picture_file
        current_user.firstname = form.firstname.data
        current_user.lastname = form.lastname.data
        current_user.dob = form.dob.data
        current_user.address = form.address.data
        current_user.state = form.state.data
        current_user.country = form.country.data
        current_user.pincode = form.pincode.data
        current_user.phoneno = form.phoneno.data
        current_user.department = form.department.data
        db.session.commit()
        flash('Your account has been updated!', 'success')
        return redirect(url_for('edit_profile'))
    elif request.method == 'GET':
        form.firstname.data = current_user.firstname
        form.lastname.data = current_user.lastname
        form.dob.data = current_user.dob
        form.address.data = current_user.address
        form.state.data = current_user.state
        form.country.data = current_user.country
        form.pincode.data = current_user.pincode
        form.phoneno.data = current_user.phoneno
        form.department.data = current_user.department
    image_file = url_for('static', filename='img/' + current_user.image_file)
    return render_template('edit-profile.html',
                           image_file=image_file,
                           form=form)
Ejemplo n.º 12
0
def edit_profile():
    user = get_current_user()
    form = EditProfileForm()
    if form.validate_on_submit():
        try:
            with pg_db.atomic():
                edit_q = User.update(
                    username=form.username.data,
                    about_me=form.about_me.data
                ).where(
                    User.username == user.username
                )
                edit_q.execute()

            # We should update our session object with a new username
            session['username'] = form.username.data
            user = get_current_user()
            flash('Your data has been changed')
            return redirect(url_for('profile', username=user.username))

        except IntegrityError:
            flash('That username or email is already used by someone else')
    else:
        form.username.data = user.username
        form.about_me.data = user.about_me
    return render_template('edit_profile.html', form=form, title='Edit your profile')
Ejemplo n.º 13
0
def profile():
    """Update profile for current user."""

    if not g.user:
        flash("Access unauthorized.", "danger text-center")
        return redirect("/")

    user = User.query.get_or_404(g.user.id)
    form = EditProfileForm(obj=user)

    if form.validate_on_submit():
        user = User.authenticate(user.username,
                                 form.password.data)

        if user:
            user.username=form.username.data
            user.email=form.email.data
            user.image_url=form.image_url.data or User.image_url.default.arg
            user.header_image_url=form.header_image_url.data
            user.bio = form.bio.data

            db.session.commit()
            
            flash(f"Sucessfully updated!", 'success  text-center')
            return redirect(f"/users/{user.id}")

        flash("Invalid credentials.", 'danger text-center')        

        return redirect("/")
    
    return render_template('users/edit.html', form=form)
Ejemplo n.º 14
0
def edit_profile_page():
    if 'user_id' not in session :
        return redirect('/')

    edit_form = EditProfileForm(request.form)
    day_form = OneDayForm(request.form)
    deleteme = DeleteMeForm(request.form)

    sql = "SELECT * FROM user WHERE username = %s"
    mycursor.execute(sql, (session['user_id'], ))
    user = mycursor.fetchone()

    if edit_form.validate_on_submit() and edit_form.submit1.data == True:
        update_profile(edit_form, mycursor, mydb)
        return redirect(url_for('edit_profile_page'))
        
    if deleteme.validate_on_submit() and deleteme.submit3.data == True:
        if deleteme.delacc.data == "Delete Account":
            delete_account(mycursor, mydb)
            session.pop('user_id')
            return redirect(url_for('home_page'))

        else:
            return redirect(url_for('edit_profile_page'))


    if day_form.submit2.data == True:
        update_day(day_form, mycursor, mydb)

        check_times(mycursor, mydb)
        return redirect(url_for('edit_profile_page'))

    

    return render_template("edit_profile.html", edit_form=edit_form, day_form=day_form, user=user, deleteme=deleteme)
Ejemplo n.º 15
0
 def post(self, request):
     form = EditProfileForm(request.POST, instance=request.user)
     if form.is_valid():
         form.save()
         messages.success(request,
                          "Your profile has been successfully updated!")
     return render(request, self.template_name, {'form': form})
Ejemplo n.º 16
0
def profile():
    """Update profile for current user."""

    if not g.user:
        flash("Access unauthorized.", "danger")
        return redirect("/")

    form = EditProfileForm(username=g.user.username,
                           email=g.user.email,
                           image_url=g.user.image_url,
                           password=g.user.password,
                           bio=g.user.bio,
                           location=g.user.location)

    if form.validate_on_submit():
        user = User.authenticate(form.username.data, form.password.data)

        user.username = form.username.data
        user.email = form.email.data
        user.image_url = form.image_url.data
        user.bio = form.bio.data
        user.location = form.location.data

        # The consequence of having
        #### user.password = form.password.data ####
        # is setting a new plain text non-hashed password into the database
        # the password is now 123456 in plain text
        # Python is looking for $b2$12$...(start of encrypted salt key)
        # and can't find salt key, hence the error "invalid Salt"

        db.session.commit()
        return redirect(f'/users/{g.user.id}')

    return render_template('/users/edit.html', form=form)
Ejemplo n.º 17
0
def profile(user_id):
    """Update profile for current user."""

    if not g.user:
        flash("Access unauthorized.", "danger")
        return redirect("/")

    # user = User.query.get_or_404(user_id)  # don't need to re-query
    form = EditProfileForm(obj=g.user)

    # POST
    if form.validate_on_submit():
        # check user password before continuing
        user = User.authenticate(g.user.username, form.password.data)

        if user:
            # process data and add to DB
            g.user.username = form.data.get('username')
            g.user.email = form.data.get('email')
            g.user.image_url = form.data.get('image_url')
            g.user.bio = form.data.get('bio')
            db.session.add(g.user)
            db.session.commit()
            return redirect(f'/users/{g.user.id}')
        elif not form.validate_on_submit():
            # didn't work
            form.username.errors = [""]  #
            return render_template('users/edit.html', form=form, user=g.user)

    # GET
    return render_template('users/edit.html', form=form, user=g.user)
Ejemplo n.º 18
0
Archivo: views.py Proyecto: shynp/ican
def profile_edit():
    form = EditProfileForm(obj=current_user)
    if form.validate_on_submit():
        current_user.name = form.name.data
        current_user.email = form.email.data
        current_user.phone = form.phone.data
        if form.new_password.data and form.current_password.data:
            if current_user.verify_password(form.current_password.data):
                current_user.password = form.new_password.data
                db.session.add(current_user)
                db.session.commit()
                flash('Your profile has been updated')
            else:
                flash('Invalid current password; password not updated')
        else:
            db.session.add(current_user)
            db.session.commit()
            flash('Your profile has been updated')
        return redirect(url_for('.index'))
    form.name.data = current_user.name
    form.email.data = current_user.email
    form.phone.data = current_user.phone
    return render_template('student/profile-edit.html',
                           student=current_user,
                           form=form)
Ejemplo n.º 19
0
def edit_profile():
    user = User.query.get(current_user.id)
    form = EditProfileForm(request.form, phone=user.phone, email=user.email)
    passform = ChangePasswordForm(request.form)
    if request.method == 'POST':
        #if the user clicked button to update profile
        if request.form['submit'] == 'Update' and form.validate_on_submit():
            phone = form.phone.data
            email = form.email.data
            user.phone = phone
            user.email = email
            db.session.commit()
            return redirect('home')
        #if user clicked change password
        if request.form[
                'submit'] == 'Change Password' and passform.validate_on_submit(
                ):
            #generate hash
            newpass = generate_password_hash(passform.password.data)
            user.password_hash = newpass
            db.session.commit()
            return redirect('edit_profile')
    return render_template('edit_profile.html',
                           form=form,
                           passform=passform,
                           user=user)
Ejemplo n.º 20
0
def profile():
    """Update profile for current user."""

    # IMPLEMENT THIS
    if not g.user:
        flash("Access unauthorized.", "danger")
        return redirect("/")

    form = EditProfileForm(obj=g.user)

    if form.validate_on_submit():

        password = form.password.data
        user = User.authenticate(g.user.username, password)
        if user:
            user.username = form.username.data
            user.image_url = form.image_url.data
            user.header_image_url = form.header_image_url.data
            user.bio = form.bio.data
            db.session.add(user)
            db.session.commit()
            return redirect(f'/users/{user.id}')
        else:
            flash("Incorrect password entered to edit profile.", "danger")
            return redirect("/")
    else:
        return render_template('users/edit.html', form=form)
Ejemplo n.º 21
0
def edit_profile():
    form = EditProfileForm()
    if form.validate_on_submit():
        print "VALIDATE"
        current_user.name = form.name.data
        current_user.location = form.location.data
        current_user.about_me = form.about_me.data
        filename = secure_filename(form.picture.data.filename)
        delete_picture = form.remove_picture.data
        print filename
        if delete_picture:
            if current_user.image is not None:
                os.remove(
                    os.path.join(current_app.config['UPLOADED_PHOTOS_DEST'],
                                 current_user.image))
            current_user.image = None
            current_user.social_image = None

        if current_user.image is not None and filename:
            os.remove(
                os.path.join(current_app.config['UPLOADED_PHOTOS_DEST'],
                             current_user.image))

        print filename
        if filename:
            photos.save(request.files['picture'])
            current_user.image = filename

        db.session.add(current_user)
        return redirect(url_for('.user', username=current_user.username))
    form.name.data = current_user.name
    form.location.data = current_user.location
    form.about_me.data = current_user.about_me
    return render_template('edit-profile.html', form=form)
Ejemplo n.º 22
0
def profile(user_id):
    """Update profile for current user."""

    if not g.user:
        flash("Access unauthorized.", "danger")
        return redirect("/")
    
    user = User.query.get_or_404(user_id)
    form = EditProfileForm(obj=user)
    

    if form.validate_on_submit():

        username = form.username.data
        email = form.email.data
        image_url = form.image_url.data
        header_image_url = form.header_image_url.data
        bio = form.bio.data

        db.session.commit()

        return redirect('/')

    else:
        return render_template('users/edit.html', form=form, user=user)
Ejemplo n.º 23
0
def profile():
    """Update profile for current user."""

    if not g.user:
        flash("Please sign in to view this page.", "danger")
        return redirect("/login")

    form = EditProfileForm(obj=g.user)
    if form.validate_on_submit():
        password = form.password.data
        if User.authenticate(g.user.username, password):
            # Update user
            g.user.username = form.username.data
            g.user.email = form.email.data
            if form.image_url.data:
                g.user.image_url = form.image_url.data
            if form.header_image_url.data:
                g.user.header_image_url = form.header_image_url.data
            if form.bio.data:
                g.user.bio = form.bio.data

            db.session.add(g.user)
            db.session.commit()

            return redirect(f"/users/{g.user.id}")
        else:
            flash("Incorrect password", "danger")

    return render_template("/users/edit.html", form=form, user=g.user)
Ejemplo n.º 24
0
def edit_profile():
    form = EditProfileForm()
    c = Config()
    if form.validate_on_submit():
        current_user.bio = form.bio.data
        current_user.address = form.address.data
        current_user.phone_number = form.phone_number.data
        current_user.website = form.website.data
        current_user.public_email = form.email.data
        current_user.f1 = form.featured1.data
        if form.image.data:
            filename = form.image.data.filename
            get_queue().enqueue(process_image, 
                                type='image',
                                filename=filename,
                                data =form.image.data.read(),
                                user_id=current_user.id)
        if form.pdf.data:
            filename = form.pdf.data.filename
            get_queue().enqueue(process_image, 
                                type='pdf',
                                filename=filename,
                                data =form.pdf.data.read(),
                                user_id=current_user.id)
        db.session.commit()
        return redirect(url_for('vendor.view_profile'))
    form.bio.data = current_user.bio
    form.address.data = current_user.address
    form.phone_number.data = current_user.phone_number
    form.website.data = current_user.website
    form.email.data = current_user.public_email
    form.featured1.data = current_user.f1
    return render_template('vendor/edit_profile.html', form=form)
Ejemplo n.º 25
0
def profile():
    """Update profile for current user."""

    if CURR_USER_KEY not in session:
        flash("Access unauthorized.", "danger")
        return redirect("/")

    form = EditProfileForm(obj=g.user)

    if form.validate_on_submit():

        if User.authenticate(g.user.username, form.password.data):

            g.user.username = form.username.data,
            g.user.email = form.email.data,
            g.user.image_url = form.image_url.data or User.image_url.default.arg,
            g.user.header_image_url = form.header_image_url.data,
            g.user.bio = form.bio.data

            db.session.commit()
            return redirect(f'/users/{g.user.id}')
        else:
            flash("Wrong Password!", "danger")
            return redirect("/")
    else:
        return render_template('/users/edit.html', form=form)
Ejemplo n.º 26
0
def edit():
    form = EditProfileForm()
    if form.validate_on_submit():
        user = User.query.filter_by(email=current_user.email).first()
        user.first_name = form.first_name.data
        user.last_name = form.last_name.data
        user.email = form.email.data
        user.city = form.city.data
        user.state = form.state.data
        user.zip_code = form.zip_code.data
        if form.password.data is not None:
            user.update_password(form.password.data)
        try:
            commit(db.session)
        except:
            send_error_email()
            flash('There has been an error')
            return render_template('profile/edit.html', form=form)
        return redirect(url_for('profile.index'))

    form.first_name.data = current_user.first_name
    form.last_name.data = current_user.last_name
    form.email.data = current_user.email
    form.city.data = current_user.city
    form.state.data = current_user.state
    form.zip_code.data = current_user.zip_code

    return render_template('profile/edit.html', form=form)
Ejemplo n.º 27
0
    def test_passwords_equality_validator(self):
        form = EditProfileForm(first_name='Adam',
                               last_name='Mertz',
                               email='*****@*****.**',
                               password='******',
                               confirm='pass')
        self.assertTrue(form.validate(),
                        'password/confirm must validate to be equal')

        form = EditProfileForm(first_name='Adam',
                               last_name='Mertz',
                               email='*****@*****.**',
                               password='******',
                               confirm='not pass')
        self.assertFalse(form.validate(),
                         'password/confirm must be false when not equal')
Ejemplo n.º 28
0
def edit():
    form = EditProfileForm()

    if form.validate_on_submit():
        current_user.firstname = form.firstname.data
        current_user.lastname = form.lastname.data
        current_user.address = form.address.data
        current_user.city = form.city.data
        current_user.state = form.state.data
        current_user.zipcode = form.zipcode.data
        current_user.country = form.country.data
        current_user.about_me = form.about_me.data
        current_user.user_disabled = form.user_disabled.data

        model.session.add(current_user)
        model.session.commit()

        flash('Your changes have been saved!')
        return redirect(url_for('edit'))
        #renders the fields with data from database
    else:
        form.firstname.data = current_user.firstname
        form.lastname.data = current_user.lastname
        form.address.data = current_user.address
        form.city.data = current_user.city
        form.state.data = current_user.state
        form.zipcode.data = current_user.zipcode
        form.country.data = current_user.country
        form.about_me.data = current_user.about_me
        form.user_disabled.data = current_user.user_disabled

    return render_template("edit_profile.html", form=form)
Ejemplo n.º 29
0
def profile():
    """Update profile for current user."""

    # IMPLEMENT THIS

    if not g.user:
        flash("Access unauthorized.", "danger")
        return redirect("/")

    form = EditProfileForm(obj=g.user)

    if form.validate_on_submit():
        # import pdb; pdb.set_trace()
        user = User.authenticate(g.user.username, form.password.data)

        if (user):
            user.username = form.username.data
            user.email = form.email.data
            user.image_url = form.image_url.data
            user.header_image_url = form.header_image_url.data
            user.bio = form.bio.data
            user.location = form.location.data
            db.session.add(user)
            db.session.commit()
            return redirect(f"/users/{g.user.id}")

        flash("Invalid credentials.", 'danger')

    return render_template("users/edit.html", form=form)
Ejemplo n.º 30
0
def edit_profile():
    """Update profile for current user."""

    if not g.user:
        flash("Access unauthorized.", "danger")
        return redirect("/")

    form = EditProfileForm(obj=g.user)

    if form.validate_on_submit():
        user = User.authenticate(g.user.username, form.password.data)
        if user:
            user.username = form.username.data
            user.email = form.email.data
            user.image_url = form.image_url.data
            user.header_image_url = form.header_image_url.data
            user.bio = form.bio.data or User.bio.default.arg
            user.location = form.location.data
            user.show_location = form.show_location.data
            user.time_zone = form.time_zone.data

            db.session.commit()
            return redirect(f'/users/{user.id}')
        else:
            flash("Wrong password. Access unauthorized.", "danger")
            return redirect('/')

    else:
        return render_template("/users/edit.html",
                               form=form,
                               user_id=g.user.id)