def GET(self): ipt = web.input(_unicode=True) if 'uid' not in ipt: return "Argument Error" if users.uid_exist_p(ipt.uid): user = users.get_user_by_uid(ipt.uid) else: return "User Not Exist!" _s = session.get_session() _p = _s.privilege # if attendant, only allowed to check himself. if _p == 1: if _s.uid != user.uid: return "Action Not Allowed!" # check done. do the real work schema_user = [['uid', u"用户编号", 'col-sm-1'], ['email', u"邮箱", 'col-sm-1'], ['telephone', u'手机号码', 'col-sm-1'], ['gender', u'性别', 'col-sm-1'], ['studentid', u'学号', 'col-sm-1'], ['college', u'学院', 'col-sm-1'], ['name', u'姓名', 'col-sm-1']] t_user = mww.MyVerticalTable(schema_user, user, class_='table table-striped table-hover') s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings', s) r = mww.Panel('Detailed Information', t_user.render()) return render.l3r9(left=l.render(), right=r.render())
def GET(self): f = mww.MyForm(self.register_detail_form(), '/cumt/Profile') f.form.fill( utils.extract_info_from_storage_by_list(session.get_session(), PROPERTY_LIST)) s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings', s) r = mww.Panel('Profile', f.render_css()) return render.l3r9(left=l.render(), right=r.render())
def GET(self): if session.get_session().privilege != 1: raise web.seeother('/cumt/ApplicationRoute') result = check_time() if result: return result f = mww.MyForm(self.registration_form(), '/cumt/Application') user = users.get_user_by_uid(session.get_session().uid) f.form.fill(user) p = mww.Panel(u'提交申请', f.render_css()) return render.l12(page=p.render())
def GET(self): if session.get_session().privilege != 1: raise web.seeother('/cumt/ApplicationRoute') result = check_time() if result: return result f = mww.MyForm(self.registration_form(),'/cumt/Application') user = users.get_user_by_uid(session.get_session().uid) f.form.fill(user) p = mww.Panel(u'提交申请',f.render_css()) return render.l12( page = p.render())
def POST(self): ipt = web.input(_unicode=True) f = self.reset_password_form() if not f.validates(ipt): s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings', s) r = mww.Panel('Reset Password', f.render_css()) return render.l3r9(left=l.render(), right=r.render()) else: users.reset_password(session.get_session().uid, ipt.new_password) return render.single_panel(title="reset password", body="success!")
def POST(self): ipt = web.input(_unicode=True) f = mww.MyForm(self.register_detail_form(), '/cumt/Profile') if not f.form.validates(ipt): s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings', s) r = mww.Panel('Profile', f.render_css()) return render.l3r9(left=l.render(), right=r.render()) else: users.update( session.get_session().uid, **utils.extract_info_from_storage_by_list(ipt, PROPERTY_LIST)) session.login(session.get_session().email) return render.single_panel(title="Profile Change", body="success!")
def POST(self): if session.get_session().privilege != 1: raise web.seeother('/cumt/ApplicationRoute') result = check_time() if result: return result ipt = web.input(_unicode=True) f = mww.MyForm(self.registration_form(),'/cumt/Application') if not f.form.validates(ipt): p = mww.Panel('Application',f.render_css()) return render.l12( page = p.render()) regid = users.add_reg(session.get_session().uid,f.form.d) p = mww.Panel(u'提交申请',u'申请已提交,点击<a href="/cumt/Application">这里</a>进行修改') return render.l12( page = p.render())
def POST(self): if session.get_session().privilege != 1: raise web.seeother('/cumt/ApplicationRoute') result = check_time() if result: return result ipt = web.input(_unicode=True) f = mww.MyForm(self.registration_form(), '/cumt/Application') if not f.form.validates(ipt): p = mww.Panel('Application', f.render_css()) return render.l12(page=p.render()) regid = users.add_reg(session.get_session().uid, f.form.d) p = mww.Panel(u'提交申请', u'申请已提交,点击<a href="/cumt/Application">这里</a>进行修改') return render.l12(page=p.render())
def GET(self, id): i = web.input(context='all', start=0, order=default_order, desc='desc', query='') start = int(i.start) user_id = session.is_logged() and session.get_user_id() results, num_results = applicants.query(query=i.query, context=i.context, offset=start and start - 1, limit=results_per_page+2, order=i.order + ' ' + i.desc, user_id=user_id) pager = web.storage(paging.get_paging_results(start, num_results, int(id), results, results_per_page)) counts = applicants.get_counts() user = session.get_session() applicant = applicants.get_by_id(id) _comments = comments.get_comments(applicant.id) _votes = votes.get_votes(applicant.id) stats = applicants.get_stats() return view.layout( view.applicant(applicant, _comments, _votes, user, pager, i), user, i.context, counts, i.query, stats)
def GET(self): ## EDITED BY: rgap user = session.get_session() if user.email == config.mail_sender or user.email == config.webmaster or user.email == "*****@*****.**": return render_account(show='register_only') else: raise web.seeother('/')
def render_settings(nickname_form=nickname_form(), email_form=email_form(), password_form=password_form(), on_success_message=''): counts = applicants.get_counts() user = session.get_session() return view.layout( view.settings(user, nickname_form, email_form, password_form, on_success_message), user, 'settings', counts)
def GET(self): if session.get_session().privilege != 0: # already login raise web.seeother('/cumt/Profile') form = mww.MyForm(self.login_form(), '/cumt/Login') r = mww.Panel('Login', form.render_css()).render() return render.l12(page=r)
def GET(self): f = mww.MyForm(self.reset_user_password_form(), '/cumt/ResetUserPassword') s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings', s) r = mww.Panel('Reset User Password', f.render_css()) return render.l3r9(left=l.render(), right=r.render())
def GET(self, context): i = web.input(start=0, order=default_order, desc='desc', query='') start = int(i.start) context = context or 'all' user_id = session.is_logged() and session.get_user_id() results, num_results = applicants.query(query=i.query, context=context, offset=start, limit=results_per_page, order=i.order + ' ' + i.desc, user_id=user_id) pager = web.storage( paging.get_paging(start, num_results, results_per_page=results_per_page, window_size=1)) counts = applicants.get_counts() user = session.get_session() stats = applicants.get_stats() return view.layout(view.applicants(results, context, pager, i), user, context, counts, i.query, stats)
def GET(self, id): i = web.input(context='all', start=0, order=default_order, desc='desc', query='') start = int(i.start) user_id = session.is_logged() and session.get_user_id() results, num_results = applicants.query(query=i.query, context=i.context, offset=start and start - 1, limit=results_per_page + 2, order=i.order + ' ' + i.desc, user_id=user_id) pager = web.storage( paging.get_paging_results(start, num_results, int(id), results, results_per_page)) counts = applicants.get_counts() user = session.get_session() applicant = applicants.get_by_id(id) _comments = comments.get_comments(applicant.id) _votes = votes.get_votes(applicant.id) stats = applicants.get_stats() return view.layout( view.applicant(applicant, _comments, _votes, user, pager, i), user, i.context, counts, i.query, stats)
def get_flash(tp='all'): s = session.get_session() alerts = [] if not s.get('flash') is None: keys = s.get('flash').keys() alerts = ['<div class="alert alert-%s">%s</div>' % (t, session.get_flash(t)) for t in keys if tp == 'all' or t == tp] return ''.join(alerts)
def render_settings(nickname_form=nickname_form(), email_form=email_form(), password_form=password_form(), on_success_message=''): counts = applicants.get_counts() user = session.get_session() return view.base( view.settings(user, nickname_form, email_form, password_form, on_success_message))
def POST(self): ipt = web.input(_unicode=True) f = self.reset_user_password_form() if not f.validates(ipt): s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings',s) r = mww.Panel('Reset User Password',f.render_css()) return render.l3r9(left=l.render(),right=r.render()) else: users.reset_password(ipt.uid,ipt.new_password) return "success"
def POST(self): ipt = web.input(_unicode=True) if 'article' in ipt and articles.name_exist_p(ipt.article): article_info = articles.get_article_by_name(ipt.article) s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings',s) aaf = mww.MyForm(self.alter_article_form()(article_info),'/cumt/AlterArticle') asf = mww.MyForm(self.article_select_form(),'/cumt/AlterArticle') asf.form.fill(ipt) r1 = mww.Panel('Article Select',asf.render_css()) r2 = mww.Panel('Alter Article',aaf.render_css()) return render.l3r9(left=l.render(),right=r1.render()+r2.render()) elif 'name' in ipt and 'parent' in ipt and 'has_child_p' in ipt and articles.parent_sans_p(ipt.parent): # TODO result check articles.update(ipt.aid,content = ipt.content,title=ipt.title,parent=ipt.parent,has_child_p=ipt.has_child_p) web.config._title_list = articles.gen_title_list() return "success" else: myf = mww.MyForm(self.article_select_form(),'/cumt/AlterArticle') s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings',s) r = mww.Panel('Article Select',myf.render_css()) return render.l3r9(left=l.render(),right=r.render())
def POST(self): ipt = web.input(_unicode=True) f = self.add_article_form() myf = mww.MyForm(f,'/cumt/AddArticle') if not f.validates(ipt): s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings',s) r = mww.Panel('Add New Article',myf.render_css()) return render.l3r9(left=l.render(),right=r.render()) else: if f.d.parent == "NEW_TOPIC": articles.add_article(f.d.name, f.d.title, f.d.content, "NOPARENT" ) else: articles.add_article(f.d.name, f.d.title, f.d.content, f.d.parent ) web.config._title_list = articles.gen_title_list() return "success"
def POST(self): ipt = web.input(_unicode=True) f = self.del_article_form() myf = mww.MyForm(f,'/cumt/DelArticle') if not f.validates(ipt): s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings',s) r = mww.Panel('Del A Article',myf.render_css()) return render.l3r9(left=l.render(),right=r.render()) else: a = articles.get_article_by_name(ipt.name) leaves = articles.get_articles_by_parent(a.parent) assert len(leaves) > 1 #parent = articles.get_article_by_name(a.parent) articles.del_article_by_name(ipt.name) web.config._title_list = articles.gen_title_list() return 'success'
def POST(self): ipt = web.input(_unicode=True) #print ipt f = self.user_search_form() myf = mww.MyForm(f,'/cumt/UserManage') if not f.validates(ipt): return "Argument Error" if len(ipt.uid)>0: if users.uid_exist_p(ipt.uid): us = [users.get_user_by_uid(ipt.uid)] else: us = [] elif len(ipt.name)>0: us = users.get_users_by_name(ipt.name) elif len(ipt.email)>0: if users.email_exist_p(ipt.email): us = [users.get_user_by_email(ipt.email)] else: us = [] elif ipt.country == 'All': us = users.get_all_users() elif ipt.country == 'China': us = users.get_users_by_country('China') elif ipt.country == 'Other': us = users.get_users_by_country_not('China') else: us = [] schema = [['uid',"Index"], ['name',"Name"], ['country',"Country"], ['email',"Email"], ['operations',"Operations"]] t = mww.Table(schema, map(user_record_trans_to_display,us), class_='table table-striped table-hover') s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings',s) r = mww.Panel('User Management',myf.render_css()+t.render()) return render.l3r9(left=l.render(),right=r.render())
def GET(self, context): i = web.input(start=0, order=default_order, desc='desc', query='') start = int(i.start) context = context or 'all' user_id = session.is_logged() and session.get_user_id() results, num_results = applicants.query(query=i.query, context=context, offset=start, limit=results_per_page, order=i.order + ' ' + i.desc, user_id=user_id) pager = web.storage(paging.get_paging(start, num_results, results_per_page=results_per_page, window_size=1)) counts = applicants.get_counts() user = session.get_session() stats = applicants.get_stats() return view.layout( view.applicants(results, context, pager, i), user, context, counts, i.query, stats)
def POST(self): ipt = web.input(_unicode=True) #print ipt f = self.user_search_form() myf = mww.MyForm(f, '/cumt/UserManage') if not f.validates(ipt): return "Argument Error" if len(ipt.uid) > 0: if users.uid_exist_p(ipt.uid): us = [users.get_user_by_uid(ipt.uid)] else: us = [] elif len(ipt.name) > 0: us = users.get_users_by_name(ipt.name) elif len(ipt.email) > 0: if users.email_exist_p(ipt.email): us = [users.get_user_by_email(ipt.email)] else: us = [] elif ipt.country == 'All': us = users.get_all_users() elif ipt.country == 'China': us = users.get_users_by_country('China') elif ipt.country == 'Other': us = users.get_users_by_country_not('China') else: us = [] schema = [['uid', "Index"], ['name', "Name"], ['country', "Country"], ['email', "Email"], ['operations', "Operations"]] t = mww.Table(schema, map(user_record_trans_to_display, us), class_='table table-striped table-hover') s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings', s) r = mww.Panel('User Management', myf.render_css() + t.render()) return render.l3r9(left=l.render(), right=r.render())
import os import glob import datetime import random import hashlib import Image import cgi import web import re from web.net import htmlquote from config import view, site_name from app.helpers import session, utils, misc, email_templates from app.models import postModel, nodeModel, users, notification siteName = site_name user = session.get_session() # def displayTime(func): # import time # def calTime(*args): # # 记录开始时间 # start = time.time() # # 回调原函数 # result = func(*args) # passtime = time.time() - start # # 在结果输出追加计时信息 # result = str(result) + "%s\n" %(passtime*1000) # # 返回结果 # return result # # 返回重新装饰过的函数句柄 # return calTime
def GET(self): myf = mww.MyForm(self.user_search_form(),'/cumt/UserManage') s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings',s) r = mww.Panel('User Management',myf.render_css()) return render.l3r9(left=l.render(),right=r.render())
def GET(self): if session.get_session().privilege != 1: raise web.seeother('/cumt/ApplicationRoute') # if users.is_registered(session.get_session().uid): # return render.application() return render.send_application()
def GET(self): if session.get_session().privilege == 1: raise web.seeother('/cumt/SendApplication') return render.application_route()
def GET(self): f = mww.MyForm(self.reset_user_password_form(),'/cumt/ResetUserPassword') s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings',s) r = mww.Panel('Reset User Password',f.render_css()) return render.l3r9(left=l.render(),right=r.render())
def GET(self): myf = mww.MyForm(self.del_article_form(),'/cumt/DelArticle') s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings',s) r = mww.Panel('Del A Article',myf.render_css()) return render.l3r9(left=l.render(),right=r.render())
#!/usr/bin/env python # coding: utf-8 import web import httplib2 import config import datetime import urllib import collections from config import view, site_name, db from app.helpers import session from app.models import users siteName = site_name u = session.get_session() def httplib2_request(uri, method="GET", body='', headers=None, redirections=httplib2.DEFAULT_MAX_REDIRECTS, connection_type=None, disable_ssl_certificate_validation=True): DEFAULT_POST_CONTENT_TYPE = 'application/x-www-form-urlencoded' if not isinstance(headers, dict): headers = {} if method == "POST":
def GET(self): myf = mww.MyForm(self.user_search_form(), '/cumt/UserManage') s = mww.ListGroup(session.get_session().actions).render() l = mww.Panel('Settings', s) r = mww.Panel('User Management', myf.render_css()) return render.l3r9(left=l.render(), right=r.render())
#!/usr/bin/env python # coding: utf-8 import web import httplib2 import config import datetime import urllib import collections from config import view, site_name, db from app.helpers import session from app.models import users siteName = site_name u = session.get_session() def httplib2_request(uri, method="GET", body='', headers=None, redirections=httplib2.DEFAULT_MAX_REDIRECTS, connection_type=None, disable_ssl_certificate_validation=True): DEFAULT_POST_CONTENT_TYPE = 'application/x-www-form-urlencoded' if not isinstance(headers, dict): headers = {} if method == "POST": headers['Content-Type'] = headers.get('Content-Type', DEFAULT_POST_CONTENT_TYPE) return httplib2.Http(disable_ssl_certificate_validation=disable_ssl_certificate_validation).\ request(uri, method=method, body=body,
def POST(self): i = web.input() s = session.get_session() classes.create_classes(is_active=i.is_active, name=i.name, creator=s.get('userid')) raise web.seeother('/classes/')
import random import re import md5 import time import datetime import hashlib import web from web import form from app.models import users from app.helpers import session from app.helpers import email_templates from config import view, encryption_key, site_name, db user = session.get_session() siteName = site_name vemail = form.regexp(r'.+@.+', '邮箱格式不对') p = re.compile(r"(?:^|\s)[-a-z0-9_.+]+@(?:[-a-z0-9]+\.)+[a-z]{2,6}(?:\s|$)", re.IGNORECASE) #表单 login_form = form.Form( form.Textbox('email', form.notnull, vemail, description='邮箱:'), form.Password('password', form.notnull, description='密码:'), validators=[ form.Validator( '邮箱地址或密码不正确', lambda i: users.is_correct_password(i.email, i.password)) ])