PluginProbe
Contact Forms by Cimatti / 1.4.1
Contact Forms by Cimatti v1.4.1
2.3.6 2.3.5 2.3.0 2.2.32 2.2.4 2.2.0 2.1.2 2.1.1 trunk 1.0 1.1 1.2 1.2.1 1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 All 62 releases
contact-forms / accua-forms-submissions-page.php

accua-forms-submissions-page.php in Contact Forms by Cimatti 1.4.1, at accua-forms-submissions-page.php

640 lines 23.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 if(!class_exists('WP_List_Table')){
3 require_once( ABSPATH . 'wp-admin/includes/class-wp-list-table.php' );
4 }
5
6 class Accua_Forms_Submissions_List_Table extends WP_List_Table {
7
8 var $message = NULL;
9 var $active_items = 0;
10 var $del_items = 0;
11
12 function __construct(){
13 global $status, $page;
14 $this->message = '';
15 parent::__construct( array(
16 'singular' => 'submission',
17 'plural' => 'submissions',
18 'ajax' => false
19 ) );
20 }
21
22 function get_num_of_active_items () {
23 return $this->active_items;
24 }
25
26 function get_num_of_del_items () {
27 return $this->del_items;
28 }
29
30 function column_default($item, $column_name){
31 if (isset($item[$column_name])) {
32 //return htmlspecialchars($item[$column_name], ENT_QUOTES);
33 return $item[$column_name];
34 } else {
35 return '';
36 }
37 }
38
39 function column_cb($item){
40 return sprintf(
41 '<input type="checkbox" name="%1$s[]" value="%2$s" />',
42 /*$1%s*/ $this->_args['singular'],
43 /*$2%s*/ $item['ID']
44 );
45 }
46
47 function set_message($single_message) {
48 $this->message=$single_message;
49 }
50
51 function get_message() {
52 if($this->message!=NULL)
53 return $this->message;
54 else
55 return NULL;
56 }
57
58 function get_columns(){
59 global $wpdb;
60 $columns = array(
61 'cb' => '<input type="checkbox" />', //Render a checkbox instead of text
62 'ID' => 'ID',
63 'form_title' => 'Form',
64 'form_id' => __("Form ID", 'accua-form-api'),
65 'pid' => __("Page ID", 'accua-form-api'),
66 'ip' => 'IP',
67 'uri' => __("Page", 'accua-form-api'),
68 'referrer' => __("Referrer", 'accua-form-api'),
69 'lang' => __("Language", 'accua-form-api'),
70 'created' => __("Opened", 'accua-form-api'),
71 'submitted' => __("Submitted", 'accua-form-api'),
72 );
73 $query = "SELECT DISTINCT afsv_field_id FROM `{$wpdb->prefix}accua_forms_submissions_values`";
74 $res = $wpdb->get_col($query);
75
76 $avail_fields = get_option('accua_forms_avail_fields', array());
77 foreach ($res as $col) {
78 if (empty($avail_fields[$col])) {
79 $columns['_field_'.$col] = $col . __("removed", 'accua-form-api');
80 } else {
81 $columns['_field_'.$col] = $avail_fields[$col]['name'];
82 }
83 }
84 return $columns;
85 }
86
87 function get_bulk_actions() {
88 if(isset($_GET['del']) && $_GET['del']==1) {
89 $actions = array(
90 'restore' => __('Restore', 'accua-form-api')
91 );
92 } else {
93 $actions = array(
94 'delete' => __('Move to trash', 'accua-form-api')
95 );
96 }
97 return $actions;
98 }
99
100 function prepare_items($all=false, $get = array()) {
101 global $wpdb, $hook_suffix;
102
103 if (!$get) {
104 $get = stripslashes_deep($_GET);
105 }
106
107 $per_page = 20;
108 $del = isset($get['del']) && $get['del']==1;
109
110 $this->active_items = $wpdb->get_var("SELECT COUNT(*) FROM `{$wpdb->prefix}accua_forms_submissions` WHERE afs_status >= 0");
111 $this->del_items = $wpdb->get_var("SELECT COUNT(*) FROM `{$wpdb->prefix}accua_forms_submissions` WHERE afs_status < 0");
112
113 $filter = $filter_query_custom_field = "";
114 $search = '';
115
116 if(isset($get['_wp_http_referer'])) {
117 foreach (explode('&', $get['_wp_http_referer']) as $coppia) {
118 $param = explode("=", $coppia);
119 if($param[0]=='fid' && $param[1]!='-1') $filter .= $wpdb->prepare(" AND afs_form_id = '%s' ", $param[1]);
120 if($param[0]=='pid' && $param[1]!='-1') $filter .= $wpdb->prepare(" AND afs_post_id = '%d' ", $param[1]);
121 if($param[0]=='year' && $param[1]>0) $filter .= $wpdb->prepare(" AND year(afs_submitted) = %d ", $param[1]);
122 if($param[0]=='month' && $param[1]>0) $filter .= $wpdb->prepare(" AND month(afs_submitted) = %d ", $param[1]);
123 if($param[0]=='s') $search = trim($param[1]);
124 }
125 }
126
127 if(isset($get['fid']) && ($get['fid'])!=-1) {
128 $filter .= $wpdb->prepare(" AND afs_form_id = '%s' ", $get['fid']);
129 }
130 if(isset($get['pid']) && ($get['pid']!=-1)) {
131 $filter .= $wpdb->prepare(" AND afs_post_id = %d ", $get['pid']);
132 }
133
134 if(isset($get['year']) && ($get['year']>0)) {
135 $filter .= $wpdb->prepare(" AND year(afs_submitted) = %d ", $get['year']);
136 }
137 if(isset($get['month']) && ($get['month']>0)) {
138 $filter .= $wpdb->prepare(" AND month(afs_submitted) = %d ", $get['month']);
139 }
140
141 if(isset($get['s'])) {
142 $search = trim($get['s']);
143 }
144
145 if (isset($get['date_from']) && $get['date_from'] !== '') {
146 $filter .= $wpdb->prepare(" AND afs_submitted >= '%s' ", $get['date_from']);
147 }
148 if (isset($get['date_to']) && $get['date_to'] !== '') {
149 $filter .= $wpdb->prepare(" AND afs_submitted < '%s' ", $get['date_to']);
150 }
151
152
153 $columns = $this->get_columns();
154 $hidden = get_hidden_columns($hook_suffix);
155 $sortable = array();
156
157 $this->_column_headers = array($columns, $hidden, $sortable);
158 $current_page = $this->get_pagenum();
159
160 if ($all) {
161 $limit = '';
162 } else {
163 $limit = ($current_page - 1) * $per_page;
164 $limit = "LIMIT {$limit}, {$per_page}";
165 }
166
167 $forms_data = get_option('accua_forms_saved_forms', array());
168
169 if ($del) {
170 $afs_status_cond = 'afs_status < 0';
171 } else {
172 $afs_status_cond = 'afs_status >= 0';
173 }
174
175 $searching_data = array();
176 if($search !== '')
177 {
178 $sql_search = $wpdb->prepare("'%s'", "%$search%");
179 $query1 = " SELECT SQL_CALC_FOUND_ROWS
180 afs_id AS ID,
181 afs_form_id AS form_id,
182 afs_post_id AS pid,
183 afs_ip AS ip,
184 afs_uri AS uri,
185 afs_referrer AS referrer,
186 afs_lang AS lang,
187 afs_created AS created,
188 afs_submitted AS submitted
189 FROM `{$wpdb->prefix}accua_forms_submissions`
190 WHERE {$afs_status_cond} {$filter}
191 AND (
192 afs_ip LIKE {$sql_search}
193 OR afs_uri LIKE {$sql_search}
194 OR afs_referrer LIKE {$sql_search}
195 OR afs_lang LIKE {$sql_search}
196 OR afs_created LIKE {$sql_search}
197 OR afs_submitted LIKE {$sql_search}
198 OR afs_id LIKE {$sql_search}
199 OR afs_id
200 IN (
201 SELECT DISTINCT (afsv_sub_id)
202 FROM `{$wpdb->prefix}accua_forms_submissions_values`
203 WHERE afsv_value LIKE {$sql_search})
204 )
205 ORDER BY afs_id DESC
206 {$limit}";
207 }
208 else
209 {
210 $query1 = "SELECT SQL_CALC_FOUND_ROWS
211 afs_id AS ID,
212 afs_form_id AS form_id,
213 afs_post_id AS pid,
214 afs_ip AS ip,
215 afs_uri AS uri,
216 afs_referrer AS referrer,
217 afs_lang AS lang,
218 afs_created AS created,
219 afs_submitted AS submitted
220 FROM `{$wpdb->prefix}accua_forms_submissions`
221 WHERE {$afs_status_cond} {$filter}
222 ORDER BY afs_id DESC
223 {$limit}";
224 }
225
226 $data1 = $wpdb->get_results($query1, ARRAY_A);
227
228 $total_items = $wpdb->get_var('SELECT FOUND_ROWS()');
229
230 $data = array();
231 $submissions = array();
232 foreach ($data1 as $row) {
233 $fid = $row['form_id'];
234
235 if (isset($forms_data[$fid]['title']) && (trim($forms_data[$fid]['title']) !== '')) {
236 $row['form_title'] = htmlspecialchars($forms_data[$fid]['title']);
237 } else {
238 $row['form_title'] = $fid;
239 }
240
241 $sid = $row['ID'];
242 $data[$sid] = $row;
243 $submissions[] = $sid;
244 }
245
246 $submissions = implode(',',$submissions);
247 $query2 = "SELECT *
248 FROM `{$wpdb->prefix}accua_forms_submissions_values`
249 WHERE afsv_sub_id IN ($submissions) ";
250
251 $data2 = $wpdb->get_results($query2, OBJECT);
252
253 foreach ($data2 as $row) {
254 switch ($row->afsv_type) {
255 case 'file' :
256 $fieldid = rawurlencode($row->afsv_field_id);
257 $filename = rawurlencode($row->afsv_value);
258 $url = admin_url('admin-ajax.php') . "?action=accua_forms_download_submitted_file&subid={$row->afsv_sub_id}&field={$fieldid}&file={$filename}";
259 $url = htmlspecialchars($url,ENT_QUOTES);
260 $filename = htmlspecialchars($row->afsv_value,ENT_QUOTES);
261 $fielddata = "<a href='{$url}' target='_blank'>{$filename}</a>";
262 break;
263 case 'colorpicker':
264 if ($row->afsv_value === '') {
265 $fielddata = '';
266 } else {
267 $value_esc = htmlspecialchars($row->afsv_value,ENT_QUOTES);
268 $fielddata = "<span style='color: {$value_esc}'><font color='{$value_esc}'>&#9608;</font></span> $value_esc";
269 }
270 break;
271 case 'password':
272 case 'password-and-confirm':
273 $fielddata = '';
274 break;
275 default:
276 $fielddata = htmlspecialchars($row->afsv_value,ENT_QUOTES);
277 }
278 $data[$row->afsv_sub_id]['_field_'.$row->afsv_field_id] = $fielddata;
279 }
280
281 $this->items = $data;
282
283 $this->set_pagination_args( array(
284 'total_items' => $total_items,
285 'per_page' => $per_page,
286 'total_pages' => ceil($total_items/$per_page)
287 ) );
288
289
290 }
291
292 function process_bulk_action() {
293 if('delete'=== $this->current_action()) {
294 $trashed = array();
295 if ((!empty($_GET['submission'])) && is_array($_GET['submission'])) {
296 foreach($_GET['submission'] as $i) {
297 $i = (int) $i;
298 $trashed[$i] = $i;
299 }
300 }
301 if ($trashed) {
302 $trashed = implode(',',$trashed);
303 global $wpdb;
304 $res = $wpdb->query("UPDATE `{$wpdb->prefix}accua_forms_submissions` SET afs_status = -1 WHERE afs_id in ( $trashed )");
305 if ($res === false) {
306 $this->set_message(__("Error moving submissions to trash.", 'accua-form-api').'<br />');
307 } else if ($res == 1) {
308 $this->set_message(__("Moved 1 submission to trash.", 'accua-form-api').'<br />');
309 } else {
310 $this->set_message(strtr(__("Moved %res submissions to trash.", 'accua-form-api'), array('%res' => $res)).'<br />');
311 }
312 } else {
313 $this->set_message(__("No submission selected.", 'accua-form-api').'<br />');
314 }
315 } else if('restore'=== $this->current_action()) {
316 $restored = array();
317 if ((!empty($_GET['submission'])) && is_array($_GET['submission'])) {
318 foreach($_GET['submission'] as $i) {
319 $i = (int) $i;
320 $restored[$i] = $i;
321 }
322 }
323 if ($restored) {
324 $restored = implode(',',$restored);
325 global $wpdb;
326 $res = $wpdb->query("UPDATE `{$wpdb->prefix}accua_forms_submissions` SET afs_status = 0 WHERE afs_id in ( $restored )");
327 if ($res === false) {
328 $this->set_message(__("Error restoring submissions.", 'accua-form-api').'<br />');
329 } else if ($res == 1) {
330 $this->set_message(__("Restored 1 submission.", 'accua-form-api').'<br />');
331 } else {
332 $this->set_message(strtr(__("Restored %res submissions.", 'accua-form-api'), array('%res' => $res)).'<br />');
333 }
334 } else {
335 $this->set_message(__("No submission selected.", 'accua-form-api').'<br />');
336 }
337 }
338 }
339 }
340
341 function accua_forms_submissions_list_page($head = false){
342 static $listTable = null;
343
344 global $wpdb;
345 if ($listTable === null) {
346 if (isset($_POST['action'])) {
347 if ($_POST['action'] === 'trash' && !empty($_POST['submission']) && is_array($_POST['submission'])) {
348 echo "yes";
349 $trashed = array();
350 foreach($_POST['submission'] as $i) {
351 $i = (int) $i;
352 $trashed[$i] = $i;
353 }
354 $trashed=implode(',',$trashed);
355
356 $res = $wpdb->query("UPDATE `{$wpdb->prefix}accua_forms_submissions` SET afs_status = -1 WHERE afs_id in ( $trashed )");
357 if ($res === false) {
358 $this->set_message(__("Error moving submissions to trash.", 'accua-form-api').'<br />');
359 } else {
360 $this->set_message(strtr(__("Moved %res submissions to trash.", 'accua-form-api'), array('%res' => $res)).'<br />');
361 }
362 }
363 }
364
365 /*
366 wp_enqueue_script('jquery-ui-mouse');
367 wp_enqueue_script('jquery-ui-widget');
368 */
369
370 wp_enqueue_script('jquery');
371 wp_enqueue_script('jquery-ui-core');
372 wp_enqueue_script('jquery-ui-sortable');
373
374 $listTable = new Accua_Forms_Submissions_List_Table();
375 $listTable->process_bulk_action();
376 $listTable->prepare_items();
377 }
378
379 if ($head === true) {
380 return;
381 }
382 ?>
383 <style>
384 .tablenav.bottom {
385 float: left;
386 width: 100%;
387 }
388
389 .accua_tablenav {
390 float: left;
391 }
392
393 .esportazione {
394 margin-left:10px;
395 }
396
397 .esportazione a {
398 cursor: pointer;
399 line-height: 28px;
400 text-decoration: underline;
401 }
402 .tablenav.top {
403 clear: none;
404 float: left;
405 width: 100%;
406 }
407 </style>
408 <div id="accua_forms_submissions_list_page" class="accua_forms_admin_page wrap">
409
410 <div id="icon-users" class="icon32"><br/></div>
411
412 <h2 style="margin-bottom: 20px;" ><?php _e("Forms Submissions", 'accua-form-api'); ?></h2>
413
414 <?php $filter_form = $filter_post = $filter_search = $filter_year = $filter_month = NULL ;
415 $filter = '';
416 if(isset($_GET['_wp_http_referer'])) {
417 foreach (explode('&', $_GET['_wp_http_referer']) as $coppia) {
418 $param = explode("=", $coppia);
419
420 if($param[0]=='fid' && $param[1]!='-1') { $filter_form = $param[1]; }
421 if($param[0]=='pid' && $param[1]!='-1') { $filter_post = (int) $param[1]; }
422 if($param[0]=='year' && $param[1]>0) { $filter_year = (int) $param[1]; }
423 if($param[0]=='month' && $param[1]>0) { $filter_month = (int) $param[1]; }
424 if($param[0]=='s' && $param[1]!='') { $filter_search =$param[1]; $filter.= "&amp;s=".htmlspecialchars($filter_search, ENT_QUOTES); ?>
425 <script type="text/javascript">
426 <!--
427 jQuery(document).ready(function($) {
428 jQuery('#search_id-search-input').val(<?php echo json_encode($filter_search, JSON_HEX_TAG|JSON_HEX_APOS|JSON_HEX_QUOT|JSON_HEX_AMP); ?>);
429 });
430 //-->
431 </script>
432 <?php
433 }
434 }
435 }
436
437 if(isset($_GET['fid']) && ($_GET['fid'])!=-1) {
438 $filter_form = $_GET['fid'];
439 }
440 if(isset($_GET['pid']) && ($_GET['pid']!=-1)) {
441 $filter_post = (int) $_GET['pid'];
442 }
443 if(isset($_GET['year']) && ($_GET['year']>0)) {
444 $filter_year = (int) $_GET['year'];
445 }
446 if(isset($_GET['month']) && ($_GET['month']>0)) {
447 $filter_month = (int) $_GET['month'];
448 }
449
450 if(isset($_GET['s']) && ($_GET['s']!='')) {
451 $filter_search = $_GET['s'];
452 $filter.= "&amp;s=".htmlspecialchars($filter_search, ENT_QUOTES);
453 }
454
455 $del = isset($_GET['del']) && ($_GET['del']==1);
456
457 ?>
458
459 <?php if($listTable->get_message()!=NULL) { ?>
460 <div class="updated"><p><?php echo $listTable->get_message(); ?></p></div>
461 <?php } ?>
462
463 <ul class="subsubsub">
464 <li>
465 <a <?php if (!$del) { echo " class='current' "; } ?> href="admin.php?page=accua_forms_submissions_list">
466 <?php _e("Active", 'accua-form-api'); ?></a> (<?php echo $listTable->get_num_of_active_items(); ?>) |
467 </li>
468 <li>
469 <a <?php if ($del) { echo " class='current' "; } ?> href="admin.php?page=accua_forms_submissions_list&del=1">
470 <?php _e("Trash", 'accua-form-api'); ?></a> (<?php echo $listTable->get_num_of_del_items(); ?>)
471 </li>
472 </ul>
473
474 <p style="clear:both;"><?php _e("Use the screen options to add or remove columns from the table below. Only the visible columns will be exported.", 'accua-form-api'); ?></p>
475 <form style="margin-top: 20px;" id="submissions-action" method="get" action="">
476 <!-- For plugins, we also need to ensure that the form posts back to our current page -->
477 <input type="hidden" name="page" value="<?php echo htmlspecialchars(stripslashes($_REQUEST['page'])); ?>" />
478 <input type="hidden" name="del" value="<?php echo htmlspecialchars(stripslashes($_REQUEST['del'])); ?>" />
479 <!-- SEARCH FORM -->
480 <?php $listTable->search_box(__("Search", 'accua-form-api'), 'search_id'); ?>
481 <!-- FINE SEARCH FORM -->
482 <!-- FILTRI -->
483 <div class="accua_tablenav">
484 <?php
485 //tutti i form salvati e non
486
487 $saved_forms_id = array();
488 $forms_data = get_option('accua_forms_saved_forms', array());
489 foreach($forms_data as $single_form_key=>$single_form){
490 $saved_forms_id[]= "'".$wpdb->escape($single_form_key)."'";
491 }
492 $saved_forms_id_string = implode(',',$saved_forms_id);
493
494 $id_del_other_forms = $wpdb->get_results("SELECT distinct afs_form_id
495 FROM {$wpdb->prefix}accua_forms_submissions WHERE afs_form_id NOT IN ($saved_forms_id_string) AND afs_status >= 0", ARRAY_A);
496
497
498 //post submissions
499 $id_posts = $wpdb->get_results("SELECT distinct afs_post_id
500 FROM {$wpdb->prefix}accua_forms_submissions WHERE afs_post_id <> 0 AND afs_status >= 0 ", ARRAY_A);
501
502 $cur_year = (int) date('Y');
503 $min_year = (int) $wpdb->get_var("SELECT year(min(afs_submitted)) FROM {$wpdb->prefix}accua_forms_submissions");
504 if ($min_year <= 0) {
505 $min_year = $cur_year;
506 }
507
508 ?>
509
510 <span><label><?php _e("Page: ", 'accua-form-api'); ?></label><select name='pid' id='pid'>
511 <option value="-1" selected ><?php _e("Show all pages", 'accua-form-api'); ?></option>
512 <?php foreach($id_posts as $id_post){
513 echo "<option value='".$id_post['afs_post_id']."'";
514 if($filter_post==$id_post['afs_post_id']) {
515 echo " selected ";
516 $filter.= "&amp;pid=".$filter_post;
517 }
518 echo ">".get_the_title($id_post['afs_post_id'])."</option>";
519 } ?>
520 </select></span>
521 <span style="margin-left: 10px;"><label><?php _e("Forms: ", 'accua-form-api'); ?></label><select name='fid' id='fid'>
522 <option value="-1" selected > <?php _e("Show all forms", 'accua-form-api'); ?> </option>
523 <?php foreach($forms_data as $single_form_key=>$single_form){
524 echo "<option value='".$single_form_key."'";
525 if($filter_form==$single_form_key) {
526 echo " selected ";
527 $filter.= "&amp;fid=".$filter_form;
528 }
529 echo ">";
530 if($single_form['title']!=NULL)
531 echo $single_form['title']; //TITOLO
532 else
533 echo $single_form_key; //ID
534 echo "</option>";
535 }
536 ///no saved forms///
537 foreach($id_del_other_forms as $id_del_other_form) {
538 echo "<option value='".$id_del_other_form['afs_form_id']."'";
539 if($filter_form==$id_del_other_form['afs_form_id']) {
540 echo " selected ";
541 $filter.= "&amp;fid=".$filter_form;
542 }
543 echo $id_del_other_form['afs_form_id']." (del) </option>";
544 }
545
546 ?>
547 </select>
548 </span>
549
550 <span style="margin-left: 10px;"><label><?php _e("Year: ", 'accua-form-api'); ?></label><select name='year' id='year'>
551 <option value="-1" ></option>
552 <?php for($i = $min_year; $i <= $cur_year; $i++){
553 echo "<option value='".$i."'";
554 if($filter_year==$i) {
555 echo " selected ";
556 $filter.= "&amp;year=".$i;
557 }
558 echo ">$i</option>";
559 }
560 ?>
561 </select>
562 </span>
563
564 <span style="margin-left: 10px;"><label><?php _e("Month: ", 'accua-form-api'); ?></label><select name='month' id='month'>
565 <option value="-1" ></option>
566 <?php for($i = 1; $i <= 12; $i++){
567 echo "<option value='".$i."'";
568 if($filter_month==$i) {
569 echo " selected ";
570 $filter.= "&amp;month=".$i;
571 }
572 echo ">$i</option>";
573 }
574 ?>
575 </select>
576 </span>
577
578 <span>
579 <input type="submit" value="<?php _e("Filter", 'accua-form-api'); ?>" class="button-secondary action" name=""></span>
580 </form>
581 </div>
582 <!-- FINE FILTRI -->
583 <script type="text/javascript">
584 <!--
585 function set_parameter(sel_column) {
586 var stringa ='';
587 var name_action = ajaxurl + "?action=accua_forms_submission_page_save_excel<?php if ($del) {echo '&del=1';} ?>";
588 if(sel_column) {
589 jQuery('#adv-settings input[type=checkbox]:checked').each(function() {
590 stringa += this.value + "%2C";
591 });
592 }
593 else {
594 jQuery('#adv-settings input[type=checkbox]').each(function() {
595 stringa += this.value + "%2C";
596 });
597 }
598 var search = jQuery("#search_id-search-input").val();
599 var pid = jQuery("select#pid").val();
600 var fid = jQuery("select#fid").val();
601 var year = jQuery("select#year").val();
602 var month = jQuery("select#month").val();
603 if (search) name_action+='&s='+search;
604 if (pid) name_action+='&pid='+pid;
605 if (fid) name_action+='&fid='+fid;
606 if (year) name_action+='&year='+year;
607 if (month) name_action+='&month='+month;
608 if(stringa) name_action+= '&accua_show_field='+stringa;
609
610 if(sel_column) { jQuery('#esporta_link_visible_column').attr("href",name_action); }
611 else jQuery('#esporta_link_all_column').attr("href",name_action);
612
613 }
614 //-->
615 </script>
616 <!-- ESPORTAZIONE -->
617
618 <div class="accua_tablenav esportazione wp-core-ui ">
619 <a onclick ="set_parameter(1);" id="esporta_link_visible_column" class="button-primary"><?php _e("Export visible columns to Excel", 'accua-form-api'); ?></a>
620 <a onclick ="set_parameter(0);" id="esporta_link_all_column" class="button-primary"><?php _e("Export all columns to Excel", 'accua-form-api'); ?></a>
621 </div>
622
623 <!-- FINE ESPORTAZIONE -->
624 <form style="margin-top: 20px;" id="submissions-action" method="get" action="">
625 <!-- Now we can render the completed list table -->
626 <input type="hidden" name="page" value="<?php echo htmlspecialchars(stripslashes($_REQUEST['page'])); ?>" />
627 <input type="hidden" name="del" value="<?php echo htmlspecialchars(stripslashes($_REQUEST['del'])); ?>" />
628 <?php $listTable->display(); ?>
629 </form>
630 <?php /* <pre>$listTable = <?php echo htmlspecialchars(print_r($listTable, true)); ?></pre> */ ?>
631 </div>
632
633 <?php
634
635 }
636
637
638
639
640