<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://busenfreundinnen.to/boobs/index.php?action=history&amp;feed=atom&amp;title=Modul%3AGeburtsort</id>
	<title>Modul:Geburtsort - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://busenfreundinnen.to/boobs/index.php?action=history&amp;feed=atom&amp;title=Modul%3AGeburtsort"/>
	<link rel="alternate" type="text/html" href="https://busenfreundinnen.to/boobs/index.php?title=Modul:Geburtsort&amp;action=history"/>
	<updated>2026-04-10T16:43:26Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in BUSENFREUNDINNEN</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://busenfreundinnen.to/boobs/index.php?title=Modul:Geburtsort&amp;diff=4&amp;oldid=prev</id>
		<title>Boobslover: Die Seite wurde neu angelegt: „-- Modul:Geburtsort -- Benutzung in Vorlage: {{#invoke:Geburtsort|render|value={{{Geburtsort}}}|link=category}} -- link=page (Standard) → auf Artikelseiten verlinken -- link=category        → sichtbare Links zeigen direkt auf die Kategorien  local p = {}  local trim = mw.text.trim local lc   = mw.ustring.lower  -- Link, wenn Seite existiert; sonst Plaintext local function linkIfExists(titleText) 	if not titleText or titleText == &quot;&quot; then return &quot;&quot; end…“</title>
		<link rel="alternate" type="text/html" href="https://busenfreundinnen.to/boobs/index.php?title=Modul:Geburtsort&amp;diff=4&amp;oldid=prev"/>
		<updated>2025-10-12T17:09:02Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „-- Modul:Geburtsort -- Benutzung in Vorlage: {{#invoke:Geburtsort|render|value={{{Geburtsort}}}|link=category}} -- link=page (Standard) → auf Artikelseiten verlinken -- link=category        → sichtbare Links zeigen direkt auf die Kategorien  local p = {}  local trim = mw.text.trim local lc   = mw.ustring.lower  -- Link, wenn Seite existiert; sonst Plaintext local function linkIfExists(titleText) 	if not titleText or titleText == &amp;quot;&amp;quot; then return &amp;quot;&amp;quot; end…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- Modul:Geburtsort&lt;br /&gt;
-- Benutzung in Vorlage: {{#invoke:Geburtsort|render|value={{{Geburtsort}}}|link=category}}&lt;br /&gt;
-- link=page (Standard) → auf Artikelseiten verlinken&lt;br /&gt;
-- link=category        → sichtbare Links zeigen direkt auf die Kategorien&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local trim = mw.text.trim&lt;br /&gt;
local lc   = mw.ustring.lower&lt;br /&gt;
&lt;br /&gt;
-- Link, wenn Seite existiert; sonst Plaintext&lt;br /&gt;
local function linkIfExists(titleText)&lt;br /&gt;
	if not titleText or titleText == &amp;quot;&amp;quot; then return &amp;quot;&amp;quot; end&lt;br /&gt;
	local title = mw.title.new(titleText)&lt;br /&gt;
	if title and title.exists then&lt;br /&gt;
		return string.format(&amp;quot;[[%s]]&amp;quot;, titleText)&lt;br /&gt;
	end&lt;br /&gt;
	return titleText&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Länder-Normalisierung&lt;br /&gt;
local countryNormalize = (function()&lt;br /&gt;
	local map = {}&lt;br /&gt;
	local function add(canonical, variants)&lt;br /&gt;
		for _, v in ipairs(variants) do map[lc(v)] = canonical end&lt;br /&gt;
	end&lt;br /&gt;
	add(&amp;quot;Deutschland&amp;quot;,    {&amp;quot;Deutschland&amp;quot;,&amp;quot;BRD&amp;quot;,&amp;quot;deutschland&amp;quot;})&lt;br /&gt;
	add(&amp;quot;USA&amp;quot;,            {&amp;quot;USA&amp;quot;,&amp;quot;Vereinigte Staaten&amp;quot;,&amp;quot;United States&amp;quot;,&amp;quot;US&amp;quot;,&amp;quot;Amerika&amp;quot;,&amp;quot;US-Amerika&amp;quot;,&amp;quot;vereinigte staaten&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Großbritannien&amp;quot;, {&amp;quot;Großbritannien&amp;quot;,&amp;quot;Grossbritannien&amp;quot;,&amp;quot;Vereinigtes Königreich&amp;quot;,&amp;quot;United Kingdom&amp;quot;,&amp;quot;UK&amp;quot;,&amp;quot;England&amp;quot;,&amp;quot;gb&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Österreich&amp;quot;,     {&amp;quot;Österreich&amp;quot;,&amp;quot;Oesterreich&amp;quot;,&amp;quot;österreich&amp;quot;,&amp;quot;oesterreich&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Schweiz&amp;quot;,        {&amp;quot;Schweiz&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Frankreich&amp;quot;,     {&amp;quot;Frankreich&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Italien&amp;quot;,        {&amp;quot;Italien&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Spanien&amp;quot;,        {&amp;quot;Spanien&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Niederlande&amp;quot;,    {&amp;quot;Niederlande&amp;quot;,&amp;quot;Holland&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Kanada&amp;quot;,         {&amp;quot;Kanada&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Belgien&amp;quot;,        {&amp;quot;Belgien&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Dänemark&amp;quot;,       {&amp;quot;Dänemark&amp;quot;,&amp;quot;Daenemark&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Schweden&amp;quot;,       {&amp;quot;Schweden&amp;quot;})&lt;br /&gt;
	add(&amp;quot;Norwegen&amp;quot;,       {&amp;quot;Norwegen&amp;quot;})&lt;br /&gt;
	return map&lt;br /&gt;
end)()&lt;br /&gt;
&lt;br /&gt;
-- Länderkategorie (mit Beugung nach &amp;quot;Geboren in &amp;quot;)&lt;br /&gt;
local countryCatSuffix = {&lt;br /&gt;
	[&amp;quot;Deutschland&amp;quot;]    = &amp;quot;Deutschland&amp;quot;,&lt;br /&gt;
	[&amp;quot;USA&amp;quot;]            = &amp;quot;den USA&amp;quot;,&lt;br /&gt;
	[&amp;quot;Großbritannien&amp;quot;] = &amp;quot;Großbritannien&amp;quot;,&lt;br /&gt;
	[&amp;quot;Österreich&amp;quot;]     = &amp;quot;Österreich&amp;quot;,&lt;br /&gt;
	[&amp;quot;Schweiz&amp;quot;]        = &amp;quot;der Schweiz&amp;quot;,&lt;br /&gt;
	[&amp;quot;Frankreich&amp;quot;]     = &amp;quot;Frankreich&amp;quot;,&lt;br /&gt;
	[&amp;quot;Italien&amp;quot;]        = &amp;quot;Italien&amp;quot;,&lt;br /&gt;
	[&amp;quot;Spanien&amp;quot;]        = &amp;quot;Spanien&amp;quot;,&lt;br /&gt;
	[&amp;quot;Niederlande&amp;quot;]    = &amp;quot;den Niederlanden&amp;quot;,&lt;br /&gt;
	[&amp;quot;Kanada&amp;quot;]         = &amp;quot;Kanada&amp;quot;,&lt;br /&gt;
	[&amp;quot;Belgien&amp;quot;]        = &amp;quot;Belgien&amp;quot;,&lt;br /&gt;
	[&amp;quot;Dänemark&amp;quot;]       = &amp;quot;Dänemark&amp;quot;,&lt;br /&gt;
	[&amp;quot;Schweden&amp;quot;]       = &amp;quot;Schweden&amp;quot;,&lt;br /&gt;
	[&amp;quot;Norwegen&amp;quot;]       = &amp;quot;Norwegen&amp;quot;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;Stadt, Land&amp;quot; am ersten Komma trennen&lt;br /&gt;
local function splitCityCountry(s)&lt;br /&gt;
	local parts = mw.text.split(s, &amp;quot;,&amp;quot;, true)&lt;br /&gt;
	local city = trim(parts[1] or &amp;quot;&amp;quot;)&lt;br /&gt;
	local country = &amp;quot;&amp;quot;&lt;br /&gt;
	if #parts &amp;gt;= 2 then&lt;br /&gt;
		local rest = {}&lt;br /&gt;
		for i = 2, #parts do rest[#rest+1] = parts[i] end&lt;br /&gt;
		country = trim(table.concat(rest, &amp;quot;,&amp;quot;))&lt;br /&gt;
	end&lt;br /&gt;
	return city, country&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.render(frame)&lt;br /&gt;
	-- Parameter lesen&lt;br /&gt;
	local value = frame.args.value&lt;br /&gt;
	if (not value or value == &amp;quot;&amp;quot;) and frame.getParent then&lt;br /&gt;
		local parent = frame:getParent()&lt;br /&gt;
		if parent then value = parent.args.value end&lt;br /&gt;
	end&lt;br /&gt;
	value = value and trim(value) or &amp;quot;&amp;quot;&lt;br /&gt;
	if value == &amp;quot;&amp;quot; then return &amp;quot;&amp;quot; end&lt;br /&gt;
&lt;br /&gt;
	local linkMode = (frame.args.link or &amp;quot;&amp;quot;):lower()  -- &amp;quot;page&amp;quot; (default) oder &amp;quot;category&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	-- Parsen &amp;amp; normalisieren&lt;br /&gt;
	local city, countryRaw = splitCityCountry(value)&lt;br /&gt;
	local countryNorm = nil&lt;br /&gt;
	if countryRaw ~= &amp;quot;&amp;quot; then&lt;br /&gt;
		countryNorm = countryNormalize[lc(countryRaw)] or countryRaw&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Anzeige-Links&lt;br /&gt;
	local cityView, countryView&lt;br /&gt;
	if linkMode == &amp;quot;category&amp;quot; then&lt;br /&gt;
		cityView = (city ~= &amp;quot;&amp;quot;) and string.format(&amp;quot;[[:Kategorie:Geboren in %s|%s]]&amp;quot;, city, city) or &amp;quot;&amp;quot;&lt;br /&gt;
		if countryNorm and countryNorm ~= &amp;quot;&amp;quot; then&lt;br /&gt;
			local suffix = countryCatSuffix[countryNorm] or countryNorm&lt;br /&gt;
			countryView = string.format(&amp;quot;[[:Kategorie:Geboren in %s|%s]]&amp;quot;, suffix, countryNorm)&lt;br /&gt;
		else&lt;br /&gt;
			countryView = &amp;quot;&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		cityView    = linkIfExists(city)&lt;br /&gt;
		countryView = (countryNorm and linkIfExists(countryNorm)) or &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Ausgabe zusammensetzen&lt;br /&gt;
	local out = {}&lt;br /&gt;
	out[#out+1] = cityView&lt;br /&gt;
	if countryView ~= &amp;quot;&amp;quot; then&lt;br /&gt;
		out[#out+1] = &amp;quot;, &amp;quot; .. countryView&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Kategorien setzen&lt;br /&gt;
	if city ~= &amp;quot;&amp;quot; then&lt;br /&gt;
		out[#out+1] = string.format(&amp;quot;\n[[Kategorie:Geboren in %s]]&amp;quot;, city)&lt;br /&gt;
	end&lt;br /&gt;
	if countryNorm and countryNorm ~= &amp;quot;&amp;quot; then&lt;br /&gt;
		local suffix = countryCatSuffix[countryNorm] or countryNorm&lt;br /&gt;
		out[#out+1] = string.format(&amp;quot;\n[[Kategorie:Geboren in %s]]&amp;quot;, suffix)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return table.concat(out)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Boobslover</name></author>
	</entry>
</feed>