Initial commit
This commit is contained in:
49
NerdePizza/NerdePizza.php
Normal file
49
NerdePizza/NerdePizza.php
Normal file
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
# Tidspunkt for neste nerdepizza
|
||||
|
||||
define('PVV_NESTE_PIZZA_ID', 'pvv_neste_pizza');
|
||||
|
||||
$wgHooks['LanguageGetMagic'][] = 'pvvMagicWords';
|
||||
function pvvMagicWords(&$magicWords, $lang) {
|
||||
$magicWords[PVV_NESTE_PIZZA_ID] = array(0, 'NestePizza');
|
||||
return true;
|
||||
}
|
||||
|
||||
$wgHooks['ParserGetVariableValueSwitch'][] = 'pvvVariableValues';
|
||||
function pvvVariableValues(&$parser, &$cache, &$magicWordId, &$ret) {
|
||||
if ($magicWordId == PVV_NESTE_PIZZA_ID) {
|
||||
$ret = pvvNestePizza();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function pvvNestePizza() {
|
||||
$time = time();
|
||||
$week = date('W');
|
||||
$weekday = date('N');
|
||||
if ($week % 2 == 0 && $weekday <= 5) {
|
||||
$daysUntilPizza = 5 - $weekday;
|
||||
} elseif ($week % 2 == 0 && $weekday > 5) {
|
||||
$daysUntilPizza = 5 - $weekday + 14;
|
||||
} else {
|
||||
$daysUntilPizza = 5 - $weekday + 7;
|
||||
}
|
||||
$pizzaTime = $time + $daysUntilPizza*24*3600;
|
||||
return 'Neste nerdepizza er fredag '
|
||||
. date('d.m.Y', $pizzaTime)
|
||||
. ' (' . $daysUntilPizza . ' dager igjen).';
|
||||
}
|
||||
|
||||
$wgExtensionCredits['variable'][] = array(
|
||||
'name' => 'NestePizza',
|
||||
'author' => 'Øystein Skartsæterhagen',
|
||||
'url' => 'http://wiki.pvv.ntnu.no/pvv/Nerdepizza',
|
||||
'description' => 'Gir datoen for neste nerdepizza'
|
||||
);
|
||||
|
||||
$wgHooks['MagicWordwgVariableIDs'][] = 'pvvDeclareVarIds';
|
||||
function pvvDeclareVarIds(&$aCustomVariableIds) {
|
||||
$aCustomVariableIds[] = PVV_NESTE_PIZZA_ID;
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user