Пример #1
0
    def update(self, uid, post_data, update_time=False):

        cnt_html = tools.markdown2html(post_data['cnt_md'][0])

        try:
            if update_time:
                entry2 = CabPost.update(
                    time_update=time.time()
                ).where(CabPost.uid == uid)
                entry2.execute()
        except:
            pass

        try:
            entry = CabPost.update(
                title=post_data['title'][0],
                cnt_html=cnt_html,
                user_name=post_data['user_name'],
                cnt_md=tornado.escape.xhtml_escape(post_data['cnt_md'][0]),
                logo=post_data['logo'][0],
                keywords=post_data['keywords'][0],
            ).where(CabPost.uid == uid)
            entry.execute()
        except:
            return  False
Пример #2
0
 def get_by_wiki(self, citiao):
     tt = CabPost.select().where(CabPost.title == citiao).count()
     if tt == 0:
         return None
     else:
         self.update_view_count(citiao)
         return CabPost.get(CabPost.title == citiao)
Пример #3
0
 def query_cat_random(self, cat_id, num=6):
     if cat_id == '':
         return self.query_random(num)
     if config.dbtype == 1 or config.dbtype == 3:
         return CabPost.select().join(CabPost2Catalog).where(CabPost2Catalog.catalog == cat_id).order_by(
             peewee.fn.Random()).limit(num)
     elif config.dbtype == 2:
         return CabPost.select().join(CabPost2Catalog).where(CabPost2Catalog.catalog == cat_id).order_by(
             peewee.fn.Rand()).limit(num)
Пример #4
0
    def insert_data(self, id_post, post_data):

        uu = self.get_by_id(id_post)
        if uu is None:
            pass
        else:
            return (False)
        if 'id_spec' in post_data:
            id_spec = post_data['id_spec'][0]
        else:
            id_spec = 0
        if 'src_type' in post_data and post_data['src_type'][0] == '1':
            cnt_html = tools.rst2html(post_data['cnt_md'][0])
        else:
            cnt_html = tools.markdown2html(post_data['cnt_md'][0])

        entry = CabPost.create(
            title=post_data['title'][0],
            date=datetime.datetime.now(),
            cnt_html=cnt_html,
            uid=id_post,
            time_create=time.time(),
            user_name=post_data['user_name'],
            cnt_md=tornado.escape.xhtml_escape(post_data['cnt_md'][0]),
            time_update=time.time(),
            view_count=1,
            id_spec=id_spec,
            logo=post_data['logo'][0],
            keywords=post_data['keywords'][0],
            src_type=post_data['src_type'][0] if ('src_type' in post_data) else 0
        )
        return (entry.uid)
Пример #5
0
 def update_view_count_by_uid(self, uid):
     entry = CabPost.update(view_count=CabPost.view_count + 1).where(CabPost.uid == uid)
     try:
         entry.execute()
         return True
     except:
         return False
Пример #6
0
 def get_previous_record(self, in_uid):
     current_rec = self.get_by_id(in_uid)
     query = CabPost.select().where(CabPost.time_update > current_rec.time_update).order_by(CabPost.time_update)
     if query.count() == 0:
         return None
     else:
         return query.get()
Пример #7
0
    def update(self, uid, post_data, update_time=False):

        if 'id_spec' in post_data:
            id_spec = post_data['id_spec'][0]
        else:
            id_spec = 0

        if 'src_type' in post_data and post_data['src_type'][0] == '1':
            cnt_html = tools.rst2html(post_data['cnt_md'][0])
        else:
            cnt_html = tools.markdown2html(post_data['cnt_md'][0])

        if update_time:
            entry = CabPost.update(
                title=post_data['title'][0],
                date=datetime.datetime.now(),
                cnt_html=cnt_html,
                user_name=post_data['user_name'],
                cnt_md=tornado.escape.xhtml_escape(post_data['cnt_md'][0]),
                time_update=time.time(),
                id_spec=id_spec,
                logo=post_data['logo'][0],
                keywords=post_data['keywords'][0],
                src_type=post_data['src_type'][0] if ('src_type' in post_data) else 0
            ).where(CabPost.uid == uid)
        else:
            entry = CabPost.update(
                title=post_data['title'][0],
                cnt_html=cnt_html,
                user_name=post_data['user_name'],
                cnt_md=tornado.escape.xhtml_escape(post_data['cnt_md'][0]),
                id_spec=id_spec,
                logo=post_data['logo'][0],
                keywords=post_data['keywords'][0],
                src_type=post_data['src_type'][0] if ('src_type' in post_data) else 0
            ).where(CabPost.uid == uid)
        entry.execute()
Пример #8
0
    def insert_data(self, id_post, post_data):

        uu = self.get_by_id(id_post)
        if uu is None:
            pass
        else:
            return (False)

        cnt_html = tools.markdown2html(post_data['cnt_md'][0])

        entry = CabPost.create(
            title=post_data['title'][0],
            date=datetime.datetime.now(),
            cnt_html=cnt_html,
            uid=id_post,
            time_create=time.time(),
            user_name=post_data['user_name'],
            cnt_md=tornado.escape.xhtml_escape(post_data['cnt_md'][0]),
            time_update=time.time(),
            view_count=1,
            logo=post_data['logo'][0],
            keywords=post_data['keywords'][0],
        )
        return (entry.uid)
Пример #9
0
 def update_view_count_by_uid(self, uid):
     entry = CabPost.update(view_count=CabPost.view_count + 1).where(CabPost.uid == uid)
     entry.execute()
Пример #10
0
 def query_cat_by_pager(self, cat_str, cureent):
     tt = CabPost.select().where(CabPost.id_cats.contains(str(cat_str))).order_by(
         CabPost.time_update.desc()).paginate(cureent, config.page_num)
     return tt
Пример #11
0
 def query_cat_recent(self, cat_id, num=8):
     return CabPost.select().join(CabPost2Catalog).where(CabPost2Catalog.catalog == cat_id).order_by(
         CabPost.time_update.desc()).limit(num)
Пример #12
0
 def query_dated(self, num=8):
     return CabPost.select().order_by(CabPost.time_update.asc()).limit(num)
Пример #13
0
 def query_keywords_empty(self):
     return CabPost.select().where(CabPost.keywords == '')
Пример #14
0
 def query_by_spec(self, spec_id):
     return CabPost.select().where(CabPost.id_spec == spec_id).order_by(
         CabPost.time_update.desc())
Пример #15
0
 def query_dated(self, num=8):
     return CabPost.select().order_by(CabPost.time_update.asc()).limit(num)
Пример #16
0
 def delete_last_post(self):
     # Todo: delete
     query = CabPost.select().order_by(
         CabPost.time_update.desc()).limit(1).get()
     self.delete(query.uid)
Пример #17
0
 def __init__(self):
     self.tab = CabPost
     try:
         CabPost.create_table()
     except:
         pass
Пример #18
0
 def update_keywords(self, uid, inkeywords):
     entry = CabPost.update(keywords=inkeywords).where(CabPost.uid == uid)
     entry.execute()
Пример #19
0
 def update_view_count(self, citiao):
     entry = CabPost.update(view_count=CabPost.view_count +
                            1).where(CabPost.title == citiao)
     entry.execute()
Пример #20
0
 def query_cat_by_pager(self, cat_str, cureent):
     tt = CabPost.select().where(CabPost.id_cats.contains(
         str(cat_str))).order_by(CabPost.time_update.desc()).paginate(
             cureent, config.page_num)
     return tt
Пример #21
0
 def query_most(self, num=8):
     return CabPost.select().order_by(CabPost.view_count.desc()).limit(num)
Пример #22
0
 def delete_last_post(self):
     #Todo: delete
     query = CabPost.select().order_by(  CabPost.time_update.desc()).limit(1).get()
     self.delete(query.uid)
Пример #23
0
 def get_num_by_cat(self, cat_str):
     return CabPost.select().where(
         CabPost.id_cats.contains(',{0},'.format(cat_str))).count()
Пример #24
0
 def query_cat_recent(self, cat_id, num=8):
     return CabPost.select().join(CabPost2Catalog).where(
         CabPost2Catalog.catalog == cat_id).order_by(
             CabPost.time_update.desc()).limit(num)
Пример #25
0
 def query_keywords_empty(self):
     return CabPost.select().where(CabPost.keywords == '')
Пример #26
0
 def get_num_by_cat(self, cat_str):
     return CabPost.select().where(CabPost.id_cats.contains(',{0},'.format(cat_str))).count()
Пример #27
0
 def get_by_id(self, in_uid):
     recs = CabPost.select().where(CabPost.uid == in_uid)
     if recs.count() == 0:
         return None
     else:
         return recs.get()
Пример #28
0
 def query_by_spec(self, spec_id):
     return CabPost.select().where(CabPost.id_spec == spec_id).order_by(CabPost.time_update.desc())
Пример #29
0
 def query_all(self):
     return CabPost.select()
Пример #30
0
 def query_most_pic(self, num):
      return CabPost.select().where( CabPost.logo != "").order_by(CabPost.view_count.desc()).limit(num)
Пример #31
0
 def query_recent(self, num=8):
     return CabPost.select().order_by(CabPost.time_update.desc()).limit(num)
Пример #32
0
 def query_most(self, num=8):
     return CabPost.select().order_by(CabPost.view_count.desc()).limit(num)
Пример #33
0
 def query_recent_most(self, num=8, recent=30):
     time_that = int(time.time()) - recent * 24 * 3600
     return CabPost.select().where(CabPost.time_update > time_that).order_by(CabPost.view_count.desc()).limit(num)
Пример #34
0
 def update_view_count(self, citiao):
     entry = CabPost.update(view_count=CabPost.view_count + 1).where(CabPost.title == citiao)
     entry.execute()
Пример #35
0
 def get_by_keyword(self, par2):
     return CabPost.select().where(CabPost.title.contains(par2)).order_by(CabPost.time_update.desc()).limit(20)
Пример #36
0
 def update_keywords(self, uid, inkeywords):
     entry = CabPost.update(keywords=inkeywords).where(CabPost.uid == uid)
     entry.execute()
Пример #37
0
 def update_view_count_by_uid(self, uid):
     entry = CabPost.update(view_count=CabPost.view_count +
                            1).where(CabPost.uid == uid)
     entry.execute()
Пример #38
0
 def query_old(self):
     return CabPost.select().order_by('time_update').limit(10)
Пример #39
0
 def query_random(self, num=6):
     if config.dbtype == 1 or config.dbtype == 3:
         return CabPost.select().order_by(peewee.fn.Random()).limit(num)
     elif config.dbtype == 2:
         return CabPost.select().order_by(peewee.fn.Rand()).limit(num)
Пример #40
0
 def __init__(self):
     self.tab = CabPost
     try:
         CabPost.create_table()
     except:
         pass
Пример #41
0
 def query_pager_by_slug(self, slug, current_page_num=1):
     return CabPost.select().join(CabPost2Catalog).join(CabCatalog).where(CabCatalog.slug == slug).order_by(
         CabPost.time_update.desc()).paginate(current_page_num, config.page_num)
Пример #42
0
 def get_by_uid(self, sig):
     try:
         return CabPost.get(uid=sig)
     except:
         return False
Пример #43
0
 def query_most_pic(self, num):
     return CabPost.select().where(CabPost.logo != "").order_by(
         CabPost.view_count.desc()).limit(num)