def get(self): checkJoke=JokeCheck.get_by_key_name('check') checkJoke=NewJoke.get_by_key_name(checkJoke.lastCheckJoke) if checkJoke: hahalist=NewJoke.all().filter('updateTime >',checkJoke.updateTime).order('updateTime').fetch(40) else: hahalist=NewJoke.all().order('updateTime').fetch(40) self.render('templates/check.html',{'hahalist':hahalist})
def get(self): joke=self.request.get('joke') limit=self.request.get('limit') if not limit: limit=20 else: limit=int(limit) type=self.request.get('type') if not type: type=3 else: type=int(type) memkey='d'+str(limit)+joke+str(type) jlist=memcache.get(memkey) if not jlist: jlist=NewJoke.all() if joke: joke=NewJoke.get_by_key_name(joke) if joke: jlist=jlist.filter('updateTime >',joke.updateTime) if type: jlist=jlist.filter('type =',type) jlist=jlist.order('updateTime').fetch(limit) memcache.set(memkey,jlist,7200) xml,datas=list2xml(jlist) datas.setAttribute('aPhoneVerson',str(setting.aPhoneVerson)) datas.setAttribute('aPhoneURI',setting.aPhoneURI) datas.setAttribute('ADTime',str(setting.ADTime)) self.response.out.write(xml.toxml('utf-8'))
def get(self,date=None,page=1,limit=20): perdate='' afterdate='' if None==date: defaultdate=DefaultDate.get_by_key_name('date') date=defaultdate.date afterdate='flage' html=memcache_get('date'+date+'page'+str(page)+'limit'+str(limit)) if html: return self.flashhtml(html) perdate=(datetime.datetime.strptime(date,'%Y%m%d')-datetime.timedelta(hours =24)).strftime('%Y%m%d') if not afterdate: afterdate=(datetime.datetime.strptime(date,'%Y%m%d')+datetime.timedelta(hours =24)).strftime('%Y%m%d') else: afterdate='' if page: page=int(page) if limit: limit=int(limit) hahamap=memcache.get('query:date'+date+'page'+str(page)+'limit'+str(limit)) if not hahamap: hahalist=[] for joke in NewJoke.all().filter('date =',date).order('-updateTime'): hahalist.append(joke) total=int(len(hahalist)/limit) for i in range(total): if i==(total-1): memcache.set('query:date'+date+'page'+str(i+1)+'limit'+str(limit),{'hahalist':hahalist[i*limit:],'total':len(hahalist)},3600*72) else: memcache.set('query:date'+date+'page'+str(i+1)+'limit'+str(limit),{'hahalist':hahalist[i*limit:(i+1)*limit],'total':len(hahalist)},3600*72) hahamap=memcache.get('query:date'+date+'page'+str(page)+'limit'+str(limit)) if not hahamap: self.redirect('/%s/1/%s'%(perdate,limit)) return totalpage=hahamap.get('total',0) nowpage=None pagelist=[] for p in range(int(totalpage/limit)): if (page-1)==p: nowpage='/%s/%s/%s'%(date,(p+1),limit) pagelist.append({'page':'/%s/%s/%s'%(date,(p+1),limit),'pagenum':p+1}) if perdate==date: perdate='' html=self.obj2str('templates/jokeindex.html',{'hahalist':hahamap.get('hahalist',[]),'pagelist':pagelist,'nowpage':nowpage,'pagenum':page,'limit':limit,'nowdate':date,'perdate':perdate,'afterdate':afterdate}) memcache_set('date'+date+'page'+str(page)+'limit'+str(limit),html,3600*5*page) self.flashhtml(html) return
def get(self,limit=10,pagenum=1): limit=int(limit) pagenum=int(pagenum) if pagenum==1 and( not self.request.referer or self.request.referer[0:len(self.request.host_url)]!=self.request.host_url): refer=True else: refer=False # logging.info(str(self.request.referer)) tmppagenum=0 if pagenum==1: Cookies = {} # tempBook Cookies Cookies['request_cookie_list'] = [{'key': cookie_key, 'value': cookie_value} for cookie_key, cookie_value in self.request.cookies.iteritems()] for c in Cookies['request_cookie_list']: if c['key']=='pagenum': if c.has_key('value') and c['value']: tmppagenum=int(c['value']) if not tmppagenum : refer=False tmp=self.request.get('tmp') if tmp and tmppagenum>0: pagenum=tmppagenum hahalist=memcache.get(str(limit)+'p'+str(pagenum)) if not hahalist: hahalist=NewJoke.all().order('-updateTime').fetch(limit,limit*(pagenum-1)) memcache.set(str(limit)+'p'+str(pagenum),hahalist,7200) if hahalist: nowpagestr=hahalist[-1].key().name() nowpagestrp=hahalist[0].key().name() else: nowpagestr='j' nowpagestrp='j' nowpage='/%s/%s/%s/%s'%(limit,pagenum,pagenum,nowpagestr) pagelist=memcache.get(nowpage) if not pagelist: pagelist=[] for i in range(max(1,pagenum-2),max(1,pagenum-2)+7): if pagenum>=i: pagelist.append(('/%s/%s/%s/%s'%(limit,i,pagenum,nowpagestr),i)) else: pagelist.append(('/%s/%s/%s/%s'%(limit,i,pagenum,nowpagestrp),i)) memcache.set(nowpage,pagelist,72000) if pagenum>1: setCookie='pagenum=%s;'%(pagenum,) self.response.headers.add_header('Set-Cookie', str(setCookie)+'Max-Age = 36000;path=/;') self.render('templates/result.html',{'refer':refer,'hahalist':hahalist,'per':'/%s/%s/%s/%s'%(limit,max(1,pagenum-1),pagenum,nowpagestr),'next':'/%s/%s/%s/%s'%(limit,max(1,pagenum+1),pagenum,nowpagestrp),'pagelist':pagelist,'nowpage':nowpage,'pagenum':pagenum})
def get(self,limit=20,pagenum=1,nowpage=1,jokeid='j'): if int(limit)!=20: return html=memcache.get(str(limit)+'page'+str(pagenum)) if html: return self.flashhtml(html) limit=int(limit) pagenum=int(pagenum) nowpage=int(nowpage) nowjoke=NewJoke.get_by_key_name(jokeid) if not nowjoke: pagenum=1 nowpage=1 if pagenum==1 and( not self.request.referer or self.request.referer[0:len(self.request.host_url)]!=self.request.host_url): refer=True else: refer=False tmppagenum=0 if pagenum==1: Cookies = {} # tempBook Cookies Cookies['request_cookie_list'] = [{'key': cookie_key, 'value': cookie_value} for cookie_key, cookie_value in self.request.cookies.iteritems()] for c in Cookies['request_cookie_list']: if c['key']=='pagenum': if c.has_key('value') and c['value']: tmppagenum=int(c['value']) if not tmppagenum : refer=False tmp=self.request.get('tmp') if tmp and tmppagenum>0: pagenum=tmppagenum hahalist=memcache.get(str(limit)+'p'+str(pagenum)) if not hahalist: hahalist=NewJoke.all() if pagenum>=nowpage: if nowjoke: hahalist=hahalist.filter('updateTime <',nowjoke.updateTime) hahalist=hahalist.order('-updateTime').fetch(limit,limit*(pagenum-nowpage)) else: if nowjoke: hahalist=hahalist.filter('updateTime >',nowjoke.updateTime) hahalist=hahalist.order('updateTime').fetch(limit,limit*(nowpage-pagenum)) hahalist.reverse() memcache.set(str(limit)+'p'+str(pagenum),hahalist,7200) if hahalist: nowpagestr=hahalist[-1].key().name() nowpagestrp=hahalist[0].key().name() else: nowpagestr='j' nowpagestrp='j' nowpage='/%s/%s/%s/%s'%(limit,pagenum,pagenum,nowpagestr) pagelist=memcache.get(nowpage) if not pagelist: pagelist=[] for i in range(max(1,pagenum-2),max(1,pagenum-2)+7): if pagenum>=i: pagelist.append(('/%s/%s/%s/%s'%(limit,i,pagenum,nowpagestr),i)) else: pagelist.append(('/%s/%s/%s/%s'%(limit,i,pagenum,nowpagestrp),i)) memcache.set(nowpage,pagelist,72000) if pagenum>1: setCookie='pagenum=%s;'%(pagenum,) self.response.headers.add_header('Set-Cookie', str(setCookie)+'Max-Age = 36000;path=/;') html=self.obj2str('templates/result.html',{'refer':refer,'hahalist':hahalist,'per':'/%s/%s/%s/%s'%(limit,max(1,pagenum-1),pagenum,nowpagestr),'next':'/%s/%s/%s/%s'%(limit,max(1,pagenum+1),pagenum,nowpagestrp),'pagelist':pagelist,'nowpage':nowpage,'pagenum':pagenum}) memcache.set(str(limit)+'page'+str(pagenum),html,7200) self.flashhtml(html)