「モジュール:Maintenance/isShow」の版間の差分

提供:AcPubWiki
編集の要約なし
編集の要約なし
1行目: 1行目:
return function ()
-- メンテナンス予定jsonファイル読み込み
-- メンテナンス予定jsonファイル読み込み
maintenancedata = mw.loadJsonData("利用者:龍太郎/sandbox/テンプレート:メンテナンス/data.json")
maintenancedata = mw.loadJsonData("利用者:龍太郎/sandbox/テンプレート:メンテナンス/data.json")
 
-- 開始時間について定義
-- 開始時間について定義
if maintenancedata.maintenance[1].start == "near" then
if maintenancedata.maintenance[1].start == "near" then
start = "0"
start = "0"
else
start = os.date("!%Y-%m-%d %T",maintenancedata.maintenance[1].start)
end
 
-- 終了時間について定義
if maintenancedata.maintenance[1].time == "few" then
endtime = "0"
elseif maintenancedata.maintenance[1].time == "intermittent" then
endtime = "0"
elseif maintenancedata.maintenance[1].time == "observation" then
endtime = "0"
else
endtime = maintenancedata.maintenance[1].time
end
 
 
--メンテナンスが終わってるか判定
if endtime ~= 0 then
if ( os.difftime(os.time(), endtime) ) > 0 then
rtn = "true"
else
else
start = os.date("!%Y-%m-%d %T",maintenancedata.maintenance[1].start)
rtn = "false"
end
end
elseif start ~= 0 then
-- 終了時間について定義
if ( os.difftime(os.time()+86400, starttime) ) > 0 then  
if maintenancedata.maintenance[1].time == "few" then
rtn = "true"
endtime = "0"
elseif maintenancedata.maintenance[1].time == "intermittent" then
endtime = "0"
elseif maintenancedata.maintenance[1].time == "observation" then
endtime = "0"
else
endtime = maintenancedata.maintenance[1].time
end
--メンテナンスが終わってるか判定
if endtime ~= 0 then
if ( os.difftime(os.time(), endtime) ) > 0 then
return true
else
return false
end
elseif start ~= 0 then
if ( os.difftime(os.time()+86400, starttime) ) > 0 then  
return true
end
else
return false
end
end
else
rtn = "false"
end
end
return tostring(rtn)

2023年4月22日 (土) 13:15時点における版

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

-- メンテナンス予定jsonファイル読み込み
maintenancedata = mw.loadJsonData("利用者:龍太郎/sandbox/テンプレート:メンテナンス/data.json")

-- 開始時間について定義
if maintenancedata.maintenance[1].start == "near" then
	start = "0"
else
	start = os.date("!%Y-%m-%d %T",maintenancedata.maintenance[1].start)
end

-- 終了時間について定義
if maintenancedata.maintenance[1].time == "few" then
	endtime = "0"
elseif maintenancedata.maintenance[1].time == "intermittent" then
	endtime = "0"
elseif maintenancedata.maintenance[1].time == "observation" then
	endtime = "0"
else
	endtime = maintenancedata.maintenance[1].time
end


--メンテナンスが終わってるか判定
if endtime ~= 0 then
	if ( os.difftime(os.time(), endtime) ) > 0 then 
		rtn = "true"
	else
		rtn = "false"
	end
elseif start ~= 0 then
	if ( os.difftime(os.time()+86400, starttime) ) > 0 then 
		rtn = "true"
	end
else
	rtn = "false"
end

return tostring(rtn)