Second attempt at (partially) moving to Wiki.php; tested this time, worksForMe
authorMagnus Manske <magnusmanske@users.mediawiki.org>
Tue, 10 Jan 2006 17:34:04 +0000 (17:34 +0000)
committerMagnus Manske <magnusmanske@users.mediawiki.org>
Tue, 10 Jan 2006 17:34:04 +0000 (17:34 +0000)
index.php

index 6853ece..9fb5c76 100644 (file)
--- a/index.php
+++ b/index.php
@@ -178,94 +178,21 @@ if( !$wgDisableInternalSearch && !is_null( $search ) && $search !== '' ) {
                $wgArticle = new CategoryPage( $wgTitle );
        }
 
+       require_once ( "includes/Wiki.php" ) ;
+       $mediaWiki = new MediaWiki() ;
+
        if ( in_array( $action, $wgDisabledActions ) ) {
                $wgOut->errorpage( 'nosuchaction', 'nosuchactiontext' );
        } else {
-               switch( $action ) {
-                       case 'view':
-                               $wgOut->setSquidMaxage( $wgSquidMaxage );
-                               $wgArticle->view();
-                               break;
-                       case 'watch':
-                       case 'unwatch':
-                       case 'delete':
-                       case 'revert':
-                       case 'rollback':
-                       case 'protect':
-                       case 'unprotect':
-                       case 'info':
-                       case 'markpatrolled':
-                       case 'validate':
-                       case 'render':
-                       case 'deletetrackback':
-                       case 'purge':
-                               $wgArticle->$action();
-                               break;
-                       case 'print':
-                               $wgArticle->view();
-                               break;
-                       case 'dublincore':
-                               if( !$wgEnableDublinCoreRdf ) {
-                                       wfHttpError( 403, 'Forbidden', wfMsg( 'nodublincore' ) );
-                               } else {
-                                       require_once( 'includes/Metadata.php' );
-                                       wfDublinCoreRdf( $wgArticle );
-                               }
-                               break;
-                       case 'creativecommons':
-                               if( !$wgEnableCreativeCommonsRdf ) {
-                                       wfHttpError( 403, 'Forbidden', wfMsg('nocreativecommons') );
-                               } else {
-                                       require_once( 'includes/Metadata.php' );
-                                       wfCreativeCommonsRdf( $wgArticle );
-                               }
-                               break;
-                       case 'credits':
-                               require_once( 'includes/Credits.php' );
-                               showCreditsPage( $wgArticle );
-                               break;
-                       case 'submit':
-                               if( !$wgCommandLineMode && !$wgRequest->checkSessionCookie() ) {
-                                       # Send a cookie so anons get talk message notifications
-                                       User::SetupSession();
-                               }
-                               # Continue...
-                       case 'edit':
-                               $internal = $wgRequest->getVal( 'internaledit' );
-                               $external = $wgRequest->getVal( 'externaledit' );
-                               $section = $wgRequest->getVal( 'section' );
-                               $oldid = $wgRequest->getVal( 'oldid' );
-                               if(!$wgUseExternalEditor || $action=='submit' || $internal ||
-                                  $section || $oldid || (!$wgUser->getOption('externaleditor') && !$external)) {
-                                       require_once( 'includes/EditPage.php' );
-                                       $editor = new EditPage( $wgArticle );
-                                       $editor->submit();
-                               } elseif($wgUseExternalEditor && ($external || $wgUser->getOption('externaleditor'))) {
-                                       require_once( 'includes/ExternalEdit.php' );
-                                       $mode = $wgRequest->getVal( 'mode' );
-                                       $extedit = new ExternalEdit( $wgArticle, $mode );
-                                       $extedit->edit();
-                               }
-                               break;
-                       case 'history':
-                               if ($_SERVER['REQUEST_URI'] == $wgTitle->getInternalURL('action=history')) {
-                                       $wgOut->setSquidMaxage( $wgSquidMaxage );
-                               }
-                               require_once( 'includes/PageHistory.php' );
-                               $history = new PageHistory( $wgArticle );
-                               $history->history();
-                               break;
-                       case 'raw':
-                               require_once( 'includes/RawPage.php' );
-                               $raw = new RawPage( $wgArticle );
-                               $raw->view();
-                               break;
-                       default:
-                               if (wfRunHooks('UnknownAction', array($action, $wgArticle))) {
-                                       $wgOut->errorpage( 'nosuchaction', 'nosuchactiontext' );
-                               }
-               }
+               $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' );