<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fa">
	<id>https://wiki.nebeshtar.com/index.php?action=history&amp;feed=atom&amp;title=%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86%3APortal_bar</id>
	<title>پودمان:Portal bar - تاریخچهٔ نسخه‌ها</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.nebeshtar.com/index.php?action=history&amp;feed=atom&amp;title=%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86%3APortal_bar"/>
	<link rel="alternate" type="text/html" href="https://wiki.nebeshtar.com/index.php?title=%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:Portal_bar&amp;action=history"/>
	<updated>2026-05-05T04:41:16Z</updated>
	<subtitle>تاریخچهٔ نسخه‌ها برای این صفحه در ویکی</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.nebeshtar.com/index.php?title=%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:Portal_bar&amp;diff=19429&amp;oldid=prev</id>
		<title>محمد: صفحه‌ای تازه حاوی «require(&#039;strict&#039;)  local portalModule = require(&#039;Module:Portal&#039;) local getImageName = portalModule.image local checkPortals = portalModule._checkPortals local processPortalArgs = portalModule._processPortalArgs local yesno = require(&#039;Module:Yesno&#039;) local getArgs = require(&#039;Module:Arguments&#039;).getArgs local p = {}  local function sandbox(args, s) 	return (args.sandbox or args[&#039;تمرین&#039;]) and s..&quot;-sand&quot; or s end  -- Builds the portal b...» ایجاد کرد</title>
		<link rel="alternate" type="text/html" href="https://wiki.nebeshtar.com/index.php?title=%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:Portal_bar&amp;diff=19429&amp;oldid=prev"/>
		<updated>2025-10-21T20:10:54Z</updated>

		<summary type="html">&lt;p&gt;صفحه‌ای تازه حاوی «require(&amp;#039;strict&amp;#039;)  local portalModule = require(&amp;#039;Module:Portal&amp;#039;) local getImageName = portalModule.image local checkPortals = portalModule._checkPortals local processPortalArgs = portalModule._processPortalArgs local yesno = require(&amp;#039;Module:Yesno&amp;#039;) local getArgs = require(&amp;#039;Module:Arguments&amp;#039;).getArgs local p = {}  local function sandbox(args, s) 	return (args.sandbox or args[&amp;#039;تمرین&amp;#039;]) and s..&amp;quot;-sand&amp;quot; or s end  -- Builds the portal b...» ایجاد کرد&lt;/p&gt;
&lt;p&gt;&lt;b&gt;صفحهٔ تازه&lt;/b&gt;&lt;/p&gt;&lt;div&gt;require(&amp;#039;strict&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
local portalModule = require(&amp;#039;Module:Portal&amp;#039;)&lt;br /&gt;
local getImageName = portalModule.image&lt;br /&gt;
local checkPortals = portalModule._checkPortals&lt;br /&gt;
local processPortalArgs = portalModule._processPortalArgs&lt;br /&gt;
local yesno = require(&amp;#039;Module:Yesno&amp;#039;)&lt;br /&gt;
local getArgs = require(&amp;#039;Module:Arguments&amp;#039;).getArgs&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local function sandbox(args, s)&lt;br /&gt;
	return (args.sandbox or args[&amp;#039;تمرین&amp;#039;]) and s..&amp;quot;-sand&amp;quot; or s&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Builds the portal bar used by {{نوار درگاه}}.&lt;br /&gt;
function p._main(portals, args)&lt;br /&gt;
	&lt;br /&gt;
	-- check for sensible args&lt;br /&gt;
	args = type(args) == &amp;quot;table&amp;quot; and args or {}&lt;br /&gt;
	&lt;br /&gt;
	-- Normalize arguments&lt;br /&gt;
	for key, default in pairs({border = true, redlinks = false, sandbox = false, tracking = true}) do&lt;br /&gt;
		if args[key] == nil then args[key] = default end&lt;br /&gt;
		args[key] = yesno(args[key], default)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local nav = mw.html.create( &amp;#039;div&amp;#039; )&lt;br /&gt;
		:addClass(sandbox(args, &amp;#039;portal-bar&amp;#039;))&lt;br /&gt;
		:addClass( &amp;#039;noprint metadata noviewer&amp;#039; )&lt;br /&gt;
		:attr( &amp;#039;role&amp;#039;, &amp;#039;navigation&amp;#039; )&lt;br /&gt;
		:attr( &amp;#039;aria-label&amp;#039; , &amp;#039;Portals&amp;#039; )&lt;br /&gt;
		:addClass(sandbox(args, (args.border or args[&amp;#039;حاشیه&amp;#039;]) and &amp;#039;portal-bar-bordered&amp;#039; or &amp;#039;portal-bar-unbordered&amp;#039;))&lt;br /&gt;
	&lt;br /&gt;
	local trackingCat = &amp;#039;&amp;#039;&lt;br /&gt;
	-- Allow any number of portals&lt;br /&gt;
	args.minPortals = 0&lt;br /&gt;
	args.maxPortals = -1&lt;br /&gt;
	-- Check to see whether there are redlinks, filter out unless args.redlink is true&lt;br /&gt;
	portals, trackingCat = checkPortals(portals, args)&lt;br /&gt;
	nav:wikitext(trackingCat)&lt;br /&gt;
	if #portals == 0 then&lt;br /&gt;
		return trackingCat&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local header = nav:tag( &amp;#039;span&amp;#039; )&lt;br /&gt;
	header:addClass(sandbox(args, &amp;#039;portal-bar-header&amp;#039;))&lt;br /&gt;
	header:wikitext( &amp;#039;[[درگاه:درونمایه/درگاه‌ها|درگاه]]&amp;#039; )&lt;br /&gt;
	if #portals &amp;gt; 1 then&lt;br /&gt;
		header:wikitext( &amp;#039;‌ها&amp;#039; )&lt;br /&gt;
	end&lt;br /&gt;
	header:wikitext(&amp;#039;:&amp;#039;)&lt;br /&gt;
	local container = nav:tag( &amp;#039;div&amp;#039; )&lt;br /&gt;
	container:addClass(sandbox(args, &amp;#039;portal-bar-content&amp;#039;))&lt;br /&gt;
	for _, portal in ipairs( portals ) do&lt;br /&gt;
		container&lt;br /&gt;
			:tag( &amp;#039;div&amp;#039; )&lt;br /&gt;
			:addClass(sandbox(args, &amp;#039;portal-bar-item&amp;#039;))&lt;br /&gt;
				:tag( &amp;#039;span&amp;#039; )&lt;br /&gt;
					:addClass(sandbox(args, &amp;#039;portal-bar-logo&amp;#039;))&lt;br /&gt;
					:wikitext( mw.ustring.format(&lt;br /&gt;
						&amp;#039;[[پرونده:%s|21x19px|alt=]]&amp;#039;, getImageName{ portal }&lt;br /&gt;
					) )&lt;br /&gt;
					:done()&lt;br /&gt;
				:tag( &amp;#039;span&amp;#039; )&lt;br /&gt;
					:addClass(sandbox(args, &amp;#039;portal-bar-link&amp;#039;))&lt;br /&gt;
					:wikitext( mw.ustring.format(&amp;#039;[[درگاه:%s|%s]]&amp;#039;, portal, portal) )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local styleFile = &amp;#039;Module:Portal bar/&amp;#039;&lt;br /&gt;
	styleFile = styleFile .. ((args.sandbox or args[&amp;#039;تمرین&amp;#039;]) and &amp;#039;تمرین/&amp;#039; or &amp;#039;&amp;#039;)&lt;br /&gt;
	styleFile = styleFile .. &amp;#039;styles.css&amp;#039;&lt;br /&gt;
	return mw.getCurrentFrame():extensionTag{&lt;br /&gt;
		name = &amp;#039;templatestyles&amp;#039;, args = { src = styleFile }&lt;br /&gt;
	} .. tostring( nav ) &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Processes external arguments and sends them to the other functions.&lt;br /&gt;
function p.main( frame )&lt;br /&gt;
	local origArgs = getArgs(frame)&lt;br /&gt;
	local portals, args = processPortalArgs(origArgs)&lt;br /&gt;
	return p._main( portals, args )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>محمد</name></author>
	</entry>
</feed>