-wfProfileIn( 'main-action' );
-
-if( !$wgDisableInternalSearch && !is_null( $search ) && $search !== '' ) {
- require_once( 'includes/SpecialSearch.php' );
- $wgTitle = Title::makeTitle( NS_SPECIAL, 'Search' );
- wfSpecialSearch();
-} else if( !$wgTitle or $wgTitle->getDBkey() == '' ) {
- $wgTitle = Title::newFromText( wfMsgForContent( 'badtitle' ) );
- $wgOut->errorpage( 'badtitle', 'badtitletext' );
-} else if ( $wgTitle->getInterwiki() != '' ) {
- if( $rdfrom = $wgRequest->getVal( 'rdfrom' ) ) {
- $url = $wgTitle->getFullURL( 'rdfrom=' . urlencode( $rdfrom ) );
- } else {
- $url = $wgTitle->getFullURL();
- }
- # Check for a redirect loop
- if ( !preg_match( '/^' . preg_quote( $wgServer, '/' ) . '/', $url ) && $wgTitle->isLocal() ) {
- $wgOut->redirect( $url );
- } else {
- $wgTitle = Title::newFromText( wfMsgForContent( 'badtitle' ) );
- $wgOut->errorpage( 'badtitle', 'badtitletext' );
- }
-} else if ( ( $action == 'view' ) &&
- (!isset( $_GET['title'] ) || $wgTitle->getPrefixedDBKey() != $_GET['title'] ) &&
- !count( array_diff( array_keys( $_GET ), array( 'action', 'title' ) ) ) )
-{
- /* redirect to canonical url, make it a 301 to allow caching */
- $wgOut->setSquidMaxage( 1200 );
- $wgOut->redirect( $wgTitle->getFullURL(), '301');
-} else if ( NS_SPECIAL == $wgTitle->getNamespace() ) {
- # actions that need to be made when we have a special pages
- SpecialPage::executePath( $wgTitle );
-} else {
-
-
- require_once ( "includes/Wiki.php" ) ;
- $mediaWiki = new MediaWiki() ;
-
- $wgArticle =& $mediaWiki->initializeArticle ( $wgTitle , $action ) ;
-
- if ( in_array( $action, $wgDisabledActions ) ) {
- $wgOut->errorpage( 'nosuchaction', 'nosuchactiontext' );
- } else {
- $mediaWiki->setVal ( "SquidMaxage" , $wgSquidMaxage ) ;
- $mediaWiki->setVal ( "EnableDublinCoreRdf" , $wgEnableDublinCoreRdf ) ;
- $mediaWiki->setVal ( "EnableCreativeCommonsRdf" , $wgEnableCreativeCommonsRdf ) ;
- $mediaWiki->setVal ( "CommandLineMode" , $wgCommandLineMode ) ;
- $mediaWiki->setVal ( "UseExternalEditor" , $wgUseExternalEditor ) ;
- $mediaWiki->performAction ( $action , $wgOut , $wgArticle , $wgTitle , $wgUser , $wgRequest ) ;
- }
-
-
-}
-wfProfileOut( 'main-action' );
-
-# Deferred updates aren't really deferred anymore. It's important to report errors to the
-# user, and that means doing this before OutputPage::output(). Note that for page saves,
-# the client will wait until the script exits anyway before following the redirect.
-wfProfileIn( 'main-updates' );
-foreach ( $wgDeferredUpdateList as $up ) {
- $up->doUpdate();