示例#1
0
def keyword(site, keyword_id, start_keyword_id):
    _limit = 25

    # パラメータチェック
    keyword_id = int(keyword_id)
    start_keyword_id = int(start_keyword_id)
    keyword = Keyword.get(keyword_id)
    if start_keyword_id == 100000000:
        keyword_relation = PageKeywordRelation.get_from_new_keyword(keyword_id, _limit=_limit)
    else:
        keyword_relation = PageKeywordRelation.get_from_keyword(keyword_id, start_keyword_id, _limit=_limit)

    # pageが公開可能かチェックする
    now = datetime.datetime.now(tz=pytz.utc)
    keyword_relation = [r for r in keyword_relation if r.page.is_enable(now=now)]

    is_end = False
    if len(keyword_relation) >= 2:
        pages = [r.page for r in keyword_relation]
        contents = pages[0]
        prev_contents = pages[1]
        is_next = keyword_relation[1].id
        relations = keyword_relation[2:]
    elif len(keyword_relation) == 1:
        pages = [r.page for r in keyword_relation]
        contents = pages[0]
        prev_contents = None
        is_next = None
        is_end = True
        relations = keyword_relation[2:]
    else:
        contents = None
        prev_contents = None
        is_next = None
        relations = None

    return render_template('dat/keyword.html',
                           site=site,
                           keyword=keyword,
                           contents=contents,
                           prev_contents=prev_contents,
                           relations=relations,
                           is_next=is_next,
                           is_end=is_end)