Changeset 3377108
- Timestamp:
- 10/12/2025 09:39:34 PM (6 months ago)
- Location:
- yournotify/trunk
- Files:
-
- 4 edited
-
admin-settings-tabbed.php (modified) (2 diffs)
-
includes/class-yournotify-optin.php (modified) (1 diff)
-
readme.txt (modified) (1 diff)
-
yournotify.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
yournotify/trunk/admin-settings-tabbed.php
r3377101 r3377108 20 20 <td><input id="yn_list_id" name="yournotify_list_id" class="regular-text" value="<?php echo esc_attr(get_option('yournotify_list_id','')); ?>"/> 21 21 <p class="description"><?php esc_html_e('List to add new subscribers to.','yournotify'); ?></p></td></tr> 22 <tr><th><?php esc_html_e('Double Opt-in','yournotify'); ?></th> 22 <tr><th><label for="yn_api_key"><?php esc_html_e('API Key','yournotify'); ?></label></th><td><input id="yn_api_key" type="password" name="yournotify_api_key" class="regular-text" value="<?php echo esc_attr(get_option('yournotify_api_key','')); ?>" autocomplete="new-password" /><p class="description"><?php esc_html_e('Used to authenticate subscribe requests.','yournotify'); ?></p></td></tr> 23 <tr><th><?php esc_html_e('Double Opt-in','yournotify'); ?></th> 23 24 <td><label><input type="checkbox" name="yournotify_double_optin" value="1" <?php checked(get_option('yournotify_double_optin',0),1); ?>> <?php esc_html_e('Require confirmation email','yournotify'); ?></label></td></tr> 24 25 <tr><th><?php esc_html_e('Success Redirect (optional)','yournotify'); ?></th> … … 71 72 add_action('admin_init', function(){ 72 73 register_setting('yournotify_subscribers','yournotify_list_id'); 74 register_setting('yournotify_subscribers','yournotify_api_key'); 73 75 register_setting('yournotify_subscribers','yournotify_double_optin'); 74 76 register_setting('yournotify_subscribers','yournotify_success_redirect'); -
yournotify/trunk/includes/class-yournotify-optin.php
r3377101 r3377108 101 101 add_action('wp_ajax_yournotify_optin_submit', 'yournotify__inject_list_id_for_submit', 1); 102 102 add_action('wp_ajax_nopriv_yournotify_optin_submit', 'yournotify__inject_list_id_for_submit', 1); 103 104 function yournotify__inject_api_key_for_submit() { 105 if (empty($_POST['api_key'])) { 106 $k = get_option('yournotify_api_key', ''); 107 if ($k) { $_POST['api_key'] = $k; } 108 } 109 } 110 add_action('wp_ajax_yournotify_subscribe_submit', 'yournotify__inject_api_key_for_submit', 1); 111 add_action('wp_ajax_nopriv_yournotify_subscribe_submit', 'yournotify__inject_api_key_for_submit', 1); 112 add_action('wp_ajax_yournotify_subscribe', 'yournotify__inject_api_key_for_submit', 1); 113 add_action('wp_ajax_nopriv_yournotify_subscribe', 'yournotify__inject_api_key_for_submit', 1); 114 add_action('wp_ajax_yournotify_optin_submit', 'yournotify__inject_api_key_for_submit', 1); 115 add_action('wp_ajax_nopriv_yournotify_optin_submit', 'yournotify__inject_api_key_for_submit', 1); -
yournotify/trunk/readme.txt
r3377101 r3377108 4 4 Requires at least: 4.6 5 5 Tested up to: 6.7 6 Stable tag: 1.1. 86 Stable tag: 1.1.9 7 7 License: GPLv3 or later 8 8 -
yournotify/trunk/yournotify.php
r3377101 r3377108 4 4 * Plugin URI: https://yournotify.com 5 5 * Description: Yournotify WP Plugin to power your email and sms marketing communications with features to support (WooCommerce, Automation, SMTP, Subscriber Form) 6 * Version: 1.1. 86 * Version: 1.1.9 7 7 * Author: Yournotify 8 8 * Author URI: https://yournotify.com … … 117 117 return $lid ? $lid : $pre; 118 118 }); 119 120 121 // Ensure API key is present for subscribe submissions (server-side) 122 add_action('init', function(){ 123 if (defined('DOING_AJAX') && DOING_AJAX) { 124 $action = isset($_POST['action']) ? sanitize_key($_POST['action']) : ''; 125 if (strpos($action, 'yournotify_subscribe') === 0 || strpos($action, 'yournotify_optin') === 0) { 126 if (empty($_POST['api_key'])) { 127 $k = get_option('yournotify_api_key', ''); 128 if ($k) { $_POST['api_key'] = $k; } 129 } 130 } 131 } 132 }, 0); 133 134 // Add hidden api_key to any Yournotify subscribe/optin form on the page (client-side) 135 add_action('wp_footer', function(){ 136 $k = get_option('yournotify_api_key',''); 137 if (!$k) return; 138 $k_js = json_encode($k); 139 echo '<script>(function(){try{var k='.$k_js.';var forms=document.querySelectorAll("form input[name=\\\'action\\\'][value^=\\\'yournotify_subscribe\\\'],form input[name=\\\'action\\\'][value^=\\\'yournotify_optin\\\']");for(var i=0;i<forms.length;i++){var f=forms[i].form||forms[i].closest(\"form\");if(!f)continue;if(!f.querySelector(\"input[name=api_key]\")){var s=document.createElement(\"input\");s.type=\"hidden\";s.name=\"api_key\";s.value=k;f.appendChild(s);} } }catch(e){} })();</script>'; 140 }, 100); 141
Note: See TracChangeset
for help on using the changeset viewer.