请输入您要查询的百科知识:

 

词条 Module:Ancient Egypt era
释义 -- This module implements {{Ancient Egypt era}}. It converts a year in the Gregorian-- calendar to the equivalent year of the ancient Egyptian era organized by dynasties and kings.

local data = mw.loadData( 'Module:Ancient Egypt era/data' )

local lang = mw.language.getContentLanguage()

local p = {}

function p._main( inputYear )

-- Convert the input to an integer if possible. Return "N/A" if the input could

-- not be converted, or if the converted input is too big or too small.

inputYear = tonumber( inputYear )

if not inputYear or inputYear > tonumber( lang:formatDate( 'Y' ) ) then

return "N/A"

end

-- Find the length of the data.

-- We need the length of the data so that we can loop through it backwards.

-- Normally we can get the length of tables with the # operator, but this

-- doesn't work with mw.loadData, as mw.loadData uses a metatable, and the

-- # operator doesn't work for tables that use metatables.

local dataLength = 0

for i, t in ipairs( data ) do

dataLength = i

end

-- Find the year in the data page and display the output.

for i = dataLength, 1, -1 do

local t = data[i]

if inputYear - 1 >= t.dynstart and inputYear - 1 <= t.dynend then

-- year of the dynasty, test with = p._main( -495 )

-- The input year in the calendar is one after the expected (-775 for the year 776 BC). This is why all values need to be corrected by 1.

return string.format(

'%s dynasty, %d',

t.dynlink, t.dynasty, inputYear - t.dynstart

)

end

end

end

function p.main( frame )

-- If you only want to run this module from another Lua module, you can get

-- rid of this function entirely. This function is only used if you want to

-- run this individual module from a template.

local args = require( 'Module:Arguments' ).getArgs( frame, {

parentOnly = true

} )

return p._main( args[ 1 ] )

end

return p

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/9/21 22:37:06