Plugin Directory

Changeset 1092381


Ignore:
Timestamp:
02/17/2015 12:35:17 PM (11 years ago)
Author:
niravmehta
Message:

Changes for 1.8.5

Location:
icegram/trunk
Files:
1 added
11 edited

Legend:

Unmodified
Added
Removed
  • icegram/trunk/assets/css/admin.css

    r1066982 r1092381  
    264264
    265265.message_image_button .image-buttons-icon{
    266     margin: 4px 2px;
     266    margin: 0 2px;
    267267}
    268268.message_image_button .image-buttons-icon:before {
     
    274274}
    275275.message_headline_button .headline-buttons-icon {
    276     margin: 5px 2px;
     276    margin: 2px;
    277277}
    278278
     
    639639}
    640640
    641 #embed_form {
    642     width: 600px !important;
    643     height: 495px !important;
    644     margin: 0em !important;
    645 }
    646 
    647 #embed_form input[value="ig_vertical"]{
     641/** Embed Form CSS - Start**/
     642#popup_container {
     643    width: 550px;
     644    background-color: #FFF;
     645    margin: 0 auto;
     646    padding: .5em 1em 1em 1em;
     647}
     648#popup_container input[value="ig_vertical"]{
    648649    margin-left: 3%;
    649650}
    650 #embed_form select{
     651#popup_container select{
    651652    width:30%;
    652653}
     654#popup_container #embed_howto_link {
     655    float: right;
     656    font-size: .8em;
     657    font-weight: normal;
     658}
     659/** Embed Form CSS - End**/
     660
    653661
    654662/** Fix to keep the message setting row indepenent of other themes **/
     
    691699    vertical-align: middle;
    692700}
    693 
  • icegram/trunk/assets/css/frontend.css

    r1066982 r1092381  
    9090}
    9191
    92 div.icegram .ig_embed_form.ig_horizontal li{
     92div.icegram .ig_embed_form.ig_horizontal .ig_embed_form_container li{
    9393    display: inline-block;
    9494    min-width: 24%;
  • icegram/trunk/assets/css/magnific-popup.css

    r1066982 r1092381  
    1717  width: 100%;
    1818  height: 100%;
    19   z-index: 1043;
     19  /*z-index: 1043;*/
     20  /*ICG-Hack:: Higher z-index to make it visible on top */
     21  z-index: 999999;
    2022  position: fixed;
    2123  outline: none !important;
  • icegram/trunk/assets/js/admin.js

    r1037969 r1092381  
    4545        };
    4646
    47         jQuery('.message-setting-fields').live('change', '.message_type', function() {
    48             display_message_themes(this);
    49         });
    50 
    51         jQuery('.message-setting-fields').live('change', '.message_theme', function() {
    52            
    53             var message_type    = jQuery(this).find('.message_type').val();
    54             var message_theme   = jQuery(this).find('.message_row.'+message_type).find('.message_theme').val();
    55             var message_thumb   = jQuery(this).find('#message_theme_'+message_type).find('.'+message_theme).attr('style');
    56 
    57             jQuery(this).find('.message_row.'+message_type).find('.message_theme').next().find('.chosen-single span').attr('style',message_thumb);
    58 
    59         });
    60 
    61         jQuery('.message_image_button').live('click', function(event) {
     47        jQuery('#campaign_data').on('change', '.message_type', function(e) {
     48            var t = jQuery(e.target).parents('.message-setting-fields');
     49            display_message_themes(t);
     50        });
     51
     52        jQuery('#campaign_data').on('change', '.message_theme', function(e) {
     53            var t = jQuery(e.target).parents('.message-setting-fields');
     54            var message_type    = jQuery(t).find('.message_type').val();
     55            var message_theme   = jQuery(t).find('.message_row.'+message_type).find('.message_theme').val();
     56            var message_thumb   = jQuery(t).find('#message_theme_'+message_type).find('.'+message_theme).attr('style');
     57            jQuery(t).find('.message_row.'+message_type).find('.message_theme').next().find('.chosen-single span').attr('style',message_thumb);
     58
     59        });
     60
     61        jQuery('#campaign_data').on('click', '.message_image_button', function(event) {
    6262            var that = this;
    6363            window.send_to_editor = function(html) {
     
    7070        });
    7171
    72         jQuery('.message_headline_button').live('click', function() {
     72        jQuery('#campaign_data').on('click','.message_headline_button', function() {
    7373            var headline_key = jQuery(this).prev().attr('data-headline');
    7474            var headline_max = icegram_writepanel_params.available_headlines.length;
     
    9191
    9292    });
    93 
    94     jQuery('.message_delete').live( 'click', function() {
     93    jQuery('#campaign_data').on('click','.message_delete', function() {
    9594        jQuery(this).parent().parent().next().remove();
    9695        jQuery(this).parent().parent().remove();
     
    9998    });
    10099
    101     jQuery('.message_edit').live( 'click', function() {
     100    jQuery('#campaign_data').on( 'click', '.message_edit' ,function() {
    102101        jQuery(this).parent().parent().next().toggle();
    103102        jQuery(this).parent().parent().find('.message-title-text, .message-title-input').toggle(); 
    104103    });
    105104
    106     jQuery('.message-title-input').live( 'change', function() {
     105    jQuery('#campaign_data').on( 'change', '.message-title-input',function() {
    107106        jQuery(this).prev().text(jQuery(this).val());
    108107    });
     
    124123        return terms;
    125124    });
    126    
    127     jQuery('.cancel_parse_form').live('click', function(event) {
    128         tb_remove();
     125
     126    jQuery(document).on('click', '#embed_form_but', function(event) {
     127        jQuery.magnificPopup.open({
     128                items: {
     129                src: '#popup_container',
     130                type: 'inline'
     131                },
     132                modal : true
     133            });
     134
     135    });
     136               
     137    jQuery(document).on('click', '.cancel_parse_form', function(event) {
     138        jQuery.magnificPopup.close({ items: {
     139            src: '#popup_container',
     140            type: 'inline'
     141        }});
    129142        jQuery(this).closest('form').get(0).reset();
    130143        return false;
    131144    });
    132145
    133     jQuery('.parse_form').live('click', function(event) {
     146    jQuery(document).on('click', '.parse_form' ,function(event) {
    134147            var that = this;
    135148            var parent_node = jQuery(that).closest('form');
     
    247260            form_container.find('.ig_detected_bot_fields').parent().css('display', 'none');
    248261            form_object.append(form_container);
    249             tb_remove();
     262
     263            //closing a popup
     264            jQuery.magnificPopup.close({ items: {
     265                src: '#popup_container',
     266                type: 'inline'
     267            }});
    250268            // reset all fields of Embed form setting
    251269            jQuery(that).closest('form').get(0).reset();
     
    255273   
    256274
    257     var message_rows = jQuery('.message-row').length;
    258     jQuery('.ajax_chosen_select_messages').chosen().on('change', function() {
     275    //var message_rows = jQuery(this).parent().siblings('.campaign_target_rules_panel').find('.message-row').length;
     276    jQuery('.ajax_chosen_select_messages').chosen();
     277    jQuery('#campaign_data').on('change', '.ajax_chosen_select_messages' , function() {
     278        var newSettings = jQuery.extend( {}, tinyMCEPreInit.mceInit[ 'content' ] );
     279        var newQTS = jQuery.extend( {}, tinyMCEPreInit.qtInit[ 'content' ] );
     280        var parent_campaign_box = jQuery(this).parent().siblings('.campaign_target_rules_panel');
     281        var message_rows = jQuery(parent_campaign_box).find('.message-row').length;
    259282        var message_id = jQuery(this).val();
    260         if( message_id == '' ) {           
     283        if( message_id == '' ) {
    261284            jQuery(".ajax_chosen_select_messages").val('').trigger("chosen:updated");
    262285            return;
     
    278301
    279302                message_rows++;
    280                 jQuery('.messages-list .messages_list_table tbody').append(response.main);
     303                //jQuery('.messages-list .messages_list_table tbody').append(response.main);
     304                jQuery(parent_campaign_box).find('.messages-list .messages_list_table tbody').append(response.main);
    281305                jQuery('.color-field').wpColorPicker();
    282306                display_message_themes(jQuery('#'+response.id));               
     
    288312                jQuery('.message-setting-fields').trigger('change');
    289313                jQuery(".tips, .help_tip").tipTip({'attribute' : 'data-tip'});
     314                // text editor issue fix
     315                if ( typeof( tinyMCEPreInit.mceInit[ 'edit'+response.id ] ) === 'undefined' ) {
     316                    for ( _prop in newSettings ) {
     317                        if ( 'string' === typeof( newSettings[_prop] ) ) {
     318                            if(_prop !== 'content_css'){
     319                                newSettings[_prop] = newSettings[_prop].replace( new RegExp( 'content', 'g' ), 'edit'+response.id );
     320                            }
     321                        }
     322                    }
     323                    tinyMCEPreInit.mceInit[ 'edit'+response.id ] = newSettings;
     324                }
     325                if ( typeof( tinyMCEPreInit.qtInit[ 'edit'+response.id ] ) === 'undefined' ) {
     326                    for ( _prop in newQTS ) {
     327                        if ( 'string' === typeof( newQTS[_prop] ) ) {
     328                            if(_prop !== 'content_css'){
     329                                newQTS[_prop] = newQTS[_prop].replace( new RegExp( 'content', 'g' ), 'edit'+response.id );
     330                            }
     331                        }
     332                    }
     333                    tinyMCEPreInit.qtInit[ 'edit'+response.id ] = newQTS;
     334                }
     335                tinyMCE.init({ id : tinyMCEPreInit.mceInit[ 'edit'+response.id ]});
     336                quicktags({id : 'edit'+response.id});
    290337                QTags._buttonsInit();
     338                if(jQuery('#wp-edit'+response.id+'-wrap').hasClass('tmce-active')){
     339                    jQuery('#edit'+response.id+'-tmce').click();
     340                }else{
     341                    jQuery('#edit'+response.id+'-html').click();
     342                }
    291343            }
    292344        });
    293345    });
    294346    //add local url
    295     jQuery('#add_local_url_row').live('click', function(e) {
     347    jQuery('#campaign_target_rules').on('click', '#add_local_url_row' ,function(e) {
    296348        e.preventDefault();
    297349        var row = add_url_row();
     
    304356
    305357    });
    306     jQuery('.delete-url').live('click', function(e) {
     358    jQuery('#campaign_target_rules').on('click', '.delete-url',function(e) {
    307359        jQuery(this).parent().remove();
    308360    });
     
    320372    }
    321373
    322     jQuery('select.ajax_chosen_select_messages').next('div').find('div.chosen-drop').live('click', function() {
     374    jQuery('select.ajax_chosen_select_messages').next('div').on('click', 'div.chosen-drop' ,function() {
    323375        jQuery(this).closest('h3.hndle').trigger('click');
    324376    });
     
    329381        if( jQuery('.message-row').length == 0 )
    330382            return;
    331 
     383        // trigger event for saving visual content
     384        tinyMCE.triggerSave();
    332385        // Change action
    333386        params = jQuery("#post").serializeArray();
     
    395448    });
    396449   
    397     jQuery('input.url_input_field').live('focusout', function() {
     450    jQuery('#campaign_target_rules').on('focusout','input.url_input_field',function() {
    398451        var url = this;
    399452        jQuery(url).parent().find('span#valid-field').removeClass('error');
  • icegram/trunk/assets/js/icegram.js

    r1066982 r1092381  
    4141            jQuery.each( this.message_data, function ( i, v ) {
    4242                try {
    43                     //check cookies in js
    44                     if(v['retargeting'] == 'yes' && jQuery.cookie('icegram_messages_shown_'+v['id']) == 1){
    45                         return;
    46                     }
    47                     if(v['retargeting_clicked'] == 'yes' && jQuery.cookie('icegram_messages_clicked_'+v['id']) == 1){
    48                         return;
    49                     }
     43                    // dont check cookies in preview mode
     44                    if(window.location.href.indexOf("campaign_preview_id") == -1){
     45                        //check cookies in js
     46                        if(v['retargeting'] == 'yes' && jQuery.cookie('icegram_messages_shown_'+v['id']) == 1){
     47                            return;
     48                        }
     49                        if(v['retargeting_clicked'] == 'yes' && jQuery.cookie('icegram_messages_clicked_'+v['id']) == 1){
     50                            return;
     51                        }
     52                    }
    5053                   
    5154                    var m = null;
     
    142145    }
    143146    Icegram.prototype.submit_tracking_data = function ( ev, params ) {
    144         if (this.tracking_data.length > 0) {
     147        if (this.tracking_data.length > 0 && window.location.href.indexOf("campaign_preview_id") == -1) {
    145148            var params = {
    146149                method: 'POST',
  • icegram/trunk/classes/class-icegram-campaign-admin.php

    r1053844 r1092381  
    1515            add_action( 'wp_ajax_icegram_json_search_messages', array( &$this, 'icegram_json_search_messages' ) );
    1616            add_action( 'wp_ajax_get_message_action_row', array( &$this, 'get_message_action_row' ) );     
    17             add_filter( 'wp_default_editor', create_function('', 'return "html";') );
     17            //add_filter( 'wp_default_editor', create_function('', 'return "html";') );
    1818            add_action( 'wp_ajax_save_campaign_preview', array( &$this, 'save_campaign_preview' ) );
    1919            add_action( 'icegram_campaign_target_rules', array( &$this, 'icegram_add_campaign_target_rules' ), 10, 2 );
     20            add_filter('icegram_campaign_messages' ,array( &$this, 'get_icegram_campaign_messages' ) ,10,2 );
    2021            //duplicate campaign
    2122            add_filter( 'post_row_actions', array(&$this , 'add_campaign_action'), 10, 2 );
     
    3435
    3536        }
     37        public static  function getInstance(){
     38           static $ig_campaign_admin = null;
     39            if (null === $ig_campaign_admin) {
     40                $ig_campaign_admin = new Icegram_Campaign_Admin();
     41            }
     42            return $ig_campaign_admin;
     43        }
    3644
    3745        // Initialize campaign metabox
     
    7078                            <tbody>
    7179                                <?php
    72                                     $messages = get_post_meta( $post->ID, 'messages', true );
     80                                    $messages = array();
     81                                    $messages = apply_filters('icegram_campaign_messages' , $messages ,$post->ID);
     82                                    $icegram_message_meta_key = apply_filters('icegram_message_meta_key' , 'messages');
    7383                                    if ( !empty( $messages ) ) {
    7484                                        foreach ( $messages as $row => $message ) {
     
    8797                                                </td>
    8898                                                <td class="message_seconds">
    89                                                     <input type="hidden" name="messages[<?php echo $row; ?>][id]" value="<?php echo $message['id']; ?>" />
    90                                                     <input type="number" class="seconds-text" name="messages[<?php echo $row; ?>][time]" min="-1" value="<?php echo ( !empty( $message['time'] ) ) ? $message['time'] : 0; ?>" size="3" />
     99                                                    <input type="hidden" name="<?php echo $icegram_message_meta_key .'['.$row; ?>][id]" value="<?php echo $message['id']; ?>" />
     100                                                    <input type="number" class="seconds-text" name="<?php echo $icegram_message_meta_key .'['.$row; ?>][time]" min="-1" value="<?php echo ( !empty( $message['time'] ) ) ? $message['time'] : 0; ?>" size="3" />
    91101                                                    <?php _e( ' sec', 'icegram' )?>
    92102                                                </td>
     
    120130        }
    121131
     132        function get_icegram_campaign_messages($messages , $campaign_id){
     133            $messages = get_post_meta($campaign_id , 'messages' ,true);
     134            return $messages;
     135        }
    122136        // Campaign targeting rules metabox
    123137        function campaign_target_rules_content() {
     
    472486           
    473487            ob_start();
     488            $icegram_message_meta_key = apply_filters('icegram_message_meta_key' , 'messages');
    474489            ?>
    475490            <tr class="form-field message-row" value="<?php echo $message_id; ?>">
     
    482497                </td>
    483498                <td class="message_seconds">
    484                     <input type="hidden" name="messages[<?php echo $_POST['row']; ?>][id]" value="<?php echo $message_id; ?>" />
    485                     <input type="number" class="seconds-text" name="messages[<?php echo $_POST['row']; ?>][time]" min="0" value="0" size="3" /><?php _e( ' sec', 'icegram' )?>
     499                    <input type="hidden" name="<?php echo  $icegram_message_meta_key .'['.$_POST['row']; ?>][id]" value="<?php echo $message_id; ?>" />
     500                    <input type="number" class="seconds-text" name="<?php echo  $icegram_message_meta_key .'['.$_POST['row']; ?>][time]" min="0" value="0" size="3" /><?php _e( ' sec', 'icegram' )?>
    486501                </td>
    487502                <td class="action_links">
     
    597612
    598613            if( !empty( $_POST['messages'] ) ) {
    599 
     614               
    600615                update_post_meta( $_POST['post_ID'], 'campaign_preview', $_POST['messages'] ) ;
    601616
  • icegram/trunk/classes/class-icegram-message-admin.php

    r1066982 r1092381  
    4848                    }
    4949                }
    50              echo $out = '<a href="#TB_inline?width=500&height=520&inlineId=popup_container" data-editor="'.$editor_id.'" class="'.implode( ' ', $message_types).' thickbox button" id="embed_form_but" title="'.__('Add an optin / subscription form' , 'icegram' ).'">'.__('Embed Form' , 'icegram' ).'</a>';
     50             echo $out = '<a href="#popup_container"  class="'.implode( ' ', $message_types).' button" id="embed_form_but">'.__('Embed Form' , 'icegram' ).'</a>';
    5151           }
    5252        }
    5353
    5454        function embed_form_popup_content(){
     55            $screen = get_current_screen();   
     56            if ( !in_array( $screen->id, array( 'ig_campaign', 'ig_message' ), true ) ) return;
    5557            ?>
    56                 <div id="popup_container" style="display:none;">
    57 
     58                <div id="popup_container" class="mfp-hide" >
     59                    <h3><?php _e('Add an optin / subscription form', 'icegram' ); ?>
     60                    <a id="embed_howto_link" target="_blank" href="http://www.icegram.com/icegram_form_integration/" ><?php _e('Need help?', 'icegram' ); ?></a>
     61                    </h3>
    5862                    <form id="embed_form" action="#">
    59                     <!-- <h3 ><?php _e('Add an optin / subscription form', 'icegram' ); ?></h3> -->
    6063                    <p>
    61                         <textarea rows="10" autocomplete="off" cols="65" name="form_data"  style="width:90%" id="form_data" value="" placeholder="<?php _e('Paste HTML code of your form here...', 'icegram' ); ?>"></textarea>
     64                        <textarea rows="10" autocomplete="off" cols="65" name="form_data" id="form_data" value="" placeholder="<?php _e('Paste HTML code of your form here...', 'icegram' ); ?>"></textarea>
    6265                    </p>
    6366                    <p class="use_cta_check">
     
    291294                ?>
    292295                <p class="message_row <?php echo implode( ' ', $settings['message'] )?>">
     296                    <style type="text/css">.wp-editor-tools:after {display: inline-block !important; }</style>
    293297                    <label for="message_body" class="message_body message_label"><strong><?php _e( 'Message Body', 'icegram' ); ?></strong></label>
    294298                    <?php $message = ( !empty( $message_data['message'] ) ) ? $message_data['message'] : ''; ?>
     
    345349
    346350            if( !empty( $action['message_id'] ) ) {
    347                
    348351                ?></div>
    349352                <?php
    350                 if( !empty( $action['new_message_row'] ) && $action['new_message_row'] ) {
    351                     \_WP_Editors::enqueue_scripts();
    352                     // print_footer_scripts();
    353                     \_WP_Editors::editor_js();
    354                 }
    355                
    356353            } else {
    357354               
  • icegram/trunk/icegram.php

    r1066982 r1092381  
    44 * Plugin URI: http://www.icegram.com/
    55 * Description: All in one solution to inspire, convert and engage your audiences. Action bars, Popup windows, Messengers, Toast notifications and more. Awesome themes and powerful rules.
    6  * Version: 1.8.4
     6 * Version: 1.8.5
    77 * Author: icegram
    88 * Author URI: http://www.icegram.com/
    99 *
    10  * Copyright (c) 2014-2015 Icegram
     10 * Copyright (c) 2014-15 Icegram
    1111 * License: GPLv3
    1212 * License URI: http://www.gnu.org/licenses/gpl-3.0.html
     
    3535    function __construct() {
    3636
    37         $this->version = "1.8.4";
     37        $this->version = "1.8.5";
    3838        $this->shortcode_instances = array();
    3939        $this->mode = 'local';
     
    4343
    4444        if( is_admin() && current_user_can( 'manage_options' ) ) {
    45             new Icegram_Campaign_Admin();
     45            $ig_campaign_admin = Icegram_Campaign_Admin::getInstance();
    4646            $ig_message_admin = Icegram_Message_Admin::getInstance();
    4747            add_action( 'admin_enqueue_scripts', array( &$this, 'enqueue_admin_styles_and_scripts' ) );
     
    672672        wp_enqueue_script( 'icegram_ajax-chosen' );
    673673        wp_enqueue_script( 'icegram_tiptip' );
    674         wp_enqueue_script( 'thickbox' );
     674        wp_register_script( 'magnific_popup_js', $this->plugin_url . '/assets/js/magnific-popup.js', array ( 'jquery' ), $this->version, true);
     675        if( !wp_script_is( 'magnific_popup_js' ) ) {
     676            wp_enqueue_script( 'magnific_popup_js' );
     677        }
    675678       
    676679        $icegram_writepanel_params  = array ( 'ajax_url' => admin_url( 'admin-ajax.php' ), 'search_message_nonce' => wp_create_nonce( "search-messages" ) );
     
    680683        wp_localize_script( 'icegram_writepanel', 'icegram_writepanel_params', $icegram_writepanel_params );
    681684       
    682         wp_enqueue_style( 'thickbox' );
    683685        wp_enqueue_style( 'dashicons' );
    684686        wp_enqueue_style( 'wp-color-picker' );
     
    686688        wp_enqueue_style( 'icegram_jquery-ui-style', $this->plugin_url . '/assets/css/jquery-ui.min.css', array(), $this->version );
    687689        wp_enqueue_style( 'icegram_chosen_styles', $this->plugin_url . '/assets/css/chosen.min.css', array(), $this->version );
     690        wp_enqueue_style( 'magnific_popup_css', $this->plugin_url . '/assets/css/magnific-popup.css', array(), $this->version );
    688691
    689692        if ( !wp_script_is( 'jquery-ui-datepicker' ) ) {
     
    691694        }
    692695
    693 
    694696    }
    695697
    696698    public static function get_platform() {
    697         $platform = '';
    698         $user_agent = trim(strtolower($_SERVER['HTTP_USER_AGENT']));
    699         $pattern = '/(android\s\d|blackberry|ip(hone|ad|od)|iemobile|webos|palm|symbian|kindle|windows|win64|wow64|macintosh|intel\smac\sos\sx|ppx\smac\sos\sx|googlebot|googlebot-mobile)/';
    700         if ( preg_match( $pattern, $user_agent, $matches ) ) {
    701             $platform = $matches[0];
    702         }
    703        
    704         switch ( $platform ) {
    705            
    706             /* phones / smartphones */
    707             case 'android 1':
    708             case 'android 2':
    709             case 'blackberry':
    710             case 'iphone':
    711             case 'ipod':
    712             case 'iemobile':
    713             case 'webos':
    714             case 'palm':
    715             case 'symbian':
    716             case 'googlebot-mobile':
    717                 $platform = 'mobile';
    718                 break;
    719            
    720             /* tablets */
    721             case 'android 3':
    722             case 'android 4':
    723             case 'ipad':
    724             case 'kindle':
    725                 $platform = 'tablet';
    726                 break;
    727            
    728             /* desktops / laptops */
    729             case 'windows':
    730             case 'win64':
    731             case 'wow64':
    732             case 'macintosh':
    733             case 'ppx mac os x':
    734             case 'intel mac os x':
    735             case 'googlebot':
    736                 $platform = 'laptop';
    737                 break;
    738            
    739             /* in case nothing else matches */
    740             default:
    741                 $platform = 'laptop';
    742                 break;
    743         }
    744         return $platform;
     699        $mobile_detect = new Mobile_Detect();
     700        $mobile_detect->setUserAgent();
     701        if($mobile_detect->isMobile()){
     702            return ($mobile_detect->isTablet()) ? 'tablet' : 'mobile';
     703        }else if($mobile_detect->isTablet()){
     704            return 'tablet';
     705        }
     706        return 'laptop';
    745707    }
    746708
     
    789751
    790752        if ( !empty( $campaign_ids ) ) {
    791             $valid_campaigns = $this->get_valid_campaigns( $campaign_ids, true );
     753            $valid_campaigns = $this->get_valid_campaigns( $campaign_ids, true ,true);
    792754        }
    793755        // When skip_others is true, we won't load campaigns / messages from db
     
    863825    }
    864826
    865     function get_valid_campaigns( $campaign_ids = array(), $skip_page_check = false ) {
     827    function get_valid_campaigns( $campaign_ids = array(), $skip_page_check = false ,$preview_mode = false) {
    866828        global $wpdb;
    867829
     
    880842        foreach ( (array) $campaign_ids as $campaign_id ) {
    881843            $campaign = new Icegram_Campaign( $campaign_id );
    882              
    883             if ( $campaign->is_valid( array('skip_page_check' =>  $skip_page_check) ) ) {
     844            if ( $preview_mode || $campaign->is_valid( array('skip_page_check' =>  $skip_page_check) ) ) {
    884845                $valid_campaigns[$campaign_id] = $campaign;
    885846            } else {
     
    12341195    function remove_preview_button() {
    12351196        global $post_type;
    1236 
    12371197        if( $post_type == 'ig_message' || $post_type == 'ig_campaign' ) {
    1238 
    12391198            ?>
    1240             <style>
    1241                 #preview-action { display:none; }
    1242             </style>
     1199                <style type="text/css">
     1200                    #message.updated.below-h2{ display: none; }
     1201                    #preview-action { display:none; }
     1202                </style>
    12431203            <?php
    1244 
    1245         }
    1246 
    1247     }
     1204        }
     1205    }
     1206
    12481207
    12491208    function remove_row_actions( $actions, $post ) {
     
    14301389
    14311390    $icegram = new Icegram();
     1391    do_action('icegram_loaded');
    14321392}
    14331393
  • icegram/trunk/message-types/popup/main.js

    r1066982 r1092381  
    3333            showCloseBtn :false
    3434        });
    35         jQuery('.mfp-content').removeClass().addClass('mfp-content');
    36         jQuery('.mfp-content').addClass(self.data.theme).addClass('ig_popup');
     35        jQuery('.mfp-content').removeClass().addClass('mfp-content ig_popup ' + self.data.theme);
    3736        silent !== true && this.track( 'shown' );
    3837    };
  • icegram/trunk/message-types/popup/themes/inspire.css

    r1066982 r1092381  
    6969    }
    7070}
    71 
    7271@media only screen and (min-device-width: 320px) and (max-device-width: 359px) {
    7372    .ig_popup.inspire .ig_button, .ig_popup.inspire input[type="submit"], .ig_popup.inspire input[type="button"]{
  • icegram/trunk/readme.txt

    r1066982 r1092381  
    55Requires at least: 3.9
    66Tested up to: 4.1
    7 Stable tag: 1.8.4
     7Stable tag: 1.8.5
    88License: GPLv3
    99License URI: http://www.gnu.org/licenses/gpl-3.0.html
     
    4747* Use short codes **other plugins** provide – embed forms, widgets, social sharing buttons, twitter feed…
    4848* Add **inline JavaScript or CSS** for customizations
    49 * Compatible with WPML for multilingual, translated messages
     49* Target campaigns on different pages - with Wildcard URLs, page selection and more...
    5050* **Full HTML** editing capability for maximum control
     51
     52= Works with Multi Site, WPML and even non WordPress sites =
     53Icegram and its addons are WordPress Multisite compatible. Each site becomes an independent Icegram installation.
     54
     55Icegram is also *WPML Compatible*. You can show multilingual messages in different languages as you wish.
     56
     57And, as a matter of fact you can show Icegram campaign and messages on non WordPress sites too! Use the premium Icegram Remote addon, and you can show Icegram campaigns anywhere.
    5158
    5259= Icegram is a Good Neighbour =
     
    6875* Geo Targeting - based on visitor's location - continent, country, city, region or IP address
    6976* CTA Actions - Open link, in new window, submit form, AJAX submission, show another message, hide this message... New actions for CTA buttons
    70 * Additional message types - Overlay, Inline, Sidebars, Ribbons, Stickies, Badges...
     77* Remote - Show Icegram messages on any site - WordPress or otherwise
     78* Additional message types - Overlay, Inline, Sidebars, Interstitial, Ribbons, Stickies, Badges...
    7179
    7280= Ok, there is even more =
     
    146154
    147155== Upgrade Notice ==
     156= 1.8.5 =
     157Bug fix release for device targeting, preview before publish not working.
     158
    148159= 1.8.4 =
    149160Popups are now responsive! Plus Visual Composer compatibility and other fixes.
     
    193204
    194205== Changelog ==
     206= 1.8.5 =
     207* New: Added a link to Form Embed Documentation for easy access
     208* Fix: Default mode of content editor set to visual
     209* Fix: Popup hiding behind header for some themes
     210* Fix: Device targeting rule not working on newer devices
     211* Fix: Preview working only after Publishing
     212
    195213= 1.8.4 =
    196214* New: Popup messages work beautifully on mobile / small devices now!
Note: See TracChangeset for help on using the changeset viewer.