Foxtrott has uploaded a new change for review.

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

Change subject: Restore "Edit with form" link for Semantic Forms 3.5 and later
......................................................................

Restore "Edit with form" link for Semantic Forms 3.5 and later

Change-Id: I446320a301ef6c7289a6ba602299dd773af31ecf
---
M docs/release-notes.md
M src/Components/NavbarHorizontal.php
2 files changed, 54 insertions(+), 25 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/skins/chameleon 
refs/changes/89/286289/1

diff --git a/docs/release-notes.md b/docs/release-notes.md
index a2d1015..e35a5dc 100644
--- a/docs/release-notes.md
+++ b/docs/release-notes.md
@@ -1,5 +1,12 @@
 ## Release Notes
 
+### Chameleon 1.3.1
+
+Released on TBD
+
+Fixes:
+* Restore "Edit with form" link for Semantic Forms 3.5 and later
+
 ### Chameleon 1.3
 
 Released on 08-Mar-2016
diff --git a/src/Components/NavbarHorizontal.php 
b/src/Components/NavbarHorizontal.php
index 50d8cd0..5d4e621 100644
--- a/src/Components/NavbarHorizontal.php
+++ b/src/Components/NavbarHorizontal.php
@@ -283,31 +283,7 @@
                $pageTools->removeClasses( 'text-center list-inline' );
                $pageTools->addClasses( 'dropdown-menu' );
 
-               $editLinkHtml = '';
-               $pageToolsStructure = $pageTools->getPageToolsStructure();
-
-               if ( array_key_exists( 'views', $pageToolsStructure ) &&
-                       array_key_exists( 'form_edit', $pageToolsStructure[ 
'views' ] ) &&
-                       array_key_exists( 'sfgRenameEditTabs', $GLOBALS ) &&
-                       $GLOBALS[ 'sfgRenameEditTabs' ] === true
-
-               ) {
-
-                       $editLinkHtml = 
$this->getLinkAndRemoveFromPageToolStructure( $pageTools, 'form_edit' );
-
-               } elseif ( array_key_exists( 'views', $pageToolsStructure ) &&
-                       array_key_exists( 've-edit', $pageToolsStructure[ 
'views' ] )
-               ) {
-
-                       $editLinkHtml = 
$this->getLinkAndRemoveFromPageToolStructure( $pageTools, 've-edit' );
-
-               } elseif ( array_key_exists( 'views', $pageToolsStructure ) &&
-                       array_key_exists( 'edit', $pageToolsStructure[ 'views' 
] )
-               ) {
-
-                       $editLinkHtml = 
$this->getLinkAndRemoveFromPageToolStructure( $pageTools, 'edit' );
-
-               }
+               $editLinkHtml = $this->getEditLinkHtml( $pageTools );
 
                $pageToolsHtml = $pageTools->getHtml();
 
@@ -516,4 +492,50 @@
                return $editLinkHtml;
        }
 
+       /**
+        * @param $pageTools
+        * @return string
+        */
+       protected function getEditLinkHtml( $pageTools ) {
+
+               $pageToolsStructure = $pageTools->getPageToolsStructure();
+
+               if ( array_key_exists( 'views', $pageToolsStructure ) &&
+                       array_key_exists( 'sfgRenameEditTabs', $GLOBALS ) &&
+                       array_key_exists( 'formedit', $pageToolsStructure[ 
'views' ] ) && // SemanticForms 3.5+
+                       $GLOBALS[ 'sfgRenameEditTabs' ] === true
+
+               ) {
+
+                       $editLinkHtml = 
$this->getLinkAndRemoveFromPageToolStructure( $pageTools, 'formedit' );
+                       return $editLinkHtml;
+
+               } elseif ( array_key_exists( 'views', $pageToolsStructure ) &&
+                       array_key_exists( 'sfgRenameEditTabs', $GLOBALS ) &&
+                       array_key_exists( 'form_edit', $pageToolsStructure[ 
'views' ] ) && // SemanticForms <3.5
+                       $GLOBALS[ 'sfgRenameEditTabs' ] === true
+
+               ) {
+
+                       $editLinkHtml = 
$this->getLinkAndRemoveFromPageToolStructure( $pageTools, 'form_edit' );
+                       return $editLinkHtml;
+
+               } elseif ( array_key_exists( 'views', $pageToolsStructure ) &&
+                       array_key_exists( 've-edit', $pageToolsStructure[ 
'views' ] )
+               ) {
+
+                       $editLinkHtml = 
$this->getLinkAndRemoveFromPageToolStructure( $pageTools, 've-edit' );
+                       return $editLinkHtml;
+
+               } elseif ( array_key_exists( 'views', $pageToolsStructure ) &&
+                       array_key_exists( 'edit', $pageToolsStructure[ 'views' 
] )
+               ) {
+
+                       $editLinkHtml = 
$this->getLinkAndRemoveFromPageToolStructure( $pageTools, 'edit' );
+                       return $editLinkHtml;
+
+               }
+               return '';
+       }
+
 }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I446320a301ef6c7289a6ba602299dd773af31ecf
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/skins/chameleon
Gerrit-Branch: master
Gerrit-Owner: Foxtrott <[email protected]>

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

Reply via email to