def edit_user(user_id): if not g.user: flash("Access unauthorized.", "danger") return redirect("/") if g.user and session[CURR_USER_KEY] != user_id: flash("Access unauthorized.", "danger") return redirect("/") if g.user and session[CURR_USER_KEY] == user_id: regions = Region.query.all() # list of tuples for selectfield region_list = [(i.id, i.city) for i in regions] form = UserInfoForm() #passing selectfield choice into the form form.region_id.choices = region_list if form.validate_on_submit(): user = User.query.get_or_404(user_id) if form.image_url.data: user.image_url = form.image_url.data if form.bio.data: user.bio = form.bio.data if form.website.data: user.website = form.website.data if form.region_id.data: user.region_id = form.region_id.data db.session.add(user) db.session.commit() return redirect(f'/users/{user_id}') return render_template('users/user-add-info.html', form=form)
def save_info(request): if request.method == 'POST': form = UserInfoForm(request.POST) if form.is_valid(): #form.cleaned_data["xx"] mobile_no, nickname, user_type user_info = User_Info(user = request.user, **form.cleaned_data) user_info.save() return HttpResponseRedirect("/person/myinfo/")
def save_info(request): if request.method == 'POST': form = UserInfoForm(request.POST) if form.is_valid(): #form.cleaned_data["xx"] mobile_no, nickname, user_type user_info = User_Info(user=request.user, **form.cleaned_data) user_info.save() return HttpResponseRedirect("/person/myinfo/")
def post(self, request): # 添加操作需要带instance user_info_form = UserInfoForm(request.POST, instance=request.user) if user_info_form.is_valid(): user_info_form.save() return JsonResponse({"status": "success"}) else: return HttpResponse(json.dumps(user_info_form.errors))
def post(self, request): user_info_form = UserInfoForm(request.POST, instance=request.user) if user_info_form.is_valid(): user_info_form.save() return HttpResponse('{"status":"success","msg":"修改成功"}', content_type='application/json') else: return HttpResponse(json.dumps(user_info_form.errors), content_type='application/json')
def post(self, request, *args, **kwargs): user_info_form = UserInfoForm(request.POST) if user_info_form.is_valid(): user_info = UserInfo.objects.get(pk=user_info_form.data['pk']) user_info.circle = Circle.objects.filter(pk=user_info_form.data['circle']) user_info.notes = user_info_form.data['notes'] contact = Contact.objects.get( optional_informations__pk=user_info_form.data['pk']) contact.optional_informations = user_info contact.save() user_info.save() return HttpResponseRedirect(reverse('contact_detail', kwargs={'pk': contact.pk}))
def test_user_info_model_form(self): """Test for model form mapped to model with user info""" form_data = {'name': "Vitalyi", 'last_name': "Rudyi", 'date_of_birth': "1983-03-23", 'email': "*****@*****.**", 'jabber': "*****@*****.**", 'skype': "ditto_marks", 'photo': "some_photo.jpg", 'bio': "Bio information<br />more lines goes here...", 'other_contacts': "ICQ: 329193784<br />" + "secondary email: [email protected]"} form = UserInfoForm(data=form_data) self.assertTrue(form.is_valid())
def home(): form = UserInfoForm() if form.validate_on_submit(): if request.method == 'POST': name = request.form['name'] weight = float(request.form['weight']) height = float(request.form['height']) age = int(request.form['age']) gender = request.form['gender'] phys_act = request.form['physical_activity'] tdee = algo.calc_tdee(name, weight, height, age, gender, phys_act) return redirect(url_for('result', tdee=tdee)) return render_template('home.html', title="Diet App", form=form)
def settings(): info_form = UserInfoForm(obj=current_user) filter_form = FilterForm(obj=current_user.filters) # Modifying User Info # if info_form.validate_on_submit(): # current_user.username = info_form.username.data # current_user.description = info_form.description.data # current_user.avatar = info_form.avatar.data # current_user.email = info_form.email.data # db.session.commit() # return redirect(url_for('users.settings')) # Modifying User Filter if filter_form.validate_on_submit(): current_user.filters.price_min = filter_form.price_min.data current_user.filters.price_max = filter_form.price_max.data current_user.filters.calorie_min = filter_form.calorie_min.data current_user.filters.calorie_max = filter_form.calorie_max.data current_user.filters.meal_type = filter_form.meal_type.data current_user.filters.meal_style = filter_form.meal_style.data current_user.filters.dietary_preferences = filter_form.dietary_preferences.data current_user.filters.cooking_time_min = filter_form.cooking_time_min.data current_user.filters.cooking_time_max = filter_form.cooking_time_max.data db.session.commit() return redirect(url_for('users.settings')) return render_template('settings.html', user_info=current_user, info_form=info_form, filter_form=filter_form)
def resetPasswd(request): reponse = dict() reponse.update(status = 0, msg = '录入信息错误,请重新录入!') msg = '' if request.method == 'POST': form = UserInfoForm(request.POST) if form.is_valid(): if not checkIdAndEmail(form.cleaned_data['userId'], form.cleaned_data['email']): msg = '用户名或邮箱错误,请重新录入!' else: userInfo = getUserByUserId(form.cleaned_data['userId']) userInfo.passwd = form.cleaned_data['passwd'] userInfo.changeFlag = '' userInfo.put(); msg = '密码重设成功!' reponse.update(status = 1) if msg != '': reponse.update(msg = msg) return HttpResponse(json.dumps(reponse),mimetype='application/json')
def user_edit(): user = checkUser() if user == '': return redirect('/') form = UserInfoForm() return render_template( 'user_edit.html', form=form, user=user, base64=base64 )
def add_userinfo(): """ Add a userinfo to the database """ check_admin() add_userinfo = True form = UserInfoForm() if form.validate_on_submit(): userinfo = mongo.db.userInfo # userinfo = UserInfo(name=form.name.data, # description=form.description.data) try: # add department to the database userinfo.insert({ 'name': form.name.data, 'passward': form.passward.data, 'nickname': form.nickname.data, 'tel': form.tel.data, 'head_picture': form.head_picture.data, 'gender': form.gender.data, 'region': form.region.data, 'signature': form.signature.data }) flash(u'您已经成功添加一个用户信息') except: # in case department name already exists flash(u'错误: 该用户信息已存在') # redirect to departments page return redirect(url_for('admin.list_userinfos')) # load department template return render_template('admin/userinfos/userinfo.html', action="Add", add_userinfo=add_userinfo, form=form, title=u"添加用户信息")
def regUser(request): reponse = dict() reponse.update(status = 0, msg = '录入信息错误,请重新录入!') msg = '' if request.method == 'POST': form = UserInfoForm(request.POST) if form.is_valid(): if checkUserId(form.cleaned_data['userId']): msg = '用户名已存在!' elif checkEmail(form.cleaned_data['email']): msg = '邮箱已存在!' else: userInfo = UserInfo() userInfo.userId = form.cleaned_data['userId'] userInfo.email = form.cleaned_data['email'] userInfo.passwd = form.cleaned_data['passwd'] userInfo.create(); msg = '注册成功!' reponse.update(status = 1) if msg != '': reponse.update(msg = msg) return HttpResponse(json.dumps(reponse),mimetype='application/json')
def editProfile(): form = UserInfoForm() db = get_db() cur = db.cursor() user = cur.execute( 'SELECT * FROM USER WHERE Email=?', (g.user['Email'], )).fetchone( ) #gets the current logged in user to pass to editProfile.html if form.validate_on_submit( ): #update g.user table with entered information cur.execute( 'UPDATE USER SET Email=?, First_name=?, Last_name=?, Dob=?, Street_address =?, City=?, Province=?, Postal_code=? WHERE Email=?', ( form.email.data, form.fname.data, form.lname.data, form.dob.data, form.street.data, form.city.data, form.province.data, form.postalCode.data, g.user['Email'], )) db.commit() cur.close() return redirect(url_for('profile')) elif request.method == 'GET': #populates the form with the current_user's information form.email.data = user[0] form.fname.data = user[2] form.lname.data = user[3] form.dob.data = datetime.strptime(user[4], '%Y-%m-%d') form.street.data = user[5] form.city.data = user[6] form.province.data = user[7] form.postalCode.data = user[8] return render_template('editProfile.html', form=form, user=user)
def main_edit_update(request, item_id): template = "testTicketsApp/main_edit.html" try: item = get_object_or_404(UserInfo, pk=item_id) context = dict({'user_info': item}) except (KeyError, UserInfo.DoesNotExist): template = 'testTicketsApp/errors.html' context = dict({'error_message': 'Edit: UserInfo by id %s - not hound' % item_id}) else: form = UserInfoForm(request.POST or None, request.FILES or None, instance=item) context.update({'form': form}) request_method = request.method if request_method == 'POST': if request.is_ajax(): if form.is_valid(): form.save() return HttpResponseRedirect(reverse('update', kwargs={'item_id': item_id})) else: template = 'testTicketsApp/errors.html' context = dict({'error_message': 'Update user contact info: Post is not ajax'}) return render(request, template, context)
def user_info_edit(request): userinfo = get_object_or_404(UserInfo) if request.method == 'POST': form = UserInfoForm(request.POST, request.FILES, instance=userinfo) if form.is_valid(): form.save() if request.is_ajax(): return HttpResponse("success") else: return redirect(reverse('home')) else: form = UserInfoForm(instance=userinfo) return render(request, 'hello/edit.html', {'form': form})
def user(id): user = checkUser() user_info = Users.query.filter_by(id = id).all()[0] user_blog = Blogs.query.filter_by(user_id = id).order_by(Blogs.created_at.desc()).limit(2).all() user_comment = Comments.query.filter_by(user_id = id).order_by(Comments.created_at.desc()).limit(2).all() form = UserInfoForm() return render_template( 'user_index.html', user = user, user_info = user_info, user_blog = user_blog, user_comment = user_comment, base64 = base64, form = form )
def updateInfo(request): reponse = dict() reponse.update(status = 0, msg = '录入信息错误,请重新录入!') if not userApi.checkUserAuth(request): reponse.update(msg = '请重新登录系统重试!') return HttpResponse(json.dumps(reponse),mimetype='application/json') msg = '' if request.method == 'POST': form = UserInfoForm(request.POST) if form.is_valid(): if not userApi.authService(form.cleaned_data['userId'], form.cleaned_data['passwd']): msg = '密码不正确!' else: userInfo = userApi.getUserByUserId(form.cleaned_data['userId']) userInfo.email = form.cleaned_data['email'] remarks = form.cleaned_data['remark'] userInfo.remark = remarks userInfo.put(); msg = '信息更新成功!' reponse.update(status = 1) if msg != '': reponse.update(msg = msg) return HttpResponse(json.dumps(reponse),mimetype='application/json')
def submit_userinfo(request, appId): if request.method == 'GET': form = UserInfoForm() return render_to_response('userinfo.html',{'form':form}, context_instance=RequestContext(request)) else: form = UserInfoForm(request.POST) if form.is_valid(): form = form.save(commit=False) app = AppFactory.objects.filter(id=appId) if app: form.app = app[0] form.save() return render_to_response('userinfo.html',{'form':form,'done':'done'}, context_instance=RequestContext(request)) else: return render_to_response('userinfo.html',{'form':form,'done':'app not exist'}, context_instance=RequestContext(request))
def user_info(): """ Grab user's profile information into the database user sign up page, user must log in successfully before getting to this page """ if not is_loggedin(): return redirect(url_for('login')) form=UserInfoForm() if request.method=='POST': userInfo=UserInfo(form.nickName.data, form.email.data, form.phone.data, form.city.data, form.state.data, form.zipcode.data, form.education.data, form.sports.data,form.arts.data, form.travel.data,form.music.data,form.reading.data,form.gardening.data, form.nature.data, form.snowboard.data,form.food.data) db.session.add(userInfo) #add returned data to user table in the database db.session.commit() return redirect(url_for('home')) elif request.method=='GET': return render_template('user_info.html',form=form)
def edit_userinfo(name): """ Edit a userinfo """ check_admin() add_userinfo = False userinfo = mongo.db.userInfo.find({"name": name}) userinfos = mongo.db.userInfo # userinfos.remove({'name': name}) edit_user = { 'name': u"待赋值", 'passward': u"待赋值", 'nickname': u"待赋值", 'tel': u"待赋值", 'head_picture': u"待赋值", 'gender': u"待赋值", 'region': u"待赋值", 'signature': u"待赋值" } userinfoarray = UserInfoArray(name=u"待赋值", passward=u"待赋值", nickname=u"待赋值", tel=u"待赋值", head_picture=u"待赋值", gender=u"待赋值", region=u"待赋值", signature=u"待赋值") for s in userinfo: userinfoarray.name = s['name'] userinfoarray.passward = s['passward'] userinfoarray.nickname = s['nickname'] userinfoarray.tel = s['tel'] userinfoarray.head_picture = s['head_picture'] userinfoarray.gender = s['gender'] userinfoarray.region = s['region'] userinfoarray.signature = s['signature'] form = UserInfoForm(obj=userinfoarray) userinfos.remove({'name': name}) if form.validate_on_submit(): edit_user['name'] = form.name.data edit_user['passward'] = form.passward.data edit_user['nickname'] = form.nickname.data edit_user['tel'] = form.tel.data edit_user['head_picture'] = form.head_picture.data edit_user['gender'] = form.gender.data edit_user['region'] = form.region.data edit_user['signature'] = form.signature.data # db.session.commit() userinfos.insert(edit_user) flash(u'您已经成功修改用户信息') # redirect to the duserinfos page return redirect(url_for('admin.list_userinfos')) for s in userinfo: form.passward.data = s['passward'] form.name.data = s['name'] # form.passward.data = userinfo[0]['passward'] # form.name.data = userinfo[0]['name'] return render_template('admin/userinfos/userinfo.html', action="Edit", add_userinfo=add_userinfo, form=form, userinfo=userinfo, title=u"修改用户信息")
def edit_home(request): delete_old = False storage = None path = None userinfo = UserInfo.objects.first() if not userinfo: return HttpResponse('User profile not found in database') if userinfo.photo: delete_old = True storage = userinfo.photo.storage path = userinfo.photo.path form = UserInfoForm(request.POST or None, request.FILES or None, instance=userinfo) if request.method == 'POST': form_is_valid = False if form.is_valid(): form.save() form_is_valid = True form_new = UserInfoForm(instance=userinfo) if delete_old and (path != '.') and (path != '/'): if os.path.isfile(path): if form_new.instance.photo: if path != form_new.instance.photo.path: storage.delete(path) else: storage.delete(path) if request.is_ajax(): results = {'result': 'error', 'errors': {}, 'photo_url': '', 'photo_field': ''} if form_is_valid: if form_new.instance.photo: results['photo_url'] = form_new.instance.photo.url context = {'form': form_new} results['photo_field'] = \ render_to_string('userinfo/' 'ajax_update_photo_field.html', context) results['result'] = 'success' else: results['result'] = 'error' for k in form.errors: results['errors'][k] = form.errors[k][0] data = json.dumps(results) return HttpResponse(data, content_type='application/json') else: if form_is_valid: messages.success(request, 'Changes have been saved') return HttpResponseRedirect(reverse('userinfo:edit_home')) else: messages.error(request, 'Error occured saving form data,' ' check fields...') photo_exists = False if form.instance.photo: if os.path.isfile(form.instance.photo.path): photo_exists = True context = {'form': form, 'photo_exists': photo_exists, 'messages': get_messages(request)} return render(request, 'userinfo/edit_home.html', context)