https://www.droidwiki.org/w/index.php?title=Modul:Vorlage:FormatDate&feed=atom&action=history
Modul:Vorlage:FormatDate - Versionsgeschichte
2024-03-28T21:23:23Z
Versionsgeschichte dieser Seite in Android Wiki
MediaWiki 1.41.0-wmf.5
https://www.droidwiki.org/w/index.php?title=Modul:Vorlage:FormatDate&diff=15540&oldid=prev
Florian: 1 Version importiert
2016-08-17T19:30:20Z
<p>1 Version importiert</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="de">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 17. August 2016, 20:30 Uhr</td>
</tr>
<!-- diff cache key droidwikiwiki:diff::1.12:old-15539:rev-15540 -->
</table>
Florian
https://www.droidwiki.org/w/index.php?title=Modul:Vorlage:FormatDate&diff=15539&oldid=prev
dewiki>Antonsusi: Gemäß Diskussionsseite der Vorlage
2016-04-02T22:00:27Z
<p>Gemäß Diskussionsseite der Vorlage</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="de">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 2. April 2016, 23:00 Uhr</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l326">Zeile 326:</td>
<td colspan="2" class="diff-lineno">Zeile 326:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> function p.Execute(frame)</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> function p.Execute(frame)</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local FR = frame:getParent()</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local FR = frame:getParent()</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"> if frame:callParserFunction('int', 'lang' ) == 'de-at' then</ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"> FR.args['AT']='ja';</ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"> end</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> return Run(FR.args)</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> return Run(FR.args)</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> end</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> end</div></td></tr>
<!-- diff cache key droidwikiwiki:diff::1.12:old-11211:rev-15539 -->
</table>
dewiki>Antonsusi
https://www.droidwiki.org/w/index.php?title=Modul:Vorlage:FormatDate&diff=11211&oldid=prev
Florian: 1 Version importiert
2015-10-24T13:18:28Z
<p>1 Version importiert</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<tr class="diff-title" lang="de">
<td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">Version vom 24. Oktober 2015, 14:18 Uhr</td>
</tr><tr><td colspan="2" class="diff-notice" lang="de"><div class="mw-diff-empty">(kein Unterschied)</div>
</td></tr></table>
Florian
https://www.droidwiki.org/w/index.php?title=Modul:Vorlage:FormatDate&diff=11210&oldid=prev
dewiki>Antonsusi am 7. Oktober 2015 um 18:07 Uhr
2015-10-07T18:07:39Z
<p></p>
<a href="https://www.droidwiki.org/w/index.php?title=Modul:Vorlage:FormatDate&diff=11210&oldid=7528">Änderungen zeigen</a>
dewiki>Antonsusi
https://www.droidwiki.org/w/index.php?title=Modul:Vorlage:FormatDate&diff=7528&oldid=prev
Florian: 1 Version
2013-12-09T21:41:48Z
<p>1 Version</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<tr class="diff-title" lang="de">
<td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">Version vom 9. Dezember 2013, 22:41 Uhr</td>
</tr><tr><td colspan="2" class="diff-notice" lang="de"><div class="mw-diff-empty">(kein Unterschied)</div>
</td></tr></table>
Florian
https://www.droidwiki.org/w/index.php?title=Modul:Vorlage:FormatDate&diff=7490&oldid=prev
Florian: Die Seite wurde neu angelegt: „local p = {} -- Trennen der Parameter local function Split(str) local Datum = {} local Teil="" local pos = 0 Datum.y = 0 Datum.m = 0 Datum.d = 0 …“
2013-12-09T21:31:30Z
<p>Die Seite wurde neu angelegt: „local p = {} -- Trennen der Parameter local function Split(str) local Datum = {} local Teil="" local pos = 0 Datum.y = 0 Datum.m = 0 Datum.d = 0 …“</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<tr class="diff-title" lang="de">
<td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">Version vom 9. Dezember 2013, 22:31 Uhr</td>
</tr><tr><td colspan="2" class="diff-notice" lang="de"><div class="mw-diff-empty">(kein Unterschied)</div>
</td></tr></table>
Florian
https://www.droidwiki.org/w/index.php?title=Modul:Vorlage:FormatDate&diff=7527&oldid=prev
dewiki>Antonsusi am 3. Dezember 2013 um 17:36 Uhr
2013-12-03T17:36:57Z
<p></p>
<p><b>Neue Seite</b></p><div>local p = {}<br />
-- Trennen der Parameter<br />
local function Split(str)<br />
local Datum = {}<br />
local Teil=""<br />
local pos = 0<br />
Datum.y = 0<br />
Datum.m = 0<br />
Datum.d = 0<br />
pos = mw.ustring.find(str,'-',1,true);<br />
if pos == 1 then -- Minuszeichen am Anfang - nochmal suchen<br />
pos = mw.ustring.find(str,'-',2,true);<br />
end<br />
if not pos then -- Bereits am Stringende<br />
Datum.y = tonumber(str);<br />
if Datum.y then<br />
return true, Datum -- Nur eine Jahreszahl<br />
else<br />
return false, Datum -- Kein Wert erkennbar<br />
end<br />
end<br />
Teil = mw.ustring.sub(str,1,pos-1);<br />
Datum.y = tonumber(Teil) or 0;<br />
str = mw.ustring.sub(str,pos+1, -1);<br />
pos = mw.ustring.find(str,'-',1,true);<br />
if not pos or pos == 0 then<br />
return true, Datum; -- Nur Jahr<br />
end<br />
Teil = mw.ustring.sub(str,1,pos-1)<br />
Datum.m = tonumber(Teil) or 0<br />
Teil = mw.ustring.sub(str,pos+1, -1)<br />
if #Teil == 0 then<br />
return true, Datum; -- Nur Jahr und Monat<br />
end<br />
if Datum.m == 0 then<br />
Datum.d = 0;<br />
else<br />
Datum.d = tonumber(Teil) or 0;<br />
end<br />
return true, Datum;<br />
end<br />
--<br />
<br />
local function CheckDate(Date)<br />
-- Monatspruefung<br />
if Date.m == 0 then -- keine Pruefung<br />
return true;<br />
end<br />
if Date.m > 12 or Date.m < 1 then<br />
return false;<br />
end<br />
if Date.d == 0 then -- nur Monat angegeben, keine Tagespruefung<br />
return true;<br />
end<br />
if ( Date.m == 4 or Date.m == 6 or Date.m == 9 or Date.m == 11) and Date.d > 30 then<br />
return false;<br />
end<br />
if Date.m == 2 then -- Die greg. Sonderregeln werden ignoriert.<br />
if Date.y % 4 ~= 0 and Date.d > 28 then return false; end<br />
if Date.y % 4 == 0 and Date.d > 29 then return false; end<br />
end<br />
-- Hier nur noch 31-Tage-Monate übrig.<br />
if Date.d > 31 then return false; end<br />
return true;<br />
end<br />
--<br />
<br />
local function Run(Args)<br />
local T_L = {"Januar","Februar", "März", "April", "Mai","Juni", "Juli", "August","September","Oktober","November","Dezember","Jänner"}<br />
local T_M = {"Jan.","Feb.", "März", "Apr.", "Mai","Juni", "Juli", "Aug.","Sep.","Okt.","Nov.","Dez.","Jän."}<br />
local T_S = {"Jan.","Feb.", "Mrz.", "Apr.", "Mai","Jun.", "Jul.", "Aug.","Sep.","Okt.","Nov.","Dez.","Jän."}<br />
local Text = "";<br />
local TextYear = "";<br />
local TextMonth = "";<br />
local TextDay = "";<br />
local idxm = 0 ; -- Wegen der AT-Regel ein Extraindex fuer den Monat.<br />
local AT = false;<br />
local NBSP = false;<br />
local LINK = false;<br />
local VCHR = "";<br />
local STIL = 'L';<br />
local IsOk = true<br />
local Tbl = {}<br />
local SortIt = false;<br />
local Zero = false;<br />
local Numstr = "";<br />
local SortTag= "";<br />
local Arg2 = mw.ustring.lower(mw.text.trim(Args[2] or ""));<br />
local Arg3 = mw.ustring.lower(mw.text.trim(Args[3] or ""));<br />
local Arg4 = mw.ustring.lower(mw.text.trim(Args[4] or ""));<br />
local davor = mw.text.trim(Args['davor'] or "");<br />
if Arg2 == "nbsp" or Arg3 == "nbsp" or Arg4 == "nbsp" then NBSP = true; end<br />
if Arg2 == "link" or Arg3 == "link" or Arg4 == "link" then LINK = true; end<br />
if Arg2 == "l" or Arg3 == "l" or Arg4 == "l" then STIL = 'L'; end<br />
if Arg2 == "m" or Arg3 == "m" or Arg4 == "m" then STIL = 'M'; end<br />
if Arg2 == "s" or Arg3 == "s" or Arg4 == "s" then STIL = 'S'; end<br />
if mw.ustring.lower(mw.text.trim(Args['AT'] or "")) == "ja" then AT = true; end<br />
if mw.ustring.lower(mw.text.trim(Args['Zero'] or "")) ~= "" then Zero = true; end<br />
if mw.ustring.lower(mw.text.trim(Args['Sort'] or "")) ~= "" then SortIt = true; Zero = true; end<br />
if davor ~="" then davor = davor .. "&nbsp;"; end<br />
IsOk, Tbl = Split(Args[1])<br />
if not IsOk then<br />
Text = '<span class="error">[[Vorlage:FormatDate]]: Kein gültiges ISO-Datum!</span>'<br />
return Text<br />
end<br />
--Tag ohne Monat nicht erlaubt: Auch Tag auf Null setzen (= nur Jahr)<br />
if Tbl.m == 0 then<br />
Tbl.d = 0;<br />
end<br />
Tbl.y = tonumber(Tbl.y) or 0;<br />
if Tbl.y == 0 and Tbl.m == 0 and Tbl.d == 0 then<br />
Text = '<span class="error">[[Vorlage:FormatDate]]: Ungültiger Wert ("0-0-0") für das Datum! </span>'<br />
return Text<br />
end<br />
if Tbl.y < 0 then -- Jahr Null reserviert fuer "Nur Tag und Monat"<br />
Tbl.y = 0 - Tbl.y<br />
VCHR = ' v. Chr.';<br />
end<br />
<br />
IsOk = CheckDate(Tbl);<br />
if not IsOk then<br />
Text = '<span class="error">[[Vorlage:FormatDate]]: Ungültiges Datum!'.. table.concat(Tbl,'.')..'</span>'<br />
return Text<br />
end<br />
<br />
if Tbl.d > 0 then -- Tag angegeben, String erstellen<br />
TextDay = tostring(Tbl.d) .. '.&nbsp;'<br />
if Tbl.d < 10 and Zero then<br />
TextDay = '<span style="visibility:hidden;">0</span>' .. TextDay;<br />
end<br />
else<br />
TextDay = '';<br />
end<br />
<br />
if Tbl.m > 0 then -- Monat angegeben, String erstellen<br />
if AT and Tbl.m == 1 then<br />
idxm = 13<br />
else<br />
idxm = Tbl.m;<br />
end<br />
<br />
if STIL == 'S' then<br />
TextMonth = T_S[idxm] ;<br />
elseif STIL == 'M' then<br />
TextMonth = T_M[idxm] ;<br />
else<br />
TextMonth = T_L[idxm] ;<br />
end<br />
<br />
Text = TextDay .. TextMonth<br />
if LINK then<br />
if Tbl.d == 0 then<br />
Linkziel =T_L[Tbl.m]<br />
else<br />
Linkziel = tostring(Tbl.d) .. ". " .. T_L[Tbl.m]<br />
end<br />
Text = '[[' .. Linkziel .. '|' .. Text .. ']]';<br />
end<br />
end<br />
-- hier Tag und Monat zusammen, evtl. verlinkt<br />
<br />
if Tbl.y ~= 0 then<br />
if LINK then<br />
TextYear = '[[' .. tostring(Tbl.y) .. VCHR .. ']]';<br />
else<br />
TextYear = tostring(Tbl.y) .. VCHR;<br />
end<br />
if Tbl.m > 0 then<br />
if NBSP then<br />
TextYear = '&nbsp;' .. TextYear;<br />
else<br />
TextYear = ' ' .. TextYear;<br />
end<br />
end<br />
end<br />
Text = Text .. TextYear;<br />
<br />
if SortIt then<br />
if VCHR ~= "" then<br />
Tbl.y = 0 - Tbl.y<br />
end<br />
Numstr = string.format('%d%2.2d%2.2d',5000+Tbl.y,Tbl.m,Tbl.d);<br />
SortTag='<span style="display:none" class="sortkey">' .. Numstr .. '</span>';<br />
Text = SortTag .. davor .. Text;<br />
end<br />
return Text<br />
end<br />
--<br />
<br />
function p.Execute(frame)<br />
local FR = frame:getParent()<br />
return Run(FR.args)<br />
end<br />
<br />
function p.Sort(frame)<br />
local FR = frame:getParent()<br />
FR.args.Sort='1'<br />
return Run(FR.args)<br />
end<br />
return p</div>
dewiki>Antonsusi