WordPress.org

Plugin Directory

Changeset 1780684


Ignore:
Timestamp:
12/04/17 11:30:03 (7 weeks ago)
Author:
bastho
Message:

Code Refactoring

Location:
eelv-newsletter/trunk
Files:
23 added
1 edited

Legend:

Unmodified
Added
Removed
  • eelv-newsletter/trunk/lettreinfo.php

    r1659958 r1780684  
    44Plugin URI: https://wordpress.org/plugins/eelv-newsletter/ 
    55Description:  Add a registration form on frontOffice, a newsletter manager on BackOffice 
    6 Version: 4.6.1 
     6Version: 4.7 
    77Author: Bastien Ho 
    88Author URI: http://avecnous.eu 
     
    1717 */ 
    1818class EELV_newsletter{ 
    19     var $pluginversion='4.6'; 
     19    var $pluginversion='4.7'; 
    2020 
    2121    /** 
     
    6767    //Initialize the plugin 
    6868    function __construct(){ 
    69     global $wpdb; 
    70  
    71     //Plugin translation 
    72     load_plugin_textdomain( 'eelv-newsletter', false, 'eelv-newsletter/languages' ); 
    73     $this->plugin_description=__('Add a registration form on frontOffice, a newsletter manager on BackOffice','eelv-newsletter'); 
    74     $this->plugin_name=__('EELV Newsletter','eelv-newsletter'); 
    75  
    76     $this->news_reg_return=array(); 
    77     $this->eelv_newsletter_version = '2.6.5'; 
    78     $this->js_version='2.8.0'; 
    79     $this->installed_ver = get_option( "eelv_newsletter_version" ); 
    80     $this->eelv_newsletter_options_version = 7; 
    81     $this->newsletter_tb_name = 'eelv_'.$wpdb->blogid. '_newsletter_adr'; 
    82     $this->newsletter_plugin_url = plugins_url(); 
    83     $this->newsletter_base_url = plugins_url('/', __FILE__); 
    84     $this->lettreinfo_plugin_path=plugin_dir_path(__FILE__); 
    85     $this->eelv_nl_content_themes=array(); 
    86     $this->eelv_nl_default_themes=array(); 
    87     $this->eol=get_option( 'newsletter_eol' )=='n'?"\n":"\r\n"; 
    88     $this->newsletter_sql = "CREATE TABLE " . $this->newsletter_tb_name . " ( 
    89       `id` mediumint(9) NOT NULL AUTO_INCREMENT, 
    90       `parent` mediumint(9) DEFAULT 0 NOT NULL, 
    91       `nom` VARCHAR(255) DEFAULT '' NOT NULL, 
    92       `email` VARCHAR(255) DEFAULT '' NOT NULL, 
    93       PRIMARY KEY  (`id`) 
    94       );"; 
    95  
    96     $this->mime_type=get_option( 'newsletter_mime_type' ); 
    97     if($this->mime_type==''){ 
    98         $this->mime_type='html_txt'; 
    99     } 
    100  
    101     include_once ($this->lettreinfo_plugin_path.'widget-archives.php'); 
    102     include_once ($this->lettreinfo_plugin_path.'widget-subscribe.php'); 
    103     include_once ($this->lettreinfo_plugin_path.'reply.php'); 
    104  
    105     $this->default_item_style=array( 
    106         't_size'=>'thumbnail', 
    107         'div'=>'width:550px; margin:5px 0px;text-align:left; clear:both; border-top:#CCC 1px dotted; padding-top:1em; margin-top:1em;', 
    108         'a'=>'text-decoration:none;color:#666666;', 
    109         'img'=>'float:left; margin-right:10px;', 
    110         'h3' => 'margin:0px !important;text-decoration:none;color:#000000;', 
    111         'p' => '', 
    112         'readmore'=>'', 
    113         'readmore_content'=>'', 
    114         'excerpt_length'=>300 
    115     ); 
    116  
    117     $this->default_item_style_trads=array( 
    118         't_size'=>__('Thumbnail size','eelv-newsletter'), 
    119         'div'=>__('Div style:','eelv-newsletter'), 
    120         'a'=>__('A style:','eelv-newsletter'), 
    121         'img'=>__('Img style:','eelv-newsletter'), 
    122         'h3'=>__('H3 style:','eelv-newsletter'), 
    123         'p'=>__('P style:','eelv-newsletter'), 
    124         'readmore'=>__('Readmore style:','eelv-newsletter'), 
    125         'readmore_content'=>__('Readmore content:','eelv-newsletter'), 
    126         'excerpt_length'=>__('Excerpt length: (characters)','eelv-newsletter') 
    127     ); 
     69        global $wpdb; 
     70 
     71        //Plugin translation 
     72        load_plugin_textdomain( 'eelv-newsletter', false, 'eelv-newsletter/languages' ); 
     73        $this->plugin_description=__('Add a registration form on frontOffice, a newsletter manager on BackOffice','eelv-newsletter'); 
     74        $this->plugin_name=__('EELV Newsletter','eelv-newsletter'); 
     75 
     76        $this->news_reg_return=array(); 
     77        $this->eelv_newsletter_version = '2.6.5'; 
     78        $this->js_version='2.8.0'; 
     79        $this->installed_ver = get_option( "eelv_newsletter_version" ); 
     80        $this->eelv_newsletter_options_version = 7; 
     81        $this->newsletter_tb_name = 'eelv_'.$wpdb->blogid. '_newsletter_adr'; 
     82        $this->newsletter_plugin_url = plugins_url(); 
     83        $this->newsletter_base_url = plugins_url('/', __FILE__); 
     84        $this->lettreinfo_plugin_path=plugin_dir_path(__FILE__); 
     85        $this->eelv_nl_content_themes=array(); 
     86        $this->eelv_nl_default_themes=array(); 
     87        $this->eol=get_option( 'newsletter_eol' )=='n'?"\n":"\r\n"; 
     88        $this->newsletter_sql = "CREATE TABLE " . $this->newsletter_tb_name . " ( 
     89          `id` mediumint(9) NOT NULL AUTO_INCREMENT, 
     90          `parent` mediumint(9) DEFAULT 0 NOT NULL, 
     91          `nom` VARCHAR(255) DEFAULT '' NOT NULL, 
     92          `email` VARCHAR(255) DEFAULT '' NOT NULL, 
     93          PRIMARY KEY  (`id`) 
     94          );"; 
     95 
     96        $this->mime_type=get_option( 'newsletter_mime_type' ); 
     97        if($this->mime_type==''){ 
     98            $this->mime_type='html_txt'; 
     99        } 
     100 
     101        include_once ($this->lettreinfo_plugin_path.'widget-archives.php'); 
     102        include_once ($this->lettreinfo_plugin_path.'widget-subscribe.php'); 
     103        include_once ($this->lettreinfo_plugin_path.'reply.php'); 
     104 
     105        $this->default_item_style=array( 
     106            't_size'=>'thumbnail', 
     107            'div'=>'width:550px; margin:5px 0px;text-align:left; clear:both; border-top:#CCC 1px dotted; padding-top:1em; margin-top:1em;', 
     108            'a'=>'text-decoration:none;color:#666666;', 
     109            'img'=>'float:left; margin-right:10px;', 
     110            'h3' => 'margin:0px !important;text-decoration:none;color:#000000;', 
     111            'p' => '', 
     112            'readmore'=>'', 
     113            'readmore_content'=>'', 
     114            'excerpt_length'=>300 
     115        ); 
     116 
     117        $this->default_item_style_trads=array( 
     118            't_size'=>__('Thumbnail size','eelv-newsletter'), 
     119            'div'=>__('Div style:','eelv-newsletter'), 
     120            'a'=>__('A style:','eelv-newsletter'), 
     121            'img'=>__('Img style:','eelv-newsletter'), 
     122            'h3'=>__('H3 style:','eelv-newsletter'), 
     123            'p'=>__('P style:','eelv-newsletter'), 
     124            'readmore'=>__('Readmore style:','eelv-newsletter'), 
     125            'readmore_content'=>__('Readmore content:','eelv-newsletter'), 
     126            'excerpt_length'=>__('Excerpt length: (characters)','eelv-newsletter') 
     127        ); 
    128128 
    129129        $this->form_defaults=array( 
    130                 'id'=>'', 
    131                 'title'      => '', 
    132                 'label'      => __('Subscribe our newsletter', 'eelv-newsletter'), 
    133                 'input' => __('Newsletter : your email address', 'eelv-newsletter'), 
    134                 'button' => __('Ok', 'eelv-newsletter'), 
    135                 'options' => '', 
    136                 'archives' => '', 
    137                 'group'=>1, 
    138  
    139                 'css_template' => 'default', 
    140                 'form_class' => '', 
    141                 'input_wrapper_class' => '', 
    142                 'label_class' => '', 
    143                 'input_class' => '', 
    144                 'button_class' => '', 
    145  
    146                 'form_color'=>'#FFFFFF', 
    147                 'form_transparent'=>0, 
    148                 'text_color'=>'#333333', 
    149                 'text_color_auto'=>0, 
    150                 'options_color'=>'#EEEEEE', 
    151                 'options_transparent'=>0, 
    152                 'options_text_color'=>'#000000', 
    153                 'options_color_auto'=>0, 
     130            'id'=>'', 
     131            'title'      => '', 
     132            'label'      => __('Subscribe our newsletter', 'eelv-newsletter'), 
     133            'input' => __('Newsletter : your email address', 'eelv-newsletter'), 
     134            'button' => __('Ok', 'eelv-newsletter'), 
     135            'options' => '', 
     136            'archives' => '', 
     137            'group'=>1, 
     138 
     139            'css_template' => 'default', 
     140            'form_class' => '', 
     141            'input_wrapper_class' => '', 
     142            'label_class' => '', 
     143            'input_class' => '', 
     144            'button_class' => '', 
     145 
     146            'form_color'=>'#FFFFFF', 
     147            'form_transparent'=>0, 
     148            'text_color'=>'#333333', 
     149            'text_color_auto'=>0, 
     150            'options_color'=>'#EEEEEE', 
     151            'options_transparent'=>0, 
     152            'options_text_color'=>'#000000', 
     153            'options_color_auto'=>0, 
    154154        ); 
    155155 
    156156        // Hooks into WordPress 
    157     register_activation_hook(__FILE__,array(&$this,'activate')); 
     157        register_activation_hook(__FILE__,array(&$this,'activate')); 
    158158        register_deactivation_hook(__FILE__, array(&$this,'deactivate')); 
    159     add_action('plugins_loaded', array(&$this,'update_db_check')); 
    160     add_action( 'init', array(&$this,'newsletter_BO' )); 
     159        add_action('plugins_loaded', array(&$this,'update_db_check')); 
     160        add_action( 'init', array(&$this,'newsletter_BO' )); 
    161161 
    162162        // Cron task 
    163     add_filter( 'cron_schedules', array(&$this,'cron_schedules') ); 
    164     add_action( 'eelv_newsletter_cron_tasks', array($this,'autosend') ); 
    165     if (wp_next_scheduled('eelv_newsletter_CronTask')) { 
    166         wp_clear_scheduled_hook('eelv_newsletter_CronTask'); 
    167     } 
     163        add_filter( 'cron_schedules', array(&$this,'cron_schedules') ); 
     164        add_action( 'eelv_newsletter_cron_tasks', array($this,'autosend') ); 
     165        if (wp_next_scheduled('eelv_newsletter_CronTask')) { 
     166            wp_clear_scheduled_hook('eelv_newsletter_CronTask'); 
     167        } 
    168168        if (wp_next_scheduled('eelv_newsletter_Cron_Task')) { 
    169         wp_clear_scheduled_hook('eelv_newsletter_Cron_Task'); 
    170     } 
     169            wp_clear_scheduled_hook('eelv_newsletter_Cron_Task'); 
     170        } 
    171171        if (!wp_next_scheduled('eelv_newsletter_cron_tasks')) { 
    172         wp_schedule_event(time(), 'newsly', 'eelv_newsletter_cron_tasks'); 
    173     } 
     172            wp_schedule_event(time(), 'newsly', 'eelv_newsletter_cron_tasks'); 
     173        } 
    174174 
    175175        // Admin UI 
    176     add_action('admin_menu', array(&$this,'eelv_news_ajout_menu')); 
    177     add_action( 'network_admin_menu', array(&$this,'eelv_news_ajout_network_menu')); 
    178     add_filter('manage_newsletter_posts_columns', array(&$this,'lettreinfo_columns_head')); 
    179     add_action('manage_newsletter_posts_custom_column', array(&$this,'lettreinfo_columns_content'), 10, 2); 
    180     add_filter('manage_newsletter_archive_posts_columns', array(&$this,'lettreinfo_archives_columns_head')); 
    181     add_action('manage_newsletter_archive_posts_custom_column', array(&$this,'lettreinfo_archives_columns_content'), 10, 2); 
    182     add_filter('manage_newsletter_template_posts_columns', array(&$this,'lettreinfo_template_columns_head')); 
    183     add_action('manage_newsletter_template_posts_custom_column', array(&$this,'lettreinfo_template_columns_content'), 10, 2); 
     176        add_action('admin_menu', array(&$this,'eelv_news_ajout_menu')); 
     177        add_action( 'network_admin_menu', array(&$this,'eelv_news_ajout_network_menu')); 
     178        add_filter('manage_newsletter_posts_columns', array(&$this,'lettreinfo_columns_head')); 
     179        add_action('manage_newsletter_posts_custom_column', array(&$this,'lettreinfo_columns_content'), 10, 2); 
     180        add_filter('manage_newsletter_archive_posts_columns', array(&$this,'lettreinfo_archives_columns_head')); 
     181        add_action('manage_newsletter_archive_posts_custom_column', array(&$this,'lettreinfo_archives_columns_content'), 10, 2); 
     182        add_filter('manage_newsletter_template_posts_columns', array(&$this,'lettreinfo_template_columns_head')); 
     183        add_action('manage_newsletter_template_posts_custom_column', array(&$this,'lettreinfo_template_columns_content'), 10, 2); 
    184184 
    185185        // Editor 
    186     add_action( 'save_post', array(&$this,'newsletter_save_postdata' )); 
    187     add_action( 'add_meta_boxes', array(&$this,'newsletter_add_custom_box' )); 
     186        add_action( 'save_post', array(&$this,'newsletter_save_postdata' )); 
     187        add_action( 'add_meta_boxes', array(&$this,'newsletter_add_custom_box' )); 
    188188        add_action('wp_ajax_eelv_newsletter_included_wizard', array(&$this, 'single_included_wizard')); 
    189189        add_action('wp_ajax_eelv_newsletter_queue_refresh', array(&$this, 'queue_refresh')); 
    190     add_filter('tiny_mce_before_init', array(&$this,'myformatTinyMCE') ); 
     190        add_filter('tiny_mce_before_init', array(&$this,'myformatTinyMCE') ); 
    191191 
    192192        // Scripts & front 
    193     add_action('wp_head', array(&$this,'inscform_action')); 
    194     add_action('admin_head',array(&$this,'add_alert')); 
    195     add_action('wp_enqueue_scripts', array(&$this,'eelv_news_scripts')); 
    196     add_action('admin_enqueue_scripts', array(&$this,'eelv_news_adminscripts')); 
    197  
    198     add_filter( 'archive_template', array(&$this,'get_custom_archive_template' )); 
    199     add_filter( 'single_template', array(&$this,'get_custom_single_template' )); 
    200  
    201     add_action('admin_post_newsletter_export_address_csv', array( &$this, 'export_address_csv')); 
     193        add_action('wp_head', array(&$this,'inscform_action')); 
     194        add_action('admin_head',array(&$this,'add_alert')); 
     195        add_action('wp_enqueue_scripts', array(&$this,'eelv_news_scripts')); 
     196        add_action('admin_enqueue_scripts', array(&$this,'eelv_news_adminscripts')); 
     197 
     198        add_filter( 'archive_template', array(&$this,'get_custom_archive_template' )); 
     199        add_filter( 'single_template', array(&$this,'get_custom_single_template' )); 
     200 
     201        add_action('admin_post_newsletter_export_address_csv', array( &$this, 'export_address_csv')); 
    202202 
    203203        // Shortcodes / widgets 
    204     add_shortcode( 'eelv_news_form' , array(&$this,'get_news_large_form' )); 
    205     add_shortcode( 'desinsc_url' , array(&$this,'nl_short_desinsc' )); 
    206     add_shortcode( 'nl_date' , array(&$this,'nl_short_date' )); 
    207  
    208     add_action('widgets_init', array(&$this,'register_widget')); 
    209  
     204        add_shortcode( 'eelv_news_form' , array(&$this,'get_news_large_form' )); 
     205        add_shortcode( 'desinsc_url' , array(&$this,'nl_short_desinsc' )); 
     206        add_shortcode( 'nl_date' , array(&$this,'nl_short_date' )); 
     207 
     208        add_action('widgets_init', array(&$this,'register_widget')); 
    210209    } 
    211210 
     
    222221     */ 
    223222    function newsletter_BO(){ 
    224     include_once ($this->lettreinfo_plugin_path.'cli.php'); 
    225  
    226     global $wpdb; 
    227     register_post_type( 
     223        include_once ($this->lettreinfo_plugin_path.'cli.php'); 
     224 
     225        global $wpdb; 
     226        register_post_type( 
    228227            'newsletter', 
    229228            array( 
     
    258257                ) 
    259258            ); 
    260     register_post_type( 
     259        register_post_type( 
    261260            'newsletter_template', 
    262261            array( 
     
    290289              ) 
    291290            ); 
    292     register_post_type( 
     291        register_post_type( 
    293292            'newsletter_archive', 
    294293            array( 
     
    323322            ); 
    324323 
    325       register_taxonomy('newsletter_archives_types', 
     324        register_taxonomy('newsletter_archives_types', 
    326325              array('newsletter','newsletter_archive'), 
    327326              array( 
     
    349348            ); 
    350349 
    351     require_once($this->lettreinfo_plugin_path.'templates.php'); 
    352  
    353  
    354     // UPDATE PLUGIN 
     350        require_once($this->lettreinfo_plugin_path.'templates.php'); 
     351 
     352 
     353        // UPDATE PLUGIN 
    355354 
    356355      if( $this->installed_ver != $this->eelv_newsletter_version ) { 
     
    376375            wp_register_widget_control('widget_eelv_lettreinfo_insc', __('Subscribe newsletter (Deprecated)','eelv-newsletter'),array(&$this,'widget_eelv_lettreinfo_insc_control')); 
    377376        } 
    378  
    379377    } 
    380378 
    381379    /* INSTALLATION DES TABLES  */ 
    382380    function activate() { 
    383     require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); 
    384     dbDelta($this->newsletter_sql); 
    385     add_option('eelv_newsletter_version', $this->eelv_newsletter_version); 
     381        require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); 
     382        dbDelta($this->newsletter_sql); 
     383        add_option('eelv_newsletter_version', $this->eelv_newsletter_version); 
    386384    } 
    387385 
    388386    // WP 3.1 patch upgrade 
    389387    function update_db_check() { 
    390     if (get_option('eelv_newsletter_version') != $this->eelv_newsletter_version) { 
    391       update_option( 'eelv_newsletter_version', $this->eelv_newsletter_version ); 
    392       $this->activate(); 
    393     } 
     388        if (get_option('eelv_newsletter_version') != $this->eelv_newsletter_version) { 
     389          update_option( 'eelv_newsletter_version', $this->eelv_newsletter_version ); 
     390          $this->activate(); 
     391        } 
    394392    } 
    395393 
     
    12351233            } 
    12361234        } 
    1237         if (isset($_GET['groupe'])) { 
     1235              if (isset($_GET['groupe'])) { 
    12381236                  $for = 'groupe'; 
    12391237                  $grp_id = $_GET['groupe']; 
     
    13471345              // Group edition 
    13481346              if ($for == 'groupe') { 
    1349                   $grp_nom = __('New group', 'eelv-newsletter'); 
    1350                   $action = "edit.php?post_type=newsletter&page=news_carnet_adresse&groupe=new"; 
    1351                   if (is_numeric($grp_id)) { 
    1352                       $news_info = $this->get_news_meta($grp_id); 
    1353                       $grp_nom = $news_info->nom; 
    1354                       $action = "edit.php?post_type=newsletter&page=news_carnet_adresse&groupe=$grp_id"; 
    1355                   } 
    1356                   ?> 
    1357                   <?php _e('Edit group', 'eelv-newsletter'); ?> 
    1358                             <form action='<?php echo  $action; ?>' method="post"> 
    1359                               <?php wp_nonce_field('eelv_newsletter_addressbook', 'eelv_newsletter_addressbook'); ?> 
    1360                               <div id="titlediv"> 
    1361                                 <div id="titlewrap"> 
    1362                                   <input type="text" name="grp_nom" size="30" tabindex="1" value="<?php esc_attr_e($grp_nom); ?>" id="title" autocomplete="off"/> 
    1363                                 </div> 
    1364                                 <input type='submit' value='<?php _e('Save options', 'eelv-newsletter'); ?>' class="button-primary"/> 
    1365                               </div> 
    1366                             </form> 
    1367                             <p>    <a href="edit.php?post_type=newsletter&page=news_carnet_adresse" class="button add-new-h2"><?php _e('cancel', 'eelv-newsletter'); ?></a></p> 
    1368                   <?php 
     1347                  include($this->lettreinfo_plugin_path.'views/addressbook/group-edit.php'); 
    13691348              } 
    13701349              if ($for == 'liste') { 
    13711350                  ////////////////////////////////////////////////////////////Listes 
    13721351                  if (!is_numeric($grp_id)) { // groupes 
    1373                       $GRPS = $this->news_liste_groupes(); 
    1374                       $nb_groups = sizeof($GRPS); 
    1375                       ?><h3 class="sectiontitle title3"><?php _e('Groups', 'eelv-newsletter'); ?></h3>  <a href="edit.php?post_type=newsletter&page=news_carnet_adresse&groupe=new" class="button add-new-h2"><?php _e('New group', 'eelv-newsletter'); ?></a>    <?php if ($nb_groups > 0) { ?> 
    1376                                     <table class='eelv_news_groups widefat'> 
    1377                                       <thead> 
    1378                                               <tr> 
    1379                                                       <th><?php _e('ID', 'eelv-newsletter'); ?></th> 
    1380                                                       <th><?php _e('Name', 'eelv-newsletter'); ?></th> 
    1381                                                       <th><?php _e('Subscribers', 'eelv-newsletter'); ?></th> 
    1382                                                       <th><?php _e('Subscription form', 'eelv-newsletter'); ?></th> 
    1383                                                       <th><?php _e('List', 'eelv-newsletter'); ?></th> 
    1384                                                       <th><?php _e('Export', 'eelv-newsletter'); ?></th> 
    1385                                                       <th><?php _e('Rename', 'eelv-newsletter'); ?></th> 
    1386                                                       <th><?php _e('Delete', 'eelv-newsletter'); ?></th> 
    1387                                               </tr> 
    1388                                       </thead> 
    1389                                       <tbody> 
    1390                           <?php 
    1391                           $coup = false; 
    1392                           foreach ($GRPS as $groupe) { 
    1393                               $nbinsc = sizeof($this->news_liste_contacts($groupe->id)); 
    1394                               ?> 
    1395                                           <tr> 
    1396                                             <td><?php echo  $groupe->id ?></td> 
    1397                                             <td><a href='edit.php?post_type=newsletter&page=news_carnet_adresse&liste=<?php echo  $groupe->id ?>'><b><?php echo  $groupe->nom ?></b></a></td> 
    1398                                             <td><b><?php echo  $nbinsc ?></b></td> 
    1399                                             <td>[eelv_news_form group=<?php echo  $groupe->id ?>]</td> 
    1400                                             <td><a href='edit.php?post_type=newsletter&page=news_carnet_adresse&liste=<?php echo  $groupe->id ?>' class="button"><span class="dashicons dashicons-editor-ul"></span> <?php _e('List', 'eelv-newsletter'); ?></a></td> 
    1401                                             <td><a href='admin-post.php?action=newsletter_export_address_csv&grp_id=<?php echo  $groupe->id ?>' class="button" target="_blank"><span class="dashicons dashicons-editor-ul"></span> <?php _e('Export', 'eelv-newsletter'); ?></a></td> 
    1402                                             <td><a href='edit.php?post_type=newsletter&page=news_carnet_adresse&groupe=<?php echo  $groupe->id ?>' class="button"><span class="dashicons dashicons-edit"></span> <?php _e('Rename', 'eelv-newsletter'); ?></a></td> 
    1403                                             <td><a onclick="confsup('edit.php?post_type=newsletter&page=news_carnet_adresse&delgroupe=<?php echo  $groupe->id ?>',1)" class="button"><span class="dashicons dashicons-trash"></span> <?php _e('Delete', 'eelv-newsletter'); ?></a></td> 
    1404                                           </tr> 
    1405                           <?php } ?> 
    1406                                     </tbody> </table> 
    1407                           <?php 
    1408                       } 
     1352                      include($this->lettreinfo_plugin_path.'views/addressbook/group-list.php'); 
    14091353                      ?><p>&nbsp;</p><?php 
    1410                   } else { // contacts 
     1354                  } 
     1355                  else { // contacts 
    14111356                      $news_info = $this->get_news_meta($grp_id); 
    14121357                      $grp_nom = $news_info->nom; 
     
    14141359                      $nb_contacts = sizeof($MBRS); 
    14151360                      ?> 
    1416                                 <h3 class="sectiontitle title3"><a href='edit.php?post_type=newsletter&page=news_carnet_adresse'><?php _e('Groups', 'eelv-newsletter'); ?></a> > <?php echo  $grp_nom ?></h3> 
     1361                      <h3 class="sectiontitle title3"> 
     1362                          <a href='edit.php?post_type=newsletter&page=news_carnet_adresse'> 
     1363                              <?php _e('Groups', 'eelv-newsletter'); ?> 
     1364                          </a> &raquo; <?php echo  $grp_nom ?> 
     1365                      </h3> 
    14171366                      <?php 
    14181367                      if ($for2 == 'liste') { // liste contact 
    1419                           ?> 
    1420                                     <table class='eelv_news_groups widefat'> 
    1421                                       <thead> 
    1422                                       <tr><th> 
    1423                                       <input type="checkbox" onclick="tout(document.getElementById('liste_mel'),this)"/> 
    1424                                       <select onchange="eval(this.value)"> 
    1425                                         <option value=""><?php _e('Bulk actions', 'eelv-newsletter'); ?></option> 
    1426                           <?php 
    1427                           $GRPS = $this->news_liste_groupes(); 
    1428                           $nb_groups = sizeof($GRPS); 
    1429                           if ($nb_groups > 0) { 
    1430                               foreach ($GRPS as $groupe) { 
    1431                                   if ($groupe->id != $grp_id) { 
    1432                                       $nbinsc = sizeof($this->news_liste_contacts($groupe->id)); 
    1433                                       ?> 
    1434                                                     <option value="changegrp(document.getElementById('liste_mel'),'edit.php?post_type=newsletter&page=news_carnet_adresse&liste=<?php echo  $grp_id ?>&ngrp=<?php echo  $groupe->id ?>','<?php echo  $groupe->nom ?>')"><?php _e('Move to : ', 'eelv-newsletter'); ?> <?php echo  $groupe->nom ?></option> 
    1435                                   <?php } 
    1436                               } 
    1437                           } ?> 
    1438                                         <option value="confsup(document.getElementById('liste_mel'),2)"><?php _e('Delete', 'eelv-newsletter'); ?></option> 
    1439                                       </select> 
    1440                                       <a href='edit.php?post_type=newsletter&page=news_carnet_adresse' class="button"><?php _e('Back', 'eelv-newsletter'); ?></a> 
    1441                                       <a href='edit.php?post_type=newsletter&page=news_carnet_adresse&liste=<?php echo  $grp_id ?>&contact=new' class="button-primary"><?php _e('New recipient', 'eelv-newsletter'); ?></a> 
    1442  
    1443                                       </th></tr></thead></table> 
    1444                           <?php if ($nb_contacts > 0) { ?> 
    1445                                         <form id='liste_mel' action="edit.php?post_type=newsletter&page=news_carnet_adresse&liste=<?php echo  $grp_id ?>&delcontacts" method="post"> 
    1446                                           <?php wp_nonce_field('eelv_newsletter_addressbook', 'eelv_newsletter_addressbook'); ?> 
    1447                                             <table class='eelv_news_groups widefat'> <tbody> 
    1448                               <?php 
    1449                               $coup = false; 
    1450                               foreach ($MBRS as $contact) { 
    1451                                   ?> 
    1452                                                 <tr> 
    1453                                                   <td><input type="checkbox" name="contact_<?php echo  $contact->id ?>" value="1" /></td> 
    1454                                                   <td><a href='edit.php?post_type=newsletter&page=news_carnet_adresse&liste=<?php echo  $grp_id ?>&contact=<?php echo  $contact->id ?>'><b><?php echo  $contact->nom ?></b></a></td>                         <td><a href='edit.php?post_type=newsletter&page=news_carnet_adresse&liste=<?php echo  $grp_id ?>&contact=<?php echo  $contact->id ?>'><b><?php echo  $contact->email ?></b></a></td> 
    1455                                                 </tr> 
    1456                               <?php } ?> 
    1457                                           </tbody></table> 
    1458                                         </form> 
    1459                               <?php 
    1460                           } else { 
    1461                               _e('No recipient have been selected', 'eelv-newsletter'); 
    1462                           } 
    1463                           ?> 
    1464                           <?php 
     1368                          include($this->lettreinfo_plugin_path.'views/addressbook/contact-list.php'); 
    14651369                      } 
    14661370                      elseif($for2=='import_file' && isset($tmp_import_file)){ 
    1467                             $datas = $this->parse_csv($tmp_import_file, $_POST['con_separator']); 
    1468                           ?> 
    1469                                 <form action='<?php echo  $action; ?>' method="post" enctype="multipart/form-data"> 
    1470                                     <?php wp_nonce_field('eelv_newsletter_addressbook', 'eelv_newsletter_addressbook'); ?> 
    1471                                     <input type="hidden" name="import_type" value='file_'> 
    1472                                     <input type="hidden" name="con_separator" value='<?php echo $_POST['con_separator']; ?>'> 
    1473                                     <input type="hidden" name="con_nom" value=''> 
    1474                                     <?php printf(__('Here some examples picked from the %s rows of your file. Please pick the appropriate destination.', 'eelv-newsletter'), '<strong>'.count($datas).'</strong>'); ?> 
    1475                                     <table class="widefat"> 
    1476                                         <thead> 
    1477                                             <tr> 
    1478                                                 <th>1</th> 
    1479                                                 <?php foreach($datas[0] as $column): ?> 
    1480                                                 <th> 
    1481                                                     <?php echo $column; ?> 
    1482                                                 </th> 
    1483                                                 <?php endforeach; ?> 
    1484                                             </tr> 
    1485                                             <tr> 
    1486                                                 <th></th> 
    1487                                                 <?php foreach($datas[0] as $column_id=>$column): ?> 
    1488                                                 <th> 
    1489                                                     <select name="destination_<?php echo $column_id; ?>"> 
    1490                                                         <option></option> 
    1491                                                         <option value="email"><?php _e('Email', 'eelv-newsletter'); ?></option> 
    1492                                                         <option value="name"><?php _e('Name', 'eelv-newsletter'); ?></option> 
    1493                                                     </select> 
    1494                                                 </th> 
    1495                                                 <?php endforeach; ?> 
    1496                                             </tr> 
    1497                                         </thead> 
    1498                                         <tbody> 
    1499                                             <?php for($i=1 ; $i<4 ; $i++): if(isset($datas[$i])): ?> 
    1500                                             <tr> 
    1501                                                 <td><?php echo $i+1; ?></td> 
    1502                                                 <?php foreach($datas[$i] as $column): ?> 
    1503                                                 <td> 
    1504                                                    <?php echo $column; ?> 
    1505                                                 </td> 
    1506                                                 <?php endforeach; ?> 
    1507                                             </tr> 
    1508                                             <?php endif; endfor; ?> 
    1509                                         </tbody> 
    1510                                     </table> 
    1511                                     <p> 
    1512                                         <label> 
    1513                                             <input type="checkbox" name="destination_notfirst" checked="checked"> 
    1514                                             <?php _e('Exclude first line', 'eelv-newsletter'); ?> 
    1515                                         </label> 
    1516                                     </p> 
    1517                                     <a href='edit.php?post_type=newsletter&page=news_carnet_adresse&liste=<?php echo  $grp_id ?>' class="button"><?php _e('Cancel', 'eelv-newsletter'); ?></a> 
    1518                                     <input type="submit" value='<?php _e('Save', 'eelv-newsletter'); ?>' class="button-primary" /> 
    1519                                 </form> 
    1520                           <?php 
     1371                            include($this->lettreinfo_plugin_path.'views/addressbook/contact-import.php'); 
    15211372                      } 
    15221373                      else { // edit contact 
    1523                           $con_nom = ''; 
    1524                           $action = "edit.php?post_type=newsletter&page=news_carnet_adresse&liste=$grp_id&contact=new"; 
    1525                           if (is_numeric($con_id)) { 
    1526                               $news_info = $this->get_news_meta($con_id); 
    1527                               $con_nom = $news_info->nom; 
    1528                               $con_email = $news_info->email; 
    1529                               $action = "edit.php?post_type=newsletter&page=news_carnet_adresse&groupe=$grp_id&contact=$con_id"; 
    1530                           } 
    1531                           ?> 
    1532                                     <form action='<?php echo  $action; ?>' method="post" enctype="multipart/form-data"> 
    1533                                         <?php wp_nonce_field('eelv_newsletter_addressbook', 'eelv_newsletter_addressbook'); ?> 
    1534                                       <ul> 
    1535                                         <li> 
    1536                                             <label> 
    1537                                             <h3><input type="radio" name="import_type" value='unite' id='imp_unite' checked="checked" /> <?php _e('New contact', 'eelv-newsletter'); ?></h3> 
    1538                                             </label> 
    1539                                             <p style="margin-left:30px;"> 
    1540                                                 <label><?php _e('Name', 'eelv-newsletter'); ?> 
    1541                                                     <input type="text" class="widefat" name="con_nom" size="30" value="<?php esc_attr_e($con_nom); ?>" id="con_nom" autocomplete="off" onfocus="import_type[0].checked=true"/> 
    1542                                                 </label> 
    1543                                                 <label><?php _e('E-mail', 'eelv-newsletter'); ?> 
    1544                                                     <input type="email" class="widefat" name="con_email" size="30" value="<?php esc_attr_e($con_email); ?>" id="con_email" autocomplete="off" onfocus="import_type[0].checked=true"/> 
    1545                                                 </label> 
    1546                                             </p> 
    1547                                         </li> 
    1548                           <?php if (!is_numeric($con_id)) { ?> 
    1549                                             <li> 
    1550                                               <label for="imp_masse"> 
    1551                                                 <h3><input type="radio" name="import_type" value='masse' id='imp_masse' /> <?php _e('Mass copy', 'eelv-newsletter'); ?></h3> 
    1552                                                </label> 
    1553                                                <p style="margin-left:30px;"> 
    1554                                                     <label> 
    1555                                                     <?php _e('Return separated email address', 'eelv-newsletter'); ?> 
    1556                                                     <textarea class="widefat" cols="50" rows="10" name="con_mul" id="con_mul" onfocus="import_type[1].checked=true"></textarea> 
    1557                                                     </label> 
    1558                                                </p> 
    1559                                             </li> 
    1560                                             <li> 
    1561                                             <label for="imp_file"> 
    1562                                             <h3><input type="radio" name="import_type" value='file' id='imp_file' /> <?php _e('CVS file', 'eelv-newsletter'); ?></h3> 
    1563                                             </label> 
    1564                                             <p style="margin-left:30px;"> 
    1565                                                 <label> 
    1566                                                 <?php _e('A file exported from your usual address book', 'eelv-newsletter'); ?> 
    1567                                                 <input type='file'  accept="text/csv,text/plain" name="con_file" id="con_file" onfocus="import_type[2].checked=true"/> 
    1568                                                 </label> 
    1569                                                 <label> 
    1570                                                 <?php _e('Column separator', 'eelv-newsletter'); ?> 
    1571                                                     <select name="con_separator"> 
    1572                                                         <option value=";">;</option> 
    1573                                                         <option value=",">,</option> 
    1574                                                         <option value=" "><?php _e('Tab', 'eelv-newsletter'); ?></option> 
    1575                                                     </select> 
    1576                                                 </label> 
    1577                                             </p> 
    1578                                           </li> 
    1579                           <?php } ?> 
    1580                                       </ul> 
    1581                                       <a href='edit.php?post_type=newsletter&page=news_carnet_adresse&liste=<?php echo  $grp_id ?>' class="button"><?php _e('Cancel', 'eelv-newsletter'); ?></a> 
    1582                                       <input type="submit" value='<?php _e('Save', 'eelv-newsletter'); ?>' class="button-primary" /> 
    1583                                     </form> 
    1584  
    1585  
    1586                           <?php 
     1374                          include($this->lettreinfo_plugin_path.'views/addressbook/contact-edit.php'); 
    15871375                      } 
    15881376                  } 
     
    16111399  *****************************************************************************************************************************************/ 
    16121400    function news_envoi(){ 
    1613     $this->inscform_action(); 
    1614     global $wpdb; 
    1615     $default_exp = get_option( 'newsletter_default_exp' ); 
    1616     $default_mel = get_option( 'newsletter_default_mel' ); 
    1617     $desinsc_url = get_option( 'newsletter_desinsc_url' ); 
    1618     ?> 
    1619     <div class="wrap"> 
    1620       <div id="icon-edit" class="icon32 icon32-posts-newsletter"><br/></div> 
    1621       <h2><?php _e('Newsletter', 'eelv-newsletter' ); ?></h2> 
    1622       <table class="widefat" style="margin-top: 1em;"> 
    1623         <thead> 
    1624           <tr> 
    1625         <th scope="col" colspan="2">Envoi</th> 
    1626           </tr> 
    1627         </thead> 
    1628         <tbody> 
    1629           <tr> 
    1630         <td> 
    1631           <?php 
    1632     if(!isset($_GET['post']) || !is_numeric($_GET['post'])){ 
    1633         /////////////////////////////////// CHOIX DE LA LETTRE 
    1634         $querystr = "SELECT `ID`,`post_title` FROM `$wpdb->posts` WHERE `post_status` = 'publish' AND `post_type` = 'newsletter' ORDER BY `post_name`"; 
    1635         $res = $wpdb->get_results($querystr,ARRAY_N); 
    1636         if(sizeof($res)>0){ 
    1637           ?><ul><?php 
    1638           foreach($res as $item){ 
    1639             ?><li><a href="edit.php?post_type=newsletter&page=news_envoi&post=<?php echo $item[0]?>"><?php echo $item[1]?></a></li><?php 
    1640           } 
    1641           ?></ul><?php 
    1642         } 
    1643         else{ 
    1644             _e('No letter is in progress. to create one', 'eelv-newsletter' ); ?> <a href="post-new.php?post_type=newsletter" class="button"><?php _e('click here', 'eelv-newsletter' ); ?></a> 
    1645             <?php 
    1646         } 
    1647     } 
    1648     else{ 
    1649         $post_id = $_GET['post']; 
    1650         $post = get_post( $post_id ); 
    1651         if(isset($_GET['convert']) && is_numeric($_GET['convert'])){ 
    1652  
    1653         $content=$post->post_content; 
    1654         if(isset($_GET['add_title'])){ 
    1655             $content='<h1>'.$post->post_title.'</h1>'.$content; 
    1656         } 
    1657         if(isset($_GET['add_sharelinks'])){ 
    1658             $content.=$this->share_links($post->post_title,$post->guid); 
    1659         } 
    1660  
    1661         if(0!== $new_post = wp_insert_post( array('post_type'=>'newsletter','post_title' => $post->post_title,  'post_content' => $content,  'post_status' => 'publish'))){ 
    1662             add_post_meta($new_post, 'nl_template', $_GET['convert']); 
    1663             $post_id=$new_post; 
    1664             $post = get_post( $new_post); 
    1665             _e("A newsletter has been created", 'eelv-newsletter'); 
    1666         } 
    1667         else{ 
    1668             _e("Conversion error...", 'eelv-newsletter'); 
    1669         } 
    1670         } 
     1401        $this->inscform_action(); 
     1402        global $wpdb; 
     1403        $default_exp = get_option( 'newsletter_default_exp' ); 
     1404        $default_mel = get_option( 'newsletter_default_mel' ); 
     1405        $desinsc_url = get_option( 'newsletter_desinsc_url' ); 
     1406        ?> 
     1407        <div class="wrap"> 
     1408            <div id="icon-edit" class="icon32 icon32-posts-newsletter"><br/></div> 
     1409            <h2><?php _e('Newsletter', 'eelv-newsletter' ); ?></h2> 
     1410            <table class="widefat" style="margin-top: 1em;"> 
     1411              <thead> 
     1412                    <tr> 
     1413                        <th scope="col" colspan="2">Envoi</th> 
     1414                   </tr> 
     1415                </thead> 
     1416                <tbody> 
     1417                    <tr> 
     1418                        <td> 
     1419              <?php 
     1420        if(!isset($_GET['post']) || !is_numeric($_GET['post'])){ 
     1421            /////////////////////////////////// CHOIX DE LA LETTRE 
     1422            $querystr = "SELECT `ID`,`post_title` FROM `$wpdb->posts` WHERE `post_status` = 'publish' AND `post_type` = 'newsletter' ORDER BY `post_name`"; 
     1423            $res = $wpdb->get_results($querystr,ARRAY_N); 
     1424            if(sizeof($res)>0){ 
     1425              ?><ul><?php 
     1426              foreach($res as $item){ 
     1427                ?><li><a href="edit.php?post_type=newsletter&page=news_envoi&post=<?php echo $item[0]?>"><?php echo $item[1]?></a></li><?php 
     1428              } 
     1429              ?></ul><?php 
     1430            } 
     1431            else{ 
     1432                _e('No letter is in progress. to create one', 'eelv-newsletter' ); ?> <a href="post-new.php?post_type=newsletter" class="button"><?php _e('click here', 'eelv-newsletter' ); ?></a> 
     1433                <?php 
     1434            } 
     1435        } 
     1436        else{ 
     1437            $post_id = $_GET['post']; 
     1438            $post = get_post( $post_id ); 
     1439            if(isset($_GET['convert']) && is_numeric($_GET['convert'])){ 
     1440                $content=$post->post_content; 
     1441                if(isset($_GET['add_title'])){ 
     1442                    $content='<h1>'.$post->post_title.'</h1>'.$content; 
     1443                } 
     1444                if(isset($_GET['add_sharelinks'])){ 
     1445                    $content.=$this->share_links($post->post_title,$post->guid); 
     1446                } 
     1447 
     1448                if(0!== $new_post = wp_insert_post( array('post_type'=>'newsletter','post_title' => $post->post_title,  'post_content' => $content,  'post_status' => 'publish'))){ 
     1449                    add_post_meta($new_post, 'nl_template', $_GET['convert']); 
     1450                    $post_id=$new_post; 
     1451                    $post = get_post( $new_post); 
     1452                    _e("A newsletter has been created", 'eelv-newsletter'); 
     1453                } 
     1454                else{ 
     1455                    _e("Conversion error...", 'eelv-newsletter'); 
     1456                } 
     1457            } 
    16711458            if(isset($_GET['settemplate']) && is_numeric($_GET['settemplate'])){ 
    1672         update_post_meta($post->ID,'nl_template',$_GET['settemplate']); 
    1673         } 
     1459                update_post_meta($post->ID,'nl_template',$_GET['settemplate']); 
     1460            } 
    16741461            $content=$this->localize_string($this->nl_content($post_id)); 
    1675         $preview = apply_filters('the_content',$content); 
    1676  
    1677         $reply_url = get_option( 'newsletter_reply_url',''); 
    1678         if(empty($reply_url)){                  ?> 
    1679             <div class="updated"><p><a href="edit.php?post_type=newsletter&page=settings_page"> 
    1680             <?php _e('Missing parameter "Answer page" for your Newsletter, please go to the configuration page', 'eelv-newsletter' ); ?></a></p></div> 
    1681             <?php 
    1682         } 
    1683         $desinsc_url = get_option( 'newsletter_desinsc_url' ); 
    1684         if(empty($desinsc_url)){                    ?> 
    1685             <div class="updated"><p><a href="edit.php?post_type=newsletter&page=settings_page"> 
    1686             <?php _e('Missing parameter "Unsubscribe page" for your Newsletter, please go to the configuration page', 'eelv-newsletter' ); ?></a></p></div> 
    1687             <?php 
    1688         } 
    1689  
    1690         $template_id = get_post_meta($post->ID,'nl_template',true); 
    1691         if(!isset($_POST['send']) ){ 
    1692         $user_info = get_userdata(get_current_user_id()); 
    1693         /////////////////////////////////// CHOIX DES DESTINATAIRES 
    1694         add_thickbox(); ?> 
    1695         <h3 class="sectiontitle title3"><?php _e('Preview', 'eelv-newsletter' ); ?></h3> 
    1696         <div id="eelv_news_prevlink" style="display:none;"> 
    1697             <p> 
    1698               <?php _e('This is only a preview link', 'eelv-newsletter' ); ?></a> 
    1699             </p> 
    1700         </div> 
    1701         <div class='eelv_news_frame' id="nl_preview"> 
    1702         <?php echo $preview; ?></div> 
    1703                 <p> 
    1704                     <a href="post.php?post=<?php echo $post_id; ?>&action=edit" class="button"><?php _e('Edit', 'eelv-newsletter' ); ?></a> 
    1705                     <?php _e('Skin', 'eelv-newsletter' ); ?>: 
    1706                     <select name="newslettertemplate" onchange="document.location='edit.php?post_type=newsletter&page=news_envoi&post=<?php echo $post_id; ?>&settemplate='+this.value+'#nl_preview';"> 
    1707                         <?php $querystr = "SELECT `ID` FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'newsletter_template' ORDER BY `post_title`"; 
    1708                         $IDS = $wpdb->get_col($querystr); 
    1709                         $templates_nb = sizeof($IDS); 
    1710  
    1711                         if($templates_nb>0): 
    1712                             $my_temp=get_post_meta(get_the_ID(), 'nl_template',true); 
    1713                             foreach($IDS as $item_id): 
    1714                               if($my_temp==NULL){ 
    1715                                 add_post_meta(get_the_ID(), 'nl_template', $item_id); 
    1716                                 $my_temp=$item_id; 
    1717                               } 
    1718                               ?> 
    1719                             <option value="<?php echo $item_id;?>" <?php if($item_id==$template_id){ echo' selected ';} ?>/> <?php echo get_the_title($item_id);?></option> 
    1720                           <?php endforeach; 
    1721                               endif; 
    1722                               ?> 
    1723                     </select> 
    1724                 </p> 
    1725                 <form action="edit.php?post_type=newsletter&page=news_envoi&post=<?php echo $post_id; ?>#nl_preview" method="post" class='eelv_news'> 
    1726                     <input type="hidden" name="send" value="1" /> 
    1727                     <table class="widefat"> 
    1728                         <tr> 
    1729                             <td> 
    1730                                 <h3 class="sectiontitle title3"><?php _e('Headers', 'eelv-newsletter'); ?></h3> 
    1731                                 <p> 
    1732                                     <label for="sujet"><?php _e('Subject', 'eelv-newsletter'); ?> 
    1733                                         <input type="text" name="eelv_news_sujet" class="widefat" value="<?php echo $post->post_title; ?>" id="sujet" autocomplete="off" required/> 
    1734                                     </label> 
    1735                                 </p> 
    1736                                 <p> 
    1737                                     <label for="exp"><?php _e('Sender name', 'eelv-newsletter'); ?> 
    1738                                         <input type="text" name="eelv_news_exp" class="widefat" value="<?php echo $default_exp; ?>" id="exp" placeholder="" autocomplete="off" required/> 
    1739                                     </label> 
    1740                                 </p> 
    1741                                 <p> 
    1742                                     <label for="mel"><?php _e('Reply email', 'eelv-newsletter'); ?> 
    1743                                         <input type="email" name="eelv_news_mel" class="widefat" value="<?php echo $default_mel; ?>" placeholder="email@example.com" id="mel" autocomplete="off" required/> 
    1744                                     </label> 
    1745                                 </p> 
    1746  
    1747                                 <p> 
    1748                                     <label for="stat"><?php _e('Archive stat', 'eelv-newsletter'); ?> 
    1749                                         <select name="eelv_news_stat" id="stat" class="widefat" required> 
    1750                                             <option value='publish'><?php _e('Published', 'eelv-newsletter'); ?></option> 
    1751                                             <option value='private'><?php _e('private', 'eelv-newsletter'); ?></option> 
    1752                                         </select> 
    1753                                     </label> 
    1754                                 </p> 
    1755  
    1756                                 <p> 
    1757                                     <label for="post_date"> 
    1758                                         <?php _e('Post date', 'eelv-newsletter'); ?> 
    1759                                         <input name="post_date" id="post_date" class="widefat datetime-picker" value="<?php echo current_time('mysql', false); ?>"> 
    1760                                         ( 
    1761                                         <?php _e('Local time is:', 'eelv-newsletter'); ?> 
    1762                                         <?php echo date_i18n(get_option('date_format').', '.get_option('time_format'), current_time('timestamp', false)); ?> 
    1763                                         ) 
    1764                                     </label> 
    1765                                 </p> 
    1766  
    1767                                 <p> 
    1768                                     <?php _e('Archive news types', 'eelv-newsletter'); ?> 
    1769                                 <ul> 
    1770                                     <?php 
    1771                                     $types = get_terms(array('newsletter_archives_types'), array('hide_empty' => 0)); 
    1772                                     foreach ($types as $type) { 
    1773                                         ?> 
    1774                                         <li><label for='type_<?php echo $type->term_id; ?>'> 
    1775                                                 <input type="checkbox" name='types[<?php echo $type->term_id; ?>]' id='type_<?php echo $type->term_id; ?>' value='<?php echo $type->slug; ?>'/> 
    1776                                                 <?php echo $type->name; ?> 
    1777                                             </label></li> 
    1778                                     <?php } ?> 
    1779                                     <li> 
    1780                                         <label for='type_new'> 
    1781                                             <?php _e('New type:', 'eelv-newsletter'); ?> 
    1782                                             <input type="text" name='types[]' class="widefat" id='type_new' value=''/> 
    1783                                         </label> 
    1784                                     </li> 
    1785                                 </ul> 
    1786                                 </p> 
    1787  
    1788                                 <p> 
    1789                                     <label for="spy"><?php _e('Reading tracking', 'eelv-newsletter'); ?> 
    1790                                         <select name="eelv_news_spy" id="spy" class="widefat" required> 
    1791                                             <option value='1'><?php _e('try to know if emails is readen', 'eelv-newsletter'); ?></option> 
    1792                                             <option value='0'><?php _e('deactivated', 'eelv-newsletter'); ?></option> 
    1793                                         </select> 
    1794                                     </label> 
    1795                                 </p> 
    1796  
    1797                                 <?php do_action('eelv_newsletter_sending_options', $post); ?> 
    1798                             </td> 
    1799                             <td> 
    1800                                 <h3 class="sectiontitle title3"><?php _e('Recipients', 'eelv-newsletter'); ?></h3> 
    1801                                 <table> 
    1802                                     <tr> 
    1803                                         <td> 
    1804                                             <h4><?php _e('Groups', 'eelv-newsletter'); ?></h4> 
    1805                                             <ul class='eelv_news_groups'> 
    1806                                                 <?php 
    1807                                                 $GRPS = $this->news_liste_groupes(); 
    1808                                                 foreach ($GRPS as $groupe) { 
    1809                                                     $nbinsc = sizeof($this->news_liste_contacts($groupe->id)); 
    1810                                                     ?> 
    1811                                                     <li> 
    1812                                                         <label  for='grp_<?php echo $groupe->id; ?>'> 
    1813                                                             <input type="checkbox" name='grp_<?php echo $groupe->id; ?>' id='grp_<?php echo $groupe->id; ?>' value='1'/> 
    1814                                                             <b><?php echo $groupe->nom; ?></b> 
    1815                                                             <i>(<?php echo $nbinsc; ?>)</i> 
    1816                                                         </label> 
    1817                                                     </li> 
    1818                                                 <?php } ?> 
    1819                                             </ul> 
    1820                                         </td> 
    1821                                         <td> 
    1822                                             <h4><?php _e('blog users', 'eelv-newsletter'); ?></h4> 
    1823                                             <ul class='eelv_news_groups'> 
    1824                                                 <?php 
    1825                                                 $result = count_users(); 
    1826                                                 foreach ($result['avail_roles'] as $role => $count) { 
    1827                                                     ?> 
    1828                                                     <li> 
    1829                                                         <label  for='rol_<?php echo $role; ?>'> 
    1830                                                             <input type="checkbox" name='rol_<?php echo $role; ?>' id='rol_<?php echo $role; ?>' value='1'/> 
    1831                                                             <b><?php echo __($role) ?></b> 
    1832                                                             <i>(<?php echo $count; ?>)</i> 
    1833                                                         </label> 
    1834                                                     </li> 
    1835                                                 <?php } ?> 
    1836                                             </ul> 
    1837                                         </td> 
    1838                                         <?php do_action('eelv_newsletter_select_receipients'); ?> 
    1839                                         <td> 
    1840                                             <h4><?php _e('Additional recipients', 'eelv-newsletter'); ?></h4> 
    1841                                             <textarea name="dests" class="widefat" rows="10"><?php echo $user_info->user_email; ?></textarea> 
    1842                                             <legend><?php _e('Return separated email address', 'eelv-newsletter'); ?></legend> 
    1843                                         </td> 
    1844                                     </tr> 
    1845                                 </table> 
    1846                             </td> 
    1847                         </tr> 
    1848                     </table> 
    1849                     <input type='submit' value='<?php _e("Send", 'eelv-newsletter'); ?>' class="button-primary"/> 
    1850                 </form> 
    1851           <?php 
    1852     } 
    1853     else{ 
    1854         /////////////////////////////////// SENDING 
    1855             if(0=== $archive = wp_insert_post( 
    1856                 array( 
    1857                     'post_type'=>'newsletter_archive', 
    1858                     'post_title' => $_POST['eelv_news_sujet'], 
    1859                     'post_content' => $this->localize_string($post->post_content), 
    1860                     'post_date' => $_POST['post_date'], 
    1861                     'post_status' => $_POST['eelv_news_stat'] 
     1462            $preview = apply_filters('the_content',$content); 
     1463 
     1464            $reply_url = get_option( 'newsletter_reply_url',''); 
     1465            if(empty($reply_url)){                  ?> 
     1466                <div class="updated"><p><a href="edit.php?post_type=newsletter&page=settings_page"> 
     1467                <?php _e('Missing parameter "Answer page" for your Newsletter, please go to the configuration page', 'eelv-newsletter' ); ?></a></p></div> 
     1468                <?php 
     1469            } 
     1470            $desinsc_url = get_option( 'newsletter_desinsc_url' ); 
     1471            if(empty($desinsc_url)){                    ?> 
     1472                <div class="updated"><p><a href="edit.php?post_type=newsletter&page=settings_page"> 
     1473                <?php _e('Missing parameter "Unsubscribe page" for your Newsletter, please go to the configuration page', 'eelv-newsletter' ); ?></a></p></div> 
     1474                <?php 
     1475            } 
     1476 
     1477            $template_id = get_post_meta($post->ID,'nl_template',true); 
     1478            if(!isset($_POST['send']) ){ 
     1479                include($this->lettreinfo_plugin_path.'views/sending/sending-form.php'); 
     1480            } 
     1481            else{ 
     1482            /////////////////////////////////// SENDING 
     1483                if(0=== $archive = wp_insert_post( 
     1484                    array( 
     1485                        'post_type'=>'newsletter_archive', 
     1486                        'post_title' => $_POST['eelv_news_sujet'], 
     1487                        'post_content' => $this->localize_string($post->post_content), 
     1488                        'post_date' => $_POST['post_date'], 
     1489                        'post_status' => $_POST['eelv_news_stat'] 
     1490                        ) 
    18621491                    ) 
    1863                 ) 
    1864             ){ 
    1865           echo __("An error occured !",'eelv-newsletter'); 
    1866         } 
    1867         else{ 
    1868  
    1869         $contacts=''; 
    1870         // CUSTOM GROUPES 
    1871         $dest = array(); 
    1872         $GRPS = $this->news_liste_groupes(); 
    1873         foreach($GRPS as $groupe){ 
    1874           if(isset($_POST['grp_'.$groupe->id])){ 
    1875         array_push($dest,$groupe->id); 
    1876           } 
    1877         } 
    1878         $temp = $this->news_liste_contacts($dest,'email'); 
    1879         foreach($temp as $contact){ 
    1880           $contacts.=$contact->email.','; 
    1881         } 
    1882         // USERS 
    1883         $result = count_users(); 
    1884         foreach($result['avail_roles'] as $role => $count){ 
    1885           if(isset($_POST['rol_'.$role])){ 
    1886         $blogusers = get_users(array('blog_id'=>$wpdb->blogid,'orderby'=>'nicename','role'=>$role)); 
    1887         foreach ($blogusers as $user) { 
    1888           if(in_array($role,$user->roles) || $role==$user->roles){ 
    1889               $contacts.=$user->user_email.','; 
    1890           } 
    1891         } 
    1892           } 
    1893         } 
    1894         // UNITE 
    1895         $temp = preg_split('/[;,\n\t]/',$_POST['dests']); 
    1896         foreach($temp as $contact){ 
    1897           if(trim($contact)!=''){ 
    1898         $contacts.=trim($contact).','; 
    1899           } 
    1900         } 
    1901         // OTHER 
    1902         $contacts=apply_filters('eelv_newsletter_parse_receipients',$contacts, $archive); 
    1903             $contacts=array_unique(explode(',',$contacts)); 
    1904         $contacts=implode(',',$contacts); 
    1905  
    1906           add_post_meta($archive, 'sujet', $this->localize_string($_POST['eelv_news_sujet'])); 
    1907           add_post_meta($archive, 'nl_template', $template_id); 
    1908           add_post_meta($archive, 'expediteur', $_POST['eelv_news_exp']); 
    1909           add_post_meta($archive, 'reponse', $_POST['eelv_news_mel']); 
    1910           add_post_meta($archive, 'destinataires', $contacts); 
    1911           add_post_meta($archive, 'sentmails', ''); 
    1912           add_post_meta($archive, 'lastsend', date('Y-m-d H:i:s')); 
    1913           add_post_meta($archive, 'nl_spy', $_POST['eelv_news_spy']); 
    1914  
    1915           if(isset($_POST['types'])){ 
    1916               $types = $_POST['types']; 
    1917               wp_set_object_terms( $archive, $types,'newsletter_archives_types' ); 
    1918           } 
    1919           _e('Sending...','eelv-newsletter').""; 
    1920               echo" 
    1921         <script> 
    1922         setTimeout(function(){document.location='post.php?post=".$archive."&action=edit&ref=".time()."';},2000); 
    1923         </script> 
    1924         ".__("To view the delivery status, please go to",'eelv-newsletter')." 
    1925         <a href='edit.php?post_type=newsletter_archive'>".__('archives','eelv-newsletter')."</a> 
    1926         "; 
    1927               $this->autosend(); 
    1928         } 
    1929       } 
    1930     } 
    1931     ?> 
    1932         </td></tr></tbody></table> 
    1933     </div> 
     1492                ){ 
     1493                    echo __("An error occured !",'eelv-newsletter'); 
     1494                } 
     1495                else{ 
     1496                    $contacts=''; 
     1497                    // CUSTOM GROUPES 
     1498                    $dest = array(); 
     1499                    $GRPS = $this->news_liste_groupes(); 
     1500                    foreach($GRPS as $groupe){ 
     1501                        if(isset($_POST['grp_'.$groupe->id])){ 
     1502                            array_push($dest,$groupe->id); 
     1503                        } 
     1504                    } 
     1505                    $temp = $this->news_liste_contacts($dest,'email'); 
     1506                    foreach($temp as $contact){ 
     1507                        $contacts.=$contact->email.','; 
     1508                    } 
     1509 
     1510                    // USERS 
     1511                    $result = count_users(); 
     1512                    foreach($result['avail_roles'] as $role => $count){ 
     1513                        if(isset($_POST['rol_'.$role])){ 
     1514                            $blogusers = get_users(array('blog_id'=>$wpdb->blogid,'orderby'=>'nicename','role'=>$role)); 
     1515                            foreach ($blogusers as $user) { 
     1516                                if(in_array($role,$user->roles) || $role==$user->roles){ 
     1517                                    $contacts.=$user->user_email.','; 
     1518                                } 
     1519                            } 
     1520                        } 
     1521                    } 
     1522 
     1523                    // UNITE 
     1524                    $temp = preg_split('/[;,\n\t]/',$_POST['dests']); 
     1525                    foreach($temp as $contact){ 
     1526                        if(trim($contact)!=''){ 
     1527                            $contacts.=trim($contact).','; 
     1528                        } 
     1529                    } 
     1530 
     1531                    // OTHER 
     1532                    $contacts=apply_filters('eelv_newsletter_parse_receipients',$contacts, $archive); 
     1533                    $contacts=array_unique(explode(',',$contacts)); 
     1534                    $contacts=implode(',',$contacts); 
     1535 
     1536                    add_post_meta($archive, 'sujet', $this->localize_string($_POST['eelv_news_sujet'])); 
     1537                    add_post_meta($archive, 'nl_template', $template_id); 
     1538                    add_post_meta($archive, 'expediteur', $_POST['eelv_news_exp']); 
     1539                    add_post_meta($archive, 'reponse', $_POST['eelv_news_mel']); 
     1540                    add_post_meta($archive, 'destinataires', $contacts); 
     1541                    add_post_meta($archive, 'sentmails', ''); 
     1542                    add_post_meta($archive, 'lastsend', date('Y-m-d H:i:s')); 
     1543                    add_post_meta($archive, 'nl_spy', $_POST['eelv_news_spy']); 
     1544 
     1545                    if(isset($_POST['types'])){ 
     1546                        $types = $_POST['types']; 
     1547                        wp_set_object_terms( $archive, $types,'newsletter_archives_types' ); 
     1548                    } 
     1549                    _e('Sending...','eelv-newsletter').""; 
     1550                    echo" 
     1551                    <script> 
     1552                    setTimeout(function(){document.location='post.php?post=".$archive."&action=edit&ref=".time()."';},2000); 
     1553                    </script> 
     1554                    ".__("To view the delivery status, please go to",'eelv-newsletter')." 
     1555                    <a href='edit.php?post_type=newsletter_archive'>".__('archives','eelv-newsletter')."</a> 
     1556                    "; 
     1557                    $this->autosend(); 
     1558                } 
     1559            } 
     1560        } 
     1561        ?> 
     1562                        </td> 
     1563                    </tr> 
     1564                </tbody> 
     1565            </table> 
     1566        </div> 
    19341567    <?php 
    19351568    } 
     
    19371570    /** 
    19381571     * 
    1939      * @param type $post_id 
    1940      * @return type 
     1572     * @param int $post_id 
     1573     * @return void 
    19411574     */ 
    19421575    function newsletter_save_postdata( $post_id ) { 
    1943     if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE )      return; 
    1944  
    1945                 //Save temple in NL 
    1946     if (isset($_POST['post_type']) && 'newsletter' == $_POST['post_type']  && isset($_REQUEST['newslettertemplate']) && $_REQUEST['newslettertemplate']!=''){ 
    1947       update_post_meta($post_id, 'nl_template', $_REQUEST['newslettertemplate']); 
    1948     } 
    1949  
    1950     //Save default content in template 
    1951     if (isset($_POST['post_type']) &&  'newsletter_template' == $_POST['post_type']  && isset($_REQUEST['item_style']) && is_array($_REQUEST['item_style'])) { 
    1952       update_post_meta($post_id, 'item_style', $_REQUEST['item_style']); 
    1953     } 
    1954     if (isset($_POST['post_type']) &&  'newsletter_template' == $_POST['post_type']  && isset($_REQUEST['default_content']) && $_REQUEST['default_content']!='') { 
    1955       update_post_meta($post_id, 'default_content', stripslashes($_REQUEST['default_content'])); 
    1956     } 
    1957     } 
     1576        if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE )      return; 
     1577 
     1578        //Save temple in NL 
     1579        if (isset($_POST['post_type']) && 'newsletter' == $_POST['post_type']  && isset($_REQUEST['newslettertemplate']) && $_REQUEST['newslettertemplate']!=''){ 
     1580          update_post_meta($post_id, 'nl_template', $_REQUEST['newslettertemplate']); 
     1581        } 
     1582        //Save default content in template 
     1583        if (isset($_POST['post_type']) &&  'newsletter_template' == $_POST['post_type']  && isset($_REQUEST['item_style']) && is_array($_REQUEST['item_style'])) { 
     1584          update_post_meta($post_id, 'item_style', $_REQUEST['item_style']); 
     1585        } 
     1586        if (isset($_POST['post_type']) &&  'newsletter_template' == $_POST['post_type']  && isset($_REQUEST['default_content']) && $_REQUEST['default_content']!='') { 
     1587          update_post_meta($post_id, 'default_content', stripslashes($_REQUEST['default_content'])); 
     1588        } 
     1589    } 
     1590 
     1591    /** 
     1592     * @return void 
     1593     */ 
    19581594    function newsletter_admin_prev() { 
    1959     $my_temp=get_post(get_post_meta(get_the_ID(), 'nl_template',true)); 
    1960     $env=true; 
    1961     if(get_the_ID()==0){ 
    1962       $env=false; 
    1963       echo"<p>".__("Your newsletter has'nt been saved yet",'eelv-newsletter')."</p>"; 
    1964     } 
    1965     if(get_the_title()==''){ 
    1966       $env=false; 
    1967       echo"<p>".__("Your newsletter has no title",'eelv-newsletter')."</p>"; 
    1968     } 
    1969     if(!$my_temp){ 
    1970       $env=false; 
    1971       echo"<p>".__("No skin applied",'eelv-newsletter')."</p>"; 
    1972     } 
    1973     if($env==true){ 
    1974       echo'<p><a href="edit.php?post_type=newsletter&page=news_envoi&post='.get_the_ID().'#nl_preview" class="button-primary">'.__('Preview and send','eelv-newsletter').'</a></p>'; 
    1975     } 
     1595        $my_temp=get_post(get_post_meta(get_the_ID(), 'nl_template',true)); 
     1596        $env=true; 
     1597        if(get_the_ID()==0){ 
     1598            $env=false; 
     1599            echo"<p>".__("Your newsletter has'nt been saved yet",'eelv-newsletter')."</p>"; 
     1600        } 
     1601        if(get_the_title()==''){ 
     1602            $env=false; 
     1603            echo"<p>".__("Your newsletter has no title",'eelv-newsletter')."</p>"; 
     1604        } 
     1605        if(!$my_temp){ 
     1606            $env=false; 
     1607            echo"<p>".__("No skin applied",'eelv-newsletter')."</p>"; 
     1608        } 
     1609        if($env==true){ 
     1610            echo'<p><a href="edit.php?post_type=newsletter&page=news_envoi&post='.get_the_ID().'#nl_preview" class="button-primary">'.__('Preview and send','eelv-newsletter').'</a></p>'; 
     1611        } 
    19761612    } 
    19771613 
     
    19811617     */ 
    19821618    function newsletter_admin() { 
    1983     global $wpdb; 
    1984     //checkdb(); 
    1985     //print_r($this->eelv_nl_content_themes); 
    1986     ?> 
    1987     <table id="eelv_nl_edit_choose_skins"><tr> 
    1988       <td valign="top"> 
    1989         <h4><?php _e('Skin', 'eelv-newsletter' ); ?></h4> 
    1990             <div id="eelv-newsletter-skins"> 
    1991             <?php 
    1992             $querystr = "SELECT `ID` FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'newsletter_template' ORDER BY `post_title`"; 
    1993               $IDS = $wpdb->get_col($querystr); 
    1994               $templates_nb = sizeof($IDS); 
    1995               if($templates_nb>0){ 
    1996                 $my_temp=get_post_meta(get_the_ID(), 'nl_template',true); 
    1997                                         $my_temp_title=''; 
    1998                 foreach($IDS as $item_id){ 
    1999                   if($my_temp==NULL){ 
    2000                     add_post_meta(get_the_ID(), 'nl_template', $item_id); 
    2001                                             $my_temp=$item_id; 
    2002                   } 
    2003                   $my_temp_title=get_the_title($item_id); 
    2004                   $default_content = get_post_meta($item_id, 'default_content',true); 
    2005                  if(!empty($default_content)){ 
    2006                         $this->eelv_nl_content_themes[$my_temp_title]=$default_content; 
    2007                  } 
    2008                  elseif(!isset($this->eelv_nl_content_themes[$my_temp_title])){ 
    2009                         $this->eelv_nl_content_themes[$my_temp_title]=''; 
    2010                  } 
    2011                ?> 
    2012                 <p> 
    2013                     <label> 
    2014                             <input type='radio' name='newslettertemplate' id='nt_<?php echo $item_id;?>' value='<?php echo $item_id;?>' <?php if($item_id==$my_temp){ echo' checked=checked ';} ?>/> 
    2015                             <?php echo $my_temp_title;?> 
    2016                     </label> 
    2017                     <?php if($this->eelv_nl_content_themes[$my_temp_title]!=''){ ?> 
    2018                     <u onclick="apply_default_content('dc_<?php echo $item_id;?>')"><?php _e('Load default content', 'eelv-newsletter' ); ?></u> 
    2019                     <?php } ?> 
    2020                     <textarea id="dc_<?php echo $item_id;?>" style="display:none;"><?php echo $this->eelv_nl_content_themes[$my_temp_title]?></textarea> 
    2021                 </p> 
    2022             <?php } 
    2023             } ?> 
    2024             </div> 
    2025             </td> 
    2026             <td valign="top" style='padding-left:20px'> 
    2027                 <h4><?php _e('Insert some content', 'eelv-newsletter' ); ?></h4> 
    2028                 <h5><?php _e('Available addressing variables', 'eelv-newsletter' ); ?></h5> 
    2029                 <p> 
    2030                     <a onclick="incontent(' {dest_name} ');">{dest_name}</a>, 
    2031                     <a onclick="incontent(' {dest_login} ');">{dest_login}</a>, 
    2032                     <a onclick="incontent(' {dest_email} ');">{dest_email}</a>, 
    2033                     <a onclick="incontent(' {blog_name} ');">{blog_name}</a>, 
    2034                     <a onclick="incontent(' {blog_url} ');">{blog_url}</a>, 
    2035                     <a onclick="incontent(' {blog_description} ');">{blog_description}</a>, 
    2036                     <a onclick="incontent(' {blog_image} ');">{blog_image}</a> 
    2037                     <?php do_action('eelv_newsletter_editor_variables'); ?> 
    2038                 </p> 
    2039                   <script> 
    2040                     var IEbof=false; 
    2041                   </script> 
    2042                   <!--[if lt IE 9]> 
    2043                   <script>IEbof=true;</script> 
    2044                   <![endif]--> 
    2045                   <?php 
    2046                   $prechoch_rs = get_option( 'newsletter_precoch_rs' ); 
    2047                   ?> 
    2048  
    2049                   <h5><?php _e('Seach for latest posts', 'eelv-newsletter' ); ?></h5> 
    2050                   <p> 
    2051                       <input type="text" class="widefat hide-if-no-js" id="eelv-newsletter-search-posts" placeholder="<?php _e('Last posts', 'eelv-newsletter' ); ?>"> 
    2052  
    2053                         <label> 
    2054                           <input type="checkbox" id="eelv-newsletter-with-share" <?php checked($prechoch_rs, 1, true); ?>/><?php echo __('Add share links', 'eelv-newsletter' )?> 
    2055                         </label> 
    2056                   </p> 
    2057                   <div id="eelv-newsletter-search-list"> 
    2058                       <?php $this->single_included_wizard($my_temp, true, $prechoch_rs); ?> 
    2059                   </div> 
    2060                 </td> 
    2061             </tr> 
    2062         </table> 
    2063     <?php 
     1619        include($this->lettreinfo_plugin_path.'views/admin/settings.php'); 
    20641620    } 
    20651621 
     
    21411697     * 
    21421698     */ 
    2143     function newsletter_admin_wizard() { ?> 
    2144     <div class="all"> 
    2145         <?php _e('You can get answers to a simple question by inserting some answer links like "Do you like this plugin ? click here for yes, click here fo no", anwsers will be stored in the archive page.','eelv-newsletter'); ?> 
    2146     <p> 
    2147         <label><?php _e('Answer value:','eelv-newsletter'); ?> 
    2148         <input type="text" id="newsletter_wizard_rep" value="<?php _e('Yes','eelv-newsletter'); ?>" data-att="rep"> 
    2149         </label> 
    2150     </p> 
    2151     <p> 
    2152         <label><?php _e('Displayed text:','eelv-newsletter'); ?> 
    2153         <input type="text" id="newsletter_wizard_val" value="<?php _e('Click here for yes','eelv-newsletter'); ?>" data-att="val"> 
    2154         </label> 
    2155     </p> 
    2156     </div> 
    2157     <div id="newsletter_wizard_shortcode">[nl_reply_link rep="<?php _e('Yes','eelv-newsletter'); ?>" val="<?php _e('Click here for yes','eelv-newsletter'); ?>"]</div> 
    2158     <a class="button" id="newsletter_wizard_submit"><?php _e('Insert answer link','eelv-newsletter'); ?></a> 
    2159         <?php 
     1699    function newsletter_admin_wizard() { 
     1700        include($this->lettreinfo_plugin_path.'views/admin/wizard.php'); 
    21601701    } 
    21611702 
     
    21651706     */ 
    21661707    function newsletter_archive_admin() { 
    2167     global $wpdb; 
    2168     $post_id = get_the_ID(); //$_GET['id']; 
    2169     $my_temp=get_post_meta($post_id, 'nl_template',true); 
    2170     $sujet = get_post_meta($post_id, 'sujet', true); 
    2171     $expediteur = get_post_meta($post_id, 'expediteur', true); 
    2172     $reponse = get_post_meta($post_id, 'reponse' ,true); 
    2173     $lastsend = get_post_meta($post_id, 'lastsend',true); 
    2174     // $post = get_post( $post_id); 
    2175     $template =  get_post(get_post_meta($post_id,'nl_template',true)); 
    2176     $content=apply_filters('the_content',$this->nl_content($post_id ));   ?> 
    2177     <div id="eelv_news_prevlink" style="display:none;"> 
    2178     <p><?php _e('This is only a preview link', 'eelv-newsletter' ); ?></a></p> 
    2179     </div> 
    2180  
    2181     <h2><?php echo $sujet; ?></h2> 
    2182     <?php if(!$template){ ?> 
    2183     <?php _e('The skin has gone away ! Do you want to apply another one ?', 'eelv-newsletter' ); ?> 
    2184     <select name="newslettertemplate"> 
    2185       <option></option> 
    2186       <?php 
    2187       $querystr = "SELECT `ID` FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'newsletter_template' ORDER BY `post_title`"; 
    2188       $IDS = $wpdb->get_col($querystr); 
    2189       $templates_nb = sizeof($IDS); 
    2190       if($templates_nb>0){ 
    2191         $my_temp=get_post_meta(get_the_ID(), 'nl_template',true); 
    2192         foreach($IDS as $item_id){ 
    2193             if($my_temp==NULL){ 
    2194               add_post_meta(get_the_ID(), 'nl_template', $item_id); 
    2195               $my_temp=$item_id; 
    2196             } 
    2197         ?> 
    2198         <option value='<?php echo $item_id;?>'><?php echo get_the_title($item_id);?></option> 
    2199         <?php } 
    2200       } 
    2201       ?></select> 
    2202     <?php } ?> 
    2203     <p><?php _e('Sent by','eelv-newsletter'); ?> : <?php echo $expediteur; ?> (<?php echo $reponse; ?>)</p> 
    2204     <p><?php _e('Last sent','eelv-newsletter'); ?> : <?php echo $lastsend; ?></p> 
    2205     <div><?php echo $content; ?></div> 
    2206     <?php 
     1708        include($this->lettreinfo_plugin_path.'views/archive/archive-preview.php'); 
    22071709    } 
    22081710 
     
    22281730     */ 
    22291731    function custom_box_dest() { 
    2230     global $wpdb; 
    2231     $post_id = isset($_POST['post_id']) ? $_POST['post_id'] : get_the_ID(); 
    2232     $sent = get_post_meta($post_id, 'sentmails',true); 
    2233         $nl_spy=get_post_meta($post_id, 'nl_spy',true); 
    2234         $lus = abs(substr_count($sent,':3')); 
    2235         $tot = abs(substr_count($sent,',')); 
    2236         $prog = $tot>0?round($lus/$tot*100):0; 
    2237  
    2238     ?> 
    2239         <p> 
    2240             <?php _e('Reading progression:','eelv-newsletter'); ?> 
    2241             <table class="widefat"><tr><td> 
    2242                     <div class="button button-default" style="overflow:visible; white-space:nowrap; width:<?php echo $prog; ?>%;"> 
    2243                         <strong><?php echo $prog; ?>%</strong> 
    2244                         ( <?php echo $lus; ?> / <?php echo $tot; ?> ) 
    2245                     </div> 
    2246                 </td></tr></table> 
    2247         </p> 
    2248         <?php  do_action('eelv_newsletter_custom_box_dest', $post_id); ?> 
    2249     <p><ul id="eelv_nl_sentlist"><?php 
    2250     echo '<li data-email="'.str_replace( 
    2251       array(',', ':', 
    2252       ), 
    2253       array('"></li><li data-email="', 
    2254         '" class="dashicons-before dashicons-email eelv_nl_sent eelv_nl_status_', 
    2255       ), 
    2256       $sent).'">&nbsp;</li>'; 
    2257  
    2258     ?></ul> 
    2259     <?php if($nl_spy==0) _e('No reading-tracking','eelv-newsletter'); ?> 
    2260     </p> 
    2261       <?php 
     1732        include($this->lettreinfo_plugin_path.'views/archive/archive-receipients.php'); 
    22621733    } 
    22631734 
     
    22671738     */ 
    22681739    function progress_queue($post_id){ 
    2269         $dest = get_post_meta($post_id, 'destinataires',true); 
    2270         $sent = get_post_meta($post_id, 'sentmails',true); 
    2271         $tot_dest = abs(substr_count($dest, ',')); 
    2272         $tot_sent = abs(substr_count($sent, ',')); 
    2273         $tot = $tot_dest+$tot_sent; 
    2274         $prog = $tot>0 ? round($tot_sent/$tot*100) : 0; 
    2275         ?> 
    2276         <p> 
    2277             <?php _e('Sending progression:','eelv-newsletter'); ?> 
    2278         <table class="widefat"><tr><td> 
    2279                     <div class="button button-default" style="overflow:visible; white-space:nowrap; width:<?php echo $prog; ?>%;"> 
    2280                         <strong><?php echo $prog; ?>%</strong> 
    2281                         ( <?php echo $tot_sent; ?> / <?php echo $tot; ?> ) 
    2282                     </div> 
    2283                 </td></tr></table> 
    2284         </p> 
    2285         <?php 
     1740        include($this->lettreinfo_plugin_path.'views/archive/archive-queue-progress.php'); 
    22861741    } 
    22871742 
     
    22911746     */ 
    22921747    function custom_box_queue() { 
    2293     global $wpdb; 
    2294     $post_id = isset($_POST['post_id']) ? $_POST['post_id'] : get_the_ID(); 
     1748        global $wpdb; 
     1749        $post_id = isset($_POST['post_id']) ? $_POST['post_id'] : get_the_ID(); 
    22951750        $post=get_post($post_id); 
    2296     $send_per_burst = abs(get_option( 'newsletter_send_per_burst_cron',50)); 
    2297     if($send_per_burst==0){ 
    2298         $send_per_burst=50; 
    2299     } 
    2300     $burst_interval = abs(get_option( 'newsletter_burst_interval_cron',5)); 
    2301     if($burst_interval==0){ 
    2302         $burst_interval=5; 
    2303     } 
     1751        $send_per_burst = abs(get_option( 'newsletter_send_per_burst_cron',50)); 
     1752        if($send_per_burst==0){ 
     1753            $send_per_burst=50; 
     1754        } 
     1755        $burst_interval = abs(get_option( 'newsletter_burst_interval_cron',5)); 
     1756        if($burst_interval==0){ 
     1757            $burst_interval=5; 
     1758        } 
    23041759        $dest = get_post_meta($post_id, 'destinataires',true); 
    2305     if(!empty($dest)){ 
    2306             ?> 
    2307         <p> 
    2308             <?php printf(__('It is %s','eelv-newsletter'), date_i18n(get_option('date_format').' '.get_option('time_format'), current_time('timestamp', 0))); ?>, 
    2309             <?php printf(__('Registered at: %s','eelv-newsletter'), date_i18n(get_option('date_format').' '.get_option('time_format'), strtotime($post->post_date))); ?> 
    2310         </p> 
    2311         <?php 
    2312             $this->autosend(true); 
    2313             $dest = get_post_meta($post_id, 'destinataires',true); 
    2314             $this->progress_queue($post_id); 
    2315         ?> 
    2316         <p> 
    2317             <?php printf(__('Next automatic burst at: %s','eelv-newsletter'), date_i18n(get_option('date_format').' '.get_option('time_format'), wp_next_scheduled('eelv_newsletter_cron_tasks'))); ?> 
    2318             (<?php echo $send_per_burst; ?>) 
    2319         </p> 
    2320         <p id="eelv-newsletter-archive-dests"><?php echo str_replace(',', ', ', substr($dest, 0, 1000)).(strlen($dest)>1000?'...':''); ?></p> 
    2321     <?php 
     1760        if(!empty($dest)){ 
     1761            include($this->lettreinfo_plugin_path.'views/archive/archive-queue-list.php'); 
    23221762        } 
    23231763        else{ 
     
    23301770     */ 
    23311771    function custom_box_answers() { 
    2332     $nl =  get_post(get_the_ID()); 
    2333     $content=$nl->post_content; 
    2334     if(strpos($content,'[nl_reply_link')>-1){ 
    2335         $answers = get_post_meta(get_the_ID(),'eelv_nl_reply'); 
    2336         ?> 
    2337         <table class="sortable widefat"> 
    2338           <thead> 
    2339               <tr> 
    2340                   <td><?php _e('E-mail','eelv-newsletter')?></td> 
    2341                   <td><?php _e('Answer','eelv-newsletter')?></td> 
    2342                   <td><?php _e('Date','eelv-newsletter')?></td> 
    2343               </tr> 
    2344           </thead> 
    2345           <tboby> 
    2346         <?php 
    2347         if(sizeof($answers)>0){ 
    2348         foreach($answers as $answer){ if(is_array($val = @unserialize($answer))){ ?> 
    2349           <tr> 
    2350               <td> 
    2351                   <?php echo $val['email']; ?> 
    2352               </td> 
    2353               <td> 
    2354                   <?php echo $val['val']; ?> 
    2355               </td> 
    2356               <td> 
    2357                   <?php echo date_i18n(get_option('date_format') ,$val['date']); ?> 
    2358                   <?php echo date('H:i:s',$val['date']); ?> 
    2359               </td> 
    2360           </tr> 
    2361        <?php }} 
    2362       } 
    2363         else{ ?> 
    2364           <tr><td colspan="3"><?php _e( "No answer", 'eelv-newsletter' ); ?></td></tr> 
    2365         <?php } ?> 
    2366         </tboby></table> 
    2367     <?php  } 
    2368     else{ 
    2369           _e( "No question", 'eelv-newsletter' ); 
    2370     } 
     1772        include($this->lettreinfo_plugin_path.'views/archive/archive-answers.php'); 
    23711773    } 
    23721774 
     
    23761778     */ 
    23771779    function custom_box_news_transform(){ 
    2378     global $wpdb; 
    2379     $querystr = "SELECT `ID` FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'newsletter_template' ORDER BY `post_title`"; 
    2380     $IDS = $wpdb->get_col($querystr); 
    2381     $templates_nb = sizeof($IDS); 
    2382     if($templates_nb>0){ ?> 
    2383         <input type="hidden" id="eelv_nl_convert_link" value="edit.php?post_type=newsletter&page=news_envoi&post=<?php echo get_the_ID()?>"/> 
    2384         <select name="eelv_nl_convert_id" id="eelv_nl_convert_id"> 
    2385           <?php foreach($IDS as $item_id){ ?> 
    2386               <option value="<?php echo $item_id; ?>"><?php echo get_the_title($item_id);?></option> 
    2387           <?php } ?> 
    2388         </select> 
    2389         <hr/> 
    2390         <p><label for="eelv_nl_convert_title"><input type="checkbox" id="eelv_nl_convert_title"  value="1"/> <?php _e("Add title to content",'eelv-newsletter'); ?></label></p> 
    2391         <p><label for="eelv_nl_convert_share"><input type="checkbox" id="eelv_nl_convert_share"  value="1"/> <?php _e("Add share links",'eelv-newsletter'); ?></label></p> 
    2392         <p><a id="eelv_nl_convert_a" class="button"> <?php _e("Preview and send",'eelv-newsletter'); ?></a></p> 
    2393     <?php }else{ 
    2394         _e("No skin available",'eelv-newsletter'); 
    2395     } 
     1780        global $wpdb; 
     1781        $querystr = "SELECT `ID` FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'newsletter_template' ORDER BY `post_title`"; 
     1782        $IDS = $wpdb->get_col($querystr); 
     1783        $templates_nb = sizeof($IDS); 
     1784        if($templates_nb>0){ ?> 
     1785            <input type="hidden" id="eelv_nl_convert_link" value="edit.php?post_type=newsletter&page=news_envoi&post=<?php echo get_the_ID()?>"/> 
     1786            <select name="eelv_nl_convert_id" id="eelv_nl_convert_id"> 
     1787              <?php foreach($IDS as $item_id){ ?> 
     1788                  <option value="<?php echo $item_id; ?>"><?php echo get_the_title($item_id);?></option> 
     1789              <?php } ?> 
     1790            </select> 
     1791            <hr/> 
     1792            <p><label for="eelv_nl_convert_title"><input type="checkbox" id="eelv_nl_convert_title"  value="1"/> <?php _e("Add title to content",'eelv-newsletter'); ?></label></p> 
     1793            <p><label for="eelv_nl_convert_share"><input type="checkbox" id="eelv_nl_convert_share"  value="1"/> <?php _e("Add share links",'eelv-newsletter'); ?></label></p> 
     1794            <p><a id="eelv_nl_convert_a" class="button"> <?php _e("Preview and send",'eelv-newsletter'); ?></a></p> 
     1795        <?php } 
     1796        else{ 
     1797            _e("No skin available",'eelv-newsletter'); 
     1798        } 
    23961799    } 
    23971800 
     
    24001803     */ 
    24011804    function template_default_content(){ 
    2402     $post_id = get_the_ID(); 
    2403     $default_content = get_post_meta($post_id, 'default_content',true); 
    2404     _e('This content will be loaded when you\'ll choose this template for editing a newsletter.','eelv-newsletter'); 
    2405     wp_editor( $default_content, 'default_content' ); 
     1805        $post_id = get_the_ID(); 
     1806        $default_content = get_post_meta($post_id, 'default_content',true); 
     1807        _e('This content will be loaded when you\'ll choose this template for editing a newsletter.','eelv-newsletter'); 
     1808        wp_editor( $default_content, 'default_content' ); 
    24061809    } 
    24071810 
     
    24101813     */ 
    24111814    function template_item_style(){ 
    2412     $post_id = get_the_ID(); 
    2413     $item_style=shortcode_atts($this->default_item_style, get_post_meta($post_id, 'item_style',true)); 
    2414     ?> 
    2415      <div id="newsletter_item_post_style"> 
    2416         <div> 
    2417         <label> 
    2418             <?php _e('Thumbnail size','eelv-newsletter')?> : 
    2419             <select data-type="t_size" name="item_style[t_size]"> 
    2420             <option value="thumbnail" <?php echo ($item_style['t_size']=='thumbnail'?'selected':''); ?>><?php _e('Thumbnail','eelv-newsletter'); ?></option> 
    2421             <option value="medium" <?php echo ($item_style['t_size']=='medium'?'selected':''); ?>><?php _e('Medium','eelv-newsletter'); ?></option> 
    2422             <option value="large" <?php echo ($item_style['t_size']=='large'?'selected':''); ?>><?php _e('Large','eelv-newsletter'); ?></option> 
    2423             <option value="full" <?php echo ($item_style['t_size']=='full'?'selected':''); ?>><?php _e('Full','eelv-newsletter'); ?></option> 
    2424             </select> 
    2425         </label> 
    2426         </div> 
    2427     <?php foreach ($item_style as $k => $v): ?> 
    2428         <?php if($k!='t_size'): ?> 
    2429     <div> 
    2430         <label> 
    2431         <?php echo $this->default_item_style_trads[$k]?> 
    2432         <input type="text" data-type="<?php echo $k; ?>" name="item_style[<?php echo $k; ?>]" value="<?php echo $v; ?>" class="widefat"> 
    2433         </label> 
    2434     </div> 
    2435     <?php endif; ?> 
    2436         <?php endforeach; ?> 
    2437      </div> 
    2438      <h3><?php _e( "Preview", 'eelv-newsletter' ); ?></h3> 
    2439      <div id="newsletter_item_post_preview"> 
    2440     <?php $pst = new WP_Query('posts_per_page=5');?> 
    2441     <?php while($pst->have_posts()): ?> 
    2442              <?php $pst->the_post(); ?> 
    2443         <div class="nl_preview"> 
    2444            <a href='#' class="nl_preview"> 
    2445            <?php the_post_thumbnail($item_style['t_size'],array('class'=>'nl_preview')); ?> 
    2446            <h3 class="nl_preview"><?php the_title(); ?></h3></a> 
    2447            <p class="nl_preview"><?php echo substr(strip_tags(get_the_content()),0,$item_style['excerpt_length']);?>...</p></a> 
    2448            <a href='#' class="readmore"><?php echo $item_style['readmore_content']?></a> 
    2449        </div> 
    2450     <?php endwhile; ?> 
    2451     </div> 
    2452      <?php 
     1815        include($this->lettreinfo_plugin_path.'views/skins/skin-edit.php'); 
    24531816    } 
    24541817 
     
    24581821     * @global type $wpdb 
    24591822     */ 
    2460     function checkdb(){  ?> 
    2461       <div class="wrap"> 
    2462         <div id="icon-edit" class="icon32 icon32-posts-newsletter"><br/></div> 
    2463         <h2><?php _e('Newsletter', 'eelv-newsletter' ); ?></h2> 
    2464         <table class="widefat" style="margin-top: 1em;"> 
    2465           <thead> 
    2466             <tr> 
    2467               <th scope="col" colspan="2"><?php _e('Reload parameters', 'eelv-newsletter' ); ?></th> 
    2468             </tr> 
    2469           </thead> 
    2470           <tbody> 
    2471             <tr> 
    2472               <td> 
    2473                 <?php 
    2474             global $wpdb; 
    2475                       // GROUPE NON CLASSE 
    2476                       $ret_nc =  $wpdb->get_results("SELECT * FROM `$this->newsletter_tb_name` WHERE `id`='1'");?> 
    2477                     <h3><?php _e('Address book','eelv-newsletter'); ?></h3> 
    2478                     <p><?php _e('Uncategorized group :','eelv-newsletter'); ?> 
    2479                         <?php if(is_array($ret_nc) && sizeof($ret_nc)>0){ 
    2480                            $query="UPDATE $this->newsletter_tb_name SET `nom`='".__("Uncategorized",'eelv-newsletter')."',`email`='',`parent`='0' WHERE `id`='1'"; 
    2481                            _e('ok','eelv-newsletter'); 
    2482                          } 
    2483                          else{ 
    2484                            $query="INSERT INTO $this->newsletter_tb_name (`id`,`nom`) VALUES ('1','".__("Uncategorized",'eelv-newsletter')."')"; 
    2485                            _e('Created','eelv-newsletter'); 
    2486                          } 
    2487                        ?> 
    2488                     </p> 
    2489                     <?php 
    2490  
    2491                       $wpdb->query($query); 
    2492                       // GROUPE RED LIST 
    2493                       echo'<p>'.__('Red list group :','eelv-newsletter').' '; 
    2494                       $ret_red =  $wpdb->get_results("SELECT * FROM `$this->newsletter_tb_name` WHERE `id`='2'"); 
    2495                       if(is_array($ret_red) && sizeof($ret_red)>0){ 
    2496                         $query="UPDATE $this->newsletter_tb_name SET `nom`='".__("Red list",'eelv-newsletter')."',`email`='',`parent`='0' WHERE `id`='2'"; 
    2497                         _e('ok','eelv-newsletter'); 
    2498                       } 
    2499                       else{ 
    2500                         $query="INSERT INTO $this->newsletter_tb_name (`id`,`nom`) VALUES ('2','".__("Red list",'eelv-newsletter')."')"; 
    2501                         _e('Created','eelv-newsletter'); 
    2502                       } 
    2503                       echo'  </p>'; 
    2504                       $wpdb->query($query); 
    2505                       // THEMES PAR DEFAUT 
    2506                       echo'<h3>'.__('Default skins','eelv-newsletter').'</h3>'; 
    2507                       foreach($this->eelv_nl_default_themes as $check_theme=>$check_content){ 
    2508                         echo'<p><b>'.$check_theme.'</b> : '; 
    2509                         $req="SELECT * FROM $wpdb->posts WHERE post_type = 'newsletter_template' AND `post_status`='publish' AND `post_title`='$check_theme'"; 
    2510                         $ret =  $wpdb->get_results($req); 
    2511                         if(is_array($ret) && sizeof($ret)>0){ 
    2512                           if(sizeof($ret)>1){ 
    2513                             $wpdb->query("DELETE FROM `$wpdb->posts` WHERE `post_type`='newsletter_template' AND `post_status`='publish'  AND `post_title`='$check_theme'"); 
    2514                           } 
    2515                           $my_postb = array( 
    2516                             'ID' => $ret[0]->ID, 
    2517                             'post_content' => $check_content 
    2518                           ); 
    2519                           wp_update_post( $my_postb ); 
    2520                           echo'mise à jour ok'; 
    2521                         } 
    2522                         else{ 
    2523                           $my_posta = array( 
    2524                             'post_type' => 'newsletter_template', 
    2525                             'post_title' => $check_theme, 
    2526                             'post_content' => $check_content, 
    2527                             'post_status' => 'publish' 
    2528                           ); 
    2529                           wp_insert_post( $my_posta ); 
    2530                           echo'ajout ok'; 
    2531                         } 
    2532                         echo'</p>'; 
    2533                       } ?> 
    2534               </td></tr></tbody></table></div> 
    2535       <?php 
     1823    function checkdb(){ 
     1824        include($this->lettreinfo_plugin_path.'views/admin/check-db.php'); 
    25361825    } 
    25371826 
     
    25431832     */ 
    25441833    function getuserinfos($courriel){ 
    2545     global $wpdb; 
    2546     $destin=array( 
    2547                 'ID'=>0, 
    2548         'name'=>'', 
    2549         'login'=>'' 
    2550     ); 
    2551     $user = $wpdb->get_results($wpdb->prepare( 
    2552     "SELECT `ID`,`display_name`,`user_login` FROM ".$wpdb->base_prefix."users WHERE `user_email`='%s'", 
    2553     $courriel 
    2554     )); 
    2555  
    2556     if($user){ 
    2557         $user=$user[0]; 
    2558         $destin['ID']=$user->ID; 
    2559         $destin['name']=$user->display_name; 
    2560         $destin['login']=$user->user_login; 
    2561     } 
    2562     else{ 
    2563         $ret = $wpdb->get_results("SELECT * FROM `$this->newsletter_tb_name` WHERE `email`='".str_replace("'","''",$courriel)."'"); 
    2564         if(is_array($ret) && sizeof($ret)>0){ 
    2565         $destin['name']=$ret[0]->nom; 
    2566         $destin['login']=''; 
    2567         } 
    2568     } 
    2569     return $destin; 
     1834        global $wpdb; 
     1835        $destin=array( 
     1836                    'ID'=>0, 
     1837            'name'=>'', 
     1838            'login'=>'' 
     1839        ); 
     1840        $user = $wpdb->get_results($wpdb->prepare( 
     1841        "SELECT `ID`,`display_name`,`user_login` FROM ".$wpdb->base_prefix."users WHERE `user_email`='%s'", 
     1842        $courriel 
     1843        )); 
     1844 
     1845        if($user){ 
     1846            $user=$user[0]; 
     1847            $destin['ID']=$user->ID; 
     1848            $destin['name']=$user->display_name; 
     1849            $destin['login']=$user->user_login; 
     1850        } 
     1851        else{ 
     1852            $ret = $wpdb->get_results("SELECT * FROM `$this->newsletter_tb_name` WHERE `email`='".str_replace("'","''",$courriel)."'"); 
     1853            if(is_array($ret) && sizeof($ret)>0){ 
     1854            $destin['name']=$ret[0]->nom; 
     1855            $destin['login']=''; 
     1856            } 
     1857        } 
     1858        return $destin; 
    25701859    } 
    25711860    ///////////////////////////////////// SEMI CRON AUTO SEND 
     
    25851874            $burst_interval=5; 
    25861875        } 
    2587     $schedules['newsly'] = array( 
    2588         'interval' => $burst_interval*60, 
    2589         'display' => __( 'Newsletter burst interval setting', 'eelv-newsletter' ) 
    2590     ); 
    2591     return $schedules; 
     1876        $schedules['newsly'] = array( 
     1877            'interval' => $burst_interval*60, 
     1878            'display' => __( 'Newsletter burst interval setting', 'eelv-newsletter' ) 
     1879        ); 
     1880        return $schedules; 
    25921881    } 
    25931882 
     
    28642153     */ 
    28652154    function newsletter_network_configuration(){ 
    2866       if( $_REQUEST[ 'type' ] == 'update' ) { 
    2867         update_site_option( 'newsletter_admin_surveillance', $_REQUEST['newsletter_admin_surveillance'] ); 
     2155      if( filter_input(INPUT_POST, 'type')=='update') { 
     2156        update_site_option( 'newsletter_admin_surveillance', filter_input(INPUT_POST, 'newsletter_admin_surveillance')); 
     2157        wp_safe_redirect(admin_url('/network/settings.php?page=newsletter_network_configuration&updated=yes')); 
     2158        exit; 
     2159      } 
     2160      if( filter_input(INPUT_GET, 'updated')) { 
    28682161        ?> 
    2869     <div class="updated"><p><strong><?php _e('Options saved', 'eelv-newsletter' ); ?></strong></p></div> 
    2870     <?php 
     2162        <div class="updated"><p><strong><?php _e('Options saved', 'eelv-newsletter' ); ?></strong></p></div> 
     2163        <?php 
    28712164      } 
    28722165      $this->newsletter_admin_surveillance = get_site_option( 'newsletter_admin_surveillance' ); 
    2873       ?> 
    2874       <div class="wrap"> 
    2875         <div id="icon-edit" class="icon32 icon32-posts-newsletter"><br/></div> 
    2876         <h2><?php echo _e('Newsletter', 'eelv-newsletter' )?></h2> 
    2877         <form name="typeSite" method="post" action="<?php echo str_replace( '%7E', '~', $_SERVER['REQUEST_URI']); ?>"> 
    2878           <input type="hidden" name="type" value="update"> 
    2879           <table class="widefat" style="margin-top: 1em;"> 
    2880             <thead> 
    2881               <tr> 
    2882                 <th scope="col" colspan="2"><?php echo  __( 'Configuration ', 'menu-config' ); ?></th> 
    2883               </tr> 
    2884             </thead> 
    2885             <tbody> 
    2886               <tr> 
    2887                 <td width="30%"> 
    2888                   <label for="newsletter_default_exp"><?php echo _e('Send a copy of each burst of shipments to:', 'eelv-newsletter' )?> :</label> 
    2889                 </td><td> 
    2890                 <input  type="text" name="newsletter_admin_surveillance"  size="60"  id="newsletter_admin_surveillance"  value="<?php echo $this->newsletter_admin_surveillance; ?>" class="wide"> 
    2891                 </td> 
    2892               </tr> 
    2893               <tr> 
    2894                 <td colspan="2"> 
    2895                   <p class="submit"> 
    2896                     <input type="submit" name="Submit" value="<?php _e('Save', 'eelv-newsletter' ); ?>" /> 
    2897                   </p> 
    2898                 </td> 
    2899               </tr> 
    2900             </tbody> 
    2901           </table> 
    2902         </form> 
    2903       </div> 
    2904       <?php 
     2166      include($this->lettreinfo_plugin_path.'views/admin/network-settings.php'); 
    29052167    } 
    29062168 
     
    29102172    function add_alert() { 
    29112173        $cu = wp_get_current_user(); 
    2912     if ($cu->has_cap('manage_options') && get_option( 'newsletter_options_version')!=$this->eelv_newsletter_options_version && !is_network_admin()) { 
    2913       ?> 
     2174        if ($cu->has_cap('manage_options') && get_option( 'newsletter_options_version')!=$this->eelv_newsletter_options_version && !is_network_admin()) { 
     2175        ?> 
    29142176        <div class="updated"><p><a href="edit.php?post_type=newsletter&page=settings_page"> 
    29152177            <?php _e('New options are available for your Newsletter, please go to the configuration page', 'eelv-newsletter' ); ?></a></p></div> 
     
    29242186     */ 
    29252187    function settings_page() { 
    2926     global $wpdb; 
    2927  
    2928     if(\filter_input(INPUT_POST, 'type', FILTER_SANITIZE_STRING) == 'update' ) { 
    2929         if (!wp_verify_nonce(\filter_input(INPUT_POST, 'newsletter_update_options', FILTER_SANITIZE_STRING), 'newsletter_update_options')) { 
    2930         wp_die(__('Security error', 'eelv-newsletter')); 
    2931         } 
    2932     update_option( 'newsletter_default_exp', \filter_input(INPUT_POST, 'newsletter_default_exp', FILTER_SANITIZE_STRING)); 
    2933     update_option( 'newsletter_default_mel', \filter_input(INPUT_POST, 'newsletter_default_mel', FILTER_SANITIZE_EMAIL)); 
    2934     update_option( 'newsletter_desinsc_url', \filter_input(INPUT_POST, 'newsletter_desinsc_url', FILTER_SANITIZE_URL)); 
    2935     update_option( 'newsletter_reply_url', \filter_input(INPUT_POST, 'newsletter_reply_url', FILTER_SANITIZE_URL)); 
    2936     update_option( 'newsletter_precoch_rs', \filter_input(INPUT_POST, 'newsletter_precoch_rs', FILTER_SANITIZE_NUMBER_INT)); 
    2937     update_option( 'newsletter_spy_text',\filter_input(INPUT_POST, 'newsletter_spy_text', FILTER_SANITIZE_STRING)); 
    2938     update_option( 'newsletter_mime_type', \filter_input(INPUT_POST, 'newsletter_mime_type', FILTER_SANITIZE_STRING)); 
    2939     update_option( 'newsletter_eol', \filter_input(INPUT_POST, 'newsletter_eol', FILTER_SANITIZE_STRING)); 
    2940     update_option( 'newsletter_send_per_burst_cron', \filter_input(INPUT_POST, 'newsletter_send_per_burst_cron', FILTER_SANITIZE_NUMBER_INT)); 
    2941     update_option( 'newsletter_burst_interval_cron', \filter_input(INPUT_POST, 'newsletter_burst_interval_cron', FILTER_SANITIZE_NUMBER_INT)); 
    2942     update_option( 'newsletter_send_by', \filter_input(INPUT_POST, 'newsletter_send_by', FILTER_SANITIZE_STRING)); 
    2943  
    2944     update_option( 'newsletter_msg', array( 
    2945         'sender'=>\filter_input(INPUT_POST, 'newsletter_msg_sender', FILTER_SANITIZE_EMAIL), 
    2946         'suscribe_title'=>\filter_input(INPUT_POST, 'newsletter_msg_suscribe_title', FILTER_SANITIZE_STRING), 
    2947         'suscribe'=>\filter_input(INPUT_POST, 'newsletter_msg_suscribe', FILTER_SANITIZE_STRING), 
    2948         'unsuscribe_title'=>\filter_input(INPUT_POST, 'newsletter_msg_unsuscribe_title', FILTER_SANITIZE_STRING), 
    2949         'unsuscribe'=>\filter_input(INPUT_POST, 'newsletter_msg_unsuscribe', FILTER_SANITIZE_STRING) 
    2950     )); 
    2951     //update_option( 'affichage_NL_hp', $_REQUEST['affichage_NL_hp'] ); 
    2952     ?> 
    2953     <div class="updated"><p><strong><?php _e('Options saved', 'eelv-newsletter' ); ?></strong></p></div> 
    2954     <?php 
    2955     } 
    2956     update_option( 'newsletter_options_version', $this->eelv_newsletter_options_version ); 
    2957     $default_exp = get_option( 'newsletter_default_exp' ); 
    2958     $default_mel = get_option( 'newsletter_default_mel' ); 
    2959     $desinsc_url = get_option( 'newsletter_desinsc_url' ); 
    2960     $reply_url = get_option( 'newsletter_reply_url' ); 
    2961     $precoch_rs = get_option( 'newsletter_precoch_rs' ); 
    2962     $spy_text = get_option( 'newsletter_spy_text' ,str_replace(array('http://','https://'),'',get_bloginfo('url'))); 
    2963     $mime_type = get_option( 'newsletter_mime_type' ); 
    2964     $send_by = get_option( 'newsletter_send_by', 'ajax' ); 
    2965     $eol = get_option( 'newsletter_eol' ); 
    2966     $send_per_burst = abs(get_option( 'newsletter_send_per_burst_cron',50)); 
    2967     if($send_per_burst==0){ 
    2968         $send_per_burst=50; 
    2969     } 
    2970     $burst_interval = abs(get_option( 'newsletter_burst_interval_cron',5)); 
    2971     if($burst_interval==0){ 
    2972         $burst_interval=5; 
    2973     } 
    2974  
    2975     if($spy_text==''){ 
    2976         $spy_text=str_replace(array('http://','https://'),'',get_bloginfo('url')); 
    2977     } 
    2978     //$affichage_NL_hp = get_option( 'affichage_NL_hp' ); 
    2979  
    2980     $this->newsletter_msg = get_option( 'newsletter_msg' ); 
    2981     $msg_sender = $this->newsletter_msg['sender']; 
    2982     $msg_suscribe_title = $this->newsletter_msg['suscribe_title']; 
    2983     $msg_suscribe = $this->newsletter_msg['suscribe']; 
    2984     $msg_unsuscribe_title = $this->newsletter_msg['unsuscribe_title']; 
    2985     $msg_unsuscribe = $this->newsletter_msg['unsuscribe']; 
    2986     ?> 
    2987  
    2988       <div class="wrap"> 
    2989         <div id="icon-edit" class="icon32 icon32-posts-newsletter"><br/></div> 
    2990         <h2><?php echo _e('Newsletter', 'eelv-newsletter' )?></h2> 
    2991         <form name="typeSite" method="post" action="<?php echo str_replace( '%7E', '~', $_SERVER['REQUEST_URI']); ?>"> 
    2992         <?php wp_nonce_field('newsletter_update_options', 'newsletter_update_options'); ?> 
    2993           <input type="hidden" name="type" value="update"> 
    2994           <input type="hidden" name="newsletter_options_version" value="<?php echo $this->eelv_newsletter_options_version; ?>"/> 
    2995           <table class="widefat" style="margin-top: 1em;"> 
    2996             <thead> 
    2997               <tr> 
    2998                 <th scope="col" colspan="2"><?php _e( 'Configuration ', 'menu-config' ); ?></th> 
    2999               </tr> 
    3000             </thead> 
    3001             <tbody> 
    3002               <tr> 
    3003                 <td width="30%"> 
    3004                   <label for="newsletter_default_exp"><?php _e('Default sender name:', 'eelv-newsletter' ); ?></label> 
    3005                 </td><td> 
    3006                 <input  type="text" name="newsletter_default_exp"  size="60"  id="newsletter_default_exp"  value="<?php echo $default_exp; ?>" class="wide"> 
    3007                 </td> 
    3008               </tr> 
    3009               <tr> 
    3010                 <td width="30%"> 
    3011                   <label for="newsletter_default_mel"><?php _e('Default reply address:', 'eelv-newsletter' ); ?></label> 
    3012                 </td><td> 
    3013                 <input  type="text" name="newsletter_default_mel"  size="60"  id="newsletter_default_mel"  value="<?php echo $default_mel; ?>" class="wide"> 
    3014                 </td> 
    3015               </tr> 
    3016               <tr> 
    3017                 <td width="30%"> 
    3018                     <label for="newsletter_desinsc_url"><?php _e('Unsubscribe page', 'eelv-newsletter' ); ?> :</label><br> 
    3019                     <small>[eelv_news_form]</small> 
    3020                 </td><td> 
    3021                     <input type="text" name="newsletter_desinsc_url" id="newsletter_desinsc_url" value="<?php echo $desinsc_url; ?>"> 
    3022                     <br/> 
    3023                     <legend> 
    3024                         <?php 
    3025                             echo ( 
    3026                                     !empty($desinsc_url) && is_object($page_choosen) ? 
    3027                                     '<a href="'.$desinsc_url.'" target="_blank">'.$desinsc_url.'</a> '.( 
    3028                                             strstr($page_choosen->post_content,'[eelv_news_form')? 
    3029                                             '<span class="dashicons dashicons-yes"></span>': 
    3030                                             '<br><div class="error"><span class="dashicons dashicons-dismiss"></span> <a href="post.php?post='.$page_choosen->ID.'&action=edit">'.__('It seems that the [eelv_news_form] is not present on the unsubscribe page. Click here to edit the page ', 'eelv-newsletter' ).'</a></div>' 
    3031                                             ) : 
    3032                                 '<a href="post-new.php?post_type=page&content=[eelv_news_form]&post_title='.__('Newsletter', 'eelv-newsletter' ).'">'.__('Create a new page with [eelv_news_form] shotcode', 'eelv-newsletter' ).'</a>'); 
    3033                         ?> 
    3034                     </legend> 
    3035                 </td> 
    3036               </tr> 
    3037               <tr> 
    3038                 <td width="30%"> 
    3039                     <label for="newsletter_reply_url"><?php _e('Reply page', 'eelv-newsletter' ); ?> :</label><br> 
    3040                     <small>[nl_reply_form]</small> 
    3041                 </td><td> 
    3042                     <input type="text" name="newsletter_reply_url" id="newsletter_reply_url" value="<?php echo $reply_url; ?>"> 
    3043                     <br/> 
    3044                     <legend><?php 
    3045                     echo ( 
    3046                             !empty($reply_url) && is_object($page_choosen) ? 
    3047                             '<a href="'.$reply_url.'" target="_blank">'.$reply_url.'</a>'.( 
    3048                                             strstr($page_choosen->post_content,'[nl_reply_form')? 
    3049                                             '<span class="dashicons dashicons-yes"></span>': 
    3050                                             '<br><div class="error"><span class="dashicons dashicons-dismiss"></span> <a href="post.php?post='.$page_choosen->ID.'&action=edit">'.__('It seems that the [nl_reply_form] is not present on the reply page. Click here to edit the page ', 'eelv-newsletter' ).'</a></div>' 
    3051                                             ) : 
    3052                         '<a href="post-new.php?post_type=page&content=[nl_reply_form]&post_title='.__('Newsletter answer page', 'eelv-newsletter' ).'">'.__('Create a new page with [nl_reply_form] shotcode', 'eelv-newsletter' ).'</a>'); 
    3053                     ?> 
    3054                     </legend> 
    3055                 </td> 
    3056               </tr> 
    3057               <tr> 
    3058                 <td width="30%"> 
    3059                   <label for="newsletter_precoch_rs"><?php _e('Pre-check "Share buttons"', 'eelv-newsletter' ); ?></label> 
    3060                 </td><td> 
    3061                 <input type="checkbox" name="newsletter_precoch_rs"  id="newsletter_precoch_rs"  value="1" <?php echo $precoch_rs==1?'checked':''; ?>> 
    3062                 </td> 
    3063               </tr> 
    3064               <tr> 
    3065                 <td width="30%"> 
    3066                   <label for="newsletter_spy_text"><?php _e('Spy image text:', 'eelv-newsletter' ); ?></label> 
    3067                 </td><td> 
    3068                 <input  type="text" name="newsletter_spy_text"  size="60"  id="newsletter_spy_text"  value="<?php echo $spy_text; ?>" class="wide"> 
    3069                 </td> 
    3070               </tr> 
    3071               <tr> 
    3072                 <td width="30%"> 
    3073                   <label for="newsletter_mime_type"><?php _e('MIME Type:', 'eelv-newsletter' ); ?></label> 
    3074                 </td><td> 
    3075                     <p><label><input type="radio" name="newsletter_mime_type" value="html_only" <?php echo ($mime_type=='html_only'?'checked':'')?>> <?php _e('HTML only', 'eelv-newsletter' ); ?></label></p> 
    3076                     <p><label><input type="radio" name="newsletter_mime_type"  value="html_txt" <?php echo ($mime_type=='html_txt'||$mime_type==''?'checked':'')?>> <?php _e('HTML + Plain text (better, but may cause troubles on some mac clients)', 'eelv-newsletter' ); ?> <?php _e('(default value)', 'eelv-newsletter' ); ?></label></p> 
    3077                 </td> 
    3078               </tr> 
    3079               <tr> 
    3080                 <td width="30%"> 
    3081                   <label for="newsletter_eol"><?php _e('End of line:', 'eelv-newsletter' ); ?></label> 
    3082                 </td><td> 
    3083                     <p><label><input type="radio" name="newsletter_eol" value="rn" <?php echo ($eol=='rn'||$eol==''?'checked':'')?>> \r\n <?php _e('(default value)', 'eelv-newsletter' ); ?></label></p> 
    3084                     <p><label><input type="radio" name="newsletter_eol"  value="n" <?php echo ($eol=='n'?'checked':'')?>> \n</label></p> 
    3085                     <p><?php _e('See the related PHP documentation', 'eelv-newsletter' ); ?> <a href="http://php.net/manual/fr/function.mail.php">http://php.net/manual/fr/function.mail.php</a></p> 
    3086                 </td> 
    3087               </tr> 
    3088           <tr> 
    3089                 <td width="30%"> 
    3090                   <label for="newsletter_send_by"><?php _e('Send over:', 'eelv-newsletter' ); ?></label> 
    3091                 </td><td> 
    3092           <?php if(is_super_admin()): ?> 
    3093             <select  name="newsletter_send_by" id="newsletter_send_by" class="wide"> 
    3094                         <option value="ajax" <?php selected($send_by, 'ajax', true); ?>><?php _e('Ajax', 'eelv-newsletter' ); ?></option> 
    3095                         <option value="cli" <?php selected($send_by, 'cli', true); ?>><?php _e('WP-CLI', 'eelv-newsletter' ); ?></option> 
    3096                     </select> 
    3097           <?php else: ?> 
    3098             <?php echo $send_by ?> 
    3099           <?php endif; ?> 
    3100         </td> 
    3101               </tr> 
    3102           <tr> 
    3103                 <td width="30%"> 
    3104                   <label for="newsletter_send_per_burst_cron"><?php _e('Send per burst:', 'eelv-newsletter' ); ?></label> 
    3105                 </td><td> 
    3106           <?php if(is_super_admin()): ?> 
    3107             <input  type="number" name="newsletter_send_per_burst_cron"  size="60"  id="newsletter_send_per_burst_cron"  value="<?php echo $send_per_burst; ?>" class="wide"> 
    3108           <?php else: ?> 
    3109             <?php echo $send_per_burst ?> 
    3110           <?php endif; ?> 
    3111         </td> 
    3112               </tr> 
    3113           <tr> 
    3114                 <td width="30%"> 
    3115                   <label for="newsletter_burst_interval_cron"><?php _e('Burst interval (minutes):', 'eelv-newsletter' ); ?></label> 
    3116                 </td><td> 
    3117           <?php if(is_super_admin()): ?> 
    3118             <input  type="number" name="newsletter_burst_interval_cron"  size="60"  id="newsletter_burst_interval_cron"  value="<?php echo $burst_interval; ?>" class="wide"> 
    3119           <?php else: ?> 
    3120             <?php echo $burst_interval ?> 
    3121           <?php endif; ?> 
    3122         </td> 
    3123               </tr> 
    3124  
    3125  
    3126               </tbody> 
    3127               <thead> 
    3128               <tr><th colspan="2"><?php _e( 'Confirmation e-mails ', 'menu-config' ); ?></th></tr> 
    3129               </thead> 
    3130  
    3131               <tbody> 
    3132               <tr> 
    3133                 <td width="30%"> 
    3134                   <label for="newsletter_msg_sender"><?php _e('Sender email:', 'eelv-newsletter' ); ?></label> 
    3135                 </td><td> 
    3136                 <input  type="text" name="newsletter_msg_sender"  size="60"  id="newsletter_msg_sender"  value="<?php echo $msg_sender; ?>" class="wide"> 
    3137                 </td> 
    3138               </tr> 
    3139               <tr> 
    3140                 <td width="30%"> 
    3141                   <label for="newsletter_msg_suscribe_title"><?php _e('Subscribe subject:', 'eelv-newsletter' ); ?></label> 
    3142                 </td><td> 
    3143                 <input  type="text" name="newsletter_msg_suscribe_title"  size="60"  id="newsletter_msg_suscribe_title"  value="<?php echo $msg_suscribe_title; ?>" class="wide"> 
    3144                 </td> 
    3145               </tr> 
    3146               <tr> 
    3147                 <td width="30%"> 
    3148                   <label for="newsletter_msg_suscribe"><?php _e('Subscribe Message:', 'eelv-newsletter' ); ?></label> 
    3149                 </td><td> 
    3150                 <textarea  name="newsletter_msg_suscribe" id="newsletter_msg_suscribe"><?php echo $msg_suscribe;?></textarea> 
    3151                 </td> 
    3152               </tr> 
    3153               <tr> 
    3154                 <td width="30%"> 
    3155                   <label for="newsletter_msg_unsuscribe_title"><?php _e('Unsubscribe subject:', 'eelv-newsletter' ); ?></label> 
    3156                 </td><td> 
    3157                 <input  type="text" name="newsletter_msg_unsuscribe_title"  size="60"  id="newsletter_msg_unsuscribe_title"  value="<?php echo $msg_unsuscribe_title; ?>" class="wide"> 
    3158                 </td> 
    3159               </tr> 
    3160               <tr> 
    3161                 <td width="30%"> 
    3162                   <label for="newsletter_msg_unsuscribe"><?php _e('Unsubscribe message:', 'eelv-newsletter' ); ?></label> 
    3163                 </td><td> 
    3164                 <textarea  name="newsletter_msg_unsuscribe" id="newsletter_msg_unsuscribe"><?php echo $msg_unsuscribe;?></textarea> 
    3165                 </td> 
    3166               </tr> 
    3167  
    3168                <tr> 
    3169                 <td colspan="2"> 
    3170                   <input type='submit' value='<?php _e('Save options', 'eelv-newsletter' ); ?>' class="button-primary"/> 
    3171                 </td> 
    3172               </tr> 
    3173             </tbody> 
    3174           </table> 
    3175           <table class="widefat" style="margin-top: 1em;"> 
    3176             <thead> 
    3177               <tr> 
    3178                 <th scope="col"><?php _e('Help', 'eelv-newsletter' ); ?></th> 
    3179               </tr> 
    3180             </thead> 
    3181             <tbody> 
    3182               <tr> 
    3183                 <td> 
    3184                   <p><a href="https://ecolosites.eelv.fr/tag/newsletter/" target="_blank">EELV Newsletter</a></p> 
    3185                   <p><?php _e('Shortcods used:', 'eelv-newsletter' ); ?></p> 
    3186                   <ul> 
    3187                     <li><?php _e('Insert subscription form in a page :', 'eelv-newsletter' ); ?><strong>[eelv_news_form]</strong></li> 
    3188                     <li><?php _e('Insert answer form in a page :','eelv-newsletter')?> <strong>[nl_reply_form]</strong></li> 
    3189                     <li><?php _e('Insert answer link in a newsletter :','eelv-newsletter')?> <strong>[nl_reply_link rep="rep" val="val"]</strong></li> 
    3190                   </ul> 
    3191                   <p><?php _e('Skins shortcodes', 'eelv-newsletter' ); ?></p> 
    3192                   <ul> 
    3193                     <li><?php _e('Insert newsletter content in a skin :', 'eelv-newsletter' ); ?><strong>[newsletter]</strong></li> 
    3194                     <li><?php _e('Insert an unsubscribe link :', 'eelv-newsletter' ); ?><strong>[desinsc_url]</strong></li> 
    3195                   </ul> 
    3196                   <p><?php _e('Legend of sending symbols:', 'eelv-newsletter' ); ?></p> 
    3197                   <ul id="eelv_nl_sentlist"> 
    3198                   <li class="dashicons-before dashicons-email eelv_nl_sent eelv_nl_status_-1"> <?php _e('Invalid email', 'eelv-newsletter' ); ?></li> 
    3199                   <li class="dashicons-before dashicons-email eelv_nl_sent eelv_nl_status_0"> <?php _e('Sending failed', 'eelv-newsletter' ); ?></li> 
    3200                   <li class="dashicons-before dashicons-email eelv_nl_sent eelv_nl_status_1"> <?php _e('Newsletter successfully sent', 'eelv-newsletter' ); ?></li> 
    3201                   <li class="dashicons-before dashicons-email eelv_nl_sent eelv_nl_status_2"> <?php _e('Address on the list of unsubscribed:', 'eelv-newsletter' ); ?></li> 
    3202                   <li class="dashicons-before dashicons-email eelv_nl_sent eelv_nl_status_3"> <?php _e('Email has been readen', 'eelv-newsletter' ); ?></li> 
    3203                   </ul> 
    3204                 </td></tr></tbody></table> 
    3205         </form> 
    3206       </div> 
    3207       <?php 
    3208  
    3209       $this->checkdb(); 
     2188        global $wpdb; 
     2189 
     2190        if(\filter_input(INPUT_POST, 'type', FILTER_SANITIZE_STRING) == 'update' ) { 
     2191            if (!wp_verify_nonce(\filter_input(INPUT_POST, 'newsletter_update_options', FILTER_SANITIZE_STRING), 'newsletter_update_options')) { 
     2192                wp_die(__('Security error', 'eelv-newsletter')); 
     2193            } 
     2194            update_option( 'newsletter_default_exp', \filter_input(INPUT_POST, 'newsletter_default_exp', FILTER_SANITIZE_STRING)); 
     2195            update_option( 'newsletter_default_mel', \filter_input(INPUT_POST, 'newsletter_default_mel', FILTER_SANITIZE_EMAIL)); 
     2196            update_option( 'newsletter_desinsc_url', \filter_input(INPUT_POST, 'newsletter_desinsc_url', FILTER_SANITIZE_URL)); 
     2197            update_option( 'newsletter_reply_url', \filter_input(INPUT_POST, 'newsletter_reply_url', FILTER_SANITIZE_URL)); 
     2198            update_option( 'newsletter_precoch_rs', \filter_input(INPUT_POST, 'newsletter_precoch_rs', FILTER_SANITIZE_NUMBER_INT)); 
     2199            update_option( 'newsletter_spy_text',\filter_input(INPUT_POST, 'newsletter_spy_text', FILTER_SANITIZE_STRING)); 
     2200            update_option( 'newsletter_mime_type', \filter_input(INPUT_POST, 'newsletter_mime_type', FILTER_SANITIZE_STRING)); 
     2201            update_option( 'newsletter_eol', \filter_input(INPUT_POST, 'newsletter_eol', FILTER_SANITIZE_STRING)); 
     2202            update_option( 'newsletter_send_per_burst_cron', \filter_input(INPUT_POST, 'newsletter_send_per_burst_cron', FILTER_SANITIZE_NUMBER_INT)); 
     2203            update_option( 'newsletter_burst_interval_cron', \filter_input(INPUT_POST, 'newsletter_burst_interval_cron', FILTER_SANITIZE_NUMBER_INT)); 
     2204            update_option( 'newsletter_send_by', \filter_input(INPUT_POST, 'newsletter_send_by', FILTER_SANITIZE_STRING)); 
     2205 
     2206            update_option( 'newsletter_msg', array( 
     2207                'sender'=>\filter_input(INPUT_POST, 'newsletter_msg_sender', FILTER_SANITIZE_EMAIL), 
     2208                'suscribe_title'=>\filter_input(INPUT_POST, 'newsletter_msg_suscribe_title', FILTER_SANITIZE_STRING), 
     2209                'suscribe'=>\filter_input(INPUT_POST, 'newsletter_msg_suscribe', FILTER_SANITIZE_STRING), 
     2210                'unsuscribe_title'=>\filter_input(INPUT_POST, 'newsletter_msg_unsuscribe_title', FILTER_SANITIZE_STRING), 
     2211                'unsuscribe'=>\filter_input(INPUT_POST, 'newsletter_msg_unsuscribe', FILTER_SANITIZE_STRING) 
     2212            )); 
     2213            //update_option( 'affichage_NL_hp', $_REQUEST['affichage_NL_hp'] ); 
     2214            ?> 
     2215            <div class="updated"><p><strong><?php _e('Options saved', 'eelv-newsletter' ); ?></strong></p></div> 
     2216            <?php 
     2217        } 
     2218        update_option( 'newsletter_options_version', $this->eelv_newsletter_options_version ); 
     2219        $default_exp = get_option( 'newsletter_default_exp' ); 
     2220        $default_mel = get_option( 'newsletter_default_mel' ); 
     2221        $desinsc_url = get_option( 'newsletter_desinsc_url' ); 
     2222        $reply_url = get_option( 'newsletter_reply_url' ); 
     2223        $precoch_rs = get_option( 'newsletter_precoch_rs' ); 
     2224        $spy_text = get_option( 'newsletter_spy_text' ,str_replace(array('http://','https://'),'',get_bloginfo('url'))); 
     2225        $mime_type = get_option( 'newsletter_mime_type' ); 
     2226        $send_by = get_option( 'newsletter_send_by', 'ajax' ); 
     2227        $eol = get_option( 'newsletter_eol' ); 
     2228        $send_per_burst = abs(get_option( 'newsletter_send_per_burst_cron',50)); 
     2229        if($send_per_burst==0){ 
     2230            $send_per_burst=50; 
     2231        } 
     2232        $burst_interval = abs(get_option( 'newsletter_burst_interval_cron',5)); 
     2233        if($burst_interval==0){ 
     2234            $burst_interval=5; 
     2235        } 
     2236 
     2237        if($spy_text==''){ 
     2238            $spy_text=str_replace(array('http://','https://'),'',get_bloginfo('url')); 
     2239        } 
     2240        //$affichage_NL_hp = get_option( 'affichage_NL_hp' ); 
     2241 
     2242        $this->newsletter_msg = get_option( 'newsletter_msg' ); 
     2243        $msg_sender = $this->newsletter_msg['sender']; 
     2244        $msg_suscribe_title = $this->newsletter_msg['suscribe_title']; 
     2245        $msg_suscribe = $this->newsletter_msg['suscribe']; 
     2246        $msg_unsuscribe_title = $this->newsletter_msg['unsuscribe_title']; 
     2247        $msg_unsuscribe = $this->newsletter_msg['unsuscribe']; 
     2248        include($this->lettreinfo_plugin_path.'views/admin/admin-settings.php'); 
     2249        $this->checkdb(); 
    32102250    } 
    32112251 
     
    32182258     */ 
    32192259    function locate_plugin_template($template_names, $load = false, $require_once = true ){ 
    3220       if ( !is_array($template_names) ) 
    3221       return ''; 
    3222       $located = ''; 
    3223       $this_plugin_dir = WP_PLUGIN_DIR.'/'.str_replace( basename( __FILE__), "", plugin_basename(__FILE__) ); 
    3224       foreach ( $template_names as $template_name ) { 
     2260        if ( !is_array($template_names) ) 
     2261            return ''; 
     2262 
     2263        $located = ''; 
     2264        $this_plugin_dir = WP_PLUGIN_DIR.'/'.str_replace( basename( __FILE__), "", plugin_basename(__FILE__) ); 
     2265        foreach ( $template_names as $template_name ) { 
    32252266            if ( !$template_name ) 
    32262267              continue; 
     
    32352276              break; 
    32362277            } 
    3237       } 
    3238       if ( $load && '' != $located ) 
     2278        } 
     2279        if ( $load && '' != $located ) 
    32392280            load_template( $located, $require_once ); 
    3240       return $located; 
     2281        return $located; 
    32412282    } 
    32422283 
     
    32782319     */ 
    32792320    function register_widget(){ 
    3280     if(class_exists('EELV_NL_Archives_Widget')){ 
    3281         register_widget('EELV_NL_Archives_Widget'); 
    3282     } 
     2321        if(class_exists('EELV_NL_Archives_Widget')){ 
     2322            register_widget('EELV_NL_Archives_Widget'); 
     2323        } 
    32832324        if(class_exists('EELV_NL_Subscribe_Widget')){ 
    3284         register_widget('EELV_NL_Subscribe_Widget'); 
    3285     } 
     2325            register_widget('EELV_NL_Subscribe_Widget'); 
     2326        } 
    32862327    } 
    32872328 
     
    32912332     */ 
    32922333    function widget_eelv_lettreinfo_side($params) { 
    3293     $this->eelv_li_xs_title= get_option('eelv_li_xs_title'); 
    3294     echo $params['before_widget']; 
    3295     echo $params['before_title']; 
    3296     echo  $this->eelv_li_xs_title; 
    3297     echo $params['after_title']; 
    3298         // Call new function with old argument 
    3299     echo apply_filters('eelv_newsletter_widget_form', $this->get_news_form( 
    3300                         array( 
    3301                             'id'=>'widget', 
    3302                             'archives' => get_option('eelv_li_xs_archives',0), 
    3303                             'title' => get_option('eelv_li_xs_title'), 
    3304                             'options' => get_option('eelv_li_xs_options',0), 
    3305                             'form_class' => get_option('eelv_li_xs_formclass',''), 
    3306                             'text_class' => get_option('eelv_li_xs_textclass',''), 
    3307                             'button_class' => get_option('eelv_li_xs_buttonclass',''), 
    3308  
    3309                             'button' => get_option('eelv_li_xs_buttontext','ok'), 
    3310                             'label' => get_option('eelv_li_xs_labeltext',__('Subscribe our newsletter', 'eelv-newsletter')), 
    3311                             'input' => get_option('eelv_li_xs_texttext',__('Newsletter : your email address', 'eelv-newsletter')), 
    3312                         ) 
    3313                     ) 
    3314                 ); 
    3315     echo $params['after_widget']; 
     2334        $this->eelv_li_xs_title= get_option('eelv_li_xs_title'); 
     2335        echo $params['before_widget']; 
     2336        echo $params['before_title']; 
     2337        echo  $this->eelv_li_xs_title; 
     2338        echo $params['after_title']; 
     2339            // Call new function with old argument 
     2340        echo apply_filters('eelv_newsletter_widget_form', 
     2341            $this->get_news_form( 
     2342                array( 
     2343                    'id'=>'widget', 
     2344                    'archives' => get_option('eelv_li_xs_archives',0), 
     2345                    'title' => get_option('eelv_li_xs_title'), 
     2346                    'options' => get_option('eelv_li_xs_options',0), 
     2347                    'form_class' => get_option('eelv_li_xs_formclass',''), 
     2348                    'text_class' => get_option('eelv_li_xs_textclass',''), 
     2349                    'button_class' => get_option('eelv_li_xs_buttonclass',''), 
     2350 
     2351                    'button' => get_option('eelv_li_xs_buttontext','ok'), 
     2352                    'label' => get_option('eelv_li_xs_labeltext',__('Subscribe our newsletter', 'eelv-newsletter')), 
     2353                    'input' => get_option('eelv_li_xs_texttext',__('Newsletter : your email address', 'eelv-newsletter')), 
     2354                ) 
     2355            ) 
     2356        ); 
     2357       echo $params['after_widget']; 
    33162358    } 
    33172359 
     
    33202362     */ 
    33212363    function widget_eelv_lettreinfo_insc_control(){ 
    3322     echo'<p>'.__('This widget is deprecated, please use the new one', 'eelv-newsletter').'</p>'; 
     2364       echo'<p>'.__('This widget is deprecated, please use the new one', 'eelv-newsletter').'</p>'; 
    33232365    } 
    33242366} 
Note: See TracChangeset for help on using the changeset viewer.