]> scripts.mit.edu Git - autoinstallsdev/mediawiki.git/blob - includes/AutoLoader.php
MediaWiki 1.14.0
[autoinstallsdev/mediawiki.git] / includes / AutoLoader.php
1 <?php
2
3 /* This defines autoloading handler for whole MediaWiki framework */
4
5 ini_set('unserialize_callback_func', '__autoload' );
6
7 # Locations of core classes
8 # Extension classes are specified with $wgAutoloadClasses
9 # This array is a global instead of a static member of AutoLoader to work around a bug in APC
10 global $wgAutoloadLocalClasses;
11 $wgAutoloadLocalClasses = array(
12         # Includes
13         'AjaxDispatcher' => 'includes/AjaxDispatcher.php',
14         'AjaxResponse' => 'includes/AjaxResponse.php',
15         'AlphabeticPager' => 'includes/Pager.php',
16         'APCBagOStuff' => 'includes/BagOStuff.php',
17         'Article' => 'includes/Article.php',
18         'AtomFeed' => 'includes/Feed.php',
19         'AuthPlugin' => 'includes/AuthPlugin.php',
20         'AuthPluginUser' => 'includes/AuthPlugin.php',
21         'Autopromote' => 'includes/Autopromote.php',
22         'BagOStuff' => 'includes/BagOStuff.php',
23         'Block' => 'includes/Block.php',
24         'CacheDependency' => 'includes/CacheDependency.php',
25         'Category' => 'includes/Category.php',
26         'Categoryfinder' => 'includes/Categoryfinder.php',
27         'CategoryPage' => 'includes/CategoryPage.php',
28         'CategoryViewer' => 'includes/CategoryPage.php',
29         'ChangesList' => 'includes/ChangesList.php',
30         'ChangesFeed' => 'includes/ChangesFeed.php',
31         'ChannelFeed' => 'includes/Feed.php',
32         'ConcatenatedGzipHistoryBlob' => 'includes/HistoryBlob.php',
33         'ConstantDependency' => 'includes/CacheDependency.php',
34         'CreativeCommonsRdf' => 'includes/Metadata.php',
35         'Credits' => 'includes/Credits.php',
36         'DBABagOStuff' => 'includes/BagOStuff.php',
37         'DependencyWrapper' => 'includes/CacheDependency.php',
38         'DiffHistoryBlob' => 'includes/HistoryBlob.php',
39         'DjVuImage' => 'includes/DjVuImage.php',
40         'DoubleReplacer' => 'includes/StringUtils.php',
41         'DoubleRedirectJob' => 'includes/DoubleRedirectJob.php',
42         'DublinCoreRdf' => 'includes/Metadata.php',
43         'Dump7ZipOutput' => 'includes/Export.php',
44         'DumpBZip2Output' => 'includes/Export.php',
45         'DumpFileOutput' => 'includes/Export.php',
46         'DumpFilter' => 'includes/Export.php',
47         'DumpGZipOutput' => 'includes/Export.php',
48         'DumpLatestFilter' => 'includes/Export.php',
49         'DumpMultiWriter' => 'includes/Export.php',
50         'DumpNamespaceFilter' => 'includes/Export.php',
51         'DumpNotalkFilter' => 'includes/Export.php',
52         'DumpOutput' => 'includes/Export.php',
53         'DumpPipeOutput' => 'includes/Export.php',
54         'eAccelBagOStuff' => 'includes/BagOStuff.php',
55         'EditPage' => 'includes/EditPage.php',
56         'EmaillingJob' => 'includes/EmaillingJob.php',
57         'EmailNotification' => 'includes/UserMailer.php',
58         'EnhancedChangesList' => 'includes/ChangesList.php',
59         'EnotifNotifyJob' => 'includes/EnotifNotifyJob.php',
60         'ErrorPageError' => 'includes/Exception.php',
61         'Exif' => 'includes/Exif.php',
62         'ExplodeIterator' => 'includes/StringUtils.php',
63         'ExternalEdit' => 'includes/ExternalEdit.php',
64         'ExternalStoreDB' => 'includes/ExternalStoreDB.php',
65         'ExternalStoreHttp' => 'includes/ExternalStoreHttp.php',
66         'ExternalStore' => 'includes/ExternalStore.php',
67         'FatalError' => 'includes/Exception.php',
68         'FakeTitle' => 'includes/FakeTitle.php',
69         'FauxRequest' => 'includes/WebRequest.php',
70         'FeedItem' => 'includes/Feed.php',
71         'FeedUtils' => 'includes/FeedUtils.php',
72         'FileDeleteForm' => 'includes/FileDeleteForm.php',
73         'FileDependency' => 'includes/CacheDependency.php',
74         'FileRevertForm' => 'includes/FileRevertForm.php',
75         'FileStore' => 'includes/FileStore.php',
76         'FormatExif' => 'includes/Exif.php',
77         'FormOptions' => 'includes/FormOptions.php',
78         'FSException' => 'includes/FileStore.php',
79         'FSTransaction' => 'includes/FileStore.php',
80         'GlobalDependency' => 'includes/CacheDependency.php',
81         'HashBagOStuff' => 'includes/BagOStuff.php',
82         'HashtableReplacer' => 'includes/StringUtils.php',
83         'HistoryBlobCurStub' => 'includes/HistoryBlob.php',
84         'HistoryBlob' => 'includes/HistoryBlob.php',
85         'HistoryBlobStub' => 'includes/HistoryBlob.php',
86         'HTMLCacheUpdate' => 'includes/HTMLCacheUpdate.php',
87         'HTMLCacheUpdateJob' => 'includes/HTMLCacheUpdate.php',
88         'HTMLFileCache' => 'includes/HTMLFileCache.php',
89         'Http' => 'includes/HttpFunctions.php',
90         'IEContentAnalyzer' => 'includes/IEContentAnalyzer.php',
91         'ImageGallery' => 'includes/ImageGallery.php',
92         'ImageHistoryList' => 'includes/ImagePage.php',
93         'ImagePage' => 'includes/ImagePage.php',
94         'ImageQueryPage' => 'includes/ImageQueryPage.php',
95         'IncludableSpecialPage' => 'includes/SpecialPage.php',
96         'IndexPager' => 'includes/Pager.php',
97         'Interwiki' => 'includes/Interwiki.php',
98         'IP' => 'includes/IP.php',
99         'Job' => 'includes/JobQueue.php',
100         'License' => 'includes/Licenses.php',
101         'Licenses' => 'includes/Licenses.php',
102         'LinkBatch' => 'includes/LinkBatch.php',
103         'LinkCache' => 'includes/LinkCache.php',
104         'Linker' => 'includes/Linker.php',
105         'LinkFilter' => 'includes/LinkFilter.php',
106         'LinksUpdate' => 'includes/LinksUpdate.php',
107         'LogPage' => 'includes/LogPage.php',
108         'LogPager' => 'includes/LogEventsList.php',
109         'LogEventsList' => 'includes/LogEventsList.php',
110         'LogReader' => 'includes/LogEventsList.php',
111         'LogViewer' => 'includes/LogEventsList.php',
112         'MacBinary' => 'includes/MacBinary.php',
113         'MagicWordArray' => 'includes/MagicWord.php',
114         'MagicWord' => 'includes/MagicWord.php',
115         'MailAddress' => 'includes/UserMailer.php',
116         'MathRenderer' => 'includes/Math.php',
117         'MediaTransformError' => 'includes/MediaTransformOutput.php',
118         'MediaTransformOutput' => 'includes/MediaTransformOutput.php',
119         'MediaWikiBagOStuff' => 'includes/BagOStuff.php',
120         'MediaWiki_I18N' => 'includes/SkinTemplate.php',
121         'MediaWiki' => 'includes/Wiki.php',
122         'memcached' => 'includes/memcached-client.php',
123         'MessageCache' => 'includes/MessageCache.php',
124         'MimeMagic' => 'includes/MimeMagic.php',
125         'MWException' => 'includes/Exception.php',
126         'MWNamespace' => 'includes/Namespace.php',
127         'MySQLSearchResultSet' => 'includes/SearchMySQL.php',
128         'Namespace' => 'includes/NamespaceCompat.php', // Compat
129         'OldChangesList' => 'includes/ChangesList.php',
130         'OracleSearchResultSet' => 'includes/SearchOracle.php',
131         'OutputPage' => 'includes/OutputPage.php',
132         'PageHistory' => 'includes/PageHistory.php',
133         'PageHistoryPager' => 'includes/PageHistory.php',
134         'PageQueryPage' => 'includes/PageQueryPage.php',
135         'Pager' => 'includes/Pager.php',
136         'PasswordError' => 'includes/User.php',
137         'PatrolLog' => 'includes/PatrolLog.php',
138         'PostgresSearchResult' => 'includes/SearchPostgres.php',
139         'PostgresSearchResultSet' => 'includes/SearchPostgres.php',
140         'PrefixSearch' => 'includes/PrefixSearch.php',
141         'Profiler' => 'includes/Profiler.php',
142         'ProfilerSimple' => 'includes/ProfilerSimple.php',
143         'ProfilerSimpleText' => 'includes/ProfilerSimpleText.php',
144         'ProfilerSimpleUDP' => 'includes/ProfilerSimpleUDP.php',
145         'ProtectionForm' => 'includes/ProtectionForm.php',
146         'QueryPage' => 'includes/QueryPage.php',
147         'QuickTemplate' => 'includes/SkinTemplate.php',
148         'RawPage' => 'includes/RawPage.php',
149         'RCCacheEntry' => 'includes/ChangesList.php',
150         'RdfMetaData' => 'includes/Metadata.php',
151         'RecentChange' => 'includes/RecentChange.php',
152         'RefreshLinksJob' => 'includes/RefreshLinksJob.php',
153         'RefreshLinksJob2' => 'includes/RefreshLinksJob.php',
154         'RegexlikeReplacer' => 'includes/StringUtils.php',
155         'ReplacementArray' => 'includes/StringUtils.php',
156         'Replacer' => 'includes/StringUtils.php',
157         'ReverseChronologicalPager' => 'includes/Pager.php',
158         'Revision' => 'includes/Revision.php',
159         'RSSFeed' => 'includes/Feed.php',
160         'Sanitizer' => 'includes/Sanitizer.php',
161         'SearchEngineDummy' => 'includes/SearchEngine.php',
162         'SearchEngine' => 'includes/SearchEngine.php',
163         'SearchHighlighter' => 'includes/SearchEngine.php',
164         'SearchMySQL4' => 'includes/SearchMySQL4.php',
165         'SearchMySQL' => 'includes/SearchMySQL.php',
166         'SearchOracle' => 'includes/SearchOracle.php',
167         'SearchPostgres' => 'includes/SearchPostgres.php',
168         'SearchResult' => 'includes/SearchEngine.php',
169         'SearchResultSet' => 'includes/SearchEngine.php',
170         'SearchResultTooMany' => 'includes/SearchEngine.php',
171         'SearchUpdate' => 'includes/SearchUpdate.php',
172         'SearchUpdateMyISAM' => 'includes/SearchUpdate.php',
173         'SiteConfiguration' => 'includes/SiteConfiguration.php',
174         'SiteStats' => 'includes/SiteStats.php',
175         'SiteStatsUpdate' => 'includes/SiteStats.php',
176         'Skin' => 'includes/Skin.php',
177         'SkinTemplate' => 'includes/SkinTemplate.php',
178         'SpecialMycontributions' => 'includes/SpecialPage.php',
179         'SpecialMypage' => 'includes/SpecialPage.php',
180         'SpecialMytalk' => 'includes/SpecialPage.php',
181         'SpecialPage' => 'includes/SpecialPage.php',
182         'SpecialRedirectToSpecial' => 'includes/SpecialPage.php',
183         'SqlBagOStuff' => 'includes/BagOStuff.php',
184         'SquidUpdate' => 'includes/SquidUpdate.php',
185         'Status' => 'includes/Status.php',
186         'StringUtils' => 'includes/StringUtils.php',
187         'TablePager' => 'includes/Pager.php',
188         'ThumbnailImage' => 'includes/MediaTransformOutput.php',
189         'TitleDependency' => 'includes/CacheDependency.php',
190         'Title' => 'includes/Title.php',
191         'TitleArray' => 'includes/TitleArray.php',
192         'TitleListDependency' => 'includes/CacheDependency.php',
193         'TransformParameterError' => 'includes/MediaTransformOutput.php',
194         'TurckBagOStuff' => 'includes/BagOStuff.php',
195         'UnlistedSpecialPage' => 'includes/SpecialPage.php',
196         'UploadBase' => 'includes/UploadBase.php',
197         'UploadFromStash' => 'includes/UploadFromStash.php',
198         'UploadFromUpload' => 'includes/UploadFromUpload.php',
199         'UploadFromUrl' => 'includes/UploadFromUrl.php',
200         'User' => 'includes/User.php',
201         'UserArray' => 'includes/UserArray.php',
202         'UserArrayFromResult' => 'includes/UserArray.php',
203         'UserMailer' => 'includes/UserMailer.php',
204         'UserRightsProxy' => 'includes/UserRightsProxy.php',
205         'WatchedItem' => 'includes/WatchedItem.php',
206         'WatchlistEditor' => 'includes/WatchlistEditor.php',
207         'WebRequest' => 'includes/WebRequest.php',
208         'WebResponse' => 'includes/WebResponse.php',
209         'WikiError' => 'includes/WikiError.php',
210         'WikiErrorMsg' => 'includes/WikiError.php',
211         'WikiExporter' => 'includes/Export.php',
212         'WikiXmlError' => 'includes/WikiError.php',
213         'XCacheBagOStuff' => 'includes/BagOStuff.php',
214         'XmlDumpWriter' => 'includes/Export.php',
215         'Xml' => 'includes/Xml.php',
216         'XmlSelect' => 'includes/Xml.php',
217         'XmlTypeCheck' => 'includes/XmlTypeCheck.php',
218         'ZhClient' => 'includes/ZhClient.php',
219
220         # includes/api
221         'ApiBase' => 'includes/api/ApiBase.php',
222         'ApiBlock' => 'includes/api/ApiBlock.php',
223         'ApiDelete' => 'includes/api/ApiDelete.php',
224         'ApiDisabled' => 'includes/api/ApiDisabled.php',
225         'ApiEditPage' => 'includes/api/ApiEditPage.php',
226         'ApiEmailUser' => 'includes/api/ApiEmailUser.php',
227         'ApiExpandTemplates' => 'includes/api/ApiExpandTemplates.php',
228         'ApiFeedWatchlist' => 'includes/api/ApiFeedWatchlist.php',
229         'ApiFormatBase' => 'includes/api/ApiFormatBase.php',
230         'ApiFormatDbg' => 'includes/api/ApiFormatDbg.php',
231         'ApiFormatFeedWrapper' => 'includes/api/ApiFormatBase.php',
232         'ApiFormatJson' => 'includes/api/ApiFormatJson.php',
233         'ApiFormatPhp' => 'includes/api/ApiFormatPhp.php',
234         'ApiFormatTxt' => 'includes/api/ApiFormatTxt.php',
235         'ApiFormatWddx' => 'includes/api/ApiFormatWddx.php',
236         'ApiFormatXml' => 'includes/api/ApiFormatXml.php',
237         'ApiFormatYaml' => 'includes/api/ApiFormatYaml.php',
238         'ApiHelp' => 'includes/api/ApiHelp.php',
239         'ApiLogin' => 'includes/api/ApiLogin.php',
240         'ApiLogout' => 'includes/api/ApiLogout.php',
241         'ApiMain' => 'includes/api/ApiMain.php',
242         'ApiMove' => 'includes/api/ApiMove.php',
243         'ApiOpenSearch' => 'includes/api/ApiOpenSearch.php',
244         'ApiPageSet' => 'includes/api/ApiPageSet.php',
245         'ApiParamInfo' => 'includes/api/ApiParamInfo.php',
246         'ApiParse' => 'includes/api/ApiParse.php',
247         'ApiPatrol' => 'includes/api/ApiPatrol.php',
248         'ApiProtect' => 'includes/api/ApiProtect.php',
249         'ApiPurge' => 'includes/api/ApiPurge.php',
250         'ApiQuery' => 'includes/api/ApiQuery.php',
251         'ApiQueryAllCategories' => 'includes/api/ApiQueryAllCategories.php',
252         'ApiQueryAllimages' => 'includes/api/ApiQueryAllimages.php',
253         'ApiQueryAllLinks' => 'includes/api/ApiQueryAllLinks.php',
254         'ApiQueryAllUsers' => 'includes/api/ApiQueryAllUsers.php',
255         'ApiQueryAllmessages' => 'includes/api/ApiQueryAllmessages.php',
256         'ApiQueryAllpages' => 'includes/api/ApiQueryAllpages.php',
257         'ApiQueryBacklinks' => 'includes/api/ApiQueryBacklinks.php',
258         'ApiQueryBase' => 'includes/api/ApiQueryBase.php',
259         'ApiQueryBlocks' => 'includes/api/ApiQueryBlocks.php',
260         'ApiQueryCategories' => 'includes/api/ApiQueryCategories.php',
261         'ApiQueryCategoryInfo' => 'includes/api/ApiQueryCategoryInfo.php',
262         'ApiQueryCategoryMembers' => 'includes/api/ApiQueryCategoryMembers.php',
263         'ApiQueryContributions' => 'includes/api/ApiQueryUserContributions.php',
264         'ApiQueryDeletedrevs' => 'includes/api/ApiQueryDeletedrevs.php',
265         'ApiQueryDisabled' => 'includes/api/ApiQueryDisabled.php',
266         'ApiQueryDuplicateFiles' => 'includes/api/ApiQueryDuplicateFiles.php',
267         'ApiQueryExtLinksUsage' => 'includes/api/ApiQueryExtLinksUsage.php',
268         'ApiQueryExternalLinks' => 'includes/api/ApiQueryExternalLinks.php',
269         'ApiQueryGeneratorBase' => 'includes/api/ApiQueryBase.php',
270         'ApiQueryImageInfo' => 'includes/api/ApiQueryImageInfo.php',
271         'ApiQueryImages' => 'includes/api/ApiQueryImages.php',
272         'ApiQueryInfo' => 'includes/api/ApiQueryInfo.php',
273         'ApiQueryLangLinks' => 'includes/api/ApiQueryLangLinks.php',
274         'ApiQueryLinks' => 'includes/api/ApiQueryLinks.php',
275         'ApiQueryLogEvents' => 'includes/api/ApiQueryLogEvents.php',
276         'ApiQueryRandom' => 'includes/api/ApiQueryRandom.php',
277         'ApiQueryRecentChanges'=> 'includes/api/ApiQueryRecentChanges.php',
278         'ApiQueryRevisions' => 'includes/api/ApiQueryRevisions.php',
279         'ApiQuerySearch' => 'includes/api/ApiQuerySearch.php',
280         'ApiQuerySiteinfo' => 'includes/api/ApiQuerySiteinfo.php',
281         'ApiQueryUserInfo' => 'includes/api/ApiQueryUserInfo.php',
282         'ApiQueryUsers' => 'includes/api/ApiQueryUsers.php',
283         'ApiQueryWatchlist' => 'includes/api/ApiQueryWatchlist.php',
284         'ApiQueryWatchlistRaw' => 'includes/api/ApiQueryWatchlistRaw.php',
285         'ApiResult' => 'includes/api/ApiResult.php',
286         'ApiRollback' => 'includes/api/ApiRollback.php',
287         'ApiUnblock' => 'includes/api/ApiUnblock.php',
288         'ApiUndelete' => 'includes/api/ApiUndelete.php',
289         'ApiWatch' => 'includes/api/ApiWatch.php',
290         'Services_JSON' => 'includes/api/ApiFormatJson_json.php',
291         'Services_JSON_Error' => 'includes/api/ApiFormatJson_json.php',
292         'Spyc' => 'includes/api/ApiFormatYaml_spyc.php',
293         'UsageException' => 'includes/api/ApiMain.php',
294
295         # includes/db
296         'Blob' => 'includes/db/Database.php',
297         'ChronologyProtector' => 'includes/db/LBFactory.php',
298         'Database' => 'includes/db/Database.php',
299         'DatabaseMssql' => 'includes/db/DatabaseMssql.php',
300         'DatabaseMysql' => 'includes/db/Database.php',
301         'DatabaseOracle' => 'includes/db/DatabaseOracle.php',
302         'DatabasePostgres' => 'includes/db/DatabasePostgres.php',
303         'DatabaseSqlite' => 'includes/db/DatabaseSqlite.php',
304         'DBConnectionError' => 'includes/db/Database.php',
305         'DBError' => 'includes/db/Database.php',
306         'DBObject' => 'includes/db/Database.php',
307         'DBQueryError' => 'includes/db/Database.php',
308         'DBUnexpectedError' => 'includes/db/Database.php',
309         'LBFactory' => 'includes/db/LBFactory.php',
310         'LBFactory_Multi' => 'includes/db/LBFactory_Multi.php',
311         'LBFactory_Simple' => 'includes/db/LBFactory.php',
312         'LoadBalancer' => 'includes/db/LoadBalancer.php',
313         'LoadMonitor' => 'includes/db/LoadMonitor.php',
314         'LoadMonitor_MySQL' => 'includes/db/LoadMonitor.php',
315         'MSSQLField' => 'includes/db/DatabaseMssql.php',
316         'MySQLField' => 'includes/db/Database.php',
317         'MySQLMasterPos' => 'includes/db/Database.php',
318         'ORABlob' => 'includes/db/DatabaseOracle.php',
319         'ORAResult' => 'includes/db/DatabaseOracle.php',
320         'PostgresField' => 'includes/db/DatabasePostgres.php',
321         'ResultWrapper' => 'includes/db/Database.php',
322         'SQLiteField' => 'includes/db/DatabaseSqlite.php',
323
324         # includes/diff
325         'AncestorComparator' => 'includes/diff/HTMLDiff.php',
326         'AnchorToString' => 'includes/diff/HTMLDiff.php',
327         'ArrayDiffFormatter' => 'includes/diff/DifferenceEngine.php',
328         'BodyNode' => 'includes/diff/Nodes.php',
329         'ChangeText' => 'includes/diff/HTMLDiff.php',
330         'ChangeTextGenerator' => 'includes/diff/HTMLDiff.php',
331         'DelegatingContentHandler' => 'includes/diff/HTMLDiff.php',
332         '_DiffEngine' => 'includes/diff/DifferenceEngine.php',
333         'DifferenceEngine' => 'includes/diff/DifferenceEngine.php',
334         'DiffFormatter' => 'includes/diff/DifferenceEngine.php',
335         'Diff' => 'includes/diff/DifferenceEngine.php',
336         '_DiffOp_Add' => 'includes/diff/DifferenceEngine.php',
337         '_DiffOp_Change' => 'includes/diff/DifferenceEngine.php',
338         '_DiffOp_Copy' => 'includes/diff/DifferenceEngine.php',
339         '_DiffOp_Delete' => 'includes/diff/DifferenceEngine.php',
340         '_DiffOp' => 'includes/diff/DifferenceEngine.php',
341         'DomTreeBuilder' => 'includes/diff/HTMLDiff.php',
342         'DummyNode' => 'includes/diff/Nodes.php',
343         'HTMLDiffer' => 'includes/diff/HTMLDiff.php',
344         'HTMLOutput' => 'includes/diff/HTMLDiff.php',
345         '_HWLDF_WordAccumulator' => 'includes/diff/DifferenceEngine.php',
346         'ImageNode' => 'includes/diff/Nodes.php',
347         'LastCommonParentResult' => 'includes/diff/HTMLDiff.php',
348         'MappedDiff' => 'includes/diff/DifferenceEngine.php',
349         'Modification' => 'includes/diff/HTMLDiff.php',
350         'NoContentTagToString' => 'includes/diff/HTMLDiff.php',
351         'Node' => 'includes/diff/Nodes.php',
352         'RangeDifference' => 'includes/diff/Diff.php',
353         'TableDiffFormatter' => 'includes/diff/DifferenceEngine.php',
354         'TagNode' => 'includes/diff/Nodes.php',
355         'TagToString' => 'includes/diff/HTMLDiff.php',
356         'TagToStringFactory' => 'includes/diff/HTMLDiff.php',
357         'TextNode' => 'includes/diff/Nodes.php',
358         'TextNodeDiffer' => 'includes/diff/HTMLDiff.php',
359         'TextOnlyComparator' => 'includes/diff/HTMLDiff.php',
360         'UnifiedDiffFormatter' => 'includes/diff/DifferenceEngine.php',
361         'WhiteSpaceNode' => 'includes/diff/Nodes.php',
362         'WikiDiff3' => 'includes/diff/Diff.php',
363         'WordLevelDiff' => 'includes/diff/DifferenceEngine.php',
364
365         # includes/filerepo
366         'ArchivedFile' => 'includes/filerepo/ArchivedFile.php',
367         'File' => 'includes/filerepo/File.php',
368         'FileCache' => 'includes/filerepo/FileCache.php',
369         'FileRepo' => 'includes/filerepo/FileRepo.php',
370         'FileRepoStatus' => 'includes/filerepo/FileRepoStatus.php',
371         'ForeignAPIFile' => 'includes/filerepo/ForeignAPIFile.php',
372         'ForeignAPIRepo' => 'includes/filerepo/ForeignAPIRepo.php',
373         'ForeignDBFile' => 'includes/filerepo/ForeignDBFile.php',
374         'ForeignDBRepo' => 'includes/filerepo/ForeignDBRepo.php',
375         'ForeignDBViaLBRepo' => 'includes/filerepo/ForeignDBViaLBRepo.php',
376         'FSRepo' => 'includes/filerepo/FSRepo.php',
377         'Image' => 'includes/filerepo/Image.php',
378         'LocalFile' => 'includes/filerepo/LocalFile.php',
379         'LocalFileDeleteBatch' => 'includes/filerepo/LocalFile.php',
380         'LocalFileMoveBatch' => 'includes/filerepo/LocalFile.php',
381         'LocalFileRestoreBatch' => 'includes/filerepo/LocalFile.php',
382         'LocalRepo' => 'includes/filerepo/LocalRepo.php',
383         'OldLocalFile' => 'includes/filerepo/OldLocalFile.php',
384         'RepoGroup' => 'includes/filerepo/RepoGroup.php',
385         'UnregisteredLocalFile' => 'includes/filerepo/UnregisteredLocalFile.php',
386
387         # includes/media
388         'BitmapHandler' => 'includes/media/Bitmap.php',
389         'BitmapHandler_ClientOnly' => 'includes/media/Bitmap_ClientOnly.php',
390         'BmpHandler' => 'includes/media/BMP.php',
391         'DjVuHandler' => 'includes/media/DjVu.php',
392         'ImageHandler' => 'includes/media/Generic.php',
393         'MediaHandler' => 'includes/media/Generic.php',
394         'SvgHandler' => 'includes/media/SVG.php',
395
396         # includes/normal
397         'UtfNormal' => 'includes/normal/UtfNormal.php',
398
399         # includes/parser
400         'CoreLinkFunctions' => 'includes/parser/CoreLinkFunctions.php',
401         'CoreParserFunctions' => 'includes/parser/CoreParserFunctions.php',
402         'DateFormatter' => 'includes/parser/DateFormatter.php',
403         'LinkHolderArray' => 'includes/parser/LinkHolderArray.php',
404         'LinkMarkerReplacer' => 'includes/parser/LinkMarkerReplacer.php',
405         'OnlyIncludeReplacer' => 'includes/parser/Parser.php',
406         'PPDAccum_Hash' => 'includes/parser/Preprocessor_Hash.php',
407         'PPDPart' => 'includes/parser/Preprocessor_DOM.php',
408         'PPDPart_Hash' => 'includes/parser/Preprocessor_Hash.php',
409         'PPDStack' => 'includes/parser/Preprocessor_DOM.php',
410         'PPDStackElement' => 'includes/parser/Preprocessor_DOM.php',
411         'PPDStackElement_Hash' => 'includes/parser/Preprocessor_Hash.php',
412         'PPDStack_Hash' => 'includes/parser/Preprocessor_Hash.php',
413         'PPFrame' => 'includes/parser/Preprocessor.php',
414         'PPFrame_DOM' => 'includes/parser/Preprocessor_DOM.php',
415         'PPFrame_Hash' => 'includes/parser/Preprocessor_Hash.php',
416         'PPNode' => 'includes/parser/Preprocessor.php',
417         'PPNode_DOM' => 'includes/parser/Preprocessor_DOM.php',
418         'PPNode_Hash_Array' => 'includes/parser/Preprocessor_Hash.php',
419         'PPNode_Hash_Attr' => 'includes/parser/Preprocessor_Hash.php',
420         'PPNode_Hash_Text' => 'includes/parser/Preprocessor_Hash.php',
421         'PPNode_Hash_Tree' => 'includes/parser/Preprocessor_Hash.php',
422         'PPTemplateFrame_DOM' => 'includes/parser/Preprocessor_DOM.php',
423         'PPTemplateFrame_Hash' => 'includes/parser/Preprocessor_Hash.php',
424         'Parser' => 'includes/parser/Parser.php',
425         'ParserCache' => 'includes/parser/ParserCache.php',
426         'ParserOptions' => 'includes/parser/ParserOptions.php',
427         'ParserOutput' => 'includes/parser/ParserOutput.php',
428         'Parser_DiffTest' => 'includes/parser/Parser_DiffTest.php',
429         'Parser_LinkHooks' => 'includes/parser/Parser_LinkHooks.php',
430         'Preprocessor' => 'includes/parser/Preprocessor.php',
431         'Preprocessor_DOM' => 'includes/parser/Preprocessor_DOM.php',
432         'Preprocessor_Hash' => 'includes/parser/Preprocessor_Hash.php',
433         'StripState' => 'includes/parser/Parser.php',
434
435         # includes/specials
436         'AncientPagesPage' => 'includes/specials/SpecialAncientpages.php',
437         'BrokenRedirectsPage' => 'includes/specials/SpecialBrokenRedirects.php',
438         'ContribsPager' => 'includes/specials/SpecialContributions.php',
439         'DBLockForm' => 'includes/specials/SpecialLockdb.php',
440         'DBUnlockForm' => 'includes/specials/SpecialUnlockdb.php',
441         'DeadendPagesPage' => 'includes/specials/SpecialDeadendpages.php',
442         'DeletedContributionsPage' => 'includes/specials/SpecialDeletedContributions.php',
443         'DeletedContribsPager' => 'includes/specials/SpecialDeletedContributions.php',
444         'DisambiguationsPage' => 'includes/specials/SpecialDisambiguations.php',
445         'DoubleRedirectsPage' => 'includes/specials/SpecialDoubleRedirects.php',
446         'EmailConfirmation' => 'includes/specials/SpecialConfirmemail.php',
447         'EmailInvalidation' => 'includes/specials/SpecialConfirmemail.php',
448         'EmailUserForm' => 'includes/specials/SpecialEmailuser.php',
449         'FewestrevisionsPage' => 'includes/specials/SpecialFewestrevisions.php',
450         'FileDuplicateSearchPage' => 'includes/specials/SpecialFileDuplicateSearch.php',
451         'IPBlockForm' => 'includes/specials/SpecialBlockip.php',
452         'IPBlocklistPager' => 'includes/specials/SpecialIpblocklist.php',
453         'IPUnblockForm' => 'includes/specials/SpecialIpblocklist.php',
454         'ImportReporter' => 'includes/specials/SpecialImport.php',
455         'ImportStreamSource' => 'includes/Import.php',
456         'ImportStringSource' => 'includes/Import.php',
457         'LinkSearchPage' => 'includes/specials/SpecialLinkSearch.php',
458         'ListredirectsPage' => 'includes/specials/SpecialListredirects.php',
459         'LoginForm' => 'includes/specials/SpecialUserlogin.php',
460         'LonelyPagesPage' => 'includes/specials/SpecialLonelypages.php',
461         'LongPagesPage' => 'includes/specials/SpecialLongpages.php',
462         'MIMEsearchPage' => 'includes/specials/SpecialMIMEsearch.php',
463         'MostcategoriesPage' => 'includes/specials/SpecialMostcategories.php',
464         'MostimagesPage' => 'includes/specials/SpecialMostimages.php',
465         'MostlinkedCategoriesPage' => 'includes/specials/SpecialMostlinkedcategories.php',
466         'MostlinkedPage' => 'includes/specials/SpecialMostlinked.php',
467         'MostrevisionsPage' => 'includes/specials/SpecialMostrevisions.php',
468         'MovePageForm' => 'includes/specials/SpecialMovepage.php',
469         'SpecialNewpages' => 'includes/specials/SpecialNewpages.php',
470         'SpecialContributions' => 'includes/specials/SpecialContributions.php',
471         'NewPagesPager' => 'includes/specials/SpecialNewpages.php',
472         'PageArchive' => 'includes/specials/SpecialUndelete.php',
473         'SpecialResetpass' => 'includes/specials/SpecialResetpass.php',
474         'PopularPagesPage' => 'includes/specials/SpecialPopularpages.php',
475         'PreferencesForm' => 'includes/specials/SpecialPreferences.php',
476         'RandomPage' => 'includes/specials/SpecialRandompage.php',
477         'RevisionDeleteForm' => 'includes/specials/SpecialRevisiondelete.php',
478         'RevisionDeleter' => 'includes/specials/SpecialRevisiondelete.php',
479         'ShortPagesPage' => 'includes/specials/SpecialShortpages.php',
480         'SpecialAllpages' => 'includes/specials/SpecialAllpages.php',
481         'SpecialBookSources' => 'includes/specials/SpecialBooksources.php',
482         'SpecialImport' => 'includes/specials/SpecialImport.php',
483         'SpecialListGroupRights' => 'includes/specials/SpecialListgrouprights.php',
484         'SpecialMostlinkedtemplates' => 'includes/specials/SpecialMostlinkedtemplates.php',
485         'SpecialPrefixindex' => 'includes/specials/SpecialPrefixindex.php',
486         'SpecialRandomredirect' => 'includes/specials/SpecialRandomredirect.php',
487         'SpecialRecentchanges' => 'includes/specials/SpecialRecentchanges.php',
488         'SpecialRecentchangeslinked' => 'includes/specials/SpecialRecentchangeslinked.php',
489         'SpecialSearch' => 'includes/specials/SpecialSearch.php',
490         'SpecialSearchOld' => 'includes/specials/SpecialSearch.php',
491         'SpecialStatistics' => 'includes/specials/SpecialStatistics.php',
492         'SpecialVersion' => 'includes/specials/SpecialVersion.php',
493         'UncategorizedCategoriesPage' => 'includes/specials/SpecialUncategorizedcategories.php',
494         'UncategorizedPagesPage' => 'includes/specials/SpecialUncategorizedpages.php',
495         'UncategorizedTemplatesPage' => 'includes/specials/SpecialUncategorizedtemplates.php',
496         'UndeleteForm' => 'includes/specials/SpecialUndelete.php',
497         'UnusedCategoriesPage' => 'includes/specials/SpecialUnusedcategories.php',
498         'UnusedimagesPage' => 'includes/specials/SpecialUnusedimages.php',
499         'UnusedtemplatesPage' => 'includes/specials/SpecialUnusedtemplates.php',
500         'UnwatchedpagesPage' => 'includes/specials/SpecialUnwatchedpages.php',
501         'UploadForm' => 'includes/specials/SpecialUpload.php',
502         'UploadFormMogile' => 'includes/specials/SpecialUploadMogile.php',
503         'UserrightsPage' => 'includes/specials/SpecialUserrights.php',
504         'UsersPager' => 'includes/specials/SpecialListusers.php',
505         'WantedCategoriesPage' => 'includes/specials/SpecialWantedcategories.php',
506         'WantedFilesPage' => 'includes/specials/SpecialWantedfiles.php',
507         'WantedPagesPage' => 'includes/specials/SpecialWantedpages.php',
508         'WantedTemplatesPage' => 'includes/specials/SpecialWantedtemplates.php',
509         'WhatLinksHerePage' => 'includes/specials/SpecialWhatlinkshere.php',
510         'WikiImporter' => 'includes/Import.php',
511         'WikiRevision' => 'includes/Import.php',
512         'WithoutInterwikiPage' => 'includes/specials/SpecialWithoutinterwiki.php',
513
514         # includes/templates
515         'UsercreateTemplate' => 'includes/templates/Userlogin.php',
516         'UserloginTemplate' => 'includes/templates/Userlogin.php',
517
518         # languages
519         'Language' => 'languages/Language.php',
520         'FakeConverter' => 'languages/Language.php',
521
522         # maintenance/language
523         'statsOutput' => 'maintenance/language/StatOutputs.php',
524         'wikiStatsOutput' => 'maintenance/language/StatOutputs.php',
525         'metawikiStatsOutput' => 'maintenance/language/StatOutputs.php',
526         'textStatsOutput' => 'maintenance/language/StatOutputs.php',
527         'csvStatsOutput' => 'maintenance/language/StatOutputs.php',
528
529 );
530
531 class AutoLoader {
532         /**
533          * autoload - take a class name and attempt to load it
534          *
535          * @param string $className Name of class we're looking for.
536          * @return bool Returning false is important on failure as
537          * it allows Zend to try and look in other registered autoloaders
538          * as well.
539          */
540         static function autoload( $className ) {
541                 global $wgAutoloadClasses, $wgAutoloadLocalClasses;
542
543                 if ( isset( $wgAutoloadLocalClasses[$className] ) ) {
544                         $filename = $wgAutoloadLocalClasses[$className];
545                 } elseif ( isset( $wgAutoloadClasses[$className] ) ) {
546                         $filename = $wgAutoloadClasses[$className];
547                 } else {
548                         # Try a different capitalisation
549                         # The case can sometimes be wrong when unserializing PHP 4 objects
550                         $filename = false;
551                         $lowerClass = strtolower( $className );
552                         foreach ( $wgAutoloadLocalClasses as $class2 => $file2 ) {
553                                 if ( strtolower( $class2 ) == $lowerClass ) {
554                                         $filename = $file2;
555                                 }
556                         }
557                         if ( !$filename ) {
558                                 if( function_exists( 'wfDebug' ) )      
559                                         wfDebug( "Class {$className} not found; skipped loading" );
560                                 # Give up
561                                 return false;
562                         }
563                 }
564
565                 # Make an absolute path, this improves performance by avoiding some stat calls
566                 if ( substr( $filename, 0, 1 ) != '/' && substr( $filename, 1, 1 ) != ':' ) {
567                         global $IP;
568                         $filename = "$IP/$filename";
569                 }
570                 require( $filename );
571                 return true;
572         }
573
574         static function loadAllExtensions() {
575                 global $wgAutoloadClasses;
576
577                 foreach( $wgAutoloadClasses as $class => $file ) {
578                         if( !( class_exists( $class ) || interface_exists( $class ) ) ) {
579                                 require( $file );
580                         }
581                 }
582         }
583 }
584
585 function wfLoadAllExtensions() {
586         AutoLoader::loadAllExtensions();
587 }
588
589 if ( function_exists( 'spl_autoload_register' ) ) {
590         spl_autoload_register( array( 'AutoLoader', 'autoload' ) );
591 } else {
592         function __autoload( $class ) {
593                 AutoLoader::autoload( $class );
594         }
595 }