![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mets.corals.io/wp-content/plugins/give/src/Email/ |
<?php namespace Give\Email; use Give_Admin_Settings; /** * @since 2.17.1 */ class GlobalSettingValidator { /** * @since 2.17.1 */ public function __invoke() { // Bailout. if ( ! Give_Admin_Settings::is_saving_settings() || 'emails' !== give_get_current_setting_tab() || ! isset($_GET['section']) ) { return; } add_filter($this->getFilterHookName(), [$this, 'validateSetting']); } /** * @since 2.17.1 * @since 2.17.2 Only filter value as unique array if set. Some settings do not need to be set, ie donation-receipt_recipient. */ public function validateSetting($value) { if( ! empty( $value ) ) { // Same unique email address for email recipients. $recipientEmails = array_unique(array_filter($value)); // Set default email recipient to admin email. $value = $recipientEmails ?: [get_bloginfo('admin_email')]; } return $value; } /** * @since 2.17.1 * Note: Filter hook defined in Give_Admin_Settings::save_fields function::1163 * * @return string */ private function getFilterHookName() { $email_type = give_get_current_setting_section(); $settingName = "{$email_type}_recipient"; return "give_admin_settings_sanitize_option_$settingName"; } }