دانشنامه بهائی
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
به زبان‌های دیگر
Переводы

پودمان:Effective protection level

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

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

local p = {}

-- Returns the permission required to perform a given action on a given title.
-- If no title is specified, the title of the page being displayed is used.
function p._main(action, pagename)
	local title
	if type(pagename) == 'table' and pagename.prefixedText then
		title = pagename
	elseif pagename then
		title = mw.title.new(pagename)
	else
		title = mw.title.getCurrentTitle()
	end
	pagename = title.prefixedText
	if action == 'autoreview' then
		local level = mw.ext.FlaggedRevs.getStabilitySettings(title)
		level = level and level.autoreview
		if level == 'review' then
			return 'reviewer'
		elseif level ~= '' then
			return level
		else
			return nil -- not '*'. a page not being PC-protected is distinct from it being PC-protected with anyone able to review. also not '', as that would mean PC-protected but nobody can review
		end
	elseif action ~= 'edit' and action ~= 'move' and action ~= 'create' and action ~= 'upload' then
		error( 'نخستین پارامتر باید یکی از edit، move، create، upload، autoreview باشد.', 2 )
	end
	if title.namespace == 8 then -- MediaWiki namespace
		return 'sysop'
	elseif title.namespace == 2 and title.isSubpage and ( title.contentModel == 'javascript' or title.contentModel == 'css' ) then -- user JS or CSS page
		return 'sysop'
	end
	local level = title.protectionLevels[action] and title.protectionLevels[action][1]
	if level == 'sysop' or level == 'editprotected' then
		return 'sysop'
	elseif title.cascadingProtection.restrictions[action] and title.cascadingProtection.restrictions[action][1] then -- used by a cascading-protected page
		return 'sysop'
	elseif level == 'templateeditor' then
		return 'templateeditor'
	elseif action == 'move' then
		local blacklistentry = mw.ext.TitleBlacklist.test('edit', pagename) -- Testing action edit is correct, since this is for the source page. The target page name gets tested with action move.
		if blacklistentry and not blacklistentry.params.autoconfirmed then
			return 'templateeditor'
		elseif title.namespace == 6 then
			return 'filemover'
		elseif level == 'extendedconfirmed' then
			return 'extendedconfirmed'
		else
			return 'autoconfirmed'
		end
	end
	local blacklistentry = mw.ext.TitleBlacklist.test(action, pagename)
	if blacklistentry then
		if not blacklistentry.params.autoconfirmed then
			return 'templateeditor'
		elseif level == 'extendedconfirmed' then
			return 'extendedconfirmed'
		else
			return 'autoconfirmed'
		end
	elseif level == 'editsemiprotected' then -- create-semiprotected pages return this for some reason
		return 'autoconfirmed'
	elseif level then
		return level
	elseif action == 'upload' then
		return 'autoconfirmed'
	elseif action == 'create' and title.namespace % 2 == 0 and title.namespace ~= 118 then -- You need to be registered, but not autoconfirmed, to create non-talk pages other than drafts
		return 'user'
	else
		return '*'
	end
end

setmetatable(p, { __index = function(t, k)
	return function(frame)
		return t._main(k, frame.args[1])
	end
end })

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