def get(self, aid): #arts = Article.all() #arts.filter('__key__ =',db.Key(aid)) art = Article.get_by_key_name(aid.strip()) #arts.get() usr = users.get_current_user() if (not art) or (art.author != usr): self.redirect('/') if art: art.keyname = art.key().name() videos = art.video_set videos.order('postdate') vds = [] for v in videos: v.keyname = v.key().name() v.cbk = v.cblock_set.count() vds.append(v) tmpvars = { 'art': art, 'title': unicode('添加视频 - ', 'utf-8') + art.title, 'vds': vds } self.render('addvideo.html', tmpvars) else: self.redirect('/')
def post(self,articlekey=None): article = Article.get_by_key_name(unicode(articlekey).strip()) if not article: self.redirect('/admin/error') title = unicode(self.request.get('title')).strip() abs = unicode(self.request.get('abs')).strip() tags = unicode(self.request.get('tags')).strip() classify = int(self.request.get('classify')) article.title = title; article.abs = abs; article.classify = classify; article.tags = tags.split(); try: article.put() except: self.redirect('/admin/error/failtosavearticle') try: videostring = unicode(self.request.get('videolist')).strip() # logging.info('%r' % videostring) videos = read(videostring) # logging.info('%r' % videos) oldvideos = article.video_set.order('postdate') self.compareAndUpdate(article,videos,oldvideos) except: self.redirect('/admin/error/failtosavevideos') self.get(articlekey)
def post(self, articlekey=None): article = Article.get_by_key_name(unicode(articlekey).strip()) if not article: self.redirect('/admin/error') title = unicode(self.request.get('title')).strip() abs = unicode(self.request.get('abs')).strip() tags = unicode(self.request.get('tags')).strip() classify = int(self.request.get('classify')) article.title = title article.abs = abs article.classify = classify article.tags = tags.split() try: article.put() except: self.redirect('/admin/error/failtosavearticle') try: videostring = unicode(self.request.get('videolist')).strip() # logging.info('%r' % videostring) videos = read(videostring) # logging.info('%r' % videos) oldvideos = article.video_set.order('postdate') self.compareAndUpdate(article, videos, oldvideos) except: self.redirect('/admin/error/failtosavevideos') self.get(articlekey)
def delete_article_by_key_name(keyname): a = Article.get_by_key_name(keyname) if a: videos = a.video_set for v in videos: MukioTools.delete_video_by_key_name(v.key().name()) MukioTools.delete_chat_by_artkey_name(keyname) a.delete()
def get(self, artkeynamestr): art = Article.get_by_key_name(artkeynamestr.strip()) if art: chats = art.chat_set chats.order('postdate') chatstr = '' for i in range(chats.count()): chatstr += self.renderchat(chats[i], str(i)) self.render('chats.html', {'chatstr': chatstr, 'art': art}) else: self.error(404)
def get(self,artkeynamestr): art = Article.get_by_key_name(artkeynamestr.strip()) if art: chats = art.chat_set chats.order('postdate') chatstr = '' for i in range(chats.count()): chatstr += self.renderchat(chats[i],str(i)) self.render('chats.html',{'chatstr':chatstr,'art':art}) else: self.error(404)
def get(self,articlekey=None): article = Article.get_by_key_name(unicode(articlekey).strip()) if not article: self.redirect('/admin/error') article.keyname = article.key().name() article.tagname = MukioTools.tagname(article.classify) article.postdate += timedelta(hours=+8) article.tagstring = ' '.join(article.tags) videos = article.video_set videos.order('postdate') def addkey(i): i.keyname = i.key().name() return i self.render('admin/article_edit.html',{'title':u'编辑主题','article':article,'videos':map(addkey,videos)})
def get(self, aid, prt): #artkey = aid.strip()#db.Key(str(aid).strip()) #arts = Article.all() #arts.filter('__key__=',artkey) if prt == '': prt = 0 else: prt = int(prt) art = Article.get_by_key_name(unicode(aid).strip()) #arts.get() if not art: self.redirect('/articles.php') else: art.clickstatis += 1 art.put() art.keyname = art.key().name() art.tagname = MukioTools.tagname(art.classify) art.postdate += timedelta(hours=+8) videos = art.video_set if prt > videos.count(): prt = 0 videos.order('postdate') vdlinks = [] if videos.count() > 1: for i in range(videos.count()): vdlinks.append({ 'n': i, 'ptitle': videos[i].parttitle, 'selected': i == prt }) vds = videos.fetch(1, prt) vd = None if len(vds): vd = vds[0] vd.keyname = vd.key().name() tmpvars = { 'art': art, 'video': vd, 'title': art.title, 'links': vdlinks, 'part': prt, 'host': self.request.headers['host'] } self.render('videos.html', tmpvars)
def get(self,aid,prt): #artkey = aid.strip()#db.Key(str(aid).strip()) #arts = Article.all() #arts.filter('__key__=',artkey) if prt == '': prt = 0 else: prt = int(prt) art = Article.get_by_key_name(unicode(aid).strip())#arts.get() if not art: self.redirect('/articles.php') else: art.clickstatis += 1 art.put() art.keyname = art.key().name() art.tagname = MukioTools.tagname(art.classify) art.postdate += timedelta(hours=+8) videos = art.video_set if prt > videos.count(): prt = 0 videos.order('postdate') vdlinks = [] if videos.count() > 1: for i in range(videos.count()): vdlinks.append({'n':i,'ptitle':videos[i].parttitle,'selected':i == prt}) vds = videos.fetch(1,prt) vd = None if len(vds): vd = vds[0] vd.keyname = vd.key().name() tmpvars = { 'art':art, 'video':vd, 'title':art.title, 'links':vdlinks, 'part':prt, 'host':self.request.headers['host'] } self.render('videos.html',tmpvars)
def get(self, articlekey=None): article = Article.get_by_key_name(unicode(articlekey).strip()) if not article: self.redirect('/admin/error') article.keyname = article.key().name() article.tagname = MukioTools.tagname(article.classify) article.postdate += timedelta(hours=+8) article.tagstring = ' '.join(article.tags) videos = article.video_set videos.order('postdate') def addkey(i): i.keyname = i.key().name() return i self.render('admin/article_edit.html', { 'title': u'编辑主题', 'article': article, 'videos': map(addkey, videos) })
def get(self,aid): #arts = Article.all() #arts.filter('__key__ =',db.Key(aid)) art = Article.get_by_key_name(aid.strip())#arts.get() usr = users.get_current_user() if (not art) or (art.author != usr): self.redirect('/') if art: art.keyname = art.key().name() videos = art.video_set videos.order('postdate') vds = [] for v in videos: v.keyname = v.key().name() v.cbk = v.cblock_set.count() vds.append(v) tmpvars = {'art':art, 'title':unicode('添加视频 - ','utf-8') + art.title, 'vds':vds} self.render('addvideo.html',tmpvars) else: self.redirect('/')
def get(self,aid,prt): if prt == '': prt = 0 else: prt = int(prt) art = Article.get_by_key_name(unicode(aid).strip())#arts.get() if not art: self.error(404) else: art.clickstatis += 1 art.put() videos = art.video_set if prt > videos.count(): prt = 0 videos.order('postdate') vds = videos.fetch(1,prt) vd = None flashvars = '/mukioplayer.swf?id=' if len(vds): vd = vds[0] if vd.vid: flashvars += vd.vid if vd.typ == 'bokecc' or vd.typ == '6room' or vd.typ == 'youku' or vd.typ == 'qq': flashvars += '&type=' + vd.typ; else: flashvars += vd.key().name() flashvars += '&file=' + vd.fileurl self.redirect(flashvars) else: self.error(404)
def get(self, aid, prt): if prt == '': prt = 0 else: prt = int(prt) art = Article.get_by_key_name(unicode(aid).strip()) #arts.get() if not art: self.error(404) else: art.clickstatis += 1 art.put() videos = art.video_set if prt > videos.count(): prt = 0 videos.order('postdate') vds = videos.fetch(1, prt) vd = None flashvars = '/mukioplayer.swf?id=' if len(vds): vd = vds[0] if vd.vid: flashvars += vd.vid if vd.typ == 'bokecc' or vd.typ == '6room' or vd.typ == 'youku' or vd.typ == 'qq': flashvars += '&type=' + vd.typ else: flashvars += vd.key().name() flashvars += '&file=' + vd.fileurl self.redirect(flashvars) else: self.error(404)
def delete_article(self, key_name): article = Article.get_by_key_name(key_name) if article: if article.author == self.user: MukioTools.delete_article_by_key_name(key_name)
def delete_chat_by_artkey_name(keyname): a = Article.get_by_key_name(keyname) if a: chats = a.chat_set for c in chats: MukioTools.delete_chat(c)