name = 'Registration'; } public function defaultTask() { $this->layout = 'default'; $data = []; ConfigurationService::prepareTableSelect($data); ConfigurationService::prepareConditionSelect($data); $this->prepareRegistrationConfiguration($data); $this->breadcrumb[__('Block on registration', 'acychecker')] = Url::completeLink('registration'); $this->display($data); } public function save() { $registrationConfig = Security::getVar('array', 'acyc_config', []); if (empty($registrationConfig['registration_integrations'])) $registrationConfig['registration_integrations'] = []; if (empty($registrationConfig['registration_conditions'])) $registrationConfig['registration_conditions'] = []; $this->config->save($registrationConfig); $this->synchroniseConfigurationWithAcy($registrationConfig); Message::enqueueMessage(__('Configuration saved', 'acychecker')); $this->defaultTask(); } private function synchroniseConfigurationWithAcy($registrationConfig) { if (!$this->isAcymailingInstalled) return; if (ACYC_CMS === 'joomla') { include_once rtrim(JPATH_ADMINISTRATOR, DS).DS.'components'.DS.'com_acym'.DS.'helpers'.DS.'helper.php'; } else { include_once WP_PLUGIN_DIR.DS.'acymailing'.DS.'back'.DS.'helpers'.DS.'helper.php'; } $acymConfig = acym_config(); $acymVersion = $acymConfig->get('version'); if (version_compare($acymVersion, '7.6.0', '<')) return; $acymConfig->save([ 'email_verification' => intval(!empty($registrationConfig['registration_integrations']['acymailing'])), 'email_verification_disposable' => intval(!empty($registrationConfig['registration_conditions']['disposable'])), 'email_verification_free' => intval(!empty($registrationConfig['registration_conditions']['free_domain'])), 'email_verification_role' => intval(!empty($registrationConfig['registration_conditions']['role_based'])), 'email_verification_acceptall' => intval(!empty($registrationConfig['registration_conditions']['accept_all'])), 'email_checkdomain' => intval(!empty($registrationConfig['registration_conditions']['domain_not_exists'])), 'email_verification_non_existing' => intval(!empty($registrationConfig['registration_conditions']['invalid_smtp'])), ]); } private function prepareRegistrationConfiguration(&$data) { $data['current_config'] = [ 'registration_integrations' => explode(',', $this->config->get('registration_integrations')), 'registration_conditions' => explode(',', $this->config->get('registration_conditions')), ]; } }