def post(self): username = request.form.get('username') telephone = request.form.get('telephone') password1 = request.form.get('password1') password2 = request.form.get('password2') remember = request.form.get('remember') if telephone: user = FrontUser.query.filter_by(telephone=telephone).first() if user and user.check_password(password1): session[FRONT_USER_ID] = user.id if remember: # 开启session过期时间 session.permanent = True return restful.success() else: return restful.params_error() if username: user = FrontUser.query.filter_by(username=username).first() if user and user.check_password(password2): session[FRONT_USER_ID] = user.id if remember: # 开启session过期时间 session.permanent = True return restful.success() else: return restful.params_error() return restful.unauth_error()
def norpost(): post_id = request.form.get('id') if not post_id: return restful.params_error('请传入帖子ID') post = Post.query.get(post_id) if post: post.recommend = False db.session.commit() return restful.success() return restful.params_error('该帖子不存在')
def dpost(): post_id = request.form.get('id') if not post_id: return restful.params_error('请传入帖子ID') post = Post.query.get(post_id) if post: for comment in post.comments: db.session.delete(comment) db.session.delete(post) db.session.commit() return restful.success() return restful.params_error('该帖子不存在')
def comment(): if request.method == 'POST': comment_id = request.form.get('id') comment = Comment.query.get(comment_id) if comment: db.session.delete(comment) db.session.commit() return restful.success() else: return restful.params_error('这条评论不存在') if request.method == 'GET': page = request.args.get(get_parameter('p'), type=int, default=1) start = (page - 1) * 10 end = start + 10 total = Comment.query.count() comments = Comment.query.slice(start, end) pagination = Pagination(page_parameter="p", p=page, bs_version=3, total=total, outer_window=0) return render_template("cms/cms_comment.html", comments=comments, pagination=pagination)
def dbanner(): banner_id = request.form.get('id') banner = Banner.query.get(banner_id) if banner: db.session.delete(banner) db.session.commit() return restful.success() else: return restful.params_error('轮播图不存在')
def post(self): form = ResetEmailForm(request.form) if form.validate(): email = form.email.data g.cms_user.email = email db.session.commit() return restful.success() else: return restful.params_error(form.get_error())
def dplate(): plate_id = request.form.get('id') plate_ = Plate.query.get(plate_id) if plate_: db.session.delete(plate_) db.session.commit() return restful.success() else: return restful.params_error('该板块不存在')
def post(self): newpwd = request.form.get('newpwd') oldpwd = request.form.get('oldpwd') user = g.cms_user if user.check_password(oldpwd): user.password = newpwd db.session.commit() return restful.success("密码修改成功!", ) else: return restful.params_error("旧密码错误")
def uplate(): plate_id = request.form.get('id') plate_name = request.form.get('name') plate_ = Plate.query.get(plate_id) if plate_: plate_.name = plate_name db.session.commit() return restful.success() else: return restful.params_error("该板块不存在")
def email_captcha(): email = request.args.get('email') captcha = list(string.ascii_letters) captcha.extend(map(lambda x: str(x), range(0, 10))) captcha = ''.join(random.sample(captcha, 6)) user = g.cms_user try: send_mail.delay("达尼论坛验证码", [email], captcha, user.username, '更改邮箱') memcache.set(email, captcha) except: return restful.params_error('此邮箱不存在') return restful.success()
def comment(): content = request.form.get('content') post_id = request.form.get('post_id') post = Post.query.get(post_id) if post: comment = Comment(content=content) comment.post = post comment.author = g.front_user db.session.add(comment) db.session.commit() return restful.success() return restful.params_error('该帖子不存在')
def ubanner(): name = request.form.get('name') image = request.form.get('image') url = request.form.get('url') priority = request.form.get('priority') banner_id = request.form.get('id') banner = Banner.query.get(banner_id) if banner: banner.name = name banner.image = image banner.url = url banner.priority = priority db.session.commit() return restful.success() else: return restful.params_error('轮播图不存在')
def send_sms(): telephone = request.form.get('telephone') token = request.form.get("token") authenticate = request.form.get("authenticate") check_ret = yprequest.check_ticket(token, authenticate) user = FrontUser.query.filter_by(telephone=telephone).first() if not user: if check_ret.get("code") == 0: captcha = ''.join(random.sample(list(string.digits), 6)) result = send_sms_captcha(telephone, captcha) memcache.set(telephone, captcha, timeout=300) if result.get('Code') == 'OK': return restful.success() else: return restful.unauth_error() else: return restful.server_error() return restful.params_error()
def post(): if request.method == 'GET': plates = Plate.query.all() return render_template('front/post.html', plates=plates) if request.method == 'POST': title = request.form.get("title") text = request.form.get("text") plate_id = request.form.get("plate_id") plate = Plate.query.get(plate_id) if plate: plate.post_num = plate.post_num + 1 post = Post(title=title, content=text) post.author = g.front_user post.plate = plate db.session.add(post) db.session.commit() url_go = url_for('front.details', post_id=post.id) return restful.success(data={"url_go": url_go}) return restful.params_error('没有这个板块')
def post(self): username = request.form.get('username') password = request.form.get('password') telephone = request.form.get('telephone') smscaptcha = request.form.get('smscaptcha') user = FrontUser.query.filter_by(username=username).first() if not user: memcached_captcha = memcache.get(telephone) if not memcached_captcha or smscaptcha != memcached_captcha: return restful.unauth_error('短信验证码错误') else: newuser = FrontUser(telephone=telephone, password=password, username=username) db.session.add(newuser) db.session.commit() return restful.success() else: return restful.params_error('昵称已被使用')