مسابقه دانش‌دخت
اسلامیکال از تاریخ ۱۵ دی تا ۲۰ بهمن، میزبان یک همایه با موضوع زنان است. شما می‌توانید در مسابقه مقاله‌نویسی دانش‌دخت، شرکت کنید و با نگارش مقاله، از جوایز آن بهره‌مند باشید. اگر به موضوعات مربوط با زنان علاقه‌مندید، این فرصت را از دست ندهید. فهرستی از مقالات پیشنهادی جهت ایجاد یا ویرایش در اینجا وجود دارد.

پودمان:UserLinks/extra

از اسلامیکال
نسخهٔ تاریخ ‏۲۶ سپتامبر ۲۰۲۵، ساعت ۱۸:۵۸ توسط Aboammar (بحث | مشارکت‌ها) (صفحه‌ای تازه حاوی «-------------------------------------------------------------------------------- -- This module holds extra link functions for use with Module:UserLinks. -- -- It is intended for experimenting with new link functions that will eventually -- be added to the main module code. -- -- Since this module is transcluded in only a small number of pages, changes -- should cause little server overhead and should propagate quickly. -- -- Link...» ایجاد کرد)
(تفاوت) → نسخهٔ قدیمی‌تر | نمایش نسخهٔ فعلی (تفاوت) | نسخهٔ جدیدتر ← (تفاوت)
پرش به ناوبری پرش به جستجو

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

--------------------------------------------------------------------------------
-- This module holds extra link functions for use with [[Module:UserLinks]].
--
-- It is intended for experimenting with new link functions that will eventually
-- be added to the main module code.
--
-- Since this module is transcluded in only a small number of pages, changes
-- should cause little server overhead and should propagate quickly.
--
-- Link functions using the same link code as a function in the main module will
-- be ignored; please give your function a unique code.
--------------------------------------------------------------------------------

-- Load shared helper functions
local mShared = require('Module:UserLinks/shared')
local raiseError = mShared.raiseError
local makeWikitextError = mShared.makeWikitextError
local makeWikilink = mShared.makeWikilink
local makeUrlLink = mShared.makeUrlLink
local makeFullUrlLink = mShared.makeFullUrlLink
local message = mShared.message

local linkFunctions = {}

--function linkFunctions.coibot(snippets)
	-- COIBot report
	--return makeWikilink(
		--nil,
		--4,
		--'WikiProject Spam/UserReports/' .. snippets.username,
		--'COIBot'
	--)
--end

function linkFunctions.ggl(snippets)
	-- Google search for the username
	return makeUrlLink(
		{
			host = 'www.google.com',
			path = '/search',
			query = {q = snippets.username},
		},
		'گوگل'
	)
end

function linkFunctions.http(snippets)
	-- To see if an IP is serving a web page

	local host = snippets.username
	if not host:match('^%d+%.%d+%.%d+%.%d+$') then
		if mw.ustring.match(host, '^[%x:]+$') then
			-- It's IPv6, use RFC 3986 IP-Literal syntax
			host = '[' .. host .. ']'
		else
			-- It's neither IPv4 nor IPv6, return nothing
			return ''
		end
	end

	return makeUrlLink(
		{
			protocol = 'http',
			host = host
		},
		'http'
	)
end

function linkFunctions.msg(snippets)
	-- New message on user talk page
	return makeFullUrlLink(
		snippets.interwiki,
		3,
		snippets.username,
		{
			action = 'edit',
			section = 'new',
		},
		'پیام'
	)
end

function linkFunctions.rbl(snippets)
	-- Realtime blacklists
	return makeUrlLink(
		{
			protocol = 'https',
			host = 'www.robtex.com',
			path = '/rbls/' .. snippets.username .. '.html',
		},
		'RBLs'
	)
end

function linkFunctions.rdns(snippets)
	-- Reverse DNS lookup
	return makeUrlLink(
		{
			protocol = 'http',
			host = 'www.dnswatch.info',
			path = '/dns/dnslookup',
			query = {
				la = 'en',
				host = snippets.username,
				submit = 'Resolve'
			}
		},
		'RDNS'
	)
end

function linkFunctions.sbx(snippets)
	-- User sandbox
	return makeWikilink(
		snippets.interwiki,
		2,
		snippets.username .. '/صفحه تمیرین',
		'ص. تمرین'
	)
end

function linkFunctions.sfs(snippets)
	-- StopForumSpam
	return makeUrlLink(
		{
			protocol = 'http',
			host = 'www.stopforumspam.com',
			path = '/search/' .. snippets.username,
		},
		'StopForumSpam'
	)
end

function linkFunctions.sul2(snippets)
	-- Global contribs, Luxo's tool
	return makeUrlLink(
		{
			host = 'tools.wmflabs.org',
			path = '/guc/index.php',
			query = {
				user = snippets.username,
				lang = snippets.toolLang
			}
		},
		'مشارکت‌های سراسری'
	)
end

function linkFunctions.uc(snippets)
	-- User creation
	return makeWikilink(
		snippets.interwiki,
		-1,
		'Log/newusers/' .. snippets.username,
		'ایجاد حساب'
	)
end

function linkFunctions.whois(snippets)
	-- WHOIS information for IPs
	return makeUrlLink(
		{
			protocol = 'https',
			host = 'tools.wmflabs.org',
			path = '/whois/gateway.py',
			query = {
				lookup = 'true',
				ip = snippets.username,
			},
		},
		'هوئیز'
	)
end

function linkFunctions.wlh(snippets)
	-- Links to user page (what links here)
	return makeWikilink(
		snippets.interwiki,
		-1,
		'WhatLinksHere/'
			.. mw.site.namespaces[2].name
			.. ':'
			.. snippets.username,
		'پیوندها به ص. کاربری'
	)
end

function linkFunctions.cr(snippets)
	-- Change rights
	return makeWikilink(
		snippets.interwiki,
		-1,
		'اختیارات_کاربر/' .. snippets.username,
		'تغییر اختیارات'
	)
end

return {linkFunctions = linkFunctions}