<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="he">
	<id>https://chabadpedia.co.il/index.php?action=history&amp;feed=atom&amp;title=%D7%99%D7%97%D7%99%D7%93%D7%94%3APhoto_montage</id>
	<title>יחידה:Photo montage - היסטוריית גרסאות</title>
	<link rel="self" type="application/atom+xml" href="https://chabadpedia.co.il/index.php?action=history&amp;feed=atom&amp;title=%D7%99%D7%97%D7%99%D7%93%D7%94%3APhoto_montage"/>
	<link rel="alternate" type="text/html" href="https://chabadpedia.co.il/index.php?title=%D7%99%D7%97%D7%99%D7%93%D7%94:Photo_montage&amp;action=history"/>
	<updated>2026-04-18T03:22:25Z</updated>
	<subtitle>היסטוריית הגרסאות של הדף הזה בוויקי</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://chabadpedia.co.il/index.php?title=%D7%99%D7%97%D7%99%D7%93%D7%94:Photo_montage&amp;diff=470671&amp;oldid=prev</id>
		<title>חלוקת קונטרסים: מויקיפדיה: https://he.wikipedia.org/wiki/%D7%99%D7%97%D7%99%D7%93%D7%94:Photo_montage</title>
		<link rel="alternate" type="text/html" href="https://chabadpedia.co.il/index.php?title=%D7%99%D7%97%D7%99%D7%93%D7%94:Photo_montage&amp;diff=470671&amp;oldid=prev"/>
		<updated>2021-04-19T00:24:05Z</updated>

		<summary type="html">&lt;p&gt;מויקיפדיה: https://he.wikipedia.org/wiki/%D7%99%D7%97%D7%99%D7%93%D7%94:Photo_montage&lt;/p&gt;
&lt;p&gt;&lt;b&gt;דף חדש&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- implements [[template:photomontage]]&lt;br /&gt;
local p = {}&lt;br /&gt;
 &lt;br /&gt;
local function isnotempty(s)&lt;br /&gt;
	return s and s:match( &amp;#039;^%s*(.-)%s*$&amp;#039; ) ~= &amp;#039;&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function photomontage( frame )&lt;br /&gt;
	local tracking = &amp;#039;&amp;#039;&lt;br /&gt;
	local args = frame:getParent().args&lt;br /&gt;
	local size = tonumber(args[&amp;#039;size&amp;#039;] or &amp;#039;200&amp;#039;) or 200&lt;br /&gt;
	local border = tonumber(args[&amp;#039;border&amp;#039;] or &amp;#039;1&amp;#039;) or 1&lt;br /&gt;
	local spacing = tonumber(args[&amp;#039;spacing&amp;#039;] or &amp;#039;1&amp;#039;) or 1&lt;br /&gt;
	local color = args[&amp;#039;color&amp;#039;] or &amp;#039;black&amp;#039;&lt;br /&gt;
	local color_border = args[&amp;#039;color_border&amp;#039;] or &amp;#039;black&amp;#039;&lt;br /&gt;
	local position = (args[&amp;#039;position&amp;#039;] or &amp;#039;&amp;#039;):lower()&lt;br /&gt;
	local caption = args[&amp;#039;text&amp;#039;] or &amp;#039;&amp;#039;&lt;br /&gt;
	local text_background = isnotempty(args[&amp;#039;text_background&amp;#039;]) and args[&amp;#039;text_background&amp;#039;] or &amp;#039;#F8F8FF&amp;#039;&lt;br /&gt;
	local foot_montage = args[&amp;#039;foot_montage&amp;#039;] or &amp;#039;&amp;#039;&lt;br /&gt;
	local lastnum = nil&lt;br /&gt;
	local rownum = nil&lt;br /&gt;
	local floatstyle = nil&lt;br /&gt;
	if( position == &amp;#039;left&amp;#039; or position == &amp;#039;right&amp;#039; or position == &amp;#039;none&amp;#039;) then&lt;br /&gt;
		floatstyle = &amp;#039;float:&amp;#039; .. position&lt;br /&gt;
		tracking = tracking .. &amp;#039;[[Category:Pages using photo montage without center alignment|&amp;#039; .. position .. &amp;#039;]]&amp;#039;&lt;br /&gt;
	else&lt;br /&gt;
		floatstyle = &amp;#039;margin-left: auto; margin-right: auto;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	if isnotempty(foot_montage) then&lt;br /&gt;
		local div = mw.html.create(&amp;#039;div&amp;#039;)&lt;br /&gt;
		div:css(&amp;#039;font-size&amp;#039;, &amp;#039;95%&amp;#039;)&lt;br /&gt;
			:wikitext(foot_montage)&lt;br /&gt;
		foot_montage = &amp;#039;\n&amp;#039; .. tostring(div)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local lettertonumber = { &lt;br /&gt;
		a = &amp;#039;01&amp;#039;, b = &amp;#039;02&amp;#039;,	c = &amp;#039;03&amp;#039;, d = &amp;#039;04&amp;#039;,	e = &amp;#039;05&amp;#039;, f = &amp;#039;06&amp;#039;,	g = &amp;#039;07&amp;#039;,&lt;br /&gt;
		h = &amp;#039;08&amp;#039;, i = &amp;#039;09&amp;#039;,	j = &amp;#039;10&amp;#039;, k = &amp;#039;11&amp;#039;,	l = &amp;#039;12&amp;#039;, m = &amp;#039;13&amp;#039;,	n = &amp;#039;14&amp;#039;,&lt;br /&gt;
		o = &amp;#039;15&amp;#039;, p = &amp;#039;16&amp;#039;,	q = &amp;#039;17&amp;#039;, r = &amp;#039;18&amp;#039;, s = &amp;#039;19&amp;#039;, t = &amp;#039;20&amp;#039;, u = &amp;#039;21&amp;#039;,&lt;br /&gt;
		v = &amp;#039;22&amp;#039;, w = &amp;#039;23&amp;#039;, x = &amp;#039;26&amp;#039;, y = &amp;#039;27&amp;#039;, z = &amp;#039;28&amp;#039; }&lt;br /&gt;
	local letters = {&lt;br /&gt;
		&amp;#039;a&amp;#039;, &amp;#039;b&amp;#039;, &amp;#039;c&amp;#039;, &amp;#039;d&amp;#039;, &amp;#039;e&amp;#039;, &amp;#039;f&amp;#039;, &amp;#039;g&amp;#039;, &amp;#039;h&amp;#039;, &amp;#039;i&amp;#039;, &amp;#039;j&amp;#039;, &amp;#039;k&amp;#039;, &amp;#039;l&amp;#039;, &amp;#039;m&amp;#039;,&lt;br /&gt;
		&amp;#039;n&amp;#039;, &amp;#039;o&amp;#039;, &amp;#039;p&amp;#039;, &amp;#039;q&amp;#039;, &amp;#039;r&amp;#039;, &amp;#039;s&amp;#039;, &amp;#039;t&amp;#039;, &amp;#039;u&amp;#039;, &amp;#039;v&amp;#039;, &amp;#039;w&amp;#039;, &amp;#039;x&amp;#039;, &amp;#039;y&amp;#039;, &amp;#039;z&amp;#039;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
	-- find all the nonempty photo numbers&lt;br /&gt;
	local photos = {}&lt;br /&gt;
	local photocount = 0&lt;br /&gt;
	for k, v in pairs( args ) do&lt;br /&gt;
		local i = tonumber(tostring(k):match( &amp;#039;^%s*photo([%d]+)[a-z]%s*$&amp;#039; ) or &amp;#039;0&amp;#039;)&lt;br /&gt;
		if( i &amp;gt; 0 and isnotempty(v) ) then&lt;br /&gt;
			local c = lettertonumber[tostring(k):match( &amp;#039;^%s*photo[%d]+([a-z])%s*$&amp;#039; )]&lt;br /&gt;
			table.insert( photos, tonumber(i .. &amp;#039;.&amp;#039; .. c ) )&lt;br /&gt;
			photocount = photocount + 1&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	-- sort the photo numbers&lt;br /&gt;
	table.sort(photos)&lt;br /&gt;
	&lt;br /&gt;
	-- compute the number of the photos in each row&lt;br /&gt;
	local count = {}&lt;br /&gt;
	lastnum = -1&lt;br /&gt;
	rownum = 0&lt;br /&gt;
	for k=1,photocount do&lt;br /&gt;
		local num = math.floor(photos[k])&lt;br /&gt;
		if(num == lastnum) then&lt;br /&gt;
			count[rownum] = count[rownum] + 1&lt;br /&gt;
		else&lt;br /&gt;
			rownum = rownum + 1&lt;br /&gt;
			count[rownum] = 1&lt;br /&gt;
		end&lt;br /&gt;
		lastnum = num&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if(photocount &amp;gt; 0) then&lt;br /&gt;
	-- start table&lt;br /&gt;
	root = mw.html.create(&amp;#039;div&amp;#039;)&lt;br /&gt;
	root&lt;br /&gt;
		:css(&amp;#039;background-color&amp;#039;, color)&lt;br /&gt;
		:css(&amp;#039;border-collapse&amp;#039;, &amp;#039;collapse&amp;#039;)&lt;br /&gt;
		:css(&amp;#039;border&amp;#039;, border .. &amp;#039;px solid &amp;#039; .. color_border)&lt;br /&gt;
		:css(&amp;#039;width&amp;#039;, size .. &amp;#039;px&amp;#039;)&lt;br /&gt;
		:css(&amp;#039;display&amp;#039;, &amp;#039;table&amp;#039;)&lt;br /&gt;
		:cssText(floatstyle)&lt;br /&gt;
	local innercell = root&lt;br /&gt;
		:tag(&amp;#039;div&amp;#039;):css(&amp;#039;display&amp;#039;, &amp;#039;table-row&amp;#039;)&lt;br /&gt;
			:tag(&amp;#039;div&amp;#039;):css(&amp;#039;display&amp;#039;, &amp;#039;table-cell&amp;#039;)&lt;br /&gt;
				:css(&amp;#039;border-top&amp;#039;, 0)&lt;br /&gt;
				:css(&amp;#039;padding&amp;#039;, spacing .. &amp;#039;px 0 0 &amp;#039; .. spacing .. &amp;#039;px&amp;#039;)&lt;br /&gt;
 &lt;br /&gt;
	-- loop over the photos&lt;br /&gt;
	lastnum = -1&lt;br /&gt;
	rownum = 0&lt;br /&gt;
	local row&lt;br /&gt;
	for k=1,photocount do&lt;br /&gt;
		local num = math.floor(photos[k])&lt;br /&gt;
		local c = letters[math.floor(0.5 + 100*(photos[k] - num))]&lt;br /&gt;
		if(num ~= lastnum) then&lt;br /&gt;
			rownum = rownum + 1&lt;br /&gt;
			row = innercell&lt;br /&gt;
				:tag(&amp;#039;div&amp;#039;):css(&amp;#039;display&amp;#039;, &amp;#039;table&amp;#039;)&lt;br /&gt;
					:css(&amp;#039;background-color&amp;#039;, color)&lt;br /&gt;
					:css(&amp;#039;border-collapse&amp;#039;, &amp;#039;collapse&amp;#039;)&lt;br /&gt;
						:tag(&amp;#039;div&amp;#039;):css(&amp;#039;display&amp;#039;, &amp;#039;table-row&amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
		local altstr = (args[&amp;#039;alt&amp;#039; .. num .. c] or &amp;#039;&amp;#039;) ~= &amp;#039;&amp;#039; and&lt;br /&gt;
			&amp;#039;|alt=&amp;#039; .. args[&amp;#039;alt&amp;#039; .. num .. c] or &amp;#039;&amp;#039;&lt;br /&gt;
		local image = string.format( &amp;#039;[[File:%s%s|%dpx]]&amp;#039;,&lt;br /&gt;
			args[&amp;#039;photo&amp;#039; .. num .. c], altstr,&lt;br /&gt;
			(size - spacing*(count[rownum] - 1))/count[rownum] )&lt;br /&gt;
		row&lt;br /&gt;
			:tag(&amp;#039;div&amp;#039;):css(&amp;#039;display&amp;#039;, &amp;#039;table-cell&amp;#039;)&lt;br /&gt;
				:css(&amp;#039;border-top&amp;#039;, 0)&lt;br /&gt;
				:css(&amp;#039;padding&amp;#039;, &amp;#039;0 &amp;#039; .. spacing .. &amp;#039;px &amp;#039; .. spacing .. &amp;#039;px &amp;#039; .. &amp;#039;0&amp;#039;)&lt;br /&gt;
				:wikitext(image)&lt;br /&gt;
		lastnum = num&lt;br /&gt;
	end&lt;br /&gt;
	if isnotempty(caption) then&lt;br /&gt;
		root&lt;br /&gt;
			:tag(&amp;#039;div&amp;#039;):css(&amp;#039;display&amp;#039;, &amp;#039;table-row&amp;#039;)&lt;br /&gt;
				:tag(&amp;#039;div&amp;#039;):css(&amp;#039;display&amp;#039;, &amp;#039;table-cell&amp;#039;)&lt;br /&gt;
					:addClass(&amp;#039;thumbcaption&amp;#039;)&lt;br /&gt;
					:css(&amp;#039;background-color&amp;#039;, text_background)&lt;br /&gt;
					:css(&amp;#039;font-size&amp;#039;, &amp;#039;95%&amp;#039;)&lt;br /&gt;
					:wikitext(caption)&lt;br /&gt;
	end&lt;br /&gt;
	-- end table&lt;br /&gt;
	end&lt;br /&gt;
-- 	if photocount &amp;lt; 2 then&lt;br /&gt;
-- 		tracking = tracking .. &amp;#039;[[Category:Pages using photo montage with one or fewer images|&amp;#039; .. photocount ..&amp;#039;]]&amp;#039;&lt;br /&gt;
-- 	end&lt;br /&gt;
    return tostring(root or &amp;#039;&amp;#039;) .. foot_montage .. tracking&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.montage( frame )&lt;br /&gt;
    return photomontage( frame )&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>חלוקת קונטרסים</name></author>
	</entry>
</feed>