دانشنامه بهائی
Bahaipediaدانشنامه بهائی
منو
تغییرات اخیر
مقالهٔ تصادفی
راهنما دربارهٔ مدیاویکی
در پروژه‌های دیگر
ابزارها
پیوندها به این صفحه
تغییرات مرتبط
بارگذاری پرونده
صفحه‌های ویژه
نسخهٔ قابل چاپ
پیوند پایدار
اطلاعات صفحه
پودمان
بحث
نمایش تاریخچه
به سامانه وارد نشده‌اید
بحث
مشارکت‌ها
ساخت حساب
ورود
Navigation
Navigation
Navegación
Navigation
ナビゲーション
Điều hướng
导航
Navegação
ناوبری
Навигация
تغییرات اخیر
مقالهٔ تصادفی
راهنما دربارهٔ مدیاویکی
در پروژه‌های دیگر
Learn more
Weitere Informationen
Aprender más
En savoir plus
詳しく読む
Tìm hiểu thêm
了解更多
Saiba mais
یاد بگیرید بیشتر
Узнать больше
آئین بهائی
بهاءالله
عبدالبهاء
آموزه های بهایی
Tools
Werkzeuge
Herramientas
Outils
ツール
Công cụ
工具
Ferramentas
ابزارها
Инструменты
پیوندها به این صفحه
تغییرات مرتبط
بارگذاری پرونده
صفحه‌های ویژه
نسخهٔ قابل چاپ
پیوند پایدار
اطلاعات صفحه
Translations
Übersetzungen
Traducciones
Traductions
各言語版
Bản dịch
翻译
Traduções
به زبان‌های دیگر
Переводы

پودمان:Main

از دانشنامه بهائی
پرش به:ناوبری، جستجو

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

--[[
-- This module produces a link to a main article or articles. It implements the
-- template {{main}}.
-- 
-- If the module is used in category or category talk space, it produces "The
-- main article for this category is xxx". Otherwise, it produces
-- "Main article: xxx".
--]]

local mHatnote = require('Module:Hatnote')
local mTableTools -- lazily initialise
local mArguments -- lazily initialise

local p = {}

function p.main(frame)
	mTableTools = require('Module:TableTools')
	mArguments = require('Module:Arguments')
	local args = mArguments.getArgs(frame, {parentOnly = true})
	local pages = {}
	for k, v in pairs(args) do
		if type(k) == 'number' then
			local display = args['l' .. tostring(k)]
			local page = {v, display}
			pages[k] = page
		end
	end
	pages = mTableTools.compressSparseArray(pages)
	local options = {
		selfref = args.selfref
	}
	return p._main(options, unpack(pages))
end

function p._main(options, ...)
	-- Get the list of pages. If no first page was specified we use the current
	-- page name.
	local pages = {...}
	local currentTitle = mw.title.getCurrentTitle()
	local firstPageTable = pages[1]
	local firstPage
	if firstPageTable then
		firstPage = firstPageTable[1]
	else
		firstPage = currentTitle.text
		firstPageTable = {firstPage}
		pages[1] = firstPageTable
	end

	-- Find the pagetype.
	local firstPageNs = mHatnote.findNamespaceId(firstPage)
	local pagetype = firstPageNs == 0 and 'نوشتار' or 'صفحه'

	-- Make the formatted link text
	local links = mHatnote.formatPageTables(unpack(pages))
	links = mw.text.listToText(links)

	-- Build the text.
	local isPlural = #pages > 1
	local currentNs = currentTitle.namespace
	local isCategoryNamespace = currentNs - currentNs % 2 == 14
	local stringToFormat
	if isCategoryNamespace then
		if isPlural then
			stringToFormat = '%s‌های اصلی این'
				.. ' [[ویکی‌پدیا:رده‌بندی|رده]] %s هستند'
		else
			stringToFormat = '%s اصلی این'
				.. ' [[ویکی‌پدیا:رده‌بندی|رده]] %s است'
		end
	else
		if isPlural then
			stringToFormat = '%s‌های اصلی: %s'
		else
			stringToFormat = '%s اصلی: %s'
		end
	end
	local text = string.format(stringToFormat, pagetype, links)

	-- Process the options and pass the text to the _rellink function in
	-- [[Module:Hatnote]].
	options = options or {}
	local hnOptions = {
		extraclasses = 'relarticle mainarticle',
		selfref = options.selfref
	}
	return mHatnote._hatnote(text, hnOptions)
end

return p
برگرفته از «https://fa.bahaipedia.org/index.php?title=پودمان:Main&oldid=534»
این صفحه آخرین‌بار در ‏۲۶ دسامبر ۲۰۱۹ ساعت ‏۱۸:۳۸ ویرایش شده است.
محتوایات تحت اجازه‌نامهٔ Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License هستند مگر اینکه خلافش ذکر شده باشد.
سیاست حفظ حریم خصوصی
دربارهٔ دانشنامه بهائی
تکذیب‌نامه‌ها
Powered by MediaWiki