Jdlrobson has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/216143

Change subject: Hygiene: Generate page actions via template
......................................................................

Hygiene: Generate page actions via template

Remove unnecessary override in beta for main page, page action generation

Change-Id: If6826a82581389ee00a9e0eec4dc2feb07179e74
---
M includes/skins/MinervaTemplate.php
M includes/skins/MinervaTemplateBeta.php
M includes/skins/SkinMinerva.php
A includes/skins/pageActions.mustache
4 files changed, 17 insertions(+), 30 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/MobileFrontend 
refs/changes/43/216143/1

diff --git a/includes/skins/MinervaTemplate.php 
b/includes/skins/MinervaTemplate.php
index b91b440..ebb1153 100644
--- a/includes/skins/MinervaTemplate.php
+++ b/includes/skins/MinervaTemplate.php
@@ -110,14 +110,6 @@
        }
 
        /**
-        * Returns available page actions
-        * @return array
-        */
-       public function getPageActions() {
-               return $this->data['page_actions'];
-       }
-
-       /**
         * Returns footer links
         * @param string $option
         * @return array
@@ -172,17 +164,13 @@
 
        /**
         * Render available page actions
+        * Get HTML for available page actions
         * @param array $data Data used to build page actions
+        * @return string
         */
-       protected function renderPageActions( $data ) {
-               $actions = $this->getPageActions();
-               if ( $actions ) {
-                       ?><ul id="page-actions" class="hlist"><?php
-                       foreach ( $actions as $key => $val ) {
-                               echo $this->makeListItem( $key, $val );
-                       }
-                       ?></ul><?php
-               }
+       protected function getPageActionsHtml( $data ) {
+               $templateParser = new TemplateParser( __DIR__ );
+               return $templateParser->processTemplate( 'pageActions', $data );
        }
 
        /**
@@ -323,7 +311,7 @@
                                if ( isset( $data['_old_revision_warning'] ) ) {
                                        echo $data['_old_revision_warning'];
                                } elseif ( !$isSpecialPage ){
-                                       $this->renderPageActions( $data );
+                                       echo $this->getPageActionsHtml( $data );
                                }
                                echo $internalBanner;
                                ?>
diff --git a/includes/skins/MinervaTemplateBeta.php 
b/includes/skins/MinervaTemplateBeta.php
index 7a73347..278355d 100644
--- a/includes/skins/MinervaTemplateBeta.php
+++ b/includes/skins/MinervaTemplateBeta.php
@@ -16,16 +16,6 @@
        protected $searchPlaceHolderMsg = 'mobile-frontend-placeholder-beta';
 
        /**
-        * Render available page actions
-        * @param array $data Data used to build page actions
-        */
-       public function renderPageActions( $data ) {
-               if ( !$this->isMainPage ) {
-                       parent::renderPageActions( $data );
-               }
-       }
-
-       /**
         * Get category button if categories are present
         * @return array A map of the button's friendly name, "categories" to 
its
         *   spec if the button can be displayed.
@@ -89,7 +79,7 @@
                        <div class="pre-content">
                                <?php
                                if ( !$this->isSpecialPage ) {
-                                       $this->renderPageActions( $data );
+                                       echo $this->getPageActionsHtml( $data );
                                }
                                echo $preBodyText;
                                // FIXME: Temporary solution until we have 
design
diff --git a/includes/skins/SkinMinerva.php b/includes/skins/SkinMinerva.php
index 179c3ce..f3f3acd 100644
--- a/includes/skins/SkinMinerva.php
+++ b/includes/skins/SkinMinerva.php
@@ -855,7 +855,7 @@
                        }
                }
 
-               $tpl->set( 'page_actions', $menu );
+               $tpl->set( 'page_actions', $this->flattenLinkArray( $menu ) );
        }
 
        /**
diff --git a/includes/skins/pageActions.mustache 
b/includes/skins/pageActions.mustache
new file mode 100644
index 0000000..0da0660
--- /dev/null
+++ b/includes/skins/pageActions.mustache
@@ -0,0 +1,9 @@
+<ul id="page-actions" class="hlist">
+       {{#page_actions}}
+       {{#components}}<li id="{{id}}"
+               {{#if itemtitle}}title="{{itemtitle}}"{{/if}}
+               class="{{class}}">
+               {{#if href}}<a href="{{href}}" 
title="{{title}}">{{text}}</a>{{/if}}
+       </li>{{/components}}
+       {{/page_actions}}
+</ul>

-- 
To view, visit https://gerrit.wikimedia.org/r/216143
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: If6826a82581389ee00a9e0eec4dc2feb07179e74
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/MobileFrontend
Gerrit-Branch: master
Gerrit-Owner: Jdlrobson <[email protected]>

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

Reply via email to