Exemple #1
0
    def get(self, day="today", page=1, sort_by="hot"):
        view = "list"
        sort_by = self.get_argument('sort_by', sort_by)
        page = abs(int(self.get_argument('page', page)))
        per_page = abs(int(self.get_argument('per_page', '20')))
        msg = self.get_argument('msg', '')
        slug = self.get_argument('slug', '')
        new_post = None
        featured_topics = topicsdb.get_featured()

        if slug:
            new_post = postsdb.get_post_by_slug(slug)

        featured_posts = postsdb.get_featured_posts(1)
        posts = []
        hot_tags = tagsdb.get_hot_tags()

        is_today = False
        if day == "today":
            is_today = True
            day = datetime.datetime.today()
        else:
            day = datetime.datetime.strptime(day, "%Y-%m-%d")

        show_day_permalink = True
        infinite_scroll = False
        if self.request.path == ('/'):
            show_day_permalink = False
            infinite_scroll = True

        is_blacklisted = False
        if self.current_user:
            is_blacklisted = self.is_blacklisted(self.current_user)
            
        posts = postsdb.get_hot_posts_24hr(day)
        previous_day_posts = postsdb.get_hot_posts_24hr(datetime.datetime.now() - datetime.timedelta(hours=24))

        midpoint = 7
        #midpoint = (len(posts) - 1) / 2
        # midpoint determines where post list breaks from size=md to size=sm
        hot_posts_past_week = postsdb.get_hot_posts_past_week()

        self.vars.update({
          'is_today': is_today,
          'view': view,
          'posts': posts,
          'previous_day_posts': previous_day_posts,
          'hot_posts_past_week': hot_posts_past_week,
          'day': day,
          'show_day_permalink': show_day_permalink,
          'infinite_scroll': infinite_scroll,
          'new_post': new_post,
          'msg': msg,
          'featured_posts': featured_posts,
          'midpoint': midpoint,
          'featured_topics': featured_topics
        })
        self.render('post/list_posts.html', **self.vars)
Exemple #2
0
    def get(self, slug):
        post = postsdb.get_post_by_slug(slug)
        if not post:
            raise tornado.web.HTTPError(404)

        tag_posts = []
        all_keeper_posts = []
        if 'tags' in post.keys() and len(post['tags']) > 0:
            for t in post['tags']:
                posts = postsdb.get_related_posts_by_tag(t)
                tag_keeper_posts = []
                for p in posts:
                    if p['slug'] != slug and p not in all_keeper_posts:
                        tag_keeper_posts.append(p)
                        all_keeper_posts.append(p)
                obj = {'tag': t, 'posts': tag_keeper_posts}
                tag_posts.append(obj)

        msg = self.get_argument('msg', None)

        user = None
        if self.current_user:
            user = userdb.get_user_by_screen_name(self.current_user)

        # remove dupes from voted_users
        voted_users = []
        for i in post['voted_users']:
            if i not in voted_users:
                voted_users.append(i)
        post['voted_users'] = voted_users

        hot_posts_past_week = postsdb.get_hot_posts_past_week()
        featured_posts = {}

        view = "single"

        self.render('post/view_post.html',
                    user_obj=user,
                    post=post,
                    msg=msg,
                    tag_posts=tag_posts,
                    hot_posts_past_week=hot_posts_past_week,
                    featured_posts=featured_posts,
                    view=view)
Exemple #3
0
 def get(self, slug):
   post = postsdb.get_post_by_slug(slug)
   if not post:
     raise tornado.web.HTTPError(404)  
   
   tag_posts = []
   all_keeper_posts = []
   if 'tags' in post.keys() and len(post['tags']) > 0:
     for t in post['tags']:
       posts = postsdb.get_related_posts_by_tag(t)
       tag_keeper_posts = []
       for p in posts:
         if p['slug'] != slug and p not in all_keeper_posts:
           tag_keeper_posts.append(p)
           all_keeper_posts.append(p)
       obj = {
         'tag': t,
         'posts': tag_keeper_posts
       }
       tag_posts.append(obj)
   
   msg = self.get_argument('msg', None)  
   
   user = None
   if self.current_user:
     user = userdb.get_user_by_screen_name(self.current_user)
   
   # remove dupes from voted_users
   voted_users = []
   for i in post['voted_users']:
     if i not in voted_users:
       voted_users.append(i)
   post['voted_users'] = voted_users
   
   hot_posts_past_week = postsdb.get_hot_posts_past_week()
   featured_posts = {}
   
   view = "single"
   
   self.render('post/view_post.html', user_obj=user, post=post, msg=msg, tag_posts=tag_posts, hot_posts_past_week=hot_posts_past_week, featured_posts=featured_posts, view=view)
Exemple #4
0
    def get(self, day="today", page=1, sort_by="hot"):
        view = "list"
        sort_by = self.get_argument('sort_by', sort_by)
        page = abs(int(self.get_argument('page', page)))
        per_page = abs(int(self.get_argument('per_page', '20')))
        msg = self.get_argument('msg', '')
        slug = self.get_argument('slug', '')
        new_post = None
        if slug:
            new_post = postsdb.get_post_by_slug(slug)

        featured_posts = postsdb.get_featured_posts(1)
        posts = []
        post = {}
        hot_tags = tagsdb.get_hot_tags()

        is_today = False
        if day == "today":
            is_today = True
            day = datetime.datetime.today()
        else:
            day = datetime.datetime.strptime(day, "%Y-%m-%d")
        previous_day = day - datetime.timedelta(days=1)
        two_days_ago = previous_day - datetime.timedelta(days=1)

        day_str = str(datetime.date(day.year, day.month, day.day))
        previous_day_str = str(
            datetime.date(previous_day.year, previous_day.month,
                          previous_day.day))
        two_days_ago_str = str(
            datetime.date(two_days_ago.year, two_days_ago.month,
                          two_days_ago.day))

        show_day_permalink = True
        infinite_scroll = False
        if self.request.path == ('/'):
            show_day_permalink = False
            infinite_scroll = True

        is_blacklisted = False
        if self.current_user:
            is_blacklisted = self.is_blacklisted(self.current_user)

        posts = postsdb.get_hot_posts_by_day(day)
        #posts = postsdb.get_hot_posts_24hr()
        previous_day_posts = postsdb.get_hot_posts_by_day(previous_day)

        #midpoint = (len(posts) - 1) / 2
        # midpoint determines where post list breaks from size=md to size=sm
        midpoint = 7
        hot_posts_past_week = postsdb.get_hot_posts_past_week()

        self.vars.update({
            'is_today': is_today,
            'view': view,
            'msg': msg,
            'posts': posts,
            'previous_day_posts': previous_day_posts,
            'hot_posts_past_week': hot_posts_past_week,
            'featured_posts': featured_posts,
            'post': post,
            #'featured_posts': featured_posts,
            'is_blacklisted': is_blacklisted,
            'tags': hot_tags,
            'day': day,
            'day_str': day_str,
            'previous_day': previous_day,
            'previous_day_str': previous_day_str,
            'two_days_ago': two_days_ago,
            'two_days_ago_str': two_days_ago_str,
            'show_day_permalink': show_day_permalink,
            'infinite_scroll': infinite_scroll,
            'midpoint': midpoint,
            'new_post': new_post,
            'datetime': datetime
        })
        self.render('post/lists_posts.html', **self.vars)
Exemple #5
0
  def get(self, day="today", page=1, sort_by="hot"):
    view = "list"
    sort_by = self.get_argument('sort_by', sort_by)
    page = abs(int(self.get_argument('page', page)))
    per_page = abs(int(self.get_argument('per_page', '20')))
    msg = self.get_argument('msg', '')
    slug = self.get_argument('slug', '')
    new_post = None
    if slug:
      new_post = postsdb.get_post_by_slug(slug)
      
    featured_posts = postsdb.get_featured_posts(1)
    posts = []
    post = {}
    hot_tags = tagsdb.get_hot_tags()
    
    is_today = False
    if day == "today":
      is_today = True
      day = datetime.datetime.today()
    else:
      day = datetime.datetime.strptime(day, "%Y-%m-%d")
    previous_day = day - datetime.timedelta(days=1)
    two_days_ago = previous_day - datetime.timedelta(days=1)
    
    day_str = str(datetime.date(day.year, day.month, day.day))
    previous_day_str = str(datetime.date(previous_day.year, previous_day.month, previous_day.day))
    two_days_ago_str = str(datetime.date(two_days_ago.year, two_days_ago.month, two_days_ago.day))
    
    show_day_permalink = True
    infinite_scroll = False
    if self.request.path == ('/'):
      show_day_permalink = False
      infinite_scroll = True
    
    is_blacklisted = False
    if self.current_user:
      is_blacklisted = self.is_blacklisted(self.current_user)

    posts = postsdb.get_hot_posts_by_day(day)
    #posts = postsdb.get_hot_posts_24hr()
    previous_day_posts = postsdb.get_hot_posts_by_day(previous_day)
    
    
    #midpoint = (len(posts) - 1) / 2
    # midpoint determines where post list breaks from size=md to size=sm
    midpoint = 7
    hot_posts_past_week = postsdb.get_hot_posts_past_week()

    self.vars.update({
      'is_today': is_today,
      'view': view,
      'msg': msg,
      'posts': posts,
      'previous_day_posts': previous_day_posts,
      'hot_posts_past_week': hot_posts_past_week,
      'featured_posts': featured_posts,
      'post': post,
      #'featured_posts': featured_posts,
      'is_blacklisted': is_blacklisted,
      'tags': hot_tags,
      'day': day,
      'day_str': day_str,      
      'previous_day': previous_day,
      'previous_day_str': previous_day_str,
      'two_days_ago': two_days_ago,
      'two_days_ago_str': two_days_ago_str,
      'show_day_permalink': show_day_permalink,
      'infinite_scroll': infinite_scroll,
      'midpoint': midpoint,
      'new_post': new_post,
      'datetime': datetime
    })
    self.render('post/lists_posts.html', **self.vars)