Example #1
0
 def get_post_page_comments_by_id(self, post_id=0, min_comment_id=0, limit=EACH_PAGE_COMMENT_NUM):
     if min_comment_id == 0:
         sdb._ensure_connected()
         return comment_format(sdb.query(
             'SELECT * FROM `cms_comments` WHERE `postid`= %s ORDER BY `comment_id` DESC LIMIT %s' % (
                 str(post_id), str(limit))))
     else:
         sql = "SELECT * FROM `cms_comments` WHERE `postid`= %s AND `comment_id` < %s " \
               "ORDER BY `comment_id` DESC LIMIT %s"
         sdb._ensure_connected()
         return comment_format(sdb.query(
             sql % (
                 str(post_id), str(min_comment_id), str(limit))))
Example #2
0
 def get_paged(self, page=1, limit=None):
     if limit is None:
         limit = getAttr('ADMIN_LINK_NUM')
     limit = int(limit)
     sdb._ensure_connected()
     sql = "SELECT * FROM `cms_links` ORDER BY `display_order` DESC LIMIT %s,%s" % ((int(page) - 1) * limit, limit)
     return sdb.query(sql)
Example #3
0
 def get_paged(self, page=1, limit=None):
     if limit is None:
         limit = getAttr('ADMIN_USER_NUM')
     limit = int(limit)
     sdb._ensure_connected()
     sql = "SELECT * FROM `cms_user` ORDER BY `user_id` DESC LIMIT %s,%s" % ((int(page) - 1) * limit, limit)
     return user_format(sdb.query(sql))
Example #4
0
 def get_paged(self, page=1, limit=None):
     if limit is None:
         limit = getAttr('ADMIN_COMMENT_NUM')
     limit = int(limit)
     sdb._ensure_connected()
     sql = "SELECT * FROM `cms_comments` ORDER BY `id` DESC LIMIT %s,%s" % ((int(page) - 1) * limit, limit)
     return comment_format_admin(sdb.query(sql))
Example #5
0
 def get_posts_by_category_id(self, category_id='', page=1, limit=None):
     if limit is None:
         limit = getAttr('EACH_PAGE_POST_NUM')
     limit = int(limit)
     sql = "SELECT * FROM `cms_posts` WHERE `category_id` = %s ORDER BY `post_id` DESC LIMIT %s,%s" % (
         category_id, (int(page) - 1) * limit, limit)
     sdb._ensure_connected()
     return post_list_format(sdb.query(sql))
Example #6
0
 def get_post_page_comments_by_id(self,
                                  post_id=0,
                                  min_comment_id=0,
                                  limit=EACH_PAGE_COMMENT_NUM):
     if min_comment_id == 0:
         sdb._ensure_connected()
         return comment_format(
             sdb.query(
                 'SELECT * FROM `cms_comments` WHERE `postid`= %s ORDER BY `comment_id` DESC LIMIT %s'
                 % (str(post_id), str(limit))))
     else:
         sql = "SELECT * FROM `cms_comments` WHERE `postid`= %s AND `comment_id` < %s " \
               "ORDER BY `comment_id` DESC LIMIT %s"
         sdb._ensure_connected()
         return comment_format(
             sdb.query(sql %
                       (str(post_id), str(min_comment_id), str(limit))))
Example #7
0
 def get_recent_comments(self, limit=None):
     if limit is None:
         limit = getAttr('RECENT_COMMENT_NUM')
     sdb._ensure_connected()
     return comment_format(
         sdb.query(
             'SELECT * FROM `cms_comments` ORDER BY `comment_id` DESC LIMIT %s'
             % limit))
Example #8
0
 def count_all(self, category_id=None, title=None):
     sdb._ensure_connected()
     sql = "SELECT COUNT(*) AS num FROM `cms_posts` WHERE 1=1"
     if category_id:
         sql += " and category_id = \'%s\'" % category_id
     if title:
         sql += " and title like \'%s\'" % title
     return sdb.query(sql)[0]['num']
Example #9
0
 def get_posts_by_category_id(self, category_id='', page=1, limit=None):
     if limit is None:
         limit = getAttr('EACH_PAGE_POST_NUM')
     limit = int(limit)
     sql = "SELECT * FROM `cms_posts` WHERE `category_id` = %s ORDER BY `post_id` DESC LIMIT %s,%s" % (
         category_id, (int(page) - 1) * limit, limit)
     sdb._ensure_connected()
     return post_list_format(sdb.query(sql))
Example #10
0
 def get_paged(self, page=1, limit=None):
     if limit is None:
         limit = getAttr('ADMIN_COMMENT_NUM')
     limit = int(limit)
     sdb._ensure_connected()
     sql = "SELECT * FROM `cms_comments` ORDER BY `id` DESC LIMIT %s,%s" % (
         (int(page) - 1) * limit, limit)
     return comment_format_admin(sdb.query(sql))
Example #11
0
 def get_paged(self, page=1, limit=None):
     if limit is None:
         limit = getAttr('ADMIN_LINK_NUM')
     limit = int(limit)
     sdb._ensure_connected()
     sql = "SELECT * FROM `cms_links` ORDER BY `display_order` DESC LIMIT %s,%s" % (
         (int(page) - 1) * limit, limit)
     return sdb.query(sql)
Example #12
0
 def get_paged(self, page=1, limit=None):
     if limit is None:
         limit = getAttr('ADMIN_USER_NUM')
     limit = int(limit)
     sdb._ensure_connected()
     sql = "SELECT * FROM `cms_user` ORDER BY `user_id` DESC LIMIT %s,%s" % (
         (int(page) - 1) * limit, limit)
     return user_format(sdb.query(sql))
Example #13
0
 def get_paged(self, page=1, limit=None):
     if limit is None:
         limit = getAttr('ADMIN_CATEGORY_NUM')
     limit = int(limit)
     sql = "SELECT * FROM `cms_category` ORDER BY `father_category_id` ASC, `display_order` DESC LIMIT %s,%s" % (
         (int(page) - 1) * limit, limit)
     sdb._ensure_connected()
     return sdb.query(sql)
Example #14
0
 def get_paged(self, page=1, limit=None):
     if limit is None:
         limit = getAttr('ADMIN_CATEGORY_NUM')
     limit = int(limit)
     sql = "SELECT * FROM `cms_category` ORDER BY `father_category_id` ASC, `display_order` DESC LIMIT %s,%s" % (
         (int(page) - 1) * limit, limit)
     sdb._ensure_connected()
     return sdb.query(sql)
Example #15
0
 def get_all_kv(self, father_category_id=None):
     if father_category_id:
         sql = "SELECT `category_id`,`category_name` FROM `cms_category` WHERE `father_category_id` = 0 " \
               "ORDER BY `father_category_id` ASC, `display_order` DESC"
     else:
         sql = "SELECT `category_id`,`category_name` FROM `cms_category` WHERE `show_type` <> \'url\' " \
               "ORDER BY `father_category_id` ASC, `display_order` DESC"
     sdb._ensure_connected()
     return sdb.query(sql)
Example #16
0
 def get_all_kv(self, father_category_id=None):
     if father_category_id:
         sql = "SELECT `category_id`,`category_name` FROM `cms_category` WHERE `father_category_id` = 0 " \
               "ORDER BY `father_category_id` ASC, `display_order` DESC"
     else:
         sql = "SELECT `category_id`,`category_name` FROM `cms_category` WHERE `show_type` <> \'url\' " \
               "ORDER BY `father_category_id` ASC, `display_order` DESC"
     sdb._ensure_connected()
     return sdb.query(sql)
Example #17
0
 def get_page_posts_by_tag_name(self,
                                tag_name='',
                                page=1,
                                limit=EACH_PAGE_POST_NUM):
     page = int(page)
     sdb._ensure_connected()
     return post_list_format(
         sdb.query(
             "SELECT * FROM `cms_posts` WHERE `tags` like \'%s\' ORDER BY `views` DESC LIMIT %s,%s"
             % (tag_name, (int(page) - 1) * limit, limit)))
Example #18
0
 def get_paged(self, page=1, limit=None, category_id=None, title=None):
     if limit is None:
         limit = getAttr('EACH_PAGE_POST_NUM')
     limit = int(limit)
     sql = "SELECT p.*,c.category_name FROM `cms_posts` as p inner join `cms_category` as c on p.category_id=c.category_id where 1=1"
     if category_id:
         sql += " and category_id = \'%s\'" % category_id
     if title:
         sql += " and title like \'%s\'" % title
     sql += " ORDER BY `post_id` DESC LIMIT %s,%s" % ((int(page) - 1) * limit, limit)
     sdb._ensure_connected()
     return sdb.query(sql)
Example #19
0
 def get_page_posts_by_archive_name(self,
                                    archive_name='',
                                    page=1,
                                    limit=''):
     if limit is None:
         limit = getAttr('EACH_PAGE_POST_NUM')
     sql = "SELECT p.* FROM `cms_posts` p " \
           "inner join `cms_archive_post` ap on p.`post_id` = ap.post_id " \
           "inner join `cms_archive` a on ap.`archive_id` = a.archive_id and a.archive_name = \'%s\''" \
           "ORDER BY `id` DESC LIMIT %s,%s"
     sdb._ensure_connected()
     return post_list_format(
         sdb.query(sql, archive_name, (int(page) - 1) * limit, limit))
Example #20
0
 def get_all(self):
     sdb._ensure_connected()
     return post_list_format(sdb.query("SELECT * FROM `cms_posts` ORDER BY `post_id` DESC"))
Example #21
0
 def get_hot_tag(self, limit=HOT_TAGS_NUM):
     #for sider
     sdb._ensure_connected()
     return sdb.query(
         'SELECT * FROM `cms_tags` ORDER BY `tag_hot` DESC LIMIT %d' %
         limit)
Example #22
0
 def get_all(self):
     sdb._ensure_connected()
     return sdb.query('SELECT * FROM `cms_user`')
Example #23
0
 def count_all(self):
     sdb._ensure_connected()
     return sdb.query('SELECT COUNT(*) AS num FROM `cms_user`')[0]['num']
Example #24
0
def post_detail_formate(obj):
    if obj:
        slug = slugfy(obj.title)
        obj.slug = slug
        obj.absolute_url = '%s/topic/%d/%s' % (BASE_URL, obj.id, slug)
        obj.shorten_url = '%s/t/%s' % (BASE_URL, obj.id)
        if '[/code]' in obj.content:
            obj.highlight = True
        else:
            obj.highlight = False
        obj.content = tran_content(obj.content, obj.highlight)
        obj.taglist = ', '.join(
            ["""<a href="%s/tag/%s/" rel="tag">%s</a>""" % (BASE_URL, tag, tag) for tag in obj.tags.split(',')])
        obj.add_time_fn = time_from_now(int(obj.add_time))
        obj.last_modified = timestamp_to_datetime(obj.edit_time)
        obj.keywords = obj.tags
        obj.description = HTML_REG.sub('', obj.content[:DESCRIPTION_CUT_WORDS])
        #get prev and next obj
        obj.prev_obj = sdb.get('SELECT `id`,`title` FROM `cms_posts` WHERE `id` > %s LIMIT 1' % str(obj.id))
        if obj.prev_obj:
            obj.prev_obj.slug = slugfy(obj.prev_obj.title)
        obj.next_obj = sdb.get(
            'SELECT `id`,`title` FROM `cms_posts` WHERE `id` < %s ORDER BY `id` DESC LIMIT 1' % str(obj.id))
        if obj.next_obj:
            obj.next_obj.slug = slugfy(obj.next_obj.title)
        #get relative obj base tags
        obj.relative = []
        if obj.tags:
            idlist = []
            getit = False
            for tag in obj.tags.split(','):
                from model.tags import Tags

                tagobj = Tags.get_tag_by_name(tag)
                if tagobj and tagobj.content:
                    pids = tagobj.content.split(',')
                    for pid in pids:
                        if pid != str(obj.id) and pid not in idlist:
                            idlist.append(pid)
                            if len(idlist) >= RELATIVE_POST_NUM:
                                getit = True
                                break
                if getit:
                    break
                #
            if idlist:
                obj.relative = sdb.query('SELECT `id`,`title` FROM `cms_posts` WHERE `id` in(%s) LIMIT %s' % (
                ','.join(idlist), str(len(idlist))))
                if obj.relative:
                    for robj in obj.relative:
                        robj.slug = slugfy(robj.title)
                    #get comment
        obj.coms = []
        if obj.comment_num > 0:
            if obj.comment_num >= EACH_PAGE_COMMENT_NUM:
                first_limit = EACH_PAGE_COMMENT_NUM
            else:
                first_limit = obj.comment_num
            from model.comments import Comments

            obj.coms = Comments.get_post_page_comments_by_id(obj.id, 0, first_limit)
    return obj
Example #25
0
 def get_last_post(self, limit=None):
     if limit is None:
         limit = getAttr('EACH_PAGE_POST_NUM')
     sdb._ensure_connected()
     return post_list_format(
         sdb.query("SELECT * FROM `cms_posts` ORDER BY `post_id` DESC LIMIT %s" % limit))
Example #26
0
 def get_recent_comments(self, limit=None):
     if limit is None:
         limit = getAttr('RECENT_COMMENT_NUM')
     sdb._ensure_connected()
     return comment_format(sdb.query('SELECT * FROM `cms_comments` ORDER BY `comment_id` DESC LIMIT %s' % limit))
Example #27
0
 def get_all(self, limit=HOT_TAGS_NUM):
     sdb._ensure_connected()
     return sdb.query(
         'SELECT * FROM `cms_tags` ORDER BY `tag_id` DESC LIMIT %d' % limit)
Example #28
0
 def get_all(self):
     sdb._ensure_connected()
     return sdb.query('SELECT * FROM `cms_category` ORDER BY `father_category_id` ASC, `display_order` DESC')
Example #29
0
 def get_post_num_by_category_id(self, category_id=''):
     sql = "SELECT count(*) FROM `cms_posts` WHERE `category_id` = %s" % category_id
     sdb._ensure_connected()
     return sdb.query(sql)
Example #30
0
 def get_all_tag_name(self, limit=HOT_TAGS_NUM):
     #for add/edit post
     sdb._ensure_connected()
     return sdb.query(
         'SELECT `tag_name` FROM `cms_tags` ORDER BY `tag_id` DESC LIMIT %d'
         % limit)
Example #31
0
 def get_all_category_name(self):
     sdb._ensure_connected()
     return sdb.query(
         'SELECT `category_id`, `category_name` FROM `cms_category`')
Example #32
0
 def get_post_by_author(self, user_id):
     sql = "SELECT * FROM `cms_posts` where `user_id` = '%s'" % user_id
     sdb._ensure_connected()
     return sdb.query(sql)
Example #33
0
 def get_posts_num_by_tag_name(self, tag_name=''):
     sdb._ensure_connected()
     return sdb.query(
         "SELECT count(*) FROM `cms_posts` WHERE `tags` like \'%s\'" %
         tag_name)
Example #34
0
 def get_post_for_sitemap(self, ids=[]):
     sdb._ensure_connected()
     return sdb.query("SELECT `post_id`,`last_modified_date` FROM `cms_posts` "
                      "WHERE `post_id` in(%s) ORDER BY `post_id` DESC LIMIT %s" % (','.join(ids), str(len(ids))))
Example #35
0
 def get_role(self, user_id):
     sql = "SELECT role_name FROM `cms_role` left join `cms_user_role` " \
           "on `cms_role`.role_id = `cms_user_role`.role_id and user_id = %s"
     sdb._ensure_connected()
     return sdb.query(sql, user_id)
Example #36
0
 def get_all(self):
     sdb._ensure_connected()
     return sdb.query(
         'SELECT * FROM `cms_archive` ORDER BY `archive_name` DESC')
Example #37
0
 def get_all(self):
     sdb._ensure_connected()
     return sdb.query(
         'SELECT * FROM `cms_category` ORDER BY `father_category_id` ASC, `display_order` DESC'
     )
Example #38
0
 def get_post_num_by_category_id(self, category_id=''):
     sql = "SELECT count(*) FROM `cms_posts` WHERE `category_id` = %s" % category_id
     sdb._ensure_connected()
     return sdb.query(sql)
Example #39
0
 def get_all(self, limit=LINK_NUM):
     sdb._ensure_connected()
     return sdb.query('SELECT * FROM `cms_links` ORDER BY `display_order` DESC LIMIT %s' % str(limit))
Example #40
0
 def count_all(self):
     sdb._ensure_connected()
     return sdb.query('SELECT COUNT(*) AS num FROM `cms_links`')[0]['num']
Example #41
0
 def get_all(self, limit=LINK_NUM):
     sdb._ensure_connected()
     return sdb.query('SELECT * FROM `cms_show_types` LIMIT %s' % str(limit))
Example #42
0
 def get_all_category_name(self):
     sdb._ensure_connected()
     return sdb.query('SELECT `category_id`, `category_name` FROM `cms_category`')
Example #43
0
 def get_hot_tag(self, limit=HOT_TAGS_NUM):
     #for sider
     sdb._ensure_connected()
     return sdb.query('SELECT * FROM `cms_tags` ORDER BY `tag_hot` DESC LIMIT %d' % limit)
Example #44
0
 def get_page_posts_by_tag_name(self, tag_name='', page=1, limit=EACH_PAGE_POST_NUM):
     page = int(page)
     sdb._ensure_connected()
     return post_list_format(sdb.query(
         "SELECT * FROM `cms_posts` WHERE `tags` like \'%s\' ORDER BY `views` DESC LIMIT %s,%s" % (
             tag_name, (int(page) - 1) * limit, limit)))
Example #45
0
 def get_all(self, limit=LINK_NUM):
     sdb._ensure_connected()
     return sdb.query(
         'SELECT * FROM `cms_links` ORDER BY `display_order` DESC LIMIT %s'
         % str(limit))
Example #46
0
 def get_all(self, limit=HOT_TAGS_NUM):
     sdb._ensure_connected()
     return sdb.query('SELECT * FROM `cms_tags` ORDER BY `tag_id` DESC LIMIT %d' % limit)
Example #47
0
 def get_role(self, user_id):
     sql = "SELECT role_name FROM `cms_role` left join `cms_user_role` " \
           "on `cms_role`.role_id = `cms_user_role`.role_id and user_id = %s"
     sdb._ensure_connected()
     return sdb.query(sql, user_id)
Example #48
0
 def get_posts_num_by_tag_name(self, tag_name=''):
     sdb._ensure_connected()
     return sdb.query("SELECT count(*) FROM `cms_posts` WHERE `tags` like \'%s\'" % tag_name)
Example #49
0
 def get_all(self):
     sdb._ensure_connected()
     return sdb.query('SELECT * FROM `cms_user`')
Example #50
0
 def get_all_tag_name(self, limit=HOT_TAGS_NUM):
     #for add/edit post
     sdb._ensure_connected()
     return sdb.query('SELECT `tag_name` FROM `cms_tags` ORDER BY `tag_id` DESC LIMIT %d' % limit)
Example #51
0
 def get_top_n(self, n=8):
     sdb._ensure_connected()
     return sdb.query('SELECT * FROM `cms_archive` limit %s' % n)