/** * Configures options array; while handling s2Member Pro options. * * **WARNING:** This is a system configuration function, please DO NOT EDIT this function directly. * Instead, use the plugin options panel in WordPress to override these settings. * * @package s2Member * @since 1.0 * * @param array $options Expects an array of options, by reference, passed in by the Filter. * ``$GLOBALS['WS_PLUGIN__']['s2member']['o']``, by reference. * * @return array Merged with options from the s2Member Framework. * All Pro options should be prefixed with `pro_`. */ function ws_plugin__s2member_pro_options_before_checksum(&$options = array()) { $pro_default_options = ws_plugin__s2member_pro_default_options(); foreach ($options as $key => &$value) { if (isset($pro_default_options[$key]) || preg_match('/^pro_/', $key)) { if (!isset($pro_default_options[$key])) { unset($GLOBALS['WS_PLUGIN__']['s2member']['o'][$key]); } else { if (preg_match('/^pro_(?:signup|sp)_email_recipients$/', $key) && !is_string($value)) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_(?:signup|sp)_email_(?:subject|message)$/', $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_(?:coupon_codes|affiliate_coupon_code_(?:tracking_urls|suffix_chars))$/', $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if ($key === 'pro_default_tax' && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if ($key === 'pro_tax_rates' && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if ($key === 'pro_login_welcome_page_otos' && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if ($key === 'pro_import_export_advanced_mode' && (!is_string($value) || !is_numeric($value))) { $value = $pro_default_options[$key]; } else { if ($key === 'pro_remote_ops_key' && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if ($key === 'pro_gateways_enabled' && !is_array($value)) { $value = $pro_default_options[$key]; } else { if ($key === 'pro_paypal_checkout_rdp' && (!is_string($value) || !is_numeric($value))) { $value = $pro_default_options[$key]; } else { if ($key === 'pro_paypal_return_template_header' && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_alipay_(?:seller_email|partner_id|security_code|return_template_header)$/', $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_stripe_(?:api_publishable_key|api_secret_key|api_statement_description|api_image)$/', $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_stripe_api_validate_zipcode$/', $key) && (!is_string($value) || !is_numeric($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_authnet_(?:api_login_id|api_trans_key|api_salt_key)$/', $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_authnet_(?:max_payment_failures)$/', $key) && (!is_string($value) || !is_numeric($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_ccbill_(?:client_id|client_sid|form_name|dl_user|dl_pass|dl_cancellations|salt_key|return_template_header)$/', $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_clickbank_(?:username|clerk_key|developer_key|secret_key|return_template_header)$/', $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_google_(?:merchant_id|merchant_key)$/', $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_(?:stripe|google|authnet)_sandbox$/', $key) && (!is_string($value) || !is_numeric($value))) { $value = $pro_default_options[$key]; } else { if (preg_match('/^pro_recaptcha_(?:public|private)_key$/', $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } } } } } } } } } } } } } } } } } } } } } } } } return $options; // $GLOBALS['WS_PLUGIN__']['s2member']['o'] by reference. }
/** * Configures options array; while handling s2Member Pro options. * * **WARNING:** This is a system configuration function, please DO NOT EDIT this function directly. * Instead, use the plugin options panel in WordPress® to override these settings. * * @package s2Member * @since 1.0 * * @param array $options Expects an array of options, by reference, passed in by the Filter. * ``$GLOBALS["WS_PLUGIN__"]["s2member"]["o"]``, by reference. * @return array Merged with options from the s2Member Framework. * All Pro options should be prefixed with `pro_`. */ function ws_plugin__s2member_pro_options_before_checksum(&$options = array()) { $pro_default_options = ws_plugin__s2member_pro_default_options(); /* Backward compatibility for "pro_paypal_default_tax"; renamed in v1.3. */ if (isset($options["pro_paypal_default_tax"])) { $options["pro_default_tax"] = $options["pro_paypal_default_tax"]; } /* Backward compatibility for "pro_paypal_tax_rates"; renamed in v1.3. */ if (isset($options["pro_paypal_tax_rates"])) { $options["pro_tax_rates"] = $options["pro_paypal_tax_rates"]; } /* Backward compatibility for "pro_other_gateways_enabled"; renamed in v1.5. */ if (isset($options["pro_other_gateways_enabled"]) && is_array($options["pro_other_gateways_enabled"])) { $options["pro_gateways_enabled"] = array_unique(array_merge($options["pro_other_gateways_enabled"], $pro_default_options["pro_gateways_enabled"])); } /**/ foreach ($options as $key => &$value) { if (isset($pro_default_options[$key]) || preg_match("/^pro_/", $key)) { if (!isset($pro_default_options[$key])) { unset($GLOBALS["WS_PLUGIN__"]["s2member"]["o"][$key]); } else { if (preg_match("/^pro_(?:signup|sp)_email_recipients\$/", $key) && !is_string($value)) { $value = $pro_default_options[$key]; } else { if (preg_match("/^pro_(?:signup|sp)_email_(?:subject|message)\$/", $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match("/^pro_(?:coupon_codes|affiliate_coupon_code_(?:tracking_urls|suffix_chars))\$/", $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if ($key === "pro_default_tax" && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if ($key === "pro_tax_rates" && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if ($key === "pro_login_welcome_page_otos" && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if ($key === "pro_gateways_enabled" && !is_array($value)) { $value = $pro_default_options[$key]; } else { if ($key === "pro_paypal_checkout_rdp" && (!is_string($value) || !is_numeric($value))) { $value = $pro_default_options[$key]; } else { if ($key === "pro_paypal_return_template_header" && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match("/^pro_alipay_(?:seller_email|partner_id|security_code|return_template_header)\$/", $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match("/^pro_authnet_(?:api_login_id|api_trans_key|api_salt_key)\$/", $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match("/^pro_ccbill_(?:client_id|client_sid|form_name|dl_user|dl_pass|salt_key|return_template_header)\$/", $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match("/^pro_clickbank_(?:username|clerk_key|developer_key|secret_key|return_template_header)\$/", $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match("/^pro_google_(?:merchant_id|merchant_key)\$/", $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } else { if (preg_match("/^pro_(?:google|authnet)_sandbox\$/", $key) && (!is_string($value) || !is_numeric($value))) { $value = $pro_default_options[$key]; } else { if (preg_match("/^pro_recaptcha_(?:public|private)_key\$/", $key) && (!is_string($value) || !strlen($value))) { $value = $pro_default_options[$key]; } } } } } } } } } } } } } } } } } } } /**/ return $options; /* $GLOBALS["WS_PLUGIN__"]["s2member"]["o"] by reference. */ }