Example #1
0
 /**
  * (Setting Callback)
  * Respond to changes in the "enable_components" setting
  *
  * If CiviCase is being enabled, load the case related sample data
  *
  * @param array $oldValue List of component names
  * @param array $newValue List of component names
  * @param array $metadata Specification of the setting (per *.settings.php)
  */
 public static function onToggleComponents($oldValue, $newValue, $metadata)
 {
     if (in_array('CiviCase', $newValue) && (!$oldValue || !in_array('CiviCase', $oldValue))) {
         $config = CRM_Core_Config::singleton();
         CRM_Admin_Form_Setting_Component::loadCaseSampleData($config->dsn, $config->sqlDir . 'case_sample.mysql');
         CRM_Admin_Form_Setting_Component::loadCaseSampleData($config->dsn, $config->sqlDir . 'case_sample1.mysql');
         if (!CRM_Case_BAO_Case::createCaseViews()) {
             $msg = ts("Could not create the MySQL views for CiviCase. Your mysql user needs to have the 'CREATE VIEW' permission");
             CRM_Core_Error::fatal($msg);
         }
     }
 }
Example #2
0
 /**
  * (Setting Callback)
  * Respond to changes in the "enable_components" setting
  *
  * If CiviCase is being enabled, load the case related sample data
  *
  * @param array $oldValue
  *   List of component names.
  * @param array $newValue
  *   List of component names.
  * @param array $metadata
  *   Specification of the setting (per *.settings.php).
  */
 public static function onToggleComponents($oldValue, $newValue, $metadata)
 {
     if (in_array('CiviCase', $newValue) && (!$oldValue || !in_array('CiviCase', $oldValue))) {
         $pathToCaseSampleTpl = __DIR__ . '/xml/configuration.sample/';
         CRM_Admin_Form_Setting_Component::loadCaseSampleData($pathToCaseSampleTpl . 'case_sample.mysql.tpl');
         if (!CRM_Case_BAO_Case::createCaseViews()) {
             $msg = ts("Could not create the MySQL views for CiviCase. Your mysql user needs to have the 'CREATE VIEW' permission");
             CRM_Core_Error::fatal($msg);
         }
     }
 }
 public function postProcess()
 {
     $params = $this->controller->exportValues($this->_name);
     $params['enableComponentIDs'] = array();
     foreach ($params['enableComponents'] as $name) {
         $params['enableComponentIDs'][] = $this->_components[$name]->componentID;
     }
     // if CiviCase is being enabled,
     // load the case related sample data
     if (in_array('CiviCase', $params['enableComponents']) && !in_array('CiviCase', $this->_defaults['enableComponents'])) {
         $config = CRM_Core_Config::singleton();
         CRM_Admin_Form_Setting_Component::loadCaseSampleData($config->dsn, $config->sqlDir . 'case_sample.mysql');
         CRM_Admin_Form_Setting_Component::loadCaseSampleData($config->dsn, $config->sqlDir . 'case_sample1.mysql');
         if (!CRM_Case_BAO_Case::createCaseViews()) {
             CRM_Core_Error::fatal('Could not create Case views.');
         }
     }
     parent::commonProcess($params);
     // reset navigation when components are enabled / disabled
     CRM_Core_BAO_Navigation::resetNavigation();
 }