Move edit toolbar generation code from the Skin to the EditPage user interface, where...
authorBrion Vibber <brion@users.mediawiki.org>
Thu, 25 Nov 2004 13:52:56 +0000 (13:52 +0000)
committerBrion Vibber <brion@users.mediawiki.org>
Thu, 25 Nov 2004 13:52:56 +0000 (13:52 +0000)
includes/EditPage.php
includes/Skin.php

index e6e0ba7..cf64b00 100644 (file)
@@ -350,7 +350,7 @@ class EditPage {
 
                if( $wgUser->getOption('showtoolbar') and !$isCssJsSubpage ) {
                        # prepare toolbar for edit buttons
-                       $toolbar = $sk->getEditToolbar();
+                       $toolbar = $this->getEditToolbar();
                } else {
                        $toolbar = '';
                }
@@ -669,6 +669,133 @@ htmlspecialchars( $wgContLang->recodeForEdit( $this->textbox1 ) ) .
                        array_values( $replacearray ),
                        $sectionanchor );
        }
+
+       /**
+        * Shows a bulletin board style toolbar for common editing functions.
+        * It can be disabled in the user preferences.
+        * The necessary JavaScript code can be found in style/wikibits.js.
+        */
+       function getEditToolbar() {
+               global $wgStylePath, $wgLang, $wgMimeType;
+
+               /**
+                * toolarray an array of arrays which each include the filename of
+                * the button image (without path), the opening tag, the closing tag,
+                * and optionally a sample text that is inserted between the two when no
+                * selection is highlighted.
+                * The tip text is shown when the user moves the mouse over the button.
+                *
+                * Already here are accesskeys (key), which are not used yet until someone
+                * can figure out a way to make them work in IE. However, we should make
+                * sure these keys are not defined on the edit page.
+                */
+               $toolarray=array(
+                       array(  'image'=>'button_bold.png',
+                                       'open'  =>      "\'\'\'",
+                                       'close' =>      "\'\'\'",
+                                       'sample'=>      wfMsg('bold_sample'),
+                                       'tip'   =>      wfMsg('bold_tip'),
+                                       'key'   =>      'B'
+                               ),
+                       array(  'image'=>'button_italic.png',
+                                       'open'  =>      "\'\'",
+                                       'close' =>      "\'\'",
+                                       'sample'=>      wfMsg('italic_sample'),
+                                       'tip'   =>      wfMsg('italic_tip'),
+                                       'key'   =>      'I'
+                               ),
+                       array(  'image'=>'button_link.png',
+                                       'open'  =>      '[[',
+                                       'close' =>      ']]',
+                                       'sample'=>      wfMsg('link_sample'),
+                                       'tip'   =>      wfMsg('link_tip'),
+                                       'key'   =>      'L'
+                               ),
+                       array(  'image'=>'button_extlink.png',
+                                       'open'  =>      '[',
+                                       'close' =>      ']',
+                                       'sample'=>      wfMsg('extlink_sample'),
+                                       'tip'   =>      wfMsg('extlink_tip'),
+                                       'key'   =>      'X'
+                               ),
+                       array(  'image'=>'button_headline.png',
+                                       'open'  =>      "\\n== ",
+                                       'close' =>      " ==\\n",
+                                       'sample'=>      wfMsg('headline_sample'),
+                                       'tip'   =>      wfMsg('headline_tip'),
+                                       'key'   =>      'H'
+                               ),
+                       array(  'image'=>'button_image.png',
+                                       'open'  =>      '[['.$wgLang->getNsText(NS_IMAGE).":",
+                                       'close' =>      ']]',
+                                       'sample'=>      wfMsg('image_sample'),
+                                       'tip'   =>      wfMsg('image_tip'),
+                                       'key'   =>      'D'
+                               ),
+                       array(  'image' =>      'button_media.png',
+                                       'open'  =>      '[['.$wgLang->getNsText(NS_MEDIA).':',
+                                       'close' =>      ']]',
+                                       'sample'=>      wfMsg('media_sample'),
+                                       'tip'   =>      wfMsg('media_tip'),
+                                       'key'   =>      'M'
+                               ),
+                       array(  'image' =>      'button_math.png',
+                                       'open'  =>      "\\<math\\>",
+                                       'close' =>      "\\</math\\>",
+                                       'sample'=>      wfMsg('math_sample'),
+                                       'tip'   =>      wfMsg('math_tip'),
+                                       'key'   =>      'C'
+                               ),
+                       array(  'image' =>      'button_nowiki.png',
+                                       'open'  =>      "\\<nowiki\\>",
+                                       'close' =>      "\\</nowiki\\>",
+                                       'sample'=>      wfMsg('nowiki_sample'),
+                                       'tip'   =>      wfMsg('nowiki_tip'),
+                                       'key'   =>      'N'
+                               ),
+                       array(  'image' =>      'button_sig.png',
+                                       'open'  =>      '--~~~~',
+                                       'close' =>      '',
+                                       'sample'=>      '',
+                                       'tip'   =>      wfMsg('sig_tip'),
+                                       'key'   =>      'Y'
+                               ),
+                       array(  'image' =>      'button_hr.png',
+                                       'open'  =>      "\\n----\\n",
+                                       'close' =>      '',
+                                       'sample'=>      '',
+                                       'tip'   =>      wfMsg('hr_tip'),
+                                       'key'   =>      'R'
+                               )
+               );
+               $toolbar ="<script type='text/javascript'>\n/*<![CDATA[*/\n";
+
+               $toolbar.="document.writeln(\"<div id='toolbar'>\");\n";
+               foreach($toolarray as $tool) {
+
+                       $image=$wgStylePath.'/common/images/'.$tool['image'];
+                       $open=$tool['open'];
+                       $close=$tool['close'];
+                       $sample = addslashes( $tool['sample'] );
+
+                       // Note that we use the tip both for the ALT tag and the TITLE tag of the image.
+                       // Older browsers show a "speedtip" type message only for ALT.
+                       // Ideally these should be different, realistically they
+                       // probably don't need to be.
+                       $tip = addslashes( $tool['tip'] );
+
+                       #$key = $tool["key"];
+
+                       $toolbar.="addButton('$image','$tip','$open','$close','$sample');\n";
+               }
+
+               $toolbar.="addInfobox('" . addslashes( wfMsg( "infobox" ) ) . "','" . addslashes(wfMsg("infobox_alert")) . "');\n";
+               $toolbar.="document.writeln(\"</div>\");\n";
+
+               $toolbar.="/*]]>*/\n</script>";
+               return $toolbar;
+       }
+
 }
 
 ?>
index ace380e..2d254a6 100644 (file)
@@ -2089,133 +2089,6 @@ class Skin {
 
        }
 
-       /**
-        * This function is called by EditPage.php and shows a bulletin board style
-        * toolbar for common editing functions. It can be disabled in the user
-        * preferences.
-        * The necessary JavaScript code can be found in style/wikibits.js.
-        */
-       function getEditToolbar() {
-               global $wgStylePath, $wgLang, $wgMimeType;
-
-               /**
-                * toolarray an array of arrays which each include the filename of
-                * the button image (without path), the opening tag, the closing tag,
-                * and optionally a sample text that is inserted between the two when no
-                * selection is highlighted.
-                * The tip text is shown when the user moves the mouse over the button.
-                *
-                * Already here are accesskeys (key), which are not used yet until someone
-                * can figure out a way to make them work in IE. However, we should make
-                * sure these keys are not defined on the edit page.
-                */
-               $toolarray=array(
-                       array(  'image'=>'button_bold.png',
-                                       'open'  =>      "\'\'\'",
-                                       'close' =>      "\'\'\'",
-                                       'sample'=>      wfMsg('bold_sample'),
-                                       'tip'   =>      wfMsg('bold_tip'),
-                                       'key'   =>      'B'
-                               ),
-                       array(  'image'=>'button_italic.png',
-                                       'open'  =>      "\'\'",
-                                       'close' =>      "\'\'",
-                                       'sample'=>      wfMsg('italic_sample'),
-                                       'tip'   =>      wfMsg('italic_tip'),
-                                       'key'   =>      'I'
-                               ),
-                       array(  'image'=>'button_link.png',
-                                       'open'  =>      '[[',
-                                       'close' =>      ']]',
-                                       'sample'=>      wfMsg('link_sample'),
-                                       'tip'   =>      wfMsg('link_tip'),
-                                       'key'   =>      'L'
-                               ),
-                       array(  'image'=>'button_extlink.png',
-                                       'open'  =>      '[',
-                                       'close' =>      ']',
-                                       'sample'=>      wfMsg('extlink_sample'),
-                                       'tip'   =>      wfMsg('extlink_tip'),
-                                       'key'   =>      'X'
-                               ),
-                       array(  'image'=>'button_headline.png',
-                                       'open'  =>      "\\n== ",
-                                       'close' =>      " ==\\n",
-                                       'sample'=>      wfMsg('headline_sample'),
-                                       'tip'   =>      wfMsg('headline_tip'),
-                                       'key'   =>      'H'
-                               ),
-                       array(  'image'=>'button_image.png',
-                                       'open'  =>      '[['.$wgLang->getNsText(NS_IMAGE).":",
-                                       'close' =>      ']]',
-                                       'sample'=>      wfMsg('image_sample'),
-                                       'tip'   =>      wfMsg('image_tip'),
-                                       'key'   =>      'D'
-                               ),
-                       array(  'image' =>      'button_media.png',
-                                       'open'  =>      '[['.$wgLang->getNsText(NS_MEDIA).':',
-                                       'close' =>      ']]',
-                                       'sample'=>      wfMsg('media_sample'),
-                                       'tip'   =>      wfMsg('media_tip'),
-                                       'key'   =>      'M'
-                               ),
-                       array(  'image' =>      'button_math.png',
-                                       'open'  =>      "\\<math\\>",
-                                       'close' =>      "\\</math\\>",
-                                       'sample'=>      wfMsg('math_sample'),
-                                       'tip'   =>      wfMsg('math_tip'),
-                                       'key'   =>      'C'
-                               ),
-                       array(  'image' =>      'button_nowiki.png',
-                                       'open'  =>      "\\<nowiki\\>",
-                                       'close' =>      "\\</nowiki\\>",
-                                       'sample'=>      wfMsg('nowiki_sample'),
-                                       'tip'   =>      wfMsg('nowiki_tip'),
-                                       'key'   =>      'N'
-                               ),
-                       array(  'image' =>      'button_sig.png',
-                                       'open'  =>      '--~~~~',
-                                       'close' =>      '',
-                                       'sample'=>      '',
-                                       'tip'   =>      wfMsg('sig_tip'),
-                                       'key'   =>      'Y'
-                               ),
-                       array(  'image' =>      'button_hr.png',
-                                       'open'  =>      "\\n----\\n",
-                                       'close' =>      '',
-                                       'sample'=>      '',
-                                       'tip'   =>      wfMsg('hr_tip'),
-                                       'key'   =>      'R'
-                               )
-               );
-               $toolbar ="<script type='text/javascript'>\n/*<![CDATA[*/\n";
-
-               $toolbar.="document.writeln(\"<div id='toolbar'>\");\n";
-               foreach($toolarray as $tool) {
-
-                       $image=$wgStylePath.'/common/images/'.$tool['image'];
-                       $open=$tool['open'];
-                       $close=$tool['close'];
-                       $sample = addslashes( $tool['sample'] );
-
-                       // Note that we use the tip both for the ALT tag and the TITLE tag of the image.
-                       // Older browsers show a "speedtip" type message only for ALT.
-                       // Ideally these should be different, realistically they
-                       // probably don't need to be.
-                       $tip = addslashes( $tool['tip'] );
-
-                       #$key = $tool["key"];
-
-                       $toolbar.="addButton('$image','$tip','$open','$close','$sample');\n";
-               }
-
-               $toolbar.="addInfobox('" . addslashes( wfMsg( "infobox" ) ) . "','" . addslashes(wfMsg("infobox_alert")) . "');\n";
-               $toolbar.="document.writeln(\"</div>\");\n";
-
-               $toolbar.="/*]]>*/\n</script>";
-               return $toolbar;
-       }
-
        /**
         * @access public
         */