Plugin Directory

Changeset 3377108


Ignore:
Timestamp:
10/12/2025 09:39:34 PM (6 months ago)
Author:
yournotify
Message:

v1.1.9: stable release (Subscriber Form + SMTP tabs, fixed save, preconfigured smtp.yournotify.com:587 TLS).

Location:
yournotify/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • yournotify/trunk/admin-settings-tabbed.php

    r3377101 r3377108  
    2020              <td><input id="yn_list_id" name="yournotify_list_id" class="regular-text" value="<?php echo esc_attr(get_option('yournotify_list_id','')); ?>"/>
    2121              <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>
    2324              <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>
    2425          <tr><th><?php esc_html_e('Success Redirect (optional)','yournotify'); ?></th>
     
    7172add_action('admin_init', function(){
    7273  register_setting('yournotify_subscribers','yournotify_list_id');
     74  register_setting('yournotify_subscribers','yournotify_api_key');
    7375  register_setting('yournotify_subscribers','yournotify_double_optin');
    7476  register_setting('yournotify_subscribers','yournotify_success_redirect');
  • yournotify/trunk/includes/class-yournotify-optin.php

    r3377101 r3377108  
    101101add_action('wp_ajax_yournotify_optin_submit', 'yournotify__inject_list_id_for_submit', 1);
    102102add_action('wp_ajax_nopriv_yournotify_optin_submit', 'yournotify__inject_list_id_for_submit', 1);
     103
     104function 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}
     110add_action('wp_ajax_yournotify_subscribe_submit', 'yournotify__inject_api_key_for_submit', 1);
     111add_action('wp_ajax_nopriv_yournotify_subscribe_submit', 'yournotify__inject_api_key_for_submit', 1);
     112add_action('wp_ajax_yournotify_subscribe', 'yournotify__inject_api_key_for_submit', 1);
     113add_action('wp_ajax_nopriv_yournotify_subscribe', 'yournotify__inject_api_key_for_submit', 1);
     114add_action('wp_ajax_yournotify_optin_submit', 'yournotify__inject_api_key_for_submit', 1);
     115add_action('wp_ajax_nopriv_yournotify_optin_submit', 'yournotify__inject_api_key_for_submit', 1);
  • yournotify/trunk/readme.txt

    r3377101 r3377108  
    44Requires at least: 4.6
    55Tested up to: 6.7
    6 Stable tag: 1.1.8
     6Stable tag: 1.1.9
    77License: GPLv3 or later
    88
  • yournotify/trunk/yournotify.php

    r3377101 r3377108  
    44 * Plugin URI: https://yournotify.com
    55 * 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.8
     6 * Version: 1.1.9
    77 * Author: Yournotify
    88 * Author URI: https://yournotify.com
     
    117117    return $lid ? $lid : $pre;
    118118});
     119
     120
     121// Ensure API key is present for subscribe submissions (server-side)
     122add_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)
     135add_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.