コード例 #1
0
 def post(self):
     from libs.feedparser import parse
     user = users.get_current_user()
     url = self.request.get('url')
     p = parse(str(url))
     try:
         d = p['items'][0]
     except IndexError:
         pass
     if user:
         q = Feeds.query(Feeds.user == user, Feeds.url == url)
         if q.get() is None:
             feed = Feeds()
             def txn():
                 feed.blog = p.feed.title
                 feed.root = p.feed.link
                 feed.user = user
                 feed.feed = url
                 feed.url = d.link
                 feed.put()
             ndb.transaction(txn)
             deferred.defer(utils.new_bm, d, feed.key, _queue="admin")
         self.redirect(self.request.referer)
     else:
         self.redirect('/')
コード例 #2
0
ファイル: submit.py プロジェクト: russomi/gaeicious
 def post(self):
     user = users.get_current_user()
     feed = self.request.get('url')
     q = Feeds.query(Feeds.user == user, Feeds.feed == feed)
     if user and q.get() == None:
         d = parse(str(feed))
         feed_k = Feeds(feed=feed,
                        title=d['channel']['title'],
                        link=d['channel']['link'],
                        user=user,
                        last_id=d['items'][0].id).put()
         deferred.defer(pop_feed, feed_k, _queue="user")
         self.redirect('/feeds')
     else:
         self.redirect('/')
コード例 #3
0
 def get(self): 
     for feed in Feeds.query(): 
         if feed.notify == 'digest': 
             deferred.defer(utils.feed_digest, feed.key, _target="worker", _queue="admin")
コード例 #4
0
 def get(self): 
     for feed in Feeds.query(): 
         deferred.defer(utils.pop_feed, feed.key, _target="worker", _queue="admin")