X-Git-Url: https://git.cyclocoop.org/%27.WWW_URL.%27admin/?a=blobdiff_plain;f=includes%2FAutoLoader.php;h=2aa49ceebc3f2025115da4611717b4b1291379bf;hb=848d8f46116c45410e63cd23ee5e2f55edcb4318;hp=019d2d97e4decdfc20d8cb81659be1e89307764b;hpb=6f0d8da544fe39fc756ced6cfa9d590c01478194;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/AutoLoader.php b/includes/AutoLoader.php index 019d2d97e4..2aa49ceebc 100644 --- a/includes/AutoLoader.php +++ b/includes/AutoLoader.php @@ -1,227 +1,350 @@ 'AjaxDispatcher.php', - 'AjaxCachePolicy' => 'AjaxFunctions.php', - 'Article' => 'Article.php', - 'AuthPlugin' => 'AuthPlugin.php', - 'BagOStuff' => 'BagOStuff.php', - 'HashBagOStuff' => 'BagOStuff.php', - 'SqlBagOStuff' => 'BagOStuff.php', - 'MediaWikiBagOStuff' => 'BagOStuff.php', - 'TurckBagOStuff' => 'BagOStuff.php', - 'APCBagOStuff' => 'BagOStuff.php', - 'eAccelBagOStuff' => 'BagOStuff.php', - 'Block' => 'Block.php', - 'CacheManager' => 'CacheManager.php', - 'CategoryPage' => 'CategoryPage.php', - 'Categoryfinder' => 'Categoryfinder.php', - 'RCCacheEntry' => 'ChangesList.php', - 'ChangesList' => 'ChangesList.php', - 'OldChangesList' => 'ChangesList.php', - 'EnhancedChangesList' => 'ChangesList.php', - 'DBObject' => 'Database.php', - 'Database' => 'Database.php', - 'DatabaseMysql' => 'Database.php', - 'ResultWrapper' => 'Database.php', - 'OracleBlob' => 'DatabaseOracle.php', - 'DatabaseOracle' => 'DatabaseOracle.php', - 'DatabasePgsql' => 'DatabasePostgreSQL.php', - 'DatabasePostgreSQL' => 'DatabasePostgreSQL.php', - 'DateFormatter' => 'DateFormatter.php', - 'DifferenceEngine' => 'DifferenceEngine.php', - '_DiffOp' => 'DifferenceEngine.php', - '_DiffOp_Copy' => 'DifferenceEngine.php', - '_DiffOp_Delete' => 'DifferenceEngine.php', - '_DiffOp_Add' => 'DifferenceEngine.php', - '_DiffOp_Change' => 'DifferenceEngine.php', - '_DiffEngine' => 'DifferenceEngine.php', - 'Diff' => 'DifferenceEngine.php', - 'MappedDiff' => 'DifferenceEngine.php', - 'DiffFormatter' => 'DifferenceEngine.php', - 'DjVuImage' => 'DjVuImage.php', - '_HWLDF_WordAccumulator' => 'DifferenceEngine.php', - 'WordLevelDiff' => 'DifferenceEngine.php', - 'TableDiffFormatter' => 'DifferenceEngine.php', - 'EditPage' => 'EditPage.php', - 'MWException' => 'Exception.php', - 'Exif' => 'Exif.php', - 'FormatExif' => 'Exif.php', - 'WikiExporter' => 'Export.php', - 'XmlDumpWriter' => 'Export.php', - 'DumpOutput' => 'Export.php', - 'DumpFileOutput' => 'Export.php', - 'DumpPipeOutput' => 'Export.php', - 'DumpGZipOutput' => 'Export.php', - 'DumpBZip2Output' => 'Export.php', - 'Dump7ZipOutput' => 'Export.php', - 'DumpFilter' => 'Export.php', - 'DumpNotalkFilter' => 'Export.php', - 'DumpNamespaceFilter' => 'Export.php', - 'DumpLatestFilter' => 'Export.php', - 'DumpMultiWriter' => 'Export.php', - 'ExternalEdit' => 'ExternalEdit.php', - 'ExternalStore' => 'ExternalStore.php', - 'ExternalStoreDB' => 'ExternalStoreDB.php', - 'ExternalStoreHttp' => 'ExternalStoreHttp.php', - 'FakeTitle' => 'FakeTitle.php', - 'FeedItem' => 'Feed.php', - 'ChannelFeed' => 'Feed.php', - 'RSSFeed' => 'Feed.php', - 'AtomFeed' => 'Feed.php', - 'FileStore' => 'FileStore.php', - 'FSException' => 'FileStore.php', - 'FSTransaction' => 'FileStore.php', - 'ReplacerCallback' => 'GlobalFunctions.php', - 'HTMLForm' => 'HTMLForm.php', - 'HistoryBlob' => 'HistoryBlob.php', - 'ConcatenatedGzipHistoryBlob' => 'HistoryBlob.php', - 'HistoryBlobStub' => 'HistoryBlob.php', - 'HistoryBlobCurStub' => 'HistoryBlob.php', - 'HTMLCacheUpdate' => 'HTMLCacheUpdate.php', - 'HTMLCacheUpdateJob' => 'HTMLCacheUpdate.php', - 'Image' => 'Image.php', - 'ThumbnailImage' => 'Image.php', - 'ImageGallery' => 'ImageGallery.php', - 'ImagePage' => 'ImagePage.php', - 'ImageHistoryList' => 'ImagePage.php', - 'ImageRemote' => 'ImageRemote.php', - 'Job' => 'JobQueue.php', - 'Licenses' => 'Licenses.php', - 'License' => 'Licenses.php', - 'LinkBatch' => 'LinkBatch.php', - 'LinkCache' => 'LinkCache.php', - 'LinkFilter' => 'LinkFilter.php', - 'Linker' => 'Linker.php', - 'LinksUpdate' => 'LinksUpdate.php', - 'LoadBalancer' => 'LoadBalancer.php', - 'LogPage' => 'LogPage.php', - 'MacBinary' => 'MacBinary.php', - 'MagicWord' => 'MagicWord.php', - 'MathRenderer' => 'Math.php', - 'MessageCache' => 'MessageCache.php', - 'MimeMagic' => 'MimeMagic.php', - 'Namespace' => 'Namespace.php', - 'FakeMemCachedClient' => 'ObjectCache.php', - 'ObjectCacheManager' => 'ObjectCache.php', - 'MemCachedClientforWiki' => 'ObjectCache.php', - 'OutputPage' => 'OutputPage.php', - 'PageHistory' => 'PageHistory.php', - 'Parser' => 'Parser.php', - 'ParserOutput' => 'Parser.php', - 'ParserOptions' => 'Parser.php', - 'ParserCache' => 'ParserCache.php', - 'element' => 'ParserXML.php', - 'xml2php' => 'ParserXML.php', - 'ParserXML' => 'ParserXML.php', - 'ProfilerSimple' => 'ProfilerSimple.php', - 'ProfilerSimpleUDP' => 'ProfilerSimpleUDP.php', - 'Profiler' => 'Profiling.php', - 'ProxyTools' => 'ProxyTools.php', - 'ProtectionForm' => 'ProtectionForm.php', - 'QueryPage' => 'QueryPage.php', - 'PageQueryPage' => 'QueryPage.php', - 'RawPage' => 'RawPage.php', - 'RecentChange' => 'RecentChange.php', - 'Revision' => 'Revision.php', - 'Sanitizer' => 'Sanitizer.php', - 'SearchEngine' => 'SearchEngine.php', - 'SearchResultSet' => 'SearchEngine.php', - 'SearchResult' => 'SearchEngine.php', - 'SearchEngineDummy' => 'SearchEngine.php', - 'SearchMySQL' => 'SearchMySQL.php', - 'MySQLSearchResultSet' => 'SearchMySQL.php', - 'SearchMySQL4' => 'SearchMySQL4.php', - 'SearchTsearch2' => 'SearchTsearch2.php', - 'SearchUpdate' => 'SearchUpdate.php', - 'SearchUpdateMyISAM' => 'SearchUpdate.php', - 'SiteConfiguration' => 'SiteConfiguration.php', - 'SiteStatsUpdate' => 'SiteStatsUpdate.php', - 'Skin' => 'Skin.php', - 'MediaWiki_I18N' => 'SkinTemplate.php', - 'SkinTemplate' => 'SkinTemplate.php', - 'QuickTemplate' => 'SkinTemplate.php', - 'SpecialAllpages' => 'SpecialAllpages.php', - 'AncientPagesPage' => 'SpecialAncientpages.php', - 'IPBlockForm' => 'SpecialBlockip.php', - 'BookSourceList' => 'SpecialBooksources.php', - 'BrokenRedirectsPage' => 'SpecialBrokenRedirects.php', - 'CategoriesPage' => 'SpecialCategories.php', - 'EmailConfirmation' => 'SpecialConfirmemail.php', - 'ContribsFinder' => 'SpecialContributions.php', - 'DeadendPagesPage' => 'SpecialDeadendpages.php', - 'DisambiguationsPage' => 'SpecialDisambiguations.php', - 'DoubleRedirectsPage' => 'SpecialDoubleRedirects.php', - 'EmailUserForm' => 'SpecialEmailuser.php', - 'WikiRevision' => 'SpecialImport.php', - 'WikiImporter' => 'SpecialImport.php', - 'ImportStringSource' => 'SpecialImport.php', - 'ImportStreamSource' => 'SpecialImport.php', - 'IPUnblockForm' => 'SpecialIpblocklist.php', - 'ListredirectsPage' => 'SpecialListredirects.php', - 'ListUsersPage' => 'SpecialListusers.php', - 'DBLockForm' => 'SpecialLockdb.php', - 'LogReader' => 'SpecialLog.php', - 'LogViewer' => 'SpecialLog.php', - 'LonelyPagesPage' => 'SpecialLonelypages.php', - 'LongPagesPage' => 'SpecialLongpages.php', - 'MIMEsearchPage' => 'SpecialMIMEsearch.php', - 'MostcategoriesPage' => 'SpecialMostcategories.php', - 'MostimagesPage' => 'SpecialMostimages.php', - 'MostlinkedPage' => 'SpecialMostlinked.php', - 'MostlinkedCategoriesPage' => 'SpecialMostlinkedcategories.php', - 'MostrevisionsPage' => 'SpecialMostrevisions.php', - 'MovePageForm' => 'SpecialMovepage.php', - 'NewPagesPage' => 'SpecialNewpages.php', - 'SpecialPage' => 'SpecialPage.php', - 'UnlistedSpecialPage' => 'SpecialPage.php', - 'IncludableSpecialPage' => 'SpecialPage.php', - 'PopularPagesPage' => 'SpecialPopularpages.php', - 'PreferencesForm' => 'SpecialPreferences.php', - 'SpecialPrefixindex' => 'SpecialPrefixindex.php', - 'RevisionDeleteForm' => 'SpecialRevisiondelete.php', - 'RevisionDeleter' => 'SpecialRevisiondelete.php', - 'SpecialSearch' => 'SpecialSearch.php', - 'ShortPagesPage' => 'SpecialShortpages.php', - 'UncategorizedCategoriesPage' => 'SpecialUncategorizedcategories.php', - 'UncategorizedPagesPage' => 'SpecialUncategorizedpages.php', - 'PageArchive' => 'SpecialUndelete.php', - 'UndeleteForm' => 'SpecialUndelete.php', - 'DBUnlockForm' => 'SpecialUnlockdb.php', - 'UnusedCategoriesPage' => 'SpecialUnusedcategories.php', - 'UnusedimagesPage' => 'SpecialUnusedimages.php', - 'UnusedtemplatesPage' => 'SpecialUnusedtemplates.php', - 'UnwatchedpagesPage' => 'SpecialUnwatchedpages.php', - 'UploadForm' => 'SpecialUpload.php', - 'UploadFormMogile' => 'SpecialUploadMogile.php', - 'LoginForm' => 'SpecialUserlogin.php', - 'UserrightsForm' => 'SpecialUserrights.php', - 'SpecialVersion' => 'SpecialVersion.php', - 'WantedCategoriesPage' => 'SpecialWantedcategories.php', - 'WantedPagesPage' => 'SpecialWantedpages.php', - 'WhatLinksHerePage' => 'SpecialWhatlinkshere.php', - 'SquidUpdate' => 'SquidUpdate.php', - 'Title' => 'Title.php', - 'User' => 'User.php', - 'MailAddress' => 'UserMailer.php', - 'EmailNotification' => 'UserMailer.php', - 'WatchedItem' => 'WatchedItem.php', - 'WebRequest' => 'WebRequest.php', - 'FauxRequest' => 'WebRequest.php', - 'MediaWiki' => 'Wiki.php', - 'WikiError' => 'WikiError.php', - 'WikiErrorMsg' => 'WikiError.php', - 'WikiXmlError' => 'WikiError.php', - 'ZhClient' => 'ZhClient.php', - 'memcached' => 'memcached-client.php', - 'UtfNormal' => 'normal/UtfNormal.php' + +ini_set('unserialize_callback_func', '__autoload' ); + +function __autoload($className) { + global $wgAutoloadClasses; + + static $localClasses = array( + # Includes + 'AjaxDispatcher' => 'includes/AjaxDispatcher.php', + 'AjaxCachePolicy' => 'includes/AjaxFunctions.php', + 'AjaxResponse' => 'includes/AjaxResponse.php', + 'AlphabeticPager' => 'includes/Pager.php', + 'Article' => 'includes/Article.php', + 'AuthPlugin' => 'includes/AuthPlugin.php', + 'BagOStuff' => 'includes/BagOStuff.php', + 'HashBagOStuff' => 'includes/BagOStuff.php', + 'SqlBagOStuff' => 'includes/BagOStuff.php', + 'MediaWikiBagOStuff' => 'includes/BagOStuff.php', + 'TurckBagOStuff' => 'includes/BagOStuff.php', + 'APCBagOStuff' => 'includes/BagOStuff.php', + 'eAccelBagOStuff' => 'includes/BagOStuff.php', + 'DBABagOStuff' => 'includes/BagOStuff.php', + 'Block' => 'includes/Block.php', + 'HTMLFileCache' => 'includes/HTMLFileCache.php', + 'DependencyWrapper' => 'includes/CacheDependency.php', + 'FileDependency' => 'includes/CacheDependency.php', + 'TitleDependency' => 'includes/CacheDependency.php', + 'TitleListDependency' => 'includes/CacheDependency.php', + 'CategoryPage' => 'includes/CategoryPage.php', + 'CategoryViewer' => 'includes/CategoryPage.php', + 'Categoryfinder' => 'includes/Categoryfinder.php', + 'RCCacheEntry' => 'includes/ChangesList.php', + 'ChangesList' => 'includes/ChangesList.php', + 'OldChangesList' => 'includes/ChangesList.php', + 'EnhancedChangesList' => 'includes/ChangesList.php', + 'CoreParserFunctions' => 'includes/CoreParserFunctions.php', + 'DBObject' => 'includes/Database.php', + 'Database' => 'includes/Database.php', + 'DatabaseMysql' => 'includes/Database.php', + 'ResultWrapper' => 'includes/Database.php', + 'DatabasePostgres' => 'includes/DatabasePostgres.php', + 'DatabaseOracle' => 'includes/DatabaseOracle.php', + 'DateFormatter' => 'includes/DateFormatter.php', + 'DifferenceEngine' => 'includes/DifferenceEngine.php', + '_DiffOp' => 'includes/DifferenceEngine.php', + '_DiffOp_Copy' => 'includes/DifferenceEngine.php', + '_DiffOp_Delete' => 'includes/DifferenceEngine.php', + '_DiffOp_Add' => 'includes/DifferenceEngine.php', + '_DiffOp_Change' => 'includes/DifferenceEngine.php', + '_DiffEngine' => 'includes/DifferenceEngine.php', + 'Diff' => 'includes/DifferenceEngine.php', + 'MappedDiff' => 'includes/DifferenceEngine.php', + 'DiffFormatter' => 'includes/DifferenceEngine.php', + 'DjVuImage' => 'includes/DjVuImage.php', + '_HWLDF_WordAccumulator' => 'includes/DifferenceEngine.php', + 'WordLevelDiff' => 'includes/DifferenceEngine.php', + 'TableDiffFormatter' => 'includes/DifferenceEngine.php', + 'EditPage' => 'includes/EditPage.php', + 'MWException' => 'includes/Exception.php', + 'Exif' => 'includes/Exif.php', + 'FormatExif' => 'includes/Exif.php', + 'WikiExporter' => 'includes/Export.php', + 'XmlDumpWriter' => 'includes/Export.php', + 'DumpOutput' => 'includes/Export.php', + 'DumpFileOutput' => 'includes/Export.php', + 'DumpPipeOutput' => 'includes/Export.php', + 'DumpGZipOutput' => 'includes/Export.php', + 'DumpBZip2Output' => 'includes/Export.php', + 'Dump7ZipOutput' => 'includes/Export.php', + 'DumpFilter' => 'includes/Export.php', + 'DumpNotalkFilter' => 'includes/Export.php', + 'DumpNamespaceFilter' => 'includes/Export.php', + 'DumpLatestFilter' => 'includes/Export.php', + 'DumpMultiWriter' => 'includes/Export.php', + 'ExternalEdit' => 'includes/ExternalEdit.php', + 'ExternalStore' => 'includes/ExternalStore.php', + 'ExternalStoreDB' => 'includes/ExternalStoreDB.php', + 'ExternalStoreHttp' => 'includes/ExternalStoreHttp.php', + 'FakeTitle' => 'includes/FakeTitle.php', + 'FeedItem' => 'includes/Feed.php', + 'ChannelFeed' => 'includes/Feed.php', + 'RSSFeed' => 'includes/Feed.php', + 'AtomFeed' => 'includes/Feed.php', + 'FileStore' => 'includes/FileStore.php', + 'FSException' => 'includes/FileStore.php', + 'FSTransaction' => 'includes/FileStore.php', + 'HTMLForm' => 'includes/HTMLForm.php', + 'HistoryBlob' => 'includes/HistoryBlob.php', + 'ConcatenatedGzipHistoryBlob' => 'includes/HistoryBlob.php', + 'HistoryBlobStub' => 'includes/HistoryBlob.php', + 'HistoryBlobCurStub' => 'includes/HistoryBlob.php', + 'HTMLCacheUpdate' => 'includes/HTMLCacheUpdate.php', + 'HTMLCacheUpdateJob' => 'includes/HTMLCacheUpdate.php', + 'Http' => 'includes/HttpFunctions.php', + 'Image' => 'includes/Image.php', + 'ArchivedFile' => 'includes/Image.php', + 'IP' => 'includes/IP.php', + 'ThumbnailImage' => 'includes/Image.php', + 'ImageGallery' => 'includes/ImageGallery.php', + 'ImagePage' => 'includes/ImagePage.php', + 'ImageHistoryList' => 'includes/ImagePage.php', + 'ImageRemote' => 'includes/ImageRemote.php', + 'Job' => 'includes/JobQueue.php', + 'Licenses' => 'includes/Licenses.php', + 'License' => 'includes/Licenses.php', + 'LinkBatch' => 'includes/LinkBatch.php', + 'LinkCache' => 'includes/LinkCache.php', + 'LinkFilter' => 'includes/LinkFilter.php', + 'Linker' => 'includes/Linker.php', + 'LinksUpdate' => 'includes/LinksUpdate.php', + 'LoadBalancer' => 'includes/LoadBalancer.php', + 'LogPage' => 'includes/LogPage.php', + 'MacBinary' => 'includes/MacBinary.php', + 'MagicWord' => 'includes/MagicWord.php', + 'MathRenderer' => 'includes/Math.php', + 'MediaTransformOutput' => 'includes/MediaTransformOutput.php', + 'ThumbnailImage' => 'includes/MediaTransformOutput.php', + 'MediaTransformError' => 'includes/MediaTransformOutput.php', + 'TransformParameterError' => 'includes/MediaTransformOutput.php', + 'MessageCache' => 'includes/MessageCache.php', + 'MimeMagic' => 'includes/MimeMagic.php', + 'Namespace' => 'includes/Namespace.php', + 'FakeMemCachedClient' => 'includes/ObjectCache.php', + 'OutputPage' => 'includes/OutputPage.php', + 'PageHistory' => 'includes/PageHistory.php', + 'IndexPager' => 'includes/Pager.php', + 'ReverseChronologicalPager' => 'includes/Pager.php', + 'TablePager' => 'includes/Pager.php', + 'Parser' => 'includes/Parser.php', + 'ParserOutput' => 'includes/ParserOutput.php', + 'ParserOptions' => 'includes/ParserOptions.php', + 'ParserCache' => 'includes/ParserCache.php', + 'PatrolLog' => 'includes/PatrolLog.php', + 'ProfilerSimple' => 'includes/ProfilerSimple.php', + 'ProfilerSimpleUDP' => 'includes/ProfilerSimpleUDP.php', + 'Profiler' => 'includes/Profiler.php', + 'ProxyTools' => 'includes/ProxyTools.php', + 'ProtectionForm' => 'includes/ProtectionForm.php', + 'QueryPage' => 'includes/QueryPage.php', + 'PageQueryPage' => 'includes/PageQueryPage.php', + 'ImageQueryPage' => 'includes/ImageQueryPage.php', + 'RawPage' => 'includes/RawPage.php', + 'RecentChange' => 'includes/RecentChange.php', + 'Revision' => 'includes/Revision.php', + 'Sanitizer' => 'includes/Sanitizer.php', + 'SearchEngine' => 'includes/SearchEngine.php', + 'SearchResultSet' => 'includes/SearchEngine.php', + 'SearchResult' => 'includes/SearchEngine.php', + 'SearchEngineDummy' => 'includes/SearchEngine.php', + 'SearchMySQL' => 'includes/SearchMySQL.php', + 'MySQLSearchResultSet' => 'includes/SearchMySQL.php', + 'SearchMySQL4' => 'includes/SearchMySQL4.php', + 'SearchPostgres' => 'includes/SearchPostgres.php', + 'SearchUpdate' => 'includes/SearchUpdate.php', + 'SearchUpdateMyISAM' => 'includes/SearchUpdate.php', + 'SearchOracle' => 'includes/SearchOracle.php', + 'SiteConfiguration' => 'includes/SiteConfiguration.php', + 'SiteStats' => 'includes/SiteStats.php', + 'SiteStatsUpdate' => 'includes/SiteStats.php', + 'Skin' => 'includes/Skin.php', + 'MediaWiki_I18N' => 'includes/SkinTemplate.php', + 'SkinTemplate' => 'includes/SkinTemplate.php', + 'QuickTemplate' => 'includes/SkinTemplate.php', + 'SpecialAllpages' => 'includes/SpecialAllpages.php', + 'AncientPagesPage' => 'includes/SpecialAncientpages.php', + 'IPBlockForm' => 'includes/SpecialBlockip.php', + 'SpecialBookSources' => 'includes/SpecialBooksources.php', + 'BrokenRedirectsPage' => 'includes/SpecialBrokenRedirects.php', + 'EmailConfirmation' => 'includes/SpecialConfirmemail.php', + 'ContributionsPage' => 'includes/SpecialContributions.php', + 'DeadendPagesPage' => 'includes/SpecialDeadendpages.php', + 'DisambiguationsPage' => 'includes/SpecialDisambiguations.php', + 'DoubleRedirectsPage' => 'includes/SpecialDoubleRedirects.php', + 'EmailUserForm' => 'includes/SpecialEmailuser.php', + 'WikiRevision' => 'includes/SpecialImport.php', + 'WikiImporter' => 'includes/SpecialImport.php', + 'ImportStringSource' => 'includes/SpecialImport.php', + 'ImportStreamSource' => 'includes/SpecialImport.php', + 'IPUnblockForm' => 'includes/SpecialIpblocklist.php', + 'ListredirectsPage' => 'includes/SpecialListredirects.php', + 'DBLockForm' => 'includes/SpecialLockdb.php', + 'LogReader' => 'includes/SpecialLog.php', + 'LogViewer' => 'includes/SpecialLog.php', + 'LonelyPagesPage' => 'includes/SpecialLonelypages.php', + 'LongPagesPage' => 'includes/SpecialLongpages.php', + 'MIMEsearchPage' => 'includes/SpecialMIMEsearch.php', + 'MostcategoriesPage' => 'includes/SpecialMostcategories.php', + 'MostimagesPage' => 'includes/SpecialMostimages.php', + 'MostlinkedPage' => 'includes/SpecialMostlinked.php', + 'MostlinkedCategoriesPage' => 'includes/SpecialMostlinkedcategories.php', + 'MostrevisionsPage' => 'includes/SpecialMostrevisions.php', + 'FewestrevisionsPage' => 'includes/SpecialFewestrevisions.php', + 'MovePageForm' => 'includes/SpecialMovepage.php', + 'NewbieContributionsPage' => 'includes/SpecialNewbieContributions.php', + 'NewPagesPage' => 'includes/SpecialNewpages.php', + 'SpecialPage' => 'includes/SpecialPage.php', + 'UnlistedSpecialPage' => 'includes/SpecialPage.php', + 'IncludableSpecialPage' => 'includes/SpecialPage.php', + 'PopularPagesPage' => 'includes/SpecialPopularpages.php', + 'PreferencesForm' => 'includes/SpecialPreferences.php', + 'SpecialPrefixindex' => 'includes/SpecialPrefixindex.php', + 'PasswordResetForm' => 'includes/SpecialResetpass.php', + 'RevisionDeleteForm' => 'includes/SpecialRevisiondelete.php', + 'RevisionDeleter' => 'includes/SpecialRevisiondelete.php', + 'SpecialSearch' => 'includes/SpecialSearch.php', + 'ShortPagesPage' => 'includes/SpecialShortpages.php', + 'UncategorizedCategoriesPage' => 'includes/SpecialUncategorizedcategories.php', + 'UncategorizedPagesPage' => 'includes/SpecialUncategorizedpages.php', + 'PageArchive' => 'includes/SpecialUndelete.php', + 'UndeleteForm' => 'includes/SpecialUndelete.php', + 'DBUnlockForm' => 'includes/SpecialUnlockdb.php', + 'UnusedCategoriesPage' => 'includes/SpecialUnusedcategories.php', + 'UnusedimagesPage' => 'includes/SpecialUnusedimages.php', + 'UnusedtemplatesPage' => 'includes/SpecialUnusedtemplates.php', + 'UnwatchedpagesPage' => 'includes/SpecialUnwatchedpages.php', + 'UploadForm' => 'includes/SpecialUpload.php', + 'UploadFormMogile' => 'includes/SpecialUploadMogile.php', + 'LoginForm' => 'includes/SpecialUserlogin.php', + 'UserrightsForm' => 'includes/SpecialUserrights.php', + 'SpecialVersion' => 'includes/SpecialVersion.php', + 'WantedCategoriesPage' => 'includes/SpecialWantedcategories.php', + 'WantedPagesPage' => 'includes/SpecialWantedpages.php', + 'WhatLinksHerePage' => 'includes/SpecialWhatlinkshere.php', + 'WithoutInterwikiPage' => 'includes/SpecialWithoutinterwiki.php', + 'SquidUpdate' => 'includes/SquidUpdate.php', + 'ReplacementArray' => 'includes/StringUtils.php', + 'Replacer' => 'includes/StringUtils.php', + 'RegexlikeReplacer' => 'includes/StringUtils.php', + 'DoubleReplacer' => 'includes/StringUtils.php', + 'HashtableReplacer' => 'includes/StringUtils.php', + 'StringUtils' => 'includes/StringUtils.php', + 'Title' => 'includes/Title.php', + 'User' => 'includes/User.php', + 'MailAddress' => 'includes/UserMailer.php', + 'EmailNotification' => 'includes/UserMailer.php', + 'WatchedItem' => 'includes/WatchedItem.php', + 'WebRequest' => 'includes/WebRequest.php', + 'WebResponse' => 'includes/WebResponse.php', + 'FauxRequest' => 'includes/WebRequest.php', + 'MediaWiki' => 'includes/Wiki.php', + 'WikiError' => 'includes/WikiError.php', + 'WikiErrorMsg' => 'includes/WikiError.php', + 'WikiXmlError' => 'includes/WikiError.php', + 'Xml' => 'includes/Xml.php', + 'ZhClient' => 'includes/ZhClient.php', + 'memcached' => 'includes/memcached-client.php', + 'EmaillingJob' => 'includes/JobQueue.php', + + # Media + 'BitmapHandler' => 'includes/media/Bitmap.php', + 'BmpHandler' => 'includes/media/BMP.php', + 'DjVuHandler' => 'includes/media/DjVu.php', + 'MediaHandler' => 'includes/media/Generic.php', + 'ImageHandler' => 'includes/media/Generic.php', + 'SvgHandler' => 'includes/media/SVG.php', + + # Normal + 'UtfNormal' => 'includes/normal/UtfNormal.php', + + # Templates + 'UsercreateTemplate' => 'includes/templates/Userlogin.php', + 'UserloginTemplate' => 'includes/templates/Userlogin.php', + + # Languages + 'Language' => 'languages/Language.php', + 'RandomPage' => 'includes/SpecialRandompage.php', + + # API + 'ApiBase' => 'includes/api/ApiBase.php', + 'ApiFormatFeedWrapper' => 'includes/api/ApiFormatBase.php', + 'ApiFeedWatchlist' => 'includes/api/ApiFeedWatchlist.php', + 'ApiFormatBase' => 'includes/api/ApiFormatBase.php', + 'Services_JSON' => 'includes/api/ApiFormatJson_json.php', + 'ApiFormatJson' => 'includes/api/ApiFormatJson.php', + 'ApiFormatPhp' => 'includes/api/ApiFormatPhp.php', + 'ApiFormatWddx' => 'includes/api/ApiFormatWddx.php', + 'ApiFormatXml' => 'includes/api/ApiFormatXml.php', + 'Spyc' => 'includes/api/ApiFormatYaml_spyc.php', + 'ApiFormatYaml' => 'includes/api/ApiFormatYaml.php', + 'ApiHelp' => 'includes/api/ApiHelp.php', + 'ApiLogin' => 'includes/api/ApiLogin.php', + 'ApiMain' => 'includes/api/ApiMain.php', + 'ApiOpenSearch' => 'includes/api/ApiOpenSearch.php', + 'ApiPageSet' => 'includes/api/ApiPageSet.php', + 'ApiQuery' => 'includes/api/ApiQuery.php', + 'ApiQueryAllpages' => 'includes/api/ApiQueryAllpages.php', + 'ApiQueryBase' => 'includes/api/ApiQueryBase.php', + 'ApiQueryBacklinks' => 'includes/api/ApiQueryBacklinks.php', + 'ApiQueryContributions' => 'includes/api/ApiQueryUserContributions.php', + 'ApiQueryInfo' => 'includes/api/ApiQueryInfo.php', + 'ApiQueryLogEvents' => 'includes/api/ApiQueryLogEvents.php', + 'ApiQueryRecentChanges'=> 'includes/api/ApiQueryRecentChanges.php', + 'ApiQueryRevisions' => 'includes/api/ApiQueryRevisions.php', + 'ApiQuerySiteinfo' => 'includes/api/ApiQuerySiteinfo.php', + 'ApiQueryWatchlist' => 'includes/api/ApiQueryWatchlist.php', + 'ApiResult' => 'includes/api/ApiResult.php', ); - if (array_key_exists($class_name, $classes)) { - require($classes[$class_name]); + + wfProfileIn( __METHOD__ ); + if ( isset( $localClasses[$className] ) ) { + $filename = $localClasses[$className]; + } elseif ( isset( $wgAutoloadClasses[$className] ) ) { + $filename = $wgAutoloadClasses[$className]; } else { - return false; + # Try a different capitalisation + # The case can sometimes be wrong when unserializing PHP 4 objects + $filename = false; + $lowerClass = strtolower( $className ); + foreach ( $localClasses as $class2 => $file2 ) { + if ( strtolower( $class2 ) == $lowerClass ) { + $filename = $file2; + } + } + if ( !$filename ) { + # Give up + wfProfileOut( __METHOD__ ); + return; + } + } + + # Make an absolute path, this improves performance by avoiding some stat calls + if ( substr( $filename, 0, 1 ) != '/' && substr( $filename, 1, 1 ) != ':' ) { + global $IP; + $filename = "$IP/$filename"; + } + require( $filename ); + wfProfileOut( __METHOD__ ); +} + +function wfLoadAllExtensions() { + global $wgAutoloadClasses; + + # It is crucial that SpecialPage.php is included before any special page + # extensions are loaded. Otherwise the parent class will not be available + # when APC loads the early-bound extension class. Normally this is + # guaranteed by entering special pages via SpecialPage members such as + # executePath(), but here we have to take a more explicit measure. + + require_once( dirname(__FILE__) . '/SpecialPage.php' ); + + foreach( $wgAutoloadClasses as $class => $file ) { + if( !( class_exists( $class ) || interface_exists( $class ) ) ) { + require( $file ); + } } }