Plugin Directory

Changeset 3108944


Ignore:
Timestamp:
06/27/2024 07:40:24 PM (22 months ago)
Author:
Infusionsoft
Message:

1.1.1 Updated to support Wordpress MultiSite capabilities.

Location:
infusionsoft-official-opt-in-forms/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • infusionsoft-official-opt-in-forms/trunk/changelog.txt

    r2916952 r3108944  
     1version 1.1.1
     2- Updated to support Wordpress MultiSite capabilities.
     3
    14version 1.0.11
    25- Fixes compatibility issue with PHP 8.0+. Updates to compatibility versions.
  • infusionsoft-official-opt-in-forms/trunk/dashboard/dashboard.php

    r2638364 r3108944  
    285285     */
    286286    function dashboard_save_settings( $options = array() ) {
     287        if ( (defined( 'DISALLOW_UNFILTERED_HTML' ) && DISALLOW_UNFILTERED_HTML ) || !current_user_can('unfiltered_html')) {
     288            $error_message='unauthorized.';
     289            die( $error_message );
     290        }
     291       
    287292        if ( ! wp_verify_nonce( $_POST['save_settings_nonce'], 'save_settings' ) ) {
    288293            die( - 1 );
  • infusionsoft-official-opt-in-forms/trunk/infusionsoft.php

    r2916952 r3108944  
    33 * Plugin Name: Keap Official Opt-in Forms
    44 * Plugin URI: https://www.keap.com
    5  * Version: 1.0.11
     5 * Version: 1.0.12
    66 * Description: Keap Official Opt-in Forms
    77 * Author: Keap
     
    4949
    5050        $this->protocol = is_ssl() ? 'https' : 'http';
     51       
     52        if ( (defined( 'DISALLOW_UNFILTERED_HTML' ) && DISALLOW_UNFILTERED_HTML ) ) {       
     53           $restrictedAccess=1;
     54        }
     55
    5156
    5257        add_action( 'admin_menu', array( $this, 'add_menu_link' ) );
     
    6671        add_action( 'inf_infusionsoft_after_main_options', array( $this, 'generate_premade_templates' ) );
    6772
    68         add_action( 'inf_infusionsoft_after_save_button', array( $this, 'add_next_button' ) );
     73
    6974        do_action( 'infusionsoft_ext_init' );
    7075        $plugin_file = plugin_basename( __FILE__ );
    7176        add_filter( "plugin_action_links_{$plugin_file}", array( $this, 'add_settings_link' ) );
    7277
     78        if (!$restrictedAccess) {
    7379
    7480        $dashboard_args = array(
     
    8288
    8389        parent::__construct( $dashboard_args );
    84 
    85         // Register save settings function for ajax request
    86         add_action( 'wp_ajax_inf_infusionsoft_save_settings', array( $this, 'infusionsoft_save_settings' ) );
     90        }
    8791
    8892        add_action( 'admin_enqueue_scripts', array( $this, 'register_scripts' ) );
     
    9094        add_action( 'wp_enqueue_scripts', array( $this, 'load_scripts_styles' ) );
    9195
    92         add_action( 'wp_ajax_infusionsoft_reset_options_page', array( $this, 'infusionsoft_reset_options_page' ) );
    93 
    94         add_action( 'wp_ajax_infusionsoft_remove_optin', array( $this, 'remove_optin' ) );
    95 
    96         add_action( 'wp_ajax_infusionsoft_duplicate_optin', array( $this, 'duplicate_optin' ) );
    97 
    98         add_action( 'wp_ajax_infusionsoft_add_variant', array( $this, 'add_variant' ) );
     96
     97
     98        if (!$restrictedAccess) {
     99            add_action( 'wp_ajax_infusionsoft_reset_options_page', array( $this, 'infusionsoft_reset_options_page' ) );
     100           
     101            // Register save settings function for ajax request
     102            add_action( 'wp_ajax_inf_infusionsoft_save_settings', array( $this, 'infusionsoft_save_settings' ) );
     103            add_action( 'inf_infusionsoft_after_save_button', array( $this, 'add_next_button' ) );         
     104            add_action( 'wp_ajax_infusionsoft_remove_optin', array( $this, 'remove_optin' ) );
     105            add_action( 'wp_ajax_infusionsoft_duplicate_optin', array( $this, 'duplicate_optin' ) );
     106            add_action( 'wp_ajax_infusionsoft_add_variant', array( $this, 'add_variant' ) );
     107            add_action( 'wp_ajax_infusionsoft_toggle_optin_status', array( $this, 'toggle_optin_status' ) );   
     108            add_action( 'wp_ajax_infusionsoft_pick_winner_optin', array( $this, 'pick_winner_optin' ) );       
     109            add_action( 'wp_ajax_infusionsoft_display_preview', array( $this, 'display_preview' ) );
     110            add_action( 'wp_ajax_infusionsoft_ab_test_actions', array( $this, 'ab_test_actions' ) );
     111           
     112            add_action( 'wp_ajax_infusionsoft_get_premade_values', array( $this, 'get_premade_values' ) );
     113            add_action( 'wp_ajax_infusionsoft_generate_template_filter', array( $this, 'generate_template_filter' ) );
     114            add_action( 'wp_ajax_infusionsoft_generate_premade_grid', array( $this, 'generate_premade_grid' ) );
     115           
     116        }
    99117
    100118        add_action( 'wp_ajax_infusionsoft_home_tab_tables', array( $this, 'home_tab_tables' ) );
     
    102120        add_action( 'wp_ajax_infusionsoft_refresh_accounts_header', array( $this, 'refresh_accounts_header' ) );
    103121
    104         add_action( 'wp_ajax_infusionsoft_toggle_optin_status', array( $this, 'toggle_optin_status' ) );
     122       
    105123
    106124        add_action( 'wp_ajax_infusionsoft_authorize_account', array( $this, 'authorize_account' ) );
     
    118136        add_action( 'wp_ajax_infusionsoft_save_account_tab', array( $this, 'save_account_tab' ) );
    119137
    120         add_action( 'wp_ajax_infusionsoft_ab_test_actions', array( $this, 'ab_test_actions' ) );
     138       
    121139
    122140        add_action( 'wp_ajax_infusionsoft_get_stats_graph_ajax', array( $this, 'get_stats_graph_ajax' ) );
     
    126144        add_action( 'wp_ajax_infusionsoft_reset_stats', array( $this, 'reset_stats' ) );
    127145
    128         add_action( 'wp_ajax_infusionsoft_pick_winner_optin', array( $this, 'pick_winner_optin' ) );
     146       
    129147
    130148        add_action( 'wp_ajax_infusionsoft_clear_stats', array( $this, 'clear_stats' ) );
     
    132150
    133151
    134         add_action( 'wp_ajax_infusionsoft_get_premade_values', array( $this, 'get_premade_values' ) );
    135         add_action( 'wp_ajax_infusionsoft_generate_template_filter', array( $this, 'generate_template_filter' ) );
    136         add_action( 'wp_ajax_infusionsoft_generate_premade_grid', array( $this, 'generate_premade_grid' ) );
    137 
    138         add_action( 'wp_ajax_infusionsoft_display_preview', array( $this, 'display_preview' ) );
     152
    139153
    140154        add_action( 'wp_ajax_infusionsoft_handle_stats_adding', array( $this, 'handle_stats_adding' ) );
     
    490504        $options_array = INF_Infusionsoft::get_infusionsoft_options();
    491505
     506        $data = get_userdata( get_current_user_id() );
     507        $current_user_caps=array();
     508        if ( is_object( $data) ) {
     509            $current_user_caps = $data->allcaps;
     510        }
     511
    492512        switch ( $option['type'] ) {
    493513            case 'home' :
     514                if ( (defined( 'DISALLOW_UNFILTERED_HTML' ) && DISALLOW_UNFILTERED_HTML ) || !$current_user_caps['unfiltered_html']) {
     515                printf( '
     516                    <div class="inf_dashboard_row inf_dashboard_new_optin">
     517                        <h1>%1$s</h1><br clear="both">
     518                        NOTE: This WordPress user account does not have permission to create or update opt-in forms.
     519                        <input type="hidden" name="action" value="new_optin" />
     520                    </div>',
     521                    esc_html__( 'Active Opt-In Forms', 'infusionsoft' ) );
     522                printf( '
     523                    <div class="inf_dashboard_row inf_dashboard_optin_select">
     524                        <h3>%1$s</h3>
     525                        <span class="inf_dashboard_icon inf_dashboard_close_button"></span>
     526                        <ul>
     527                            <li class="inf_dashboard_optin_type inf_dashboard_optin_add inf_dashboard_optin_type_popup" data-type="pop_up">
     528                                <h6>%2$s</h6>
     529                                <div class="optin_select_grey">
     530                                    <div class="optin_select_light_grey">
     531                                    </div>
     532                                </div>
     533                            </li>
     534                            <li class="inf_dashboard_optin_type inf_dashboard_optin_add inf_dashboard_optin_type_flyin" data-type="flyin">
     535                                <h6>%3$s</h6>
     536                                <div class="optin_select_grey"></div>
     537                                <div class="optin_select_light_grey"></div>
     538                            </li>
     539                            <li class="inf_dashboard_optin_type inf_dashboard_optin_add inf_dashboard_optin_type_below" data-type="below_post">
     540                                <h6>%4$s</h6>
     541                                <div class="optin_select_grey"></div>
     542                                <div class="optin_select_light_grey"></div>
     543                            </li>
     544                            <li class="inf_dashboard_optin_type inf_dashboard_optin_add inf_dashboard_optin_type_inline" data-type="inline">
     545                                <h6>%5$s</h6>
     546                                <div class="optin_select_grey"></div>
     547                                <div class="optin_select_light_grey"></div>
     548                                <div class="optin_select_grey"></div>
     549                            </li>
     550
     551                        </ul>
     552                        <ul>
     553                        <li class="inf_dashboard_optin_type inf_dashboard_optin_add inf_dashboard_optin_type_locked" data-type="locked">
     554                                <h6>%6$s</h6>
     555                                <div class="optin_select_grey"></div>
     556                                <div class="optin_select_light_grey"></div>
     557                                <div class="optin_select_grey"></div>
     558                            </li>
     559                            <li class="inf_dashboard_optin_type inf_dashboard_optin_add inf_dashboard_optin_type_widget" data-type="widget">
     560                                <h6>%7$s</h6>
     561                                <div class="optin_select_grey"></div>
     562                                <div class="optin_select_light_grey"></div>
     563                                <div class="optin_select_grey_small"></div>
     564                                <div class="optin_select_grey_small last"></div>
     565                            </li>
     566                        <li class="inf_dashboard_optin_type inf_dashboard_optin_add inf_dashboard_optin_type_infusionbar" data-type="infusion">
     567                                <h6>%8$s</h6>
     568                                <div class="optin_select_light_grey"></div>
     569                                <div class="optin_select_grey"></div>
     570                            </li>
     571                        </ul>
     572                    </div>', esc_html__( 'Choose an opt-in form type', 'infusionsoft' ),
     573                    esc_html__( 'pop up', 'infusionsoft' ), esc_html__( 'fly in', 'infusionsoft' ),
     574                    esc_html__( 'below post', 'infusionsoft' ), esc_html__( 'inline', 'infusionsoft' ),
     575                    esc_html__( 'locked content', 'infusionsoft' ), esc_html__( 'widget', 'infusionsoft' ),
     576                    esc_html__( 'bar', 'infusionsoft' ) );
     577                } else {
    494578                printf( '
    495579                    <div class="inf_dashboard_row inf_dashboard_new_optin">
     
    554638                    esc_html__( 'locked content', 'infusionsoft' ), esc_html__( 'widget', 'infusionsoft' ),
    555639                    esc_html__( 'bar', 'infusionsoft' ) );
    556 
    557                 $this->display_home_tab_tables();
    558                 break;
    559 
     640                    }
     641                    $this->display_home_tab_tables();
     642                break;
    560643            case 'account' :
    561644                printf( '
     
    18071890                $noAccount         = ""; //( 'empty' == $value['email_provider'] ) ? ' inf_infusionsoft_no_account' : '';
    18081891
     1892                $data = get_userdata( get_current_user_id() );
     1893                $current_user_caps=array();
     1894                if ( is_object( $data) ) {
     1895                    $current_user_caps = $data->allcaps;
     1896                }
     1897
     1898                if ( (defined( 'DISALLOW_UNFILTERED_HTML' ) && DISALLOW_UNFILTERED_HTML ) || !$current_user_caps['unfiltered_html']) {
     1899                   
     1900                        $output .= sprintf( '<li class="inf_dashboard_optins_item inf_dashboard_parent_item" data-optin_id="%1$s">
     1901                        <div class="inf_dashboard_table_name inf_dashboard_table_column inf_dashboard_icon inf_dashboard_type_%6$s">%2$s</div>
     1902                        <div class="inf_dashboard_table_impressions inf_dashboard_table_column">%3$s</div>
     1903                        <div class="inf_dashboard_table_conversions inf_dashboard_table_column">%4$s</div>
     1904                        <div class="inf_dashboard_table_rate inf_dashboard_table_column">%5$s</div>
     1905                        <div class="inf_dashboard_table_actions inf_dashboard_table_column">
     1906                        </div>
     1907                        <div style="clear: both;"></div>
     1908                        %7$s
     1909                    </li>', esc_attr( $optin_id ), esc_html( $value['optin_name'] ), esc_html( $impressions ),
     1910                    esc_html( $conversions ),
     1911                    esc_html( $this->conversion_rate( $optin_id, $conversions, $impressions ) . '%' ) // #5
     1912                    ,esc_attr( $value['optin_type'] ),$child_row
     1913                );
     1914                $optins_count ++;
     1915                   
     1916                   
     1917                } else {
     1918
     1919
    18091920                $output .= sprintf( '<li class="inf_dashboard_optins_item inf_dashboard_parent_item" data-optin_id="%1$s">
    18101921                        <div class="inf_dashboard_table_name inf_dashboard_table_column inf_dashboard_icon inf_dashboard_type_%13$s">%2$s</div>
     
    18411952                );
    18421953                $optins_count ++;
     1954                }
    18431955            }
    18441956        }
     
    34153527        $output = '';
    34163528        $output = sprintf( '<div class="inf_infusionsoft_popup inf_infusionsoft_animated inf_infusionsoft_preview_popup inf_infusionsoft_optin">
    3417                 <div class="inf_infusionsoft_form_container inf_infusionsoft_animation_fadein inf_infusionsoft_popup_container%1$s%2$s%3$s%4$s%5$s%6$s">
     3529                <div class="inf_infusionsoft_form_container inf_infusionsoft_animation_fadein inf_infusionsoft_popup_container%1$s%2$s%3$s%4$s%5$s%6$s">AAAAA
    34183530                    %7$s
    34193531                </div>
  • infusionsoft-official-opt-in-forms/trunk/readme.txt

    r2916952 r3108944  
    33Tags: keap, keap api, keap wordpress, wp popup, wordpress popup plugin, wordpress subscription plugin, responsive opt-in subscription plugin, free optinmonster alternative, list builder, sumome alternative, how to increase email list, email form, scroll box, newsletter, inbound marketing, mailing list, landing page, light box, email list building, subscribers, subscription, infusionsoft
    44Requires at least: 6.0
    5 Tested up to: 6.2.2
     5Tested up to: 6.5.5
    66Requires PHP: 8.0
    7 Stable tag: 1.0.11
     7Stable tag: 1.1.1
    88License: GPLv2 or later
    99License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    8282== Changelog ==
    8383
     84= 1.1.1 =
     85* Updated to support Wordpress MultiSite capabilities.
     86
    8487= 1.0.11 =
    8588* Fixes compatibility issue with PHP 8.0+. Updates to compatibility versions.
     
    132135== Upgrade Notice ==
    133136
     137= 1.1.1 =
     138Updated to support Wordpress MultiSite capabilities.
     139
    134140= 1.0.11 =
    135141Fixes compatibility issue with PHP 8.0+. Updates to compatibility versions.
Note: See TracChangeset for help on using the changeset viewer.