モジュール:DynamicReleaseQuery

提供:エンタメデータベースWiki
移動先:案内検索

このモジュールについての説明文ページを モジュール:DynamicReleaseQuery/doc に作成できます

local p = {}

-- 現在の年月を取得する関数
local function getCurrentDate()
    local currentTime = os.time()
    local date = os.date('*t', currentTime)
    return {
        year = date.year,
        month = string.format("%02d", date.month)  -- 月を2桁の文字列にフォーマット
    }
end

-- メインの関数
function p.generateQuery(frame)
    local date = getCurrentDate()
    
    -- askクエリの作成
    local wikitext = '{{#ask: [[リリース年::' .. date.year .. '年]][[リリース月::' .. date.month .. '月]]\n'
    wikitext = wikitext .. ' |?画像=-2\n'
    wikitext = wikitext .. ' |?=3\n'
    wikitext = wikitext .. ' |?ラベル#=-4\n'
    wikitext = wikitext .. ' |?大カテゴリ#=-5\n'
    wikitext = wikitext .. ' |?リリース=6\n'
    wikitext = wikitext .. ' |format=template\n'
    wikitext = wikitext .. ' |template=テンプレート:月別コンテンツ一覧\n'
    wikitext = wikitext .. ' |sort=リリース\n'
    wikitext = wikitext .. ' |order=asc\n'
    wikitext = wikitext .. ' |limit=500\n'
    wikitext = wikitext .. '}}'
    
    -- Wikitextをプリプロセス
    return frame:preprocess(wikitext)
end

-- パラメータ付きの関数
function p.generateQueryWithParams(frame)
    local args = frame.args
    local year = args[1] or getCurrentDate().year
    local month = args[2] or getCurrentDate().month
    
    -- askクエリの作成
    local wikitext = '{{#ask: [[リリース年::' .. year .. '年]][[リリース月::' .. month .. '月]]\n'
    wikitext = wikitext .. ' |?画像=-2\n'
    wikitext = wikitext .. ' |?=3\n'
    wikitext = wikitext .. ' |?ラベル#=-4\n'
    wikitext = wikitext .. ' |?大カテゴリ#=-5\n'
    wikitext = wikitext .. ' |?リリース=6\n'
    wikitext = wikitext .. ' |format=template\n'
    wikitext = wikitext .. ' |template=テンプレート:月別コンテンツ一覧\n'
    wikitext = wikitext .. ' |sort=リリース\n'
    wikitext = wikitext .. ' |order=asc\n'
    wikitext = wikitext .. ' |limit=500\n'
    wikitext = wikitext .. '}}'
    
    -- Wikitextをプリプロセス
    return frame:preprocess(wikitext)
end

return p