মডিউল:Date

উইকিসংকলন থেকে

এই মডিউলের জন্য মডিউল:Date/নথি-এ নথিপত্র তৈরি করা হয়ে থাকতে পারে

--[[  
 
This module is intended for processing of date strings
 
]]
 
local date = {}

--[[
ISOyear
 
This function returns year part of date string.
 
Usage:
{{#invoke:Date|ISOyear|s=target_string}}
 
Parameters
    s: The date string 
 
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.  
]]
function date.ISOyear( frame )
    local s = frame.args.s
    
    -- if empty string then return it
    if mw.ustring.len(s) == 0 then
        return s
    end
    
    -- if number then return it
    if tonumber( s ) then
        return mw.ustring.format('%04i', s)
    end
    
    -- otherwise use regular expression match
    s = mw.ustring.match( s, '(-?%d%d?%d?%d?)-' )
    if s then
       return mw.ustring.format('%04i', s)
    else
        return ''
    end
end


--[[
Get the name of an era, based on Wikisource's definition.
This implements the logic of Template:What_era_is
]]
function date.era( year )
	-- Unknown value.
	if year == nil or tonumber( year ) == nil or string.lower( year ) == 'unknown' or year == '?' then
		return 'Unknown era'
	end

	-- Handle numeric years.
	year = tonumber( year )
	if year == nil or year < 601 then
		return 'প্রাচীনযুগের'
	elseif year < 1765 then
		return 'মধ্যযুগের'
	elseif year < 1941 then
		return 'নবজাগরণযুগের'
	elseif year < ( tonumber( os.date( '%Y' ) ) + 1 ) then
		return 'আধুনিকযুগের'
	else
		return 'ভবিষ্যতের'
	end
end

return date