https://www.mediawiki.org/wiki/Special:Code/MediaWiki/114960

Revision: 114960
Author:   netbrain
Date:     2012-04-19 13:19:10 +0000 (Thu, 19 Apr 2012)
Log Message:
-----------
fixed indentation

added javascript to handle the current page's menu item to initially stay open 
if collapsed.

Modified Paths:
--------------
    trunk/extensions/SideBarMenu/SideBarMenu.hooks.php
    trunk/extensions/SideBarMenu/SideBarMenu.php
    trunk/extensions/SideBarMenu/includes/MenuItem.php
    trunk/extensions/SideBarMenu/includes/MenuParser.php
    trunk/extensions/SideBarMenu/js/ext.sidebarmenu.js
    trunk/extensions/SideBarMenu/test/MenuItemTest.php
    trunk/extensions/SideBarMenu/test/MenuParserTest.php

Modified: trunk/extensions/SideBarMenu/SideBarMenu.hooks.php
===================================================================
--- trunk/extensions/SideBarMenu/SideBarMenu.hooks.php  2012-04-18 21:15:53 UTC 
(rev 114959)
+++ trunk/extensions/SideBarMenu/SideBarMenu.hooks.php  2012-04-19 13:19:10 UTC 
(rev 114960)
@@ -22,7 +22,7 @@
                        return wfMsg('sidebarmenu-parser-input-error', 
$x->getMessage());
                }
                if ($config[SBM_EDIT_LINK]) {
-                       $output .= Linker::link($frame->getTitle(), 
wfMsg('sidebarmenu-edit'), array('title' => wfMsg('sidebarmenu-edit'),'class' 
=> 'sidebar-menu-edit-link'), array('action' => 'edit'));
+                       $output .= Linker::link($frame->getTitle(), 
wfMsg('sidebarmenu-edit'), array('title' => wfMsg('sidebarmenu-edit'), 'class' 
=> 'sidebar-menu-edit-link'), array('action' => 'edit'));
                }
                $output .= '</div>';
 

Modified: trunk/extensions/SideBarMenu/SideBarMenu.php
===================================================================
--- trunk/extensions/SideBarMenu/SideBarMenu.php        2012-04-18 21:15:53 UTC 
(rev 114959)
+++ trunk/extensions/SideBarMenu/SideBarMenu.php        2012-04-19 13:19:10 UTC 
(rev 114960)
@@ -61,7 +61,6 @@
        'dependencies' => array(
                'jquery.ui.core',
                'jquery.effects.core',
-
        ),
        'messages' => array(
                'sidebarmenu-js-init-error'

Modified: trunk/extensions/SideBarMenu/includes/MenuItem.php
===================================================================
--- trunk/extensions/SideBarMenu/includes/MenuItem.php  2012-04-18 21:15:53 UTC 
(rev 114959)
+++ trunk/extensions/SideBarMenu/includes/MenuItem.php  2012-04-19 13:19:10 UTC 
(rev 114960)
@@ -79,14 +79,14 @@
                                $itemClasses[] = $this->isExpanded() ? 
'sidebar-menu-item-expanded' : 'sidebar-menu-item-collapsed';
                        }
 
-                       if($this->hasCustomCSSClasses()){
+                       if ($this->hasCustomCSSClasses()) {
                                $itemClasses[] = $this->getCustomCSSClasses();
                        }
 
                        $textClasses[] = 'sidebar-menu-item-text';
                        $textClasses[] = 'sidebar-menu-item-text-' . 
$this->getLevel();
 
-                       $output .= "<li class=\"" . join(' ', $itemClasses) . 
"\"".($this->hasCustomCSSStyle() ? " style=\"{$this->getCustomCSSStyle()}\"" : 
'').">";
+                       $output .= "<li class=\"" . join(' ', $itemClasses) . 
"\"" . ($this->hasCustomCSSStyle() ? " style=\"{$this->getCustomCSSStyle()}\"" 
: '') . ">";
                        $output .= "<div 
class=\"sidebar-menu-item-text-container\">";
                        $output .= "<span class=\"" . join(' ', $textClasses) . 
"\">" . $this->getText() . "</span>";
 
@@ -124,7 +124,7 @@
                $this->customCSSStyle = $style;
        }
 
-       public function hasCustomCSSStyle(){
+       public function hasCustomCSSStyle() {
                return isset($this->customCSSStyle) && $this->customCSSStyle 
!== '';
        }
 
@@ -136,7 +136,7 @@
                $this->customCSSClasses = $class;
        }
 
-       public function hasCustomCSSClasses(){
+       public function hasCustomCSSClasses() {
                return isset($this->customCSSClasses) && 
$this->customCSSClasses !== '';
        }
 

Modified: trunk/extensions/SideBarMenu/includes/MenuParser.php
===================================================================
--- trunk/extensions/SideBarMenu/includes/MenuParser.php        2012-04-18 
21:15:53 UTC (rev 114959)
+++ trunk/extensions/SideBarMenu/includes/MenuParser.php        2012-04-19 
13:19:10 UTC (rev 114960)
@@ -32,12 +32,12 @@
                return preg_filter("/\+|\-?\**([^\|]*)\|?.*/", "$1", $line);
        }
 
-       public function getStyleParameter($line){
-               return preg_filter("/.*?\|style=(.*)\|?/","$1",$line);
+       public function getStyleParameter($line) {
+               return preg_filter("/.*?\|style=(.*)\|?/", "$1", $line);
        }
 
-       public function getClassParameter($line){
-               return preg_filter("/.*?\|class=(.*)\|?/","$1",$line);
+       public function getClassParameter($line) {
+               return preg_filter("/.*?\|class=(.*)\|?/", "$1", $line);
        }
 
 

Modified: trunk/extensions/SideBarMenu/js/ext.sidebarmenu.js
===================================================================
--- trunk/extensions/SideBarMenu/js/ext.sidebarmenu.js  2012-04-18 21:15:53 UTC 
(rev 114959)
+++ trunk/extensions/SideBarMenu/js/ext.sidebarmenu.js  2012-04-19 13:19:10 UTC 
(rev 114960)
@@ -31,6 +31,13 @@
                 
$(this).parents('.sidebar-menu-item:first').toggleClass('sidebar-menu-item-collapsed
 sidebar-menu-item-expanded');
             }
         });
+
+        /*Open submenu of current page if current page is present as a link in 
sidebarmenu*/
+        var selfLink = $('.sidebar-menu-item-collapsed').find('.selflink')[0]
+        if(selfLink !== undefined ){
+            
$(selfLink).parent('.sidebar-menu-item-text').siblings('.sidebar-menu-item-controls').trigger('click');
+        }
+
     } else {
         $('.sidebar-menu-container').prepend(mw.msg('sidebar-js-init-error'));
     }

Modified: trunk/extensions/SideBarMenu/test/MenuItemTest.php
===================================================================
--- trunk/extensions/SideBarMenu/test/MenuItemTest.php  2012-04-18 21:15:53 UTC 
(rev 114959)
+++ trunk/extensions/SideBarMenu/test/MenuItemTest.php  2012-04-19 13:19:10 UTC 
(rev 114960)
@@ -101,21 +101,21 @@
        }
 
 
-       public function testToHTMLOnMenuItemWithStyling(){
+       public function testToHTMLOnMenuItemWithStyling() {
                $menuItemChild = new MenuItem();
                $menuItemChild->setText("MenuItem1");
                $menuItemChild->setCustomCSSStyle('color: red;');
                $this->menuItem->addChild($menuItemChild);
                $html = $this->menuItem->toHTML();
-               $this->assertEquals('<ul class="sidebar-menu 
sidebar-menu-0"><li class="sidebar-menu-item sidebar-menu-item-1" style="color: 
red;"><div class="sidebar-menu-item-text-container"><span 
class="sidebar-menu-item-text 
sidebar-menu-item-text-1">MenuItem1</span></div></li></ul>',$html);
+               $this->assertEquals('<ul class="sidebar-menu 
sidebar-menu-0"><li class="sidebar-menu-item sidebar-menu-item-1" style="color: 
red;"><div class="sidebar-menu-item-text-container"><span 
class="sidebar-menu-item-text 
sidebar-menu-item-text-1">MenuItem1</span></div></li></ul>', $html);
        }
 
-       public function testToHTMLOnMenuItemWithCustomClasses(){
+       public function testToHTMLOnMenuItemWithCustomClasses() {
                $menuItemChild = new MenuItem();
                $menuItemChild->setText("MenuItem1");
                $menuItemChild->setCustomCSSClasses('testclass1 testclass2');
                $this->menuItem->addChild($menuItemChild);
                $html = $this->menuItem->toHTML();
-               $this->assertEquals('<ul class="sidebar-menu 
sidebar-menu-0"><li class="sidebar-menu-item sidebar-menu-item-1 testclass1 
testclass2"><div class="sidebar-menu-item-text-container"><span 
class="sidebar-menu-item-text 
sidebar-menu-item-text-1">MenuItem1</span></div></li></ul>',$html);
+               $this->assertEquals('<ul class="sidebar-menu 
sidebar-menu-0"><li class="sidebar-menu-item sidebar-menu-item-1 testclass1 
testclass2"><div class="sidebar-menu-item-text-container"><span 
class="sidebar-menu-item-text 
sidebar-menu-item-text-1">MenuItem1</span></div></li></ul>', $html);
        }
 }

Modified: trunk/extensions/SideBarMenu/test/MenuParserTest.php
===================================================================
--- trunk/extensions/SideBarMenu/test/MenuParserTest.php        2012-04-18 
21:15:53 UTC (rev 114959)
+++ trunk/extensions/SideBarMenu/test/MenuParserTest.php        2012-04-19 
13:19:10 UTC (rev 114960)
@@ -214,7 +214,7 @@
                        'MenuItem1|style=color: red;',
                );
                $children = $this->menuParser->getMenuTree(join("\n", 
$data))->getChildren();
-               $this->assertEquals("MenuItem1",$children[0]->getText());
+               $this->assertEquals("MenuItem1", $children[0]->getText());
                $this->assertEquals("color: red;", 
$children[0]->getCustomCSSStyle());
        }
 
@@ -223,7 +223,7 @@
                        'MenuItem1|class=somecssclass anothercssclass',
                );
                $children = $this->menuParser->getMenuTree(join("\n", 
$data))->getChildren();
-               $this->assertEquals("MenuItem1",$children[0]->getText());
+               $this->assertEquals("MenuItem1", $children[0]->getText());
                $this->assertEquals("somecssclass anothercssclass", 
$children[0]->getCustomCSSClasses());
        }
 


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to