def get(self, article_key=None): article = Article.get(article_key) if article is None or not article.is_active: return self.error(404) creator_view = self.get_current_user() == article.creator qs = article.revision_set qs.order('-date_created') revisions = each_profiles(qs) return self.render('revision_list.html', locals())
def get(self, article_key=None, errors=None): article = Article.get(article_key) if article is None or not article.is_active: return self.error(404) base_rev_key = self.request.get('base') base_rev = None if base_rev_key: base_rev = ArticleRevision.get(base_rev_key) if base_rev is None: base_rev = article.get_current_revision() content = base_rev.content return self.render('revision_add.html', locals())
def post(self, article_key=None): article = Article.get(article_key) if article is None or not article.is_active: return self.error(404) rev_key = self.request.get('revision_key') if not rev_key: return self.error(404) rev = ArticleRevision.get(rev_key) if rev is None or rev.article.key() != article.key(): return self.error(401) article.current_rev_key = str(rev.key()) article.put() return self.redirect(article.href())
def get(self, article_key=None): article = Article.get(article_key) if article is None or not article.is_active: return self.error(404) revision = None rev_key = self.request.get('rev', '') if rev_key: revision = ArticleRevision.get(rev_key) if not revision: revision = article.get_current_revision() return self.render('article_view.html', locals())
def post(self, article_key=None): article = Article.get(article_key) if article is None or not article.is_active: return self.error(404) errors = [] content = self.request.get('content', '').strip() if not content: errors.append('Content cannot be empty') if errors: return self.render('revision_add.html', locals()) user = self.get_current_user() rev = ArticleRevision(user=user, article=article, content=content) rev.put() if user == article.creator: article.current_rev_key = str(rev.key()) article.put() full_rev_url = urlparse.urljoin(self.request.uri, rev.href()) blip = Blip.new(user, u'edited article %s %s' % (article.title, full_rev_url)) return self.redirect(article.href())
def post(self): parttitle = unicode(self.request.get('parttitle')).strip() #vid = unicode(self.request.get('vid')).strip() fileurl = unicode(self.request.get('fileurl')).strip() typ = unicode(self.request.get('typ')).strip() artkeystr = unicode(self.request.get('articleId')).strip() artkey = db.Key(artkeystr) if not artkey: self.redirect('/') art = Article.get(artkey) usr = users.get_current_user() if art.author == usr: self.redirect('/') if typ == 'bokecc': reg = re.compile(r'http://.*vid=([^&]+)', re.I) res = reg.findall(fileurl) if len(res) == 1: vid = res[0] else: vid = fileurl fileurl = '' keyname = 'vid' + vid elif typ == 'sina' or typ == 'youku' or typ == '6room' or typ == 'qq': vid = fileurl fileurl = '' keyname = 'vid' + vid elif typ == 'video': vid = '' keyname = MukioTools.rndvid(4) else: self.error(404) '''typ = 'sina' if not vid: typ = 'video' if not fileurl: typ = 'none' if typ == 'none': self.redirect('/') else: if typ == 'sina': keyname = 'vid' + vid else: reg = re.compile(r'vid=([^&]+)',re.I) res = reg.findall(fileurl) if len(res) == 1: typ = 'bokecc' vid = res[0] keyname = 'vid' + res[0] else: keyname = MukioTools.rndvid(4)''' video = Video(key_name=keyname, typ=typ, vid=vid, fileurl=fileurl, parttitle=parttitle, art=artkey) if video: video.put() self.redirect('/addvideo/' + artkey.name() + '/') else: self.redirect('/')
def post(self): parttitle = unicode(self.request.get('parttitle')).strip() #vid = unicode(self.request.get('vid')).strip() fileurl = unicode(self.request.get('fileurl')).strip() typ = unicode(self.request.get('typ')).strip() artkeystr = unicode(self.request.get('articleId')).strip() artkey = db.Key(artkeystr) if not artkey: self.redirect('/') art = Article.get(artkey) usr = users.get_current_user() if art.author == usr: self.redirect('/') if typ == 'bokecc': reg = re.compile(r'http://.*vid=([^&]+)',re.I) res = reg.findall(fileurl) if len(res) == 1: vid = res[0] else: vid = fileurl fileurl = '' keyname = 'vid' + vid elif typ == 'sina' or typ == 'youku' or typ == '6room' or typ == 'qq': vid = fileurl fileurl = '' keyname = 'vid' + vid elif typ == 'video': vid = '' keyname = MukioTools.rndvid(4) else: self.error(404) '''typ = 'sina' if not vid: typ = 'video' if not fileurl: typ = 'none' if typ == 'none': self.redirect('/') else: if typ == 'sina': keyname = 'vid' + vid else: reg = re.compile(r'vid=([^&]+)',re.I) res = reg.findall(fileurl) if len(res) == 1: typ = 'bokecc' vid = res[0] keyname = 'vid' + res[0] else: keyname = MukioTools.rndvid(4)''' video = Video(key_name=keyname, typ=typ, vid=vid, fileurl=fileurl, parttitle=parttitle, art=artkey ) if video: video.put() self.redirect('/addvideo/' + artkey.name() + '/') else: self.redirect('/')