def GET (self): """ Show page """ posts = model.get_posts() master = model.get_masters() fontsource = [cFont.fontna,cFont.fontnb,cFont.glyphName] webglyph = cFont.glyphName return render.metap(posts,master,fontsource,webglyph)
def GET(self): if not web.input() or str(web.input()) == "<Storage {'error': u'access_denied'}>": pass else: code = str(web.input())[20: -3] login_data = { 'client_id': API_KEY, 'client_secret': API_SECRET, 'redirect_uri': CALLBACK, 'grant_type': 'authorization_code', 'code': code } r = requests.post("https://www.douban.com/service/auth2/token", data=login_data) access_token = eval(r.text)['access_token'] headers = {"Authorization": "Bearer "+access_token} r = requests.get("https://api.douban.com/v2/user/~me", headers=headers) str_user_info = r.text.encode('utf8') douban_username = str_user_info.split('\"')[7] if douban_username == 'Havlicek': session.logged_in = True raise web.seeother('/') else: return '对不起, 您没有登录该博客的权限。'.decode('utf8').encode('utf8') posts = model.get_posts() form = self.form() logged = False if session.get('logged_in', False): logged = True return render.index(posts, form, logged)
def POST(self,id): form = New.form() post = model.get_posts(int(id)) if not form.validates(): return render.edit(post,form) model.update_post(int(id),form.d.title,form.d.content) raise web.seeother('/')
def GET(self): """ Show page """ posts = model.get_posts() # for post in posts: # print post.posted_on.split(".")[0] # print web.datestr(datetime.datetime.strptime(post.posted_on.split(".")[0],"%Y-%m-%d %H:%M:%S")) return render.index(posts)
def POST(self, id): i = web.input(addOther={}) if i.photo: # 删除静态资源照片 photo_name = i.photo.split('/')[-1] logger.debug('need delete photo path: ' + "/root/images/" + photo_name) try: os.remove("/root/images/" + photo_name) except FileNotFoundError as e: logger.error(e) filedir = 'https://www.xn--r35a.tech/lingxi_images/' if 'addOther' in i: # to check if the file-object is created filepath=i.addOther.filename.replace('\\','/') # replaces the windows-style slashes with linux ones. filename=filepath.split('/')[-1] # splits the and chooses the last part (the filename with extension) fullFileName = filedir + filename logger.debug('restart write photo path: ' + '/root/images/' + filename) fout = open('/root/images/' + filename,'wb') # creates the file where the uploaded file should be stored fout.write(i.addOther.file.read()) # writes the uploaded file to the newly created file. fout.close() # closes the file, upload complete. model.update_post(int(id), i.title, i.content, fullFileName) else: model.update_post(int(id), i.title, i.content, None) #raise web.seeother("/") posts = model.get_posts() return render.index(posts)
def GET(self): """ Show page """ posts = model.get_posts() master = model.get_masters() fontsource = [cFont.fontna, cFont.fontnb, cFont.glyphName] webglyph = cFont.glyphName return render.metap(posts, master, fontsource, webglyph)
def feed(): if request.method == 'POST': if request.form['action'] == 'save': model.parse_form(request.form) if request.form['action'] == 'fetch': model.get_new_data() template_data = {"items": model.get_posts('published')} return render_template('feed.html', data=template_data, page_id='feed')
def GET(self): '''show page''' # login_form = login() #add login posts = model.get_posts() return render.index(posts) #add login form # def POST(self): '''post page'''
def drafts(): if request.method == 'POST': model.parse_form(request.form) template_data = {"items": model.get_posts('drafts')} # print("template data is:") # print(template_data) return render_template('db_drafts.html', data=template_data, page_id='drafts')
def GET(self): """ show index page """ posts = model.get_posts() for post in posts: print post['title'] print post['content'] return render.index(posts=posts)
def POST(self): form = self.form() if not session.get('logged_in', False): raise web.seeother('/login') else: if not form.validates(): posts = model.get_posts() return render.index(posts, form) model.new_post(form.d.title, form.d.content, str(date.today())) raise web.seeother('/')
def GET(self): """ Show page """ raise seeother('/fonts/') if not is_loggedin(): raise seeother('/login') posts = model.get_posts() master = model.get_masters() fontsource = [cFont.fontna, cFont.fontnb, cFont.glyphName] webglyph = cFont.glyphName return render.metap(posts, master, fontsource, webglyph)
def index(): if request.method == 'GET': pass if request.method == 'POST': name = request.form.get('name') post = request.form.get('post') create_posts(name, post) posts = get_posts() return render_template('index.html', posts=posts)
def GET(self): """ Show page """ posts = model.get_posts() for post in posts: # Post is set active only if it has an item yet to occur post.active = False items = model.get_items(post.id) for item in items: if not utils.date_in_past(item.date): post.active = True return render.index(posts)
def POST(self): flag_loginfail=1 posts=model.get_posts() login_user=model.get_users() for user in login_user: if web.input().login_username==user.username and model.create_md5(web.input().login_password)==user.password: flag_loginfail=0 web.setcookie('username',web.input().login_username) if flag_loginfail: return render.index(posts) raise web.seeother('/')
def GET(self, id): """ Show page """ posts = model.get_posts() master = model.get_masters() if id == '0': # we are working on font A cFont.idwork = id # fontsource = [cFont.fontna, cFont.glyphName] if id == '1': # we are working on font B cFont.idwork = id # fontsource = [cFont.fontnb, cFont.glyphName] posts = model.get_posts() master = model.get_masters() webglyph = cFont.glyphName return render.metap(posts, master, fontsource, webglyph)
def GET (self,id): """ Show page """ posts = model.get_posts() master = model.get_masters() if id =='0': # we are working on font A cFont.idwork=id # fontsource = [cFont.fontna,cFont.glyphName] if id =='1': # we are working on font B cFont.idwork=id # fontsource = [cFont.fontnb,cFont.glyphName] posts = model.get_posts() master = model.get_masters() webglyph = cFont.glyphName return render.metap(posts,master,fontsource,webglyph)
def index(): if request.method == "GET": pass if request.method == "POST": name = request.form.get("name") post = request.form.get("post") create_post(name, post) posts = get_posts() return render_template("index.html", posts=posts)
def post_index(): """ Blog index, shows all blog posts """ title = "Blog Posts" ## posts = model.get_posts() ## Reverse posts posts.reverse() ## Add paging here #=> return render_template('blog_index.html', title=title, posts=posts)
def GET(self, id): """ Show page """ if not is_loggedin(): raise seeother('/login') posts = model.get_posts() master = model.get_masters() if id == '0': # we are working on font A cFont.idwork = id fontsource = [cFont.fontna, cFont.glyphName] if id == '1': # we are working on font B cFont.idwork = id fontsource = [cFont.fontnb, cFont.glyphName] posts = model.get_posts() master = model.get_masters() webglyph = cFont.glyphName return render.metap(posts, master, fontsource, webglyph)
def POST(self, id): # 1. 删除静态资源照片 post = model.get_post(int(id)) photo_name = post.imageAddr.split('/')[-1] logger.debug('need delete photo path: ' + "/root/images/" + photo_name) try: os.remove("/root/images/" + photo_name) except Exception as e: logger.error(e) # 2. 删除表中记录 model.del_post(int(id)) #raise web.seeother("/") posts = model.get_posts() return render.index(posts)
def POST(self): x = web.input(addOther={}) filedir = 'https://www.xn--r35a.tech/lingxi_images/' if 'addOther' in x: # to check if the file-object is created filepath=x.addOther.filename.replace('\\','/') # replaces the windows-style slashes with linux ones. filename=filepath.split('/')[-1] # splits the and chooses the last part (the filename with extension) if filename: fullFileName = filedir + filename fout = open('/root/images/' + filename,'wb') # creates the file where the uploaded file should be stored fout.write(x.addOther.file.read()) # writes the uploaded file to the newly created file. fout.close() # closes the file, upload complete. model.new_post(x.title, x.content, fullFileName) else: model.new_post(x.title, x.content, None) #raise web.seeother("/") posts = model.get_posts() return render.index(posts)
def build_template(page=None): # NEED TO CREATE BUILD DIRECTORY IF IT DOESN'T EXIST!!! print("Building template for DNN") print("+++\nPage is: ", page) template_data = {"posts": model.get_posts('published', page)} # using Jinja2 string was fun, but let's get back to includes and other good stuff # html = Environment().from_string(tmpl.core_template).render(data=template_data) j2_env = Environment(loader=FileSystemLoader('templates'), trim_blocks=True) html_filename = f"ext_{page}.html" print("HTML file name is: ", html_filename) html = j2_env.get_template(html_filename).render(data=template_data) html_minified = minify_html(html) css = fetch.fetch_css() script = Template(tmpl.script_template).substitute(css=css, minified=html_minified) script_name = f"{page}.js" save_file_overwrite(script, script_name) pass
def GET(self): refunc = model.ReplaceKeyword() posts = model.get_posts() if mail_info['flag'] == 1: key_temp = model.sel_keyword() count = model.count_keyword() for list in key_temp: for n in count: if count[n] > 0 and n == list.keyword: if list.option == 0: continue else: model.send_mail( mail_info['send_to'], "Warning:Find Keyword" + n, "留言中发现目标关键字:" + n, mail_info['stmp_server'], mail_info['username'], mail_info['password'], mail_info['username'], mail_info['username']) break return render.backstage(posts, refunc)
def GET(self,id): """ View single post """ form=self.form() if id > '0' : post = model.get_post(int(id)) glyphparam = model.get_glyphparam(int(id)) groupparam = model.get_groupparam(int(id)) form.fill(post) posts = model.get_posts() postspa = model.get_postspa() formParam = self.formParam() formParamG = self.formParamG() if glyphparam != None : formParam.fill(glyphparam) if groupparam != None : formParamG.fill(groupparam) mastglobal = model.get_globalparam(cFont.idglobal) master = model.get_master(cFont.idmaster) webglyph = cFont.glyphName return render.view(posts,post,form,formParam,formParamG,master,mastglobal,webglyph,glyphparam,groupparam,cFont,postspa)
def GET(self, id): """ View single post """ form = self.form() if id > '0': post = model.get_post(int(id)) glyphparam = model.get_glyphparam(int(id)) groupparam = model.get_groupparam(int(id)) form.fill(post) posts = model.get_posts() postspa = model.get_postspa() formParam = self.formParam() formParamG = self.formParamG() if glyphparam != None: formParam.fill(glyphparam) if groupparam != None: formParamG.fill(groupparam) mastglobal = model.get_globalparam(cFont.idglobal) master = model.get_master(cFont.idmaster) webglyph = cFont.glyphName return render.view(posts, post, form, formParam, formParamG, master, mastglobal, webglyph, glyphparam, groupparam, cFont, postspa)
def lineup(page_id): # get data # file_name = f'pages_{page_id}_lineup.html' if request.method == 'POST': if request.form['action'] == 'save': model.parse_form(request.form) if request.form['action'] == 'deploy': model.parse_form(request.form) data.build_template(page_id) fetch.put_S3( page_id ) # sometimes tries to send before file above finished writing!!!! # StackOverflow: https://stackoverflow.com/questions/36274868/saving-an-image-to-bytes-and-uploading-to-boto3-returning-content-md5-mismatch # My answer was to create using ".filename" then: # os.rename(filename.replace(".filename","filename")) # This ensured the file was done being created. if request.form['action'] == 'fetch': model.get_new_data(page_id) # template_data = {"items": model.get_lineup('published', page_id)} template_data = {"items": model.get_posts('published', page_id)} # return render_template(file_name, data=template_data, draft_check=False) return render_template('pages_lineup.html', data=template_data, page_id=page_id)
c = model.get_post_categories(post_id) assert(len(c) == 1 and c[0].name == 'uncategorized' and c[0].parent_id == 0 and c[0].id == 1 and c[0].description == '' and c[0].type=='post_category') # test tag. TODO. assert(model.update_post(post_id, author_id=2, title='new title', content='new content', comment_status='close', post_status='saved')) post = model.get_post(post_id) assert(post.author_id == 2 and post.title == 'new title' and post.content == 'new content' and post.excerpt== None and post.slug == None and post.post_type=='blog' and post.comment_status=='close' and post.post_status=='saved') assert(model.update_post(post_id, author_id=1, title='title', content='content', comment_status='open', post_status='published')) another_post_id = model.new_post(1, 'title', 'content', None, None, 'blog', 'open', 'published', None, None) assert(another_post_id) posts = model.get_posts() assert(len(posts)==2) for post in posts: assert(post and post.author_id == 1 and post.title == 'title' and post.content == 'content' and post.excerpt== None and post.slug == None and post.post_type=='blog' and post.comment_status=='open' and post.post_status=='published') model.delete_post(post_id) model.delete_post(another_post_id) posts = model.get_posts() assert(not posts) post_id = model.new_post(1, 'title', 'content', None, None, 'blog', 'open', 'published', None, None) assert(post_id) for i in range(0, 10): author = 'author %d' %i
def GET(self): #当有人用GET请求/时,这个GET函数随时会被web.py调用,GET 方式请求URL,class index中包含了一个GET方法,用来处理与index相应的url的GET请求的, """ Show page """ posts = model.get_posts() return render.index(posts)
def GET(self): posts = model.get_posts() return render.index(posts)
def GET(self): """ Show page """ posts = model.get_posts() return render.blog(posts)
def GET(self): """ Show page 主页""" posts = model.get_posts() # print posts return render.index(posts)
def POST(self, id): form = View.form() formParam = View.formParam() formParamG = View.formParamG() post = model.get_post(int(id)) postspa = model.get_postspa() formParam = self.formParam() if not form.validates() : posts = model.get_posts() master = model.get_master(cFont.idmaster) mastglobal = model.get_globalparam(cFont.idglobal) webglyph = cFont.glyphName return render.view(posts, post, form, formParam, master,mastglobal, webglyph,glyphparam,groupparam,cFont,postspa) if form.d.PointName != None : if not formParam.validates() : return render.view(posts, post, form, formParam, master,mastglobal) if model.get_glyphparam(int(id)) != None : model.update_glyphparam(int(id),form.d.PointName,form.d.groupn) model.update_glyphparamD(int(id),formParam.d.Param, formParam.d.parmval) if model.get_groupparam0(form.d.groupn) != None: model.update_groupparamD(form.d.groupn, formParamG.d.Group, formParamG.d.groupval) else: model.insert_groupparam( form.d.groupn ) else : model.insert_glyphparam(int(id),form.d.PointName ) model.update_glyphparam(int(id),form.d.PointName,form.d.groupn) if model.get_groupparam0(form.d.groupn) != None: model.update_groupparamD(form.d.groupn, formParamG.d.Group, formParamG.d.groupval) else: model.insert_groupparam( form.d.groupn ) if not formParamG.validates() : return render.view(posts, post, form, formParam, formParamG, master,mastglobal) if model.get_groupparam(int(id)) != None : if form.d.groupn != None : if model.get_groupparam0(form.d.groupn) != None: model.update_groupparamD(form.d.groupn, formParamG.d.Group, formParamG.d.groupval) else: model.insert_groupparam( form.d.groupn ) model.update_post(int(id), form.d.x, form.d.y) posts = model.get_posts() master = model.get_master(cFont.idmaster) mastglobal = model.get_globalparam(cFont.idglobal) webglyph = cFont.glyphName glyphparam = model.get_glyphparam(int(id)) groupparam = model.get_groupparam(int(id)) if cFont.mfoption =='1' : model.writeallxmlfromdb() else: model.writexml() model.ufo2mf() os.environ['MFINPUTS'] = cFont.fontpath # os.environ['MPINPUTS'] = cFont.fontpath model.writeGlyphlist() strms = "sh makefont.sh font.mf" os.system(strms) return render.view(posts, post, form, formParam, formParamG, master, mastglobal,webglyph,glyphparam,groupparam,cFont,postspa)
def milk_exchange_board(): all_posts = model.get_posts() return render_template("donorlist.html", all_posts=all_posts)
def GET(self): """ Show page """ posts = model.get_posts() for p in posts: print web.datestr(p.posted_on) return render.index(posts)
def GET(self): refunc = model.ReplaceKeyword() posts = model.get_posts() return render.index(posts, refunc)
def index(): return render_template('index.html', len=model.post_len(), posts=model.get_posts())
def GET(self): """ Show page """ posts = model.get_posts() print type(posts) #return render.index(posts) return render.index(posts=posts)
def GET(self,id): post = model.get_posts(int(id)) return render.view(post)
def GET(self): #Show Page posts = model.get_posts() return render.index(posts)
def GET(self): """Show page""" login_form = login() posts = model.get_posts() return render.index(posts, login_form)
def GET(self): """Show page""" # 在model中定义了get_posts函数,用于获取全部post posts=model.get_posts() return render.index(posts)
def GET(self): posts = model.get_posts() return render.blog(posts)
def GET(self): posts = model.get_posts() return render.usuarios(posts)
def GET(self): posts = model.get_posts() return render.registros(posts)
def GET(self): posts = model.get_posts() return render.backstage(posts)
def GET(self): """ Show page """ posts = model.get_posts() return render.index(posts, auth.getUser())
def GET(self): """ Show page """ posts = model.get_posts() return render.index(posts)
def GET(self): """ Show page """ posts = model.get_posts() #引用model下的getpost方法 return render.blog1(posts) #posts渲染到index.html页面上
def GET(self): posts = model.get_posts() template = env.get_template('index.html') return template.render(moods=posts)
def GET(self): """view opinion polls""" posts=model.get_posts() return render.viewOpinionPolls(posts)
def GET(self): login_form = login() posts = model.get_posts() return render.index(posts, login_form)
def GET(self): '''show page''' posts = model.get_posts() return render.index(posts)