[MediaWiki-commits] [Gerrit] mediawiki...BlueSpicePagesVisited[master]: BlueSpicePagesVisited: Change config

2017-12-10 Thread Robert Vogel (Code Review)
Robert Vogel has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/394061 )

Change subject: BlueSpicePagesVisited: Change config
..


BlueSpicePagesVisited: Change config

Added config-data in extension.json.

Removed BsConfig-registration methods in main-class.

Altered config-get methods.

Added config-classes.

Fixed callbacks on Hooks.

Fixed namespace on config-classes.

Added params to config-classes.

Corrected callback-methods on hook.

Corrected options on config-class.

Change-Id: If3a540ad70e926a16a0b7690c129e1eebe03dff1
---
M PagesVisited.class.php
M extension.json
A src/Hook/GetPreferences/AddWidgetLimit.php
A src/Hook/GetPreferences/AddWidgetNS.php
A src/Hook/GetPreferences/WidgetSortOdr.php
5 files changed, 71 insertions(+), 36 deletions(-)

Approvals:
  Pwirth: Looks good to me, approved
  Robert Vogel: Verified



diff --git a/PagesVisited.class.php b/PagesVisited.class.php
index 5c1c2ab..e26d067 100644
--- a/PagesVisited.class.php
+++ b/PagesVisited.class.php
@@ -52,40 +52,7 @@
$this->setHook( 'BSInsertMagicAjaxGetData' );
$this->setHook( 'BSUsageTrackerRegisterCollectors' );
 
-   BsConfig::registerVar( 'MW::PagesVisited::WidgetLimit', 10, 
BsConfig::LEVEL_USER|BsConfig::TYPE_INT, 'bs-pagesvisited-pref-widgetlimit', 
'int' );
-   BsConfig::registerVar( 'MW::PagesVisited::WidgetNS', array( 0 
), 
BsConfig::LEVEL_USER|BsConfig::TYPE_ARRAY_STRING|BsConfig::USE_PLUGIN_FOR_PREFS,
 'bs-pagesvisited-pref-widgetns', 'multiselectex' );
-   BsConfig::registerVar( 'MW::PagesVisited::WidgetSortOdr', 
'time', 
BsConfig::LEVEL_USER|BsConfig::TYPE_STRING|BsConfig::USE_PLUGIN_FOR_PREFS, 
'bs-pagesvisited-pref-widgetsortodr', 'select' );
-
wfProfileOut( 'BS::'.__METHOD__ );
-   }
-
-   /**
-* The preferences plugin callback
-* @param string $sAdapterName
-* @param BsConfig $oVariable
-* @return array MediaWiki preferences options array
-*/
-   public function runPreferencePlugin( $sAdapterName, $oVariable ) {
-   $aPrefs = array();
-   switch( $oVariable->getName() ) {
-   case 'WidgetNS':
-   $aPrefs = array(
-   'type' => 'multiselectex',
-   'options' => 
BsNamespaceHelper::getNamespacesForSelectOptions( array( -2, NS_MEDIA, 
NS_MEDIAWIKI, NS_MEDIAWIKI_TALK, NS_SPECIAL ) )
-   );
-   break;
-   case 'WidgetSortOdr':
-   $aPrefs = array(
-   'options' => array(
-   wfMessage( 
'bs-pagesvisited-pref-sort-time' )->plain() => 'time',
-   wfMessage( 
'bs-pagesvisited-pref-sort-pagename' )->plain() => 'pagename'
-   )
-   );
-   break;
-   default:
-   break;
-   }
-   return $aPrefs;
}
 
/**
@@ -211,9 +178,11 @@
 * @param array &$aViews List of Widget view objects from the BlueSpice 
Skin.
 */
private function addWidgetView( &$aViews ) {
-   $iCount = BsConfig::get( 'MW::PagesVisited::WidgetLimit' );
-   $aNamespaces = BsConfig::get( 'MW::PagesVisited::WidgetNS' );
-   $sSortOrder = BsConfig::get( 'MW::PagesVisited::WidgetSortOdr' 
);
+   $config = 
\MediaWiki\MediaWikiServices::getInstance()->getConfigFactory()->makeConfig( 
'bsg' );
+
+   $iCount = $config->get( 'PagesVisitedWidgetLimit' );
+   $aNamespaces = $config->get( 'PagesVisitedWidgetNS' );
+   $sSortOrder = $config->get( 'PagesVisitedWidgetSortOdr' );
 
//Validation
$oValidationICount = BsValidator::isValid( 'IntegerRange', 
$iCount, array( 'fullResponse' => true, 'lowerBoundary' => 1, 'upperBoundary' 
=> 30 ) );
diff --git a/extension.json b/extension.json
index 307a955..3984fdb 100644
--- a/extension.json
+++ b/extension.json
@@ -20,9 +20,22 @@
"i18n"
]
},
+   "DefaultUserOptions": {
+   "bs-pagesvisited-pref-widgetlimit": "int",
+   "bs-pagesvisited-pref-widgetns": "multiselectex",
+   "bs-pagesvisited-pref-widgetsortodr": "select"
+   },
"AutoloadClasses": {
"PagesVisited": "PagesVisited.class.php"
},
+   "Hooks": {
+   "GetPreferences": [
+   
"\\BlueSpice\\PagesVisited\\Hook\\GetPreferences\\AddWidgetLimit::callback",
+   
"\\BlueSpice\\PagesVisited\\Hook\\Ge

[MediaWiki-commits] [Gerrit] mediawiki...BlueSpicePagesVisited[master]: BlueSpicePagesVisited: Change config

2017-11-29 Thread Pmiguelpirzer (Code Review)
Pmiguelpirzer has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/394061 )

Change subject: BlueSpicePagesVisited: Change config
..

BlueSpicePagesVisited: Change config

Added config-data in extension.json.

Removed BsConfig-registration methods in main-class.

Altered config-get methods.

Added config-classes.

Change-Id: If3a540ad70e926a16a0b7690c129e1eebe03dff1
---
M PagesVisited.class.php
M extension.json
A src/Hook/GetPreferences/AddWidgetLimit.php
A src/Hook/GetPreferences/AddWidgetNS.php
A src/Hook/GetPreferences/WidgetSortOdr.php
5 files changed, 62 insertions(+), 36 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/BlueSpicePagesVisited 
refs/changes/61/394061/1

diff --git a/PagesVisited.class.php b/PagesVisited.class.php
index 5c1c2ab..e26d067 100644
--- a/PagesVisited.class.php
+++ b/PagesVisited.class.php
@@ -52,40 +52,7 @@
$this->setHook( 'BSInsertMagicAjaxGetData' );
$this->setHook( 'BSUsageTrackerRegisterCollectors' );
 
-   BsConfig::registerVar( 'MW::PagesVisited::WidgetLimit', 10, 
BsConfig::LEVEL_USER|BsConfig::TYPE_INT, 'bs-pagesvisited-pref-widgetlimit', 
'int' );
-   BsConfig::registerVar( 'MW::PagesVisited::WidgetNS', array( 0 
), 
BsConfig::LEVEL_USER|BsConfig::TYPE_ARRAY_STRING|BsConfig::USE_PLUGIN_FOR_PREFS,
 'bs-pagesvisited-pref-widgetns', 'multiselectex' );
-   BsConfig::registerVar( 'MW::PagesVisited::WidgetSortOdr', 
'time', 
BsConfig::LEVEL_USER|BsConfig::TYPE_STRING|BsConfig::USE_PLUGIN_FOR_PREFS, 
'bs-pagesvisited-pref-widgetsortodr', 'select' );
-
wfProfileOut( 'BS::'.__METHOD__ );
-   }
-
-   /**
-* The preferences plugin callback
-* @param string $sAdapterName
-* @param BsConfig $oVariable
-* @return array MediaWiki preferences options array
-*/
-   public function runPreferencePlugin( $sAdapterName, $oVariable ) {
-   $aPrefs = array();
-   switch( $oVariable->getName() ) {
-   case 'WidgetNS':
-   $aPrefs = array(
-   'type' => 'multiselectex',
-   'options' => 
BsNamespaceHelper::getNamespacesForSelectOptions( array( -2, NS_MEDIA, 
NS_MEDIAWIKI, NS_MEDIAWIKI_TALK, NS_SPECIAL ) )
-   );
-   break;
-   case 'WidgetSortOdr':
-   $aPrefs = array(
-   'options' => array(
-   wfMessage( 
'bs-pagesvisited-pref-sort-time' )->plain() => 'time',
-   wfMessage( 
'bs-pagesvisited-pref-sort-pagename' )->plain() => 'pagename'
-   )
-   );
-   break;
-   default:
-   break;
-   }
-   return $aPrefs;
}
 
/**
@@ -211,9 +178,11 @@
 * @param array &$aViews List of Widget view objects from the BlueSpice 
Skin.
 */
private function addWidgetView( &$aViews ) {
-   $iCount = BsConfig::get( 'MW::PagesVisited::WidgetLimit' );
-   $aNamespaces = BsConfig::get( 'MW::PagesVisited::WidgetNS' );
-   $sSortOrder = BsConfig::get( 'MW::PagesVisited::WidgetSortOdr' 
);
+   $config = 
\MediaWiki\MediaWikiServices::getInstance()->getConfigFactory()->makeConfig( 
'bsg' );
+
+   $iCount = $config->get( 'PagesVisitedWidgetLimit' );
+   $aNamespaces = $config->get( 'PagesVisitedWidgetNS' );
+   $sSortOrder = $config->get( 'PagesVisitedWidgetSortOdr' );
 
//Validation
$oValidationICount = BsValidator::isValid( 'IntegerRange', 
$iCount, array( 'fullResponse' => true, 'lowerBoundary' => 1, 'upperBoundary' 
=> 30 ) );
diff --git a/extension.json b/extension.json
index 307a955..e860e2e 100644
--- a/extension.json
+++ b/extension.json
@@ -20,9 +20,20 @@
"i18n"
]
},
+   "DefaultUserOptions": {
+   "bs-pagesvisited-pref-widgetlimit": "int",
+   "bs-pagesvisited-pref-widgetns": "multiselectex",
+   "bs-pagesvisited-pref-widgetsortodr": "select"
+   },
"AutoloadClasses": {
"PagesVisited": "PagesVisited.class.php"
},
+   "Hooks": {
+   "GetPreferences": 
"BlueSpice\\Hook\\GetPreferences\\AddWidgetLimit::callback",
+   "GetPreferences": 
"BlueSpice\\Hook\\GetPreferences\\AddWidgetNS::callback",
+   "GetPreferences": 
"BlueSpice\\Hook\\GetPreferences\\AddWidgetSortOdr::callback",
+   "UnitTestsList": "PagesVisited::