def get(self): siteData = datamodel.getSiteMeta().__dict__ template = jinja_environment.get_template('robots.txt') self.response.headers['Content-type'] = 'text/plain; charset=UTF-8' self.response.headers['Cache-Control'] = 'max-age=36000, public' self.response.headers['Pragma'] = 'Public' self.response.out.write(template.render(siteData))
def get(self): siteData = datamodel.getSiteMeta().__dict__ template = jinja_environment.get_template('template/about.html') self.response.headers['Cache-Control'] = 'max-age=36000, public' self.response.headers['Pragma'] = 'Public' self.response.headers['x-Whisper'] = 'Ann, I love you.' self.response.out.write(template.render(siteData))
def get(self): siteData = datamodel.getSiteMeta().__dict__ template = jinja_environment.get_template('template/rss.xml') posts = LogItem.all().order("-when").fetch(10) siteData['posts'] = posts self.response.headers['Content-Type'] = 'application/xml' self.response.headers['Cache-Control'] = 'max-age=36000, public' self.response.headers['Pragma'] = 'Public' self.response.out.write(template.render(siteData))
def get(self, tag): tag = tag.decode("utf-8") siteData = datamodel.getSiteMeta().__dict__ posts = LogItem.gql("WHERE tags=:1", tag) if posts is None: self.error(404) siteData['posts'] = posts siteData['tag'] = tag template = jinja_environment.get_template('template/tagged.html') self.response.headers['Cache-Control'] = 'max-age=36000, public' self.response.headers['Pragma'] = 'Public' self.response.out.write(template.render(siteData, debug=_DEBUG))
def get(self, index): siteData = datamodel.getSiteMeta().__dict__ post = LogItem.get_by_id(int(index)) if post is None: return siteData['post'] = post siteData['singleView'] = True siteData['comments'] = post.comments template = jinja_environment.get_template('template/onepostview.html') self.response.headers['Cache-Control'] = 'max-age=36000, public' self.response.headers['Pragma'] = 'Public' self.response.out.write(template.render(siteData, debug=_DEBUG))
def get(self, year, month): dateHead = datetime(int(year), int(month), 1) if int(month) == 12: dateTail = datetime(int(year)+1, 1, 1) else: dateTail = datetime(int(year), int(month)+1, 1) posts = LogItem.all().order("-when").filter("when >", dateHead).filter("when <", dateTail) siteData = datamodel.getSiteMeta().__dict__ siteData['posts'] = posts siteData['year'] = year siteData['month'] = month template = jinja_environment.get_template('template/archive.html') self.response.headers['Cache-Control'] = 'max-age=36000, public' self.response.headers['Pragma'] = 'Public' self.response.out.write(template.render(siteData, debug=_DEBUG))
def get(self): siteData = datamodel.getSiteMeta().__dict__ nowPost = self.request.get('m') direction = self.request.get('d') c = 0 posts = [] if not nowPost or not direction: lastPost = LogItem.all().order("-when").fetch(1) if len(lastPost) == 0: return self.error(404) item = lastPost[0] while c < POSTS_PER_PAGE and item: c += 1 posts.append(item) item = item.prevPost if item: siteData['prev'] = item.key() else: if direction == 'prev': item = LogItem.get(db.Key(nowPost)) if item.nextPost: siteData['next'] = item.nextPost.key() while c < POSTS_PER_PAGE and item: c += 1 posts.append(item) item = item.prevPost if item: siteData['prev'] = item.key() if direction == 'next': item = LogItem.get(db.Key(nowPost)) if item.prevPost: siteData['prev'] = item.prevPost.key() while c < POSTS_PER_PAGE and item: c += 1 posts.insert(0, item) item = item.nextPost if item: siteData['next'] = item.key() siteData['posts'] = posts archives = Archive.all().order("-monthlyID") siteData['archives'] = archives template = jinja_environment.get_template('template/home.html') self.response.out.write(template.render(siteData, debug=_DEBUG)) self.response.headers['Cache-Control'] = 'max-age=36000, public' self.response.headers['Pragma'] = 'Public' self.response.headers.add_header("x-Whisper", "Ann, I love U.")
def get(self, index): siteData = datamodel.getSiteMeta().__dict__ siteData['index'] = index post = LogItem.get_by_id(int(index)) if post is None: return siteData['post'] = post template = Template(""" <html> <body> <form action="/boom/{{ index }}" method="post"> <div><textarea name="content" rows="30" cols="50">{{ post.what }}</textarea></div> <div><textarea name="tags" rows="30" cols="50">{% for tag in post.tags %}{{ tag }};{% endfor %}</textarea></div> <div><input type="submit" value="Post!"></div> </form> </body> </html>""") self.response.out.write(template.render(siteData, debug=_DEBUG))