From: eileen Date: Thu, 18 Oct 2018 19:59:33 +0000 (+1300) Subject: Fix notics on Membership Settings form. X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=b70c66292a6a5a0581acce3309863a1b2f7b156b;p=civicrm-core.git Fix notics on Membership Settings form. Membership settings form has some enotices off the back of work on the display form. This fixes those & makes it a 'pure' form in that it relies fully on the metadata --- diff --git a/CRM/Admin/Form/Preferences.php b/CRM/Admin/Form/Preferences.php index 28b4cf191a..710623cef0 100644 --- a/CRM/Admin/Form/Preferences.php +++ b/CRM/Admin/Form/Preferences.php @@ -44,7 +44,7 @@ class CRM_Admin_Form_Preferences extends CRM_Core_Form { protected $_checkbox = NULL; - protected $_varNames = NULL; + protected $_varNames = []; protected $_config = NULL; diff --git a/CRM/Admin/Form/Preferences/Member.php b/CRM/Admin/Form/Preferences/Member.php index 8ae9eabcf1..619ca69581 100644 --- a/CRM/Admin/Form/Preferences/Member.php +++ b/CRM/Admin/Form/Preferences/Member.php @@ -35,28 +35,9 @@ * This class generates form components for component preferences. */ class CRM_Admin_Form_Preferences_Member extends CRM_Admin_Form_Preferences { - public function preProcess() { - CRM_Utils_System::setTitle(ts('CiviMember Component Settings')); - $this->_varNames = array( - CRM_Core_BAO_Setting::MEMBER_PREFERENCES_NAME => array( - 'default_renewal_contribution_page' => array( - 'html_type' => 'select', - 'title' => ts('Default online membership renewal page'), - 'option_values' => array('' => ts('- select -')) + CRM_Contribute_PseudoConstant::contributionPage(), - 'weight' => 1, - 'description' => ts('If you select a default online contribution page for self-service membership renewals, a "renew" link pointing to that page will be displayed on the Contact Dashboard for memberships which were entered offline. You will need to ensure that the membership block for the selected online contribution page includes any currently available memberships.'), - ), - ), - ); - parent::preProcess(); - } - - /** - * Build the form object. - */ - public function buildQuickForm() { - parent::buildQuickForm(); - } + protected $_settings = [ + 'default_renewal_contribution_page' => CRM_Core_BAO_Setting::MEMBER_PREFERENCES_NAME, + ]; } diff --git a/CRM/Admin/Form/SettingTrait.php b/CRM/Admin/Form/SettingTrait.php index 5b5364d1e1..92e961591f 100644 --- a/CRM/Admin/Form/SettingTrait.php +++ b/CRM/Admin/Form/SettingTrait.php @@ -191,6 +191,7 @@ trait CRM_Admin_Form_SettingTrait { // setting_description should be deprecated - see Mail.tpl for metadata based tpl. $this->assign('setting_descriptions', $descriptions); $this->assign('settings_fields', $settingMetaData); + $this->assign('fields', $settingMetaData); } /** @@ -208,6 +209,7 @@ trait CRM_Admin_Form_SettingTrait { 'checkboxes' => 'CheckBoxes', 'checkbox' => 'CheckBox', 'radio' => 'Radio', + 'select' => 'Select', ]; return $mapping[$spec['html_type']]; } diff --git a/settings/Member.setting.php b/settings/Member.setting.php index f2a8962b7a..49500a886a 100644 --- a/settings/Member.setting.php +++ b/settings/Member.setting.php @@ -42,16 +42,17 @@ return array( 'group' => 'member', 'name' => 'default_renewal_contribution_page', 'type' => 'Integer', - 'html_type' => 'Select', + 'html_type' => 'select', 'default' => NULL, 'pseudoconstant' => array( - 'name' => 'contributionPage', + // @todo - handle table style pseudoconstants for settings & avoid deprecated function. + 'callback' => 'CRM_Contribute_PseudoConstant::contributionPage', ), 'add' => '4.1', 'title' => 'Default online membership renewal page', 'is_domain' => 1, 'is_contact' => 0, - 'description' => 'If you select a default online contribution page for self-service membership renewals, a "renew" link pointing to that page will be displayed on the Contact Dashboard for memberships which were entered offline. You will need to ensure that the membership block for the selected online contribution page includes any currently available memberships.', + 'description' => ts('If you select a default online contribution page for self-service membership renewals, a "renew" link pointing to that page will be displayed on the Contact Dashboard for memberships which were entered offline. You will need to ensure that the membership block for the selected online contribution page includes any currently available memberships.'), 'help_text' => NULL, ), );