<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mywikibiz.com/index.php?action=history&amp;feed=atom&amp;title=Module%3AGAN_link</id>
	<title>Module:GAN link - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mywikibiz.com/index.php?action=history&amp;feed=atom&amp;title=Module%3AGAN_link"/>
	<link rel="alternate" type="text/html" href="https://mywikibiz.com/index.php?title=Module:GAN_link&amp;action=history"/>
	<updated>2026-06-29T05:23:40Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.3</generator>
	<entry>
		<id>https://mywikibiz.com/index.php?title=Module:GAN_link&amp;diff=471807&amp;oldid=prev</id>
		<title>Zoran: Pywikibot 6.4.0</title>
		<link rel="alternate" type="text/html" href="https://mywikibiz.com/index.php?title=Module:GAN_link&amp;diff=471807&amp;oldid=prev"/>
		<updated>2021-07-15T21:48:00Z</updated>

		<summary type="html">&lt;p&gt;Pywikibot 6.4.0&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- This module implements {{GAN link}}.&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local function getGANIcon()&lt;br /&gt;
	return require('Module:Icon')._main{'GAN'}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function makeWikilink(page, display)&lt;br /&gt;
	if display and display ~= page then&lt;br /&gt;
		return string.format('[[%s|%s]]', page, display)&lt;br /&gt;
	else&lt;br /&gt;
		return string.format('[[%s]]', page)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getNominationPage(article, number)&lt;br /&gt;
	return string.format('Talk:%s/GA%d', article, number)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function makeArticleLink(options)&lt;br /&gt;
	assert(options.article, 'options.article not specified')&lt;br /&gt;
	assert(options.formattedArticle, 'options.formattedArticle not specified')&lt;br /&gt;
	local display&lt;br /&gt;
	if options.isItalic then&lt;br /&gt;
		display = string.format('&amp;lt;i&amp;gt;%s&amp;lt;/i&amp;gt;', options.article)&lt;br /&gt;
	elseif options.display then&lt;br /&gt;
		display = options.display&lt;br /&gt;
	else&lt;br /&gt;
		display = options.formattedArticle&lt;br /&gt;
	end&lt;br /&gt;
	return makeWikilink(options.article, display)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function makeExistingNominationLink(nominationPage)&lt;br /&gt;
	return makeWikilink(nominationPage, 'nom')&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function makeNewNominationLink(nominationPage)&lt;br /&gt;
	local url = mw.uri.fullUrl(nominationPage, {&lt;br /&gt;
		action    = 'edit',&lt;br /&gt;
		editintro = 'Template:GAN/editintro',&lt;br /&gt;
		preload   = 'Template:GAN/preload',&lt;br /&gt;
	})&lt;br /&gt;
	return string.format(&lt;br /&gt;
		&amp;quot;'''&amp;lt;span class='plainlinks'&amp;gt;[%s start]&amp;lt;/span&amp;gt;'''&amp;quot;,&lt;br /&gt;
		tostring(url)&lt;br /&gt;
	)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function makeNominationLink(nominationPage)&lt;br /&gt;
	assert(nominationPage, 'no nominationPage argument given to makeNominationLink')&lt;br /&gt;
	local title = mw.title.new(nominationPage)&lt;br /&gt;
	if not title then&lt;br /&gt;
		error(string.format('%s is not a valid title', nominationPage), 2)&lt;br /&gt;
	elseif title.exists then&lt;br /&gt;
		return makeExistingNominationLink(nominationPage)&lt;br /&gt;
	else&lt;br /&gt;
		return makeNewNominationLink(nominationPage)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p._main(args)&lt;br /&gt;
	-- Link parameters&lt;br /&gt;
	local formattedArticle = args[1]&lt;br /&gt;
	if not formattedArticle then&lt;br /&gt;
		error('No article specified', 2)&lt;br /&gt;
	end&lt;br /&gt;
	local article = formattedArticle:gsub(&amp;quot;'''&amp;quot;, &amp;quot;&amp;quot;):gsub(&amp;quot;''&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
	local display = args[2]&lt;br /&gt;
&lt;br /&gt;
	-- Number&lt;br /&gt;
	local number&lt;br /&gt;
	if args['#'] then&lt;br /&gt;
		number = tonumber(args['#'])&lt;br /&gt;
		if not number then&lt;br /&gt;
			error(&amp;quot;'%s' is not a valid number&amp;quot;, args['#'])&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		number = 1&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Formatting parameters&lt;br /&gt;
	local hasIcon = not not args.icon&lt;br /&gt;
	local isItalic = not not args.i&lt;br /&gt;
&lt;br /&gt;
	-- Output&lt;br /&gt;
	local ret = {}&lt;br /&gt;
	if hasIcon then&lt;br /&gt;
		ret[#ret + 1] = getGANIcon()&lt;br /&gt;
	end&lt;br /&gt;
	ret[#ret + 1] = makeArticleLink{&lt;br /&gt;
		article = article,&lt;br /&gt;
		formattedArticle = formattedArticle,&lt;br /&gt;
		display = display,&lt;br /&gt;
		isItalic = isItalic,&lt;br /&gt;
	}&lt;br /&gt;
	ret[#ret + 1] = string.format(&lt;br /&gt;
		'(%s)',&lt;br /&gt;
		makeNominationLink(getNominationPage(article, number))&lt;br /&gt;
	)&lt;br /&gt;
	return table.concat(ret, ' ')&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	local args = require('Module:Arguments').getArgs(frame, {&lt;br /&gt;
		wrappers = 'Template:GAN link'&lt;br /&gt;
	})&lt;br /&gt;
	return p._main(args)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Zoran</name></author>
	</entry>
</feed>