Index: /MediaWiki/trunk/FCKeditor.body.php
===================================================================
--- /MediaWiki/trunk/FCKeditor.body.php	(revision 3233)
+++ /MediaWiki/trunk/FCKeditor.body.php	(revision 3234)
@@ -60,10 +60,11 @@
 
 	private function getExcludedNamespaces() {
-		global $wgUser;
+		global $wgUser,$wgDefaultUserOptions;
 
 		if ( is_null( $this->excludedNamespaces ) ) {
 			$this->excludedNamespaces = array();
 			foreach ( self::$nsToggles as $toggle ) {
-				if ( $wgUser->getOption( $toggle ) ) {
+				$default = isset($wgDefaultUserOptions[$toggle]) ? $wgDefaultUserOptions[$toggle] : "";
+				if ( $wgUser->getOption( $toggle, $default) ) {
 					$this->excludedNamespaces[] = constant(strtoupper(str_replace("riched_disable_", "", $toggle)));
 				}
@@ -292,21 +293,21 @@
 		global $wgStylePath, $wgStyleVersion, $wgDefaultSkin, $wgExtensionFunctions;
 		global $wgFCKWikiTextBeforeParse;
-		global $wgHooks;
+		global $wgHooks, $wgDefaultUserOptions;
 
 		if (!isset($this->showFCKEditor))
 		{
 			$this->showFCKEditor = 0;
-			if ( !$wgUser->getOption( 'riched_start_disabled' ) ) {
+			if ( !$wgUser->getOption( 'riched_start_disabled',$wgDefaultUserOptions['riched_start_disabled'] ) ) {
 				$this->showFCKEditor += RTE_VISIBLE;
 			}
-			if ( $wgUser->getOption( 'riched_use_popup' ) ) {
+			if ( $wgUser->getOption( 'riched_use_popup',$wgDefaultUserOptions['riched_use_popup'] ) ) {
 				$this->showFCKEditor += RTE_POPUP;
 			}
-			if ( $wgUser->getOption( 'riched_use_toggle' ) ) {
+			if ( $wgUser->getOption( 'riched_use_toggle',$wgDefaultUserOptions['riched_use_toggle'] ) ) {
 				$this->showFCKEditor += RTE_TOGGLE_LINK;
 			}
 		}
 
-		if( (!empty($_SESSION['showMyFCKeditor'])) && ($wgUser->getOption( 'riched_toggle_remember_state' )))
+		if( (!empty($_SESSION['showMyFCKeditor'])) && ($wgUser->getOption( 'riched_toggle_remember_state',$wgDefaultUserOptions['riched_toggle_remember_state'] )))
 		{
 			//clear RTE_VISIBLE flag
@@ -316,5 +317,5 @@
 		}
 
-		if (!$wgUser->getOption( 'showtoolbar' ) || $wgUser->getOption( 'riched_disable' ) || !$wgFCKEditorIsCompatible) {
+		if (!$wgUser->getOption( 'showtoolbar' ) || $wgUser->getOption( 'riched_disable', !empty( $wgDefaultUserOptions['riched_disable'] ) ? $wgDefaultUserOptions['riched_disable'] : false ) || !$wgFCKEditorIsCompatible) {
 			return true;
 		}
@@ -390,5 +391,5 @@
 var editorMsgOff = "'. wfMsg( 'tog-riched_disable' ) .'";
 var editorLink = "'. (($this->showFCKEditor & RTE_VISIBLE)? wfMsg( 'tog-riched_disable' ): wfMsg( 'textrichditor' )) .'";
-var saveSetting = '. ($wgUser->getOption( 'riched_toggle_remember_state' ) ?  1 : 0) .';
+var saveSetting = '. ($wgUser->getOption( 'riched_toggle_remember_state',$wgDefaultUserOptions['riched_toggle_remember_state']  ) ?  1 : 0) .';
 var RTE_VISIBLE = '.RTE_VISIBLE.';
 var RTE_TOGGLE_LINK = '.RTE_TOGGLE_LINK.';
@@ -753,4 +754,5 @@
 
 	public function onUserToggles( &$extraToggles ) {
+		global $wgUser,$wgDefaultUserOptions;
 		$extraToggles[] = 'riched_disable';
 		$extraToggles[] = 'riched_start_disabled';
@@ -759,4 +761,16 @@
 		$extraToggles[] = 'riched_toggle_remember_state';
 
+		//Show default options in Special:Preferences
+		if( !array_key_exists( "riched_disable", $wgUser->mOptions ) && !empty($wgDefaultUserOptions['riched_disable']) )
+			$wgUser->setOption("riched_disable", $wgDefaultUserOptions['riched_disable']);
+		if( !array_key_exists( "riched_start_disabled", 	$wgUser->mOptions ) && !empty($wgDefaultUserOptions['riched_start_disabled']) )
+			$wgUser->setOption("riched_start_disabled",$wgDefaultUserOptions['riched_start_disabled']);
+		if( !array_key_exists( "riched_use_popup", 	$wgUser->mOptions ) && !empty($wgDefaultUserOptions['riched_use_popup']) )
+			$wgUser->setOption("riched_use_popup",$wgDefaultUserOptions['riched_use_popup']);
+		if( !array_key_exists( "riched_use_toggle", 	$wgUser->mOptions ) && !empty($wgDefaultUserOptions['riched_use_toggle']) )
+			$wgUser->setOption("riched_use_toggle",$wgDefaultUserOptions['riched_use_toggle']);
+		if( !array_key_exists( "riched_toggle_remember_state", 	$wgUser->mOptions ) && !empty($wgDefaultUserOptions['riched_toggle_remember_state']) )
+			$wgUser->setOption("riched_toggle_remember_state",$wgDefaultUserOptions['riched_toggle_remember_state']);
+
 		$extraToggles = array_merge($extraToggles, self::$nsToggles);
 		return true;
