def post(self): titulo = self.request.get("edTitulo", "") autor = self.request.get("edAutor", "") contenido = self.request.get("edContenido", "") if (not titulo or not autor or not contenido): return self.redirect("/home") else: post = Post(titulo=titulo, contenido=contenido, autor=autor) post.put() time.sleep(1) return self.redirect("/home")
def save_from_form(self, save_status, save=True): """ Updates a post based on form values and notifies ping services if it is the first publication of the post """ do_notification = False tags = [] for tag in self.params.get('tags', "").split(','): tags.append(tag.strip()) if self.params.get('key'): # update if we have an id p = Post.get(self.params.get('key')) if save and p.status <> 'Published' and save_status == 'Published': do_notification = True p.content = self.params.get('content', None) p.title = self.params.get('title', None) p.status = save_status p.slug = self.params.get('slug', None) p.tags = tags else: # else we insert p = Post( content = self.params.get('content', None), title = self.params.get('title', None), status = save_status, slug = self.params.get('slug', None), tags = tags ) if save and save_status == 'Published': do_notification = True if save: p.put() archive = 'archive_' + str(p.posted_on.year) + str(p.posted_on.month) + str(p.posted_on.day) ptitle = str(p.posted_on.year).rjust(2, '0') + str(p.posted_on.month).rjust(2, '0') + str(p.posted_on.day).rjust(2, '0') + '/' + p.slug self.invalidate_cache(['blog_last10', archive, ptitle]) do_notification = False if do_notification: from external.notification import ping_all name = 'AlephNullPlex' base = 'http://alephnullplex.appspot.com/blog/' perm = base + 'view/' + str(p.posted_on.year) + str(p.posted_on.month) + str(p.posted_on.day)+ '/' + p.slug feed = base + 'rss' errors = ping_all(name, base, perm, feed, '') if errors: self.error = '<br />'.join(errors) return p
def post(self): title = self.request.get('title') content = self.request.get('content') board = self.request.get('board') if title == '': self.error(400) else: author = getSecureUser(self.request) if(author is not None): # TODO: check if user is authorized to post in board newPost = Post(title=title, content=content, author=author, board=board) newPost.put() # TODO: redirect to post URL else: self.error(401)
def post(self, id): subject = self.request.get("subject") content = self.request.get("content") if subject and content: post = Post(subject=subject, content=content) key = post.put() self.redirect("/blog/" + str(key.id())) else: self.render_form(content, subject, "Both a subject and content must be present")
def post(self, id): subject = self.request.get('subject') content = self.request.get('content') if subject and content: post = Post(subject=subject, content=content) key = post.put() self.redirect('/blog/' + str(key.id())) else: self.render_form(content, subject, 'Both a subject and content must be present')
def setUp(self): self.testapp = webtest.TestApp(app) self.testbed = testbed.Testbed() self.testbed.activate() self.testbed.init_datastore_v3_stub() self.testbed.init_memcache_stub() # Set up some initial users valid_user = User(id="Valid User", password="******") self.valid_user_key = valid_user.put() invalid_user = User(id="Invalid User", password="******") self.invalid_user_key = invalid_user.put() valid_liker = User(id="Valid Liker", password="******") self.valid_liker_key = valid_user.put() invalid_liker = User(id="Invalid Liker", password="******") self.invalid_liker_key = invalid_user.put() # Set up an initial post initial_post = Post(title="Test Post", content="Some content", submitter="Valid User") self.initial_post_key = initial_post.put() initial_post_to_like = Post(title="Test Post", content="Some content", submitter="Invalid Liker") self.initial_post_to_like_key = initial_post_to_like.put() # Set up some other posts Post(title="Test Post A", content="Some content", submitter="Invalid Liker").put() Post(title="Test Post B", content="Some content", submitter="Valid User").put() Post(title="Test Post C", content="Some content", submitter="Valid User").put()
def post(self): title = self.request.get('title') content = self.request.get('content') board = self.request.get('board') if title == '': self.error(400) else: author = getSecureUser(self.request) if (author is not None): # TODO: check if user is authorized to post in board newPost = Post(title=title, content=content, author=author, board=board) newPost.put() # TODO: redirect to post URL else: self.error(401)
def post(self): """ Creates new post and redirect to new post page. """ if not self.user: self.redirect('/blog') return subject = self.request.get('subject') content = self.request.get('content') if subject and content: p = Post(parent=blog_key(), user_id=self.user.key().id(), subject=subject, content=content) p.put() self.redirect('/blog/%s' % str(p.key().id())) else: error = "subject and content, please!" self.render("newpost.html", subject=subject, content=content, error=error)
def post(self, **kwargs): title = self.request.POST['title'] content = self.request.POST['content'] submitter = self.request.cookies.get('user').split("|")[0] # Check that title and content are non-empty and add the data to the # datastore; otherwise, re-render the form with errors if title != '' and content != '': new_post = Post(title=title, content=content, submitter=submitter) new_post_key = new_post.put() new_post_id = new_post_key.id() self.redirect('/posts/%d' % new_post_id) else: template = jinja_env.get_template('new-post.html') form_data = {'title': title, 'content': content, 'error': True} self.write(template, {'form': form_data, 'new': True})