Modül:Resmigazete

WikiKod sitesinden
16.27, 10 Kasım 2025 tarihinde Admin (mesaj | katkılar) tarafından oluşturulmuş 91 numaralı sürüm
(fark) ← Önceki sürüm | Güncel sürüm (fark) | Sonraki sürüm → (fark)
Gezinti kısmına atla Arama kısmına atla

Bu modül için bir Modül:Resmigazete/belge belgelendirmesi oluşturabilirsiniz

local p = {}

local aylar = {
	["Ocak"] = "01", ["Şubat"] = "02", ["Mart"] = "03", ["Nisan"] = "04",
	["Mayıs"] = "05", ["Haziran"] = "06", ["Temmuz"] = "07", ["Ağustos"] = "08",
	["Eylül"] = "09", ["Ekim"] = "10", ["Kasım"] = "11", ["Aralık"] = "12"
}

function p.link(frame)
	local girdi = mw.text.trim(frame.args[1] or "")
	if girdi == "" then return "" end

	-- Türkçe karakterler dahil: %A yerine .+? kullanıyoruz
	local gun, ayAd, yil = girdi:match("(%d+)%s+([%açğıöşüİÇĞÖŞÜ]+)%s+(%d+)")
	if gun and ayAd and yil and aylar[ayAd] then
		local ay = aylar[ayAd]
		local gun2 = string.format("%02d", tonumber(gun))
		local url = string.format("https://www.resmigazete.gov.tr/eskiler/%s/%s/%s%s%s.htm", yil, ay, yil, ay, gun2)
		local text = string.format("📜 Resmî Gazete, %s %s %s", gun, ayAd, yil)
		return string.format("[%s %s]", url, text)
	end

	-- Alternatif biçim: 08.12.2001
	local d, m, y = girdi:match("(%d+)%.(%d+)%.(%d+)")
	if d and m and y then
		local d2 = string.format("%02d", tonumber(d))
		local url = string.format("https://www.resmigazete.gov.tr/eskiler/%s/%s/%s%s%s.htm", y, m, y, m, d2)
		local text = string.format("📜 Resmî Gazete, %s.%s.%s", d2, m, y)
		return string.format("[%s %s]", url, text)
	end

	return girdi
end

return p