You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.6 KiB
Plaintext
59 lines
1.6 KiB
Plaintext
19 years ago
|
#!/usr/bin/env ruby
|
||
|
require 'mediawikibot'
|
||
|
|
||
|
if ARGV.size() != 2
|
||
|
$stderr.print($0 + " <wiki-user> <wiki-password>\n")
|
||
|
exit(1)
|
||
|
end
|
||
|
|
||
|
b = MediaWikiBot::WikiBot.new("http://www.entropia.de/wiki/")
|
||
|
b.login(ARGV[0], ARGV[1])
|
||
|
|
||
|
termine = []
|
||
|
|
||
|
#----------------------------------------------------------------------------
|
||
|
|
||
|
template = "Vorlage:Radio Chaotica-Sendung"
|
||
|
b.get_what_uses_template(template).each do |page|
|
||
|
if erste_sendung = b.parse_template(page, template)["erste_sendung"]
|
||
|
termin = {}
|
||
|
termin["datum"] = erste_sendung.gsub(/\s*um\s*\d+:\d+$/,"")
|
||
|
termin["uhrzeit"] = "16:00"
|
||
|
termin["beschreibung"] = "[[" + page + "]]"
|
||
|
termin["ort"] = "[http://www.querfunk.de Querfunk]"
|
||
|
termine.push(termin)
|
||
|
else
|
||
|
$stderr.print(page, ": erste_sendung nicht gesetzt")
|
||
|
end
|
||
|
end
|
||
|
|
||
|
#----------------------------------------------------------------------------
|
||
|
|
||
|
template = "Vorlage:Termin"
|
||
|
b.get_what_uses_template(template).each do |page|
|
||
|
termin = b.parse_template(page, template)
|
||
|
termine.push(termin)
|
||
|
end
|
||
|
|
||
|
#----------------------------------------------------------------------------
|
||
|
|
||
|
|
||
|
termine = termine.sort do |x,y|
|
||
|
def datum2isodate(datum)
|
||
|
isodate = datum[6..9] + "-" + datum[3..4] + "-" + datum[0..1]
|
||
|
end
|
||
|
datum2isodate(x["datum"]) <=> datum2isodate(y["datum"])
|
||
|
end
|
||
|
|
||
|
body = '{| border=1 cellspacing="0" cellpadding="5" style="border-collapse:collapse;"'
|
||
|
body += "\n"
|
||
|
termine.each do |termin|
|
||
|
body += "| " + termin["datum"] + "\n"
|
||
|
body += "| " + termin["beschreibung"] + "\n"
|
||
|
body += "|-\n"
|
||
|
end
|
||
|
body += "|}"
|
||
|
|
||
|
#puts body
|
||
|
b.edit("Benutzer:Neingeist/Termine", body, "Test")
|