示例#1
0
文件: app.py 项目: gruiz016/warbler
def profile():
    """Update profile for current user."""

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

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

            db.session.commit()
            return redirect(f'/users/{user.id}')
        else:
            flash("Access denied/Wrong password.", "danger")
            return redirect("/")
    return render_template('users/edit.html', form=form)
示例#2
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)
示例#3
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)
示例#4
0
def edit_profile(request):
    """
    view untuk fungsionalitas perubahan data profile
    account
    """
    if request.POST:
        old_picture = request.user.profile.picture
        form = EditProfileForm(request.POST, request.FILES,
            instance=request.user.profile)
        if form.is_valid():
            if 'picture' in request.FILES:
                from os import unlink
                if old_picture.name != 'profpic/default.jpg':
                    unlink(old_picture.path)
            form.save()
            request.user.email = form.cleaned_data['email']
            request.user.first_name = form.cleaned_data['first_name']
            request.user.last_name = form.cleaned_data['last_name']
            request.user.save()
            messages.info(request, _('Profile updated'))
            return HttpResponseRedirect(reverse('self_profile'))
    else:
        form = EditProfileForm(instance=request.user.profile,
                initial={'email': request.user.email,
                         'first_name': request.user.first_name,
                         'last_name': request.user.last_name})
    return render_to_response('accounts/edit_profile.html',
            {'form': form},
            context_instance=RequestContext(request))
示例#5
0
文件: views.py 项目: CordonSN/cordon
def edit_profile():
    #form = EditProfileForm(g.user.nickname)
    form = EditProfileForm()
    avatar_form = EditAvatarForm()
    cover_form = EditCoverForm()
    # ----- If form is used
    print 'EP', form.validate_on_submit()
    if form.validate_on_submit():
        g.user.name = form.name.data
        g.user.show_email = form.show_email.data
        g.user.bio = form.bio.data
        g.user.sex = form.sex.data
        g.user.slogan = form.slogan.data
        g.user.status = form.status.data
        g.user.location = form.location.data
        db.session.add(g.user)
        db.session.commit()
        flash('Your changes have been saved.', 'success')
        return redirect(url_for('edit_profile'))
    else:
        form.name.data = g.user.name
        form.show_email.data = g.user.show_email
        form.bio.data = g.user.bio
        form.sex.data = g.user.sex
        form.slogan.data = g.user.slogan
        form.status.data = g.user.status
        form.location.data = g.user.location
    return render_template(
        "site/%s/edit_profile.html" % (cordon.config['TEMPLATE']),
        user = g.user,
        form = form,
        avatar_form = avatar_form,
        cover_form = cover_form,
        )
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)
示例#7
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})
示例#8
0
文件: app.py 项目: Cha0Ye/warbler
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)
示例#9
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)
示例#10
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)
示例#11
0
def profile():
    """Update profile for current user."""

    # Check to see if user is logged in.
    if not g.user:
        flash("Access unauthorized. You must be logged in to view this page.", "danger")
        return redirect("/")

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

    if form.validate_on_submit():
        if User.authenticate(user.username, 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()

            # ******** Need to fix this so only valid information will allow a db.commit ********
            # try:
            #     db.session.commit()

            flash("Success! User has been updated.", "success")
            return redirect(f"/users/{user.id}")
        flash("The password you entered is incorrect, please try again.", "danger")
        return redirect("/")

    return render_template("/users/edit.html", form=form, user=user)
示例#12
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')
示例#13
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)
示例#14
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)
示例#15
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)
示例#16
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))
示例#17
0
def editProfile(request):
	if request.method == 'POST': # If the form has been submitted...
		form = EditProfileForm(request.POST) # A form bound to the POST data
		# assume that we have done the validation on the client side
		if(form.is_valid()):
			print "here?"
			messages.success(request, 'Your new profile information was saved')
			# get form data
			email = form.cleaned_data['email']
			password = form.cleaned_data['password']
			first_name = form.cleaned_data['first_name']
			last_name = form.cleaned_data['last_name']
			# get user object and then bind data to user
			user = User.objects.get(id__iexact=request.session['user_id'])
			user.first_name = first_name
			user.last_name = last_name
			user.email = email
			user.password = make_password(password)
			user.save()
			request.session['user_id'] = user.id
			request.session['first_name'] = user.first_name
			request.session['last_name'] = user.last_name
			request.session['email'] = email
			return HttpResponseRedirect('/home/profile') # Redirect after POST
	return HttpResponseRedirect('/error')
示例#18
0
def edit():
    form = EditProfileForm()
    if form.validate_on_submit():
        g.user.emailReminders = form.emailReminders.data
        g.user.pmReminders = form.pmReminders.data
        if not form.email.data:
            g.user.email = None
            g.user.emailConfirmed = None
            db.session.add(g.user)
            db.session.commit()
            flash('Profile Successfully Updated.', 'info')
            return redirect(url_for('edit'))
        if form.email.data == g.user.email and g.user.emailConfirmed:
            db.session.add(g.user)
            db.session.commit()
            flash('Profile Successfully Updated.', 'info')
            return redirect(url_for('edit'))
        provisionalEmail = form.email.data
        if g.user.email is None or g.user.emailConfirmed == False:
            g.user.email = provisionalEmail
            g.user.emailConfirmed = False
            db.session.add(g.user)
            db.session.commit()
        message.send_email('Confirm Your Account', [provisionalEmail], 'confirmation',
            user=g.user, token=g.user.generate_confirmation_token(email=provisionalEmail))
        flash('A confirmation message has been sent to you. Please check your spam or junk folder.', 'warning')
        return redirect(url_for('edit'))

    form.email.data = g.user.email
    form.emailReminders.data = g.user.emailReminders
    form.pmReminders.data = g.user.pmReminders

    return render_template('editprofile.html',
                           form=form,
                           user=g.user)
示例#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)
示例#20
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')
示例#21
0
文件: main.py 项目: nawns/MyLink
def profile():
    if 'email' not in session:
        return redirect(url_for('login'))
   
    user = User.query.filter_by(email = session['email']).first()

    if user is None:
        return redirect(url_for('login'))
    else:
        form = EditProfileForm()
        if request.method == 'POST':
            if form.validate() == False:
                return render_template('profile.html', form=form, title='profile', user=user)
            elif form.submit.data is True:
                user = User.query.filter_by(email=session['email']).first()
                if len(form.password.data) > 0:
                    user.password = form.password.data
                user.name = form.name.data
                db.session.commit()
	    elif form.verify.data is True:
		token = generate_confirmation_token(session['email'])
                confirm_url = url_for('confirm', token=token, _external=True)
    		html = render_template('confirm.html', confirm_url=confirm_url)
		subject = "Mylink: confirm email"
		send_email(session['email'], subject, html)
		return render_template('verificationsent.html')

            return redirect(url_for('index'))
        user = User.query.filter_by(email=session['email']).first()

        return render_template('profile.html', form=form, title='profile', user=user)
示例#22
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)
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)
示例#24
0
def editProfile(request):	
	if request.method == 'POST':
		form = EditProfileForm(request.POST, request.FILES)
		if form.is_valid():
			cleaned_data = form.clean()
			first_name = cleaned_data['first_name'].strip()
			last_name = cleaned_data['last_name'].strip()
			email = cleaned_data['emailAddress']
			dorm = cleaned_data['dorm']
			pic = request.FILES.get('pic','')
			user = User.objects.get(username = request.user)
			userdata = user.userdata
			if first_name.strip():
				user.first_name = first_name
			if last_name.strip():
				user.last_name = last_name
			if email.strip():
				user.email = email
			if dorm.strip():
				userdata.dorm = dorm
			if pic:
				userdata.pic = pic
			user.save()
			userdata.save()
			return HttpResponseRedirect('/')
	else:
		user = request.user
		userdata = user.userdata
		data = {'first_name':user.first_name, 'last_name':user.last_name, 'emailAddress':user.email, 'dorm':userdata.dorm}
		form = EditProfileForm(initial = data)
	
	return render(request, 'editProfile.html', {'form':form})
示例#25
0
def edit():
    form = EditProfileForm()
    if form.validate_on_submit():
        pic_file = request.files[form.profile_pic.name]
        if pic_file and allowed_file(pic_file.filename):
            filename = secure_filename(pic_file.filename)
            folder = os.path.join(current_app.config['UPLOAD_FOLDER'],
                                  PROFILE_PIC_UPLOAD_SUBFOLDER)
            if not os.path.exists(folder):
                os.makedirs(folder)
            pic_file.save(os.path.join(folder, filename))
            current_user.profile_pic_url = url_for('.profile_pic',
                                                   filename=filename)

        current_user.name = form.name.data
        current_user.email = form.email.data
        db.session.add(current_user)
        db.session.commit()
        flash("Account information saved successfully", "success")
        return redirect(url_for('.show'))

    if request.method == 'GET':
        form.name.data = current_user.name
        form.email.data = current_user.email

    return render_template('account/edit.html', form=form)
示例#26
0
文件: views.py 项目: 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)
示例#27
0
文件: views.py 项目: lukaszsliwa/Mapy
def edit(request):
    """
    Obsługuje dwa typy żądań:
        * GET -- tworzy formularz do edytowania swoich danych
        * POST -- sprawdza poprawność danych i zapisuje je w bazie

    :returns: jeśli podane dane są poprawne do generuje stronę do edycji danych,
              jeśli dane są niepoprawne to wskazuje błędne pola

    .. include:: ../source/login_required.rst

    """
    if request.method == 'GET':
        form = EditProfileForm(initial={
        'first_name': request.user.first_name,
        'last_name': request.user.last_name,
        'email': request.user.email })
    elif request.method == 'POST':
        form = EditProfileForm(request.POST)
        if form.is_valid():
            user = request.user
            user.first_name = form.cleaned_data['first_name']
            user.last_name = form.cleaned_data['last_name']
            user.email = form.cleaned_data['email']
            if form.cleaned_data['password']:
                user.set_password(form.cleaned_data['password'])
            user.save()
            messages.success(request, UPDATED)
    return direct_to_template(request, 'profiles/edit.html', locals())
示例#28
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)
示例#29
0
def edit_profile(request,id):
    if request.method =='GET' :

        if request.user.is_authenticated():
            now =  timezone.make_aware(datetime.now(),timezone.get_default_timezone())
            now = formats.date_format(now,"SHORT_DATETIME_FORMAT")
            data = User.objects.get(pk=id)

            form = EditProfileForm()
            dv = {'first_name':data.first_name,'last_name':data.last_name,'email':data.email}
            form = EditProfileForm(dv)
            return render(request, 'userprofile_edit.html', {'form':form,'timezones':pytz.common_timezones,"date":str(now)})

        else:
            return redirect('/authen/')
    elif request.method == 'POST' :
        now =  timezone.make_aware(datetime.now(),timezone.get_default_timezone())
        now = formats.date_format(now,"SHORT_DATETIME_FORMAT")
        data = User.objects.get(pk=id)
        if request.POST.get('updateuser'):
            user = request.user
            time = request.POST['timezone']
            form = EditProfileForm(request.POST)
            time_user = UserProfile.objects.filter(pk=id).update(user_timezone=time)
            request.session['django_timezone'] = request.POST['timezone']
            if form.is_valid():
                user.first_name = request.POST['first_name']
                user.last_name = request.POST['last_name']
                user.email = request.POST['email']
                user.save()
                return redirect('/userprofile/')
        elif request.POST.get('canceledituser'):
                return redirect('/userprofile/')
示例#30
0
文件: views.py 项目: abshkd/benzene
def edit_profile(request, username):
	if username != request.user.username:
		return HttpResponseForbidden()
	if request.method == 'POST':
		form = EditProfileForm(request.POST, request.user)
		if form.is_valid():
			cd = form.cleaned_data
			p = request.user.profile
			for item in cd:
				try:
					if getattr(request.user, item) != cd[item]:
						setattr(request.user, item, cd[item])
				except:
					if getattr(p, item) != cd[item]:
						setattr(p, item, cd[item])
			request.user.save()
			p.save()
			return HttpResponseRedirect(reverse(profile, kwargs={'username': request.user.username}))
		else:
			return render_to_response(request, 'edit_profile.html', {'form': form})
	user_data = {}
	for field in EditProfileForm():
		try:
			if 'password' not in field.name:
				user_data[field.name] = getattr(request.user, field.name)
		except:
			if 'password' not in field.name:
				user_data[field.name] = getattr(request.user.profile, field.name)
	form = EditProfileForm(initial=user_data)
	return render_to_response(request, 'edit_profile.html', {'form': form})
示例#31
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)
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)
示例#33
0
def edit_profile():
    form = EditProfileForm()
    if form.validate_on_submit():
        current_user.first_name = form.first_name.data
        current_user.last_name = form.last_name.data
        current_user.location = form.location.data
        current_user.national_id = form.national_id.data
        current_user.phone_number = form.phone_number.data
        current_user.marital_status = form.marital_status.data
        current_user.gender = form.gender.data
        current_user.d_o_b = form.d_o_b.data

        db.session.add(current_user)
        flash('Your profile has been updated.')
        return redirect(url_for('.user', username=current_user.username))
    form.first_name.data = current_user.first_name
    form.last_name.data = current_user.last_name
    form.location.data = current_user.location
    form.national_id.data = current_user.national_id
    form.phone_number.data = current_user.phone_number
    form.marital_status.data = current_user.marital_status
    form.gender.data = current_user.gender
    form.d_o_b.data = current_user.d_o_b

    return render_template('edit_profile.html', form=form, user=user)
示例#34
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)
示例#35
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)
示例#36
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)
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)
示例#38
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)
示例#39
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)
示例#40
0
文件: app.py 项目: senilefork/warbler
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)
示例#41
0
文件: tests.py 项目: lukaszsliwa/Mapy
 def test_edit_profile_form(self):
     epf = EditProfileForm({
         'first_name': 'Jan',
         'last_name': 'Kowalski',
         'email': '*****@*****.**',
         })
     self.assertTrue(epf.is_valid(), 'Niepoprawny formularz.')
     self.assertFalse(EditProfileForm().is_valid(), 'Niepoprawny formularz.')
示例#42
0
def edit_profile():
    form = EditProfileForm()
    if form.validate_on_submit():
        current_user.name = form.name.data
        db.session.add(current_user)
        flash('Your profile has been updated.')
        return redirect(url_for('.user', username=current_user.username))
    form.name.data = current_user.name
    return render_template('apartment/edit_profile.html', form=form)
示例#43
0
def edit_profile():
    form = EditProfileForm()
    if form.validate_on_submit():
        current_user.name = form.name.data
        db.session.add(current_user)
        flash('Your profile has been updated.')
        return redirect(url_for('.user', username=current_user.username))
    form.name.data = current_user.name
    return render_template('apartment/edit_profile.html', form=form)
def edit_profile():
    form = EditProfileForm()
    if request.method == 'GET':
        form.about_me.data = current_user.about_me
    if form.validate_on_submit():
        current_user.about_me = form.about_me.data
        db.session.commit()
        return redirect(url_for('profile'), username=current_user.username
                        )  # has to give profile, and username
    return render_template('edit_profile.html', form=form)
示例#45
0
def editprofile():

    form = EditProfileForm(obj=current_user)

    # form.populate_obj(user)

    if form.validate_on_submit():
        return render_template('editprofile.html', title="Username", user=current_user, form=form)

    return render_template('editprofile.html', title="Username", user=current_user, form=form)
示例#46
0
def edit_profile():
    form = EditProfileForm()
    if 'loggedin' in session:
        if form.validate_on_submit():
            session['username'] = form.username.data
            session['email'] = form.email.data
            session['first_name'] = form.first_Name.data
            session['last_name'] = form.last_Name.data
            session['phone'] = form.phone.data
            session['gender'] = form.category.data
            flash('Your changes have been saved.')
            cursor = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
            cursor.execute(
                'UPDATE trading_Profile SET username = %s , email = %s, first_Name = %s ,last_Name = %s'
                ', phone = %s, gender = %s'
                'WHERE trading_ID = %s', (
                    session['username'],
                    session['email'],
                    session['first_name'],
                    session['last_name'],
                    session['phone'],
                    session['gender'],
                    session['id'],
                ))

            cursor.execute('SELECT * FROM trading_Profile WHERE username = %s',
                           (session['id'], ))
            cursor2 = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
            cursor2.execute(
                'SELECT * FROM trading_Profile ORDER BY  amount_Money desc')
            data = cursor2.fetchall()
            account = cursor.fetchone()
            mysql.connection.commit()
            return render_template('Home_page.html',
                                   msg=account,
                                   len=len(data),
                                   data=data)
        elif request.method == 'GET':
            form.username.data = session['username']
            form.email.data = session['email']
            form.category.data = session['gender']
            if form.first_Name.data == 'Null':
                form.first_Name.data = ''
            else:
                form.first_Name.data = session['first_name']
            if form.last_Name.data == 'Null':
                form.last_Name.data = ''
            else:
                form.last_Name.data = session['last_name']
            if form.phone.data == 'Null':
                form.phone.data = ''
            else:
                form.phone.data = session['phone']
        return render_template('Profile.html', title='Edit Profile', form=form)
示例#47
0
文件: views.py 项目: liasquil/couch
def edit_profile(request):
    if request.method == 'POST':
        form = EditProfileForm(request.POST, instance=request.user.profile)
        if form.is_valid():
            form.save()
            return redirect('accounts:view_profile', request.user.id)
    else:
        form = EditProfileForm(instance=request.user.profile)
    
    return render(request, 'accounts/edit_profile.html', {
        'form': form,
    })
def edit_profile():
    user = User.query.get(session['user_id'])
    form = EditProfileForm(obj=user)
    form.populate_obj(user)
    if form.validate_on_submit():
        print user
        db.session.add(user)
        print "session add user"
        db.session.commit()
        print "session commit user"
        return redirect(url_for('profile'))
    return render_template('edit_profile.html', form=form)
示例#49
0
def edit_profile():
    form = EditProfileForm()
    if form.validate_on_submit():
        current_user.name = form.name.data
        current_user.location = form.location.data
        current_user.about_me = form.about_me.data
        DB.update_user_profile(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)
示例#50
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})
    )
示例#51
0
def edit_profile():
    form = EditProfileForm()
    if form.validate_on_submit():
        current_user.name = form.name.data
        current_user.location = form.location.data
        current_user.about_me = form.about_me.data
        db.session.add(current_user)
        flash("Your profile has been updated .")
        return redirect(url_for('main.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)
示例#52
0
def editUserInfo():
    form = EditProfileForm()
    user=current_user
    if form.validate_on_submit():
        current_user.name = form.name.data
        current_user.location = form.location.data
        current_user.about_me = form.about_me.data
        current_user.contactMe = form.mycontact.data
        current_user.avatar = form.avatar.data
        db.session.add(current_user)
        db.session.commit()
        flash(u'修改个人信息成功')
    return render_template('info/editUserInfo.html', form=form, user=user)
示例#53
0
    def POST(self):
        files_req = self.request.FILES
        if (files_req.get('photo', '')):
            files_req['photo'].name = self.request.user.username

        form = EditProfileForm(self.request, self.request.POST,
                               files_req, instance=self.request.user)
        if not form.is_valid():
            return self.context_response('user/profile.html', {'form': form})

        # Send an email to admins with old data
        old_user = self.request.user
        subject = I18nString(_("[%(site_name)s] %(username)s modified his data"), {
            'site_name': settings.SITE_NAME,
            'username': old_user.username
        })
        message = I18nString(_("Username %(username)s modified his profile. Old data:\n\n"
            u" - Name: %(old_name)s\n"
            u" - Last name: %(old_surnames)s\n"
            u" - Email address: %(old_email)s\n"
            u" - Address: %(old_address)s\n"
            u" - Birth date: %(old_birth_date)s\n"
            u" - Description: %(old_description)s\n\n"
            u"New data:\n\n"
            u" - Name: %(name)s\n"
            u" - Last name: %(surnames)s\n"
            u" - Email address: %(email)s\n"
            u" - Address: %(address)s\n"
            u" - Birth date: %(birth_date)s\n"
            u" - Description: %(description)s\n\n"), {
                'username': old_user.username,
                'old_name': old_user.first_name,
                'old_surnames': old_user.last_name,
                'old_email': old_user.email,
                'old_address': old_user.address,
                'old_birth_date':  old_user.birth_date,
                'old_description': old_user.description,
                'name': form.cleaned_data["first_name"],
                'surnames': form.cleaned_data["last_name"],
                'email': form.cleaned_data["email"],
                'address': form.cleaned_data["address"],
                'birth_date': form.cleaned_data["birth_date"],
                'description': form.cleaned_data["description"]
            })
        mail_owners(subject, message)
        form.save()

        self.flash(_("Profile updated: <a href=\"%s\">view your profile</a>.") %
            reverse("user-view-current"))

        return self.context_response('user/profile.html', {'form': form})
示例#54
0
def edit_profile(request):
    if request.method == 'POST':
        edit_form = EditProfileForm(user=request.user, data=request.POST)
        if edit_form.is_valid():
            user = edit_form.save()
            m = request.user.message_set.create()
            m.message = 'Your profile has been updated.'
            m.save()
            
            return HttpResponseRedirect('.')
    if request.method == 'GET':
        edit_form = EditProfileForm(user = request.user)
    payload = {'edit_form':edit_form}
    return render_to_response('accounts/editprofile.html', payload, RequestContext(request))
示例#55
0
def edit_profile():
    form = EditProfileForm(g.user.nickname)
    flash(g.user.nickname)

    if form.validate_on_submit():
        print 'inside validate_on_submit'
        g.user.about_me = form.about_me.data
        g.user.nickname = form.nickname.data
        db.session.add(g.user)
        db.session.commit()
        flash("About me save !")
        return redirect(url_for('index'))

    return render_template('edit_profile.html', form=form)
示例#56
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))
示例#57
0
def edit_profile():
	form = EditProfileForm(g.user.username)
	if form.validate_on_submit():
		g.user.username = form.username.data
		g.user.about = form.about.data
		db.session.add(g.user)
		db.session.commit()
		flash('Your changes have been saved.')
		return redirect(url_for('user', username = g.user.username))
	else:
		form.username.data = g.user.username
		form.about.data = g.user.about
	return render_template('edit_profile.html', 
		title = 'Edit Profile',
		form = form)
示例#58
0
文件: views.py 项目: payoung/cl-app
def editprofile():
    form = EditProfileForm(current_user.name)
    if form.validate_on_submit():
        current_user.name = form.name.data
        current_user.email = form.email.data
        current_user.phone = form.phone.data
        db_session.add(current_user)
        db_session.commit()
        flash('Your changes have been saved.')
        return redirect(url_for('editprofile'))
    elif request.method != "POST":
        form.name.data = current_user.name
        form.email.data = current_user.email
        form.phone.data = current_user.phone
    return render_template('editprofile.html', form=form)
示例#59
0
def edit_profile(request):
    if request.method == "POST":
        edit_form = EditProfileForm(user=request.user, data=request.POST)
        if edit_form.is_valid():
            user = edit_form.save()
            m = request.user.message_set.create()
            m.message = "Your profile has been updated."
            m.save()
            return HttpResponseRedirect(".")

    if request.method == "GET":
        edit_form = EditProfileForm(user=request.user)
    payload = {"edit_form": edit_form}
    return render_to_response(
        "user/editprofile.html", context_instance=RequestContext(request, {"edit_form": edit_form})
    )
示例#60
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()
            m = request.user.message_set.create()
            m.message = 'Your profile has been updated.'
            m.save()
            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,
            }))