مسابقه دانش‌دخت
اسلامیکال از تاریخ ۱۵ دی تا ۲۰ بهمن، میزبان یک همایه با موضوع زنان است. شما می‌توانید در مسابقه مقاله‌نویسی دانش‌دخت، شرکت کنید و با نگارش مقاله، از جوایز آن بهره‌مند باشید. اگر به موضوعات مربوط با زنان علاقه‌مندید، این فرصت را از دست ندهید. فهرستی از مقالات پیشنهادی جهت ایجاد یا ویرایش در اینجا وجود دارد.

پودمان:Ayat-Navigator: تفاوت میان نسخه‌ها

از اسلامیکال
پرش به ناوبری پرش به جستجو
(sure_num+lengths)
(getData for lengths)
خط ۸: خط ۸:
--local cfg = mw.loadData('Module:Ayat-Navigator/configs')
--local cfg = mw.loadData('Module:Ayat-Navigator/configs')


local function getData(sure)
local function getData(sure, len)
if (len==true) then
return require('Module:Ayat-Navigator/Sure-Lengths')
end
local title = mw.title.new('Module:Ayat-Navigator/' .. sure)
local title = mw.title.new('Module:Ayat-Navigator/' .. sure)
if not (title and title.exists) then return nil end
if not (title and title.exists) then return nil end
خط ۲۱: خط ۲۵:
local sure_num = args["sure_num"]
local sure_num = args["sure_num"]


if getData(num_con("en", sure_num)) then
if getData(num_con("en", sure_num), false) then
local data = getData(num_con("en", sure_num))
local data = getData(num_con("en", sure_num), false)


if data.ayat_namdar then
if data.ayat_namdar then
خط ۴۳: خط ۴۷:
local sure = args["sure"]
local sure = args["sure"]
if getData(sure_num) then
if getData(sure_num, true) then
local data = getData(sure_num)
local data = getData(sure_num, true)
if tonumber(aye_num) then
if tonumber(aye_num) then
خط ۶۵: خط ۶۹:
local sure_num = args["sure_num"]
local sure_num = args["sure_num"]


if getData(num_con("en", sure_num)) then
if getData(num_con("en", sure_num), false) then
local data = getData(num_con("en", sure_num))
local data = getData(num_con("en", sure_num), false)
if data.mortabet then
if data.mortabet then

نسخهٔ ‏۵ ژوئن ۲۰۲۳، ساعت ۲۰:۳۱

توضیحات این پودمان می‌تواند در پودمان:Ayat-Navigator/توضیحات قرار گیرد.

require('strict')

local p = {}
local args = {}

local num_con = require('Module:Numeral converter').convert
local getArgs = require('Module:Arguments').getArgs
--local cfg = mw.loadData('Module:Ayat-Navigator/configs')

local function getData(sure, len)
	if (len==true) then
		return require('Module:Ayat-Navigator/Sure-Lengths')
	end
	
	local title = mw.title.new('Module:Ayat-Navigator/' .. sure)
		if not (title and title.exists) then return nil end
	return require('Module:Ayat-Navigator/' .. sure)
end

function p.named_gen(frame)
	local listitems = ""

	args = getArgs(frame)
	
	local sure_num = args["sure_num"]

	if getData(num_con("en", sure_num), false) then
		local data = getData(num_con("en", sure_num), false)

		if data.ayat_namdar then
			for k, v in pairs(data.ayat_namdar) do
				listitems = listitems .. '\n* ' .. v
			end
		end
	end
	
	return listitems
end

function p.ayat_gen(frame)
	local listitems = ""

	args = getArgs(frame)
	
	local aye_num = num_con("en", args["aye_num"])
	local sure_num = num_con("en", args["sure_num"])
	local sure = args["sure"]
	
	if getData(sure_num, true) then
		local data = getData(sure_num, true)
		
		if tonumber(aye_num) then
			for i = 1, tonumber(data.lengths[sure_num]) do
				listitems = listitems ..
					'\n* [[آیه ' .. num_con("fa", i) .. ' سوره ' .. sure .. '|'
					.. num_con("fa", i) .. ']]'
			end
		end
	end
	
	return listitems
end

function p.mortabet(frame)
	local listitems = ""

	args = getArgs(frame)
	
	local sure_num = args["sure_num"]

	if getData(num_con("en", sure_num), false) then
		local data = getData(num_con("en", sure_num), false)
		
		if data.mortabet then
			for k, v in pairs(data.mortabet) do
				listitems = listitems .. '\n* ' .. v
			end
		end
	end
	
	return listitems
end

return p