German translation of error messages.
[philipp/winterrodeln/mediawiki_extensions/wrreport.git] / wrreport.php
1 <?php
2 // File encoding: utf-8
3 // This extension does not depend on other extensions.
4 //
5 // The following tags are supported:
6 // <bahnentabelle/>
7 //     Creates an overview table of all sledruns specified (one per line) in the tag.
8 //
9 // <bahnenregiontabelle/>
10 //     Like <bahnentabelle> but includes all sledruns that are in the region of the current page
11 //     or in the region specified by one of the following parameters:
12 //         <bahnenregiontabelle wiki="Innsbruck" /> (refers to region represented by the MediaWiki Title name)
13 //         <bahnenregiontabelle region_id="3" /> (refers to id in the wrregion table)
14 //         <bahnenregiontabelle region_name="Innsbruck" /> (refers to name in the wrregion table)
15 //     This tag does not accept any contents.
16 //
17 // <bahnberichte/>
18 //     Shows an overview of the sledrun reports of the current page.
19 //
20 // <bahnberichtformular/>
21 //     Creates the form that is used to enter sledrun reports.
22 //
23 // <rodelbahntabelle/>
24 //     Generates a list of sledrun entries in a flexible way.
25 //
26 //     Examples:
27 //     Empty list:
28 //         <rodelbahntabelle/>
29 //
30 //     Sledrun "Rumer Alm" and sledrun "Juifenalm"
31 //         <rodelbahntabelle>
32 //             <rodelbahn>Juifenalm</rodelbahn>
33 //             <rodelbahn>Rumer Alm</rodelbahn>
34 //         </rodelbahntabelle>
35 //
36 //     All sledruns in region Innsbruck
37 //         <rodelbahntabelle>
38 //             <region>Innsbruck</region>
39 //         </rodelbahntabelle>
40 //
41 //     All sledruns in region Innsbruck thats entries are not "under construction"
42 //         <rodelbahntabelle>
43 //             <region>Innsbruck</region>
44 //             <rodelbahn operation="-">Rumer Alm</rodelbahn>
45 //         </rodelbahntabelle>
46 //
47 //     All sledruns thats entries are "under construction"
48 //         <rodelbahntabelle>
49 //             <rodelbahnen in_arbeit="ja"/>
50 //         </rodelbahntabelle>
51 //
52 //     Attributes:
53 //         * in_arbeit: values "ja" "nein" (default for region and rodelbahnen), "*" (default for rodelbahn)
54 //             Just include the sledrun(s) if the condition is fulfilled.
55 //         * operation: values "+" (add the sledrun to the set, default), "-" (subtract the sledrun from the set)
56 //     Attributes that may be implemented later
57 //         * beleuchtungstage: values "0", "unknown" (is null), ">0" (excludes null), "7", "*" (includes null)
58 //             Just include the sledrun(s) if the condition is fulfilled.
59 //
60
61 # Alert the user that this is not a valid entry point to MediaWiki if they try to access the special pages file directly.
62 if (!defined('MEDIAWIKI')) {
63         echo "To install the wrreport extension, put the following line in LocalSettings.php:\n";
64         echo 'require_once "$IP/extensions/wrreport/wrreport.php"';
65         exit(1);
66 }
67
68
69 $wgExtensionCredits['parserhook'][] = array(
70         'path' => __FILE__,
71         'name' => 'Winterrodeln Report',
72         'description' => 'Interprets the <report/> tag in sledrun pages and creates report summaries',
73         'descriptionmsg' => 'wrreport-description',
74         'version' => '2.7.0',
75         'author' =>'Philipp Spitzer',
76         'url' => 'http://www.winterrodeln.org/trac/wiki/WrReport',
77 );
78
79
80 // Variables that can be changed in LocalSettings.php
81 $wgWrReportMode = 'allow'; // 'summer', 'allow', 'loggedin', 'deny'
82 $wgWrReportBlackListAll = array(); // array of page names where reports disallowed for all users. Example: array('Birgitzer Alm (vom Adelshof)');
83 $wgWrReportBlackListStrangers = array(); // array of page names where reports are disallowed for not logged in users
84 $wgWrReportDeleteMode = 'loggedin'; // 'allow', 'loggedin', 'deny'
85 $wgWrReportFeedRoot = 'http://www.winterrodeln.org/feed'; // root URL of the Winterrodeln feed without trailing slash
86
87
88
89 // Resources
90 $wgResourceModules['ext.wrreport'] = array(
91         'styles' => array('wrreport.css'),
92         'localBasePath' => dirname( __FILE__ ),
93         'remoteExtPath' => 'wrreport',
94         'position' => 'top'
95 );
96
97
98 // Init
99 $wgAutoloadClasses['SpecialWrReport'] = dirname(__FILE__) . '/wrreport.body.php';
100 $wgAutoloadClasses['WrReport'] = dirname(__FILE__) . '/wrreport.body.php';
101 $wgAutoloadClasses['Services_Libravatar'] = dirname(__FILE__) . '/libravatar.php'; // from http://pear.php.net/package/Services_Libravatar
102 $wgExtensionMessagesFiles['wrreport'] = dirname(__FILE__) . '/wrreport.i18n.php';
103 $wgSpecialPages['wrreport'] = 'SpecialWrReport';
104 $wgHooks['LanguageGetSpecialPageAliases'][] = 'WrReportLanguageGetSpecialPageAliasesHook';
105 $wgHooks['ParserFirstCallInit'][] = 'WrReportParserFirstCallInitHook';
106
107
108 function WrReportLanguageGetSpecialPageAliasesHook(&$specialPageArray, $languageCode) {
109         $text = wfMessage('wrreport')->text(); // 'Bahnberichte'
110         $title = Title::newFromText($text); // 'Bahnberichte'
111         $specialPageArray['wrreport'][] = $title->getDBKey(); // 'Bahnberichte'
112         return true;
113 }
114
115
116 function WrReportParserFirstCallInitHook(&$parser) {
117         $parser->setHook('bahnberichtformular', 'WrReport::bahnberichtformularParserHook');
118         $parser->setHook('bahnberichte', 'WrReport::bahnberichteParserHook');
119         $parser->setHook('bahnentabelle', 'WrReport::bahnentabelleParserHook');
120         $parser->setHook('bahnenregiontabelle', 'WrReport::bahnenregiontabelleParserHook');
121         $parser->setHook('rodelbahntabelle', 'WrReport::rodelbahntabelleParserHook');
122         $parser->setHook('avatar', 'WrReport::avatarParserHook');
123         return true;
124 }
125
126
127 ?>