17.831
Bearbeitungen
Keine Bearbeitungszusammenfassung |
(fix kal.month_names[) |
||
| (8 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
local p = {} | local p = {} | ||
local | |||
local com = require("Modul:Common") | |||
local str = require("Modul:String") | local str = require("Modul:String") | ||
local arr = require("Modul:Array") | local arr = require("Modul:Array") | ||
local kal = require("Modul:Kalender") | |||
function p.Kalender(frame) | function p.Kalender(frame) | ||
local | local args = frame:getParent().args | ||
local title = mw.title.getCurrentTitle().text | |||
local | local ma = str.split(title, '.') | ||
local ma=str.split( | local day, month, month_nr | ||
local day | local md, mu -- month down/month up | ||
local month | if com.len(ma) == 1 then | ||
if | |||
day = 0 | day = 0 | ||
month = ma[1] | month = ma[1] | ||
| Zeile 19: | Zeile 20: | ||
end | end | ||
month_nr = kal.month_numbers[month] | |||
t='<table class="wikitable monatsbox">'.. | local t='<table class="wikitable monatsbox">'.. | ||
'<tr>' | |||
-- Von Januar aus wieder auf Dezember springen | -- Von Januar aus wieder auf Dezember springen | ||
md = month_nr-1 | md = month_nr - 1 | ||
if md == 0 then | if md == 0 then | ||
md = 12 | md = 12 | ||
| Zeile 38: | Zeile 34: | ||
t=t..'<th>[[' | t=t..'<th>[[' | ||
if day ~= 0 then | if day ~= 0 then | ||
mds = day..'. '.. | mds = day..'. '..kal.month_names[md] | ||
for i = 0, 2 do | for i = 0, 2 do | ||
mds = tostring(day-i)..'. '.. | mds = tostring(day-i)..'. '..kal.month_names[md] | ||
if mw.title.new(mds).exists then | if mw.title.new(mds).exists then | ||
break | break | ||
| Zeile 47: | Zeile 43: | ||
t=t..mds | t=t..mds | ||
else | else | ||
t=t..':Kategorie:'.. | t=t..':Kategorie:'..kal.month_names[md] | ||
end | end | ||
t=t..'|◄]]</th>'.. | t=t..'|◄]]</th>'.. | ||
| Zeile 53: | Zeile 49: | ||
-- Von Dezember aus wieder auf Januar springen | -- Von Dezember aus wieder auf Januar springen | ||
mu = month_nr+1 | mu = month_nr + 1 | ||
if mu == 13 then | if mu == 13 then | ||
mu = 1 | mu = 1 | ||
| Zeile 61: | Zeile 57: | ||
t=t..'<th>[[' | t=t..'<th>[[' | ||
if day ~= 0 then | if day ~= 0 then | ||
mus = day..'. '.. | mus = day..'. '..kal.month_names[mu] | ||
for i = 0, 2 do | for i = 0, 2 do | ||
mus = tostring(day-i)..'. '.. | mus = tostring(day-i)..'. '..kal.month_names[mu] | ||
if mw.title.new(mus).exists then | if mw.title.new(mus).exists then | ||
break | break | ||
| Zeile 70: | Zeile 66: | ||
t=t..mus | t=t..mus | ||
else | else | ||
t=t..':Kategorie:'.. | t=t..':Kategorie:'..kal.month_names[mu] | ||
end | end | ||
t=t..'|►]]</th>' | t=t..'|►]]</th>' | ||
-- A weng ungampert, aber funktioniert ;-) | -- A weng ungampert, aber funktioniert ;-) | ||
t=t.. | t=t..p.woche(1, month) .. | ||
p.woche(8, month) .. | |||
p.woche(15, month) .. | |||
p.woche(22, month) .. | |||
p.woche(29, month) | |||
t=t..'</table>' | t=t..'</table>' | ||
return t | return t | ||
end | end | ||
function | function p.woche(day, month) | ||
a=6 | local a = 6 | ||
if | if day == 29 then | ||
if arr.contains({'April', 'Juni', 'September', 'November'}, month) then | if arr.contains({'April', 'Juni', 'September', 'November'}, month) then | ||
a=1 | a=1 | ||
| Zeile 96: | Zeile 92: | ||
end | end | ||
t = '<tr>' | local t = '<tr>' | ||
for i= | for i=day, day + a do | ||
t=t..'<td align="right">[['..i..'. '..month..'|'..i..']]</td>' | t = t .. '<td align="right">[['..i..'. ' .. month .. '|' .. i .. ']]</td>' | ||
end | end | ||
t = t..'</tr>' | t = t..'</tr>' | ||
return t | return t | ||
end | end | ||
return p | return p | ||