def _q_index(self): content = htmltext('') if not get_user(): content += htmltext('<p>%s</p>' % href('login', 'login')) else: content += htmltext( '<p>Hello, %s.</p>') % get_user() content += htmltext('<p>%s</p>' % href('logout', 'logout')) sessions = get_session_manager().items() if sessions: sessions.sort() content += htmltext('<table><tr>' '<th></th>' '<th>Session</th>' '<th>User</th>' '<th>Number of Requests</th>' '</tr>') this_session = get_session() for index, (id, session) in enumerate(sessions): if session is this_session: formatted_id = htmltext( '<span style="font-weight:bold">%s</span>' % id) else: formatted_id = id content += htmltext( '<tr><td>%s</td><td>%s</td><td>%s</td><td>%d</td>' % ( index, formatted_id, session.user or htmltext("<em>None</em>"), session.num_requests)) content += htmltext('</table>') return format_page("Quixote Session Management Demo", content)
def _q_index(self): content = htmltext('') if not get_user(): content += htmltext('<p>%s</p>' % href('login', 'login')) else: content += htmltext('<p>Hello, %s.</p>') % get_user() content += htmltext('<p>%s</p>' % href('logout', 'logout')) sessions = sorted([(s.id, s) for s in get_session_manager()]) if sessions: content += htmltext('<table><tr>' '<th></th>' '<th>Session</th>' '<th>User</th>' '<th>Number of Requests</th>' '</tr>') this_session = get_session() for index, (id, session) in enumerate(sessions): if session is this_session: formatted_id = htmltext( '<span style="font-weight:bold">%s</span>' % id) else: formatted_id = id content += htmltext( '<tr><td>%s</td><td>%s</td><td>%s</td><td>%d</td>' % (index, formatted_id, session.user or htmltext("<em>None</em>"), session.num_requests)) content += htmltext('</table>') return format_page("Quixote Session Management Demo", content)
def logout(self): if get_user(): content = htmltext('<p>Goodbye, %s.</p>') % get_user() else: content = htmltext('<p>That would be redundant.</p>') content += href("..", "start over") get_session_manager().expire_session() # This is the important part. return format_page("Quixote Session Demo: Logout", content)
def _q_index(self): cookie = get_cookie('user') if cookie == 'Peter': this_session = get_session() this_session.set_user('Peter') if not get_user(): body = Template.Kind_Body % (Template.Kind_Top,"Not Login!","") html = Template.HTML % ("Not login!",body) return html get_response().set_cookie('user','Peter',path='/',expires="Thu 01-Jan-2020 00:00:00 GMT") sql = """SELECT * FROM kind""" count,res = execute_sql_in_4bbs(sql,"SHOW") list = "" for e in res: list += "<div>" list += "Kind_id:<span>" + str(e[0]) + "</span><span>----</span>" list += "Kind_name:<span>" + str(e[1]) + "</span><span>----</span>" list += "Kind_count:<span>" + str(e[2]) + "</span><span>----</span>" list += "Kind_shortname:<span>" + str(e[3]) + "</span><span>----</span>" list += '<a href="/kind/delete?kind_id=' + str(e[0]) + '">Delete</a><span>----</span>' list += '<a href="/kind/edit?kind_id=' + str(e[0]) + '">Edit</a>' list += "</div>" body = Template.Kind_Body %(Template.Kind_Top,list,"") html = Template.HTML % ("Kind Index",body) return html
def edit(self): if not get_user(): body = Template.Kind_Body % (Template.Kind_Top,"Not Login!","") html = Template.HTML % ("Not login!",body) return html if get_field('action') != 'edit': kind_id = get_field('kind_id') if not kind_id: Body = Template.Kind_Body % (Template.Kind_Top,"Error Parameters!","") return Template.HTML % ("Error!",Body) sql = """select * from kind where kind_id=%s""" % kind_id count,res = execute_sql_in_4bbs(sql,"SHOW") kind_name = res[0][1] kind_shortname= res[0][3] form = """ <form action="edit" method="POST" accept-charset="utf-8"> <input type="hidden" name="action" value="edit"> <div><input type="text" name="kind_name" value="%s"><span>Kind Name</span></div> <div><input type="text" name="kind_shortname" value="%s"><span>Kind Short Name</span></div> <input type="hidden" name="kind_id" value="%s"> <p><input type="submit" value="编辑"></p> </form> """ % (kind_name,kind_shortname,kind_id) body = Template.Kind_Body % (Template.Kind_Top,form,"") html = Template.HTML % ("Edit Kind",body) return html else: kind_id = int(get_field('kind_id')) kind_name = get_field('kind_name') kind_shortname = get_field('kind_shortname') sql = """UPDATE kind SET kind_name=%s,kind_shortname=%s where kind_id=%s""" execute_sql_in_4bbs(sql,[kind_name,kind_shortname,kind_id]) return redirect("/kind")
def new(self): """docstring for new""" if not get_user(): body = Template.Kind_Body % (Template.Kind_Top,"Not Login!","") html = Template.HTML % ("Not login!",body) return html if get_field('action') != 'new': form = """ <form action="new" method="POST" accept-charset="utf-8"> <input type="hidden" name="action" value="new"> <div><input type="text" name="kind_name" value=""><span>Kind Name</span></div> <div><input type="text" name="kind_shortname" value=""><span>Kind Short Name</span></div> <p><input type="submit" value="新增"></p> </form> """ body = Template.Kind_Body %(Template.Kind_Top,form,"") html = Template.HTML % ("New Kind",body) return html else: kind_name = get_field('kind_name') kind_shortname = get_field('kind_shortname') kind_id = int(get_time_str()) kind_count = 0 sql = """insert into kind values (%s,%s,%s,%s)""" execute_sql_in_4bbs(sql,[kind_id,kind_name,kind_count,kind_shortname]) return redirect("/kind")
def private_page(self): user = get_user() if user: return page(self) else: return "This page can only be accessed by registered members. " \ "Please <a href='login'>login</a>."
def delete(self): if not get_user(): body = Template.Kind_Body % (Template.Kind_Top,"Not Login!","") html = Template.HTML % ("Not login!",body) return html kind_id = get_field('kind_id') sql = """DELETE FROM kind where kind_id=%s""" execute_sql_in_4bbs(sql,[kind_id]) return redirect("/kind")
def _q_index(self): registerText=self.registerText # template = env.get_template('BasicView/index.html') myVariable=templatesdir # zipForm.add(Form.StringWidget, 'user_name', '[enter user name]',title='User name:',hint='Enter your name',size=40,required=False) template = env.get_template('myBase.html') theUser=get_user() print(theUser) return template.render(locals())
def wrapper(root): user = get_user() if not user or not isinstance(user, self.valid_groups): root.resume = meth_name valid_groups = ", ".join( cls.__name__ for cls in self.valid_groups) return self.msg % valid_groups else: return method(root)
def wrapper(root): user = get_user() if not user or not isinstance(user, self.valid_groups): root.resume = meth_name valid_groups = ", ".join(cls.__name__ for cls in self.valid_groups) return "You are trying to access a page restricted to %s. " % \ valid_groups + href("login", "Please login as a valid user.") else: return method(root)
def mainpage(self): if not get_user(): self.resume = 'mainpage' return """Welcome to the best site of the World! If this is your first visit, please <a href='register'>register</a> else <a href='login'>login</a>.""" else: return htmltext("Content of the site." "Click <a href='logout'>here</a> to logout.")
def wrapper(root): user = get_user() if not user or not isinstance(user, self.valid_groups): root.resume = meth_name valid_groups = ", ".join(cls.__name__ for cls in self.valid_groups) return self.msg % valid_groups else: return method(root)
def mainpage(self): if not get_user(): self.resume = 'mainpage' return """Welcome to the best site of the World! If this is your first visit, please <a href='register'>register</a> else <a href='login'>login</a>.""" else: return htmltext( "Content of the site." "Click <a href='logout'>here</a> to logout.")
def wrapper(root): user = get_user() if not user or not isinstance(user, self.valid_groups): root.resume = meth_name valid_groups = ", ".join(cls.__name__ for cls in self.valid_groups) return "You are trying to access a page restricted to %s. " % valid_groups + href( "login", "Please login as a valid user." ) else: return method(root)
def transaction_note(user=None, note=''): """Set user and description information on the ZODB transaction.""" import transaction as t if not user: try: user = get_user() except: user = None if user: t.get().setUser(user.get_user_id()) if note: t.get().note(note)
def login(self): user = get_user() if user is None: form = user_passwd_form() if form.is_submitted(): if valid_user(self.cx.cursor(), form["un"], form["pw"]): get_session().set_user(form["un"]) # this is the point! return "You are logged in." else: return "You are not registered or your password is invalid!" else: return htmltext("<h1>Login Form</h1>") + form.render() else: return "You are already logged in!"
def login(self): content = htmltext('') if get_field("name"): session = get_session() session.set_user(get_field("name")) # This is the important part. content += htmltext( '<p>Welcome, %s! Thank you for logging in.</p>') % get_user() content += href("..", "go back") else: content += htmltext('<p>Please enter your name here:</p>\n' '<form method="POST" action="login">' '<input name="name" />' '<input type="submit" />' '</form>') return format_page("Quixote Session Demo: Login", content)
def login(self): content = htmltext('') if get_field("name"): session = get_session() session.set_user(get_field("name")) # This is the important part. content += htmltext( '<p>Welcome, %s! Thank you for logging in.</p>') % get_user() content += href("..", "go back") else: content += htmltext( '<p>Please enter your name here:</p>\n' '<form method="POST" action="login">' '<input name="name" />' '<input type="submit" />' '</form>') return format_page("Quixote Session Demo: Login", content)
def private_page(self): user = get_user() if user: return page(self) else: return "This page can only be accessed by registered members. " "Please <a href='login'>login</a>."