Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
wp-content
/
plugins
/
contact-form-maker
/
admin
/
views
:
Submissions_fm.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php /** * Class FMViewSubmissions_fmc */ class FMViewSubmissions_fmc extends FMAdminView_fmc { private $model; private $fm_nonce = null; public function __construct( $model = array() ) { $this->fm_nonce = wp_create_nonce('fm_ajax_nonce'); $this->model = $model; wp_enqueue_style('thickbox'); $fm_settings = WDFMInstance(self::PLUGIN)->fm_settings; if ( $fm_settings['fm_developer_mode'] ) { wp_enqueue_style(WDFMInstance(self::PLUGIN)->handle_prefix . '-tables'); wp_enqueue_style(WDFMInstance(self::PLUGIN)->handle_prefix . '-jquery-ui'); wp_enqueue_style('jquery.fancybox'); } wp_enqueue_script('thickbox'); wp_enqueue_script('jquery'); wp_enqueue_script('jquery-ui-progressbar'); wp_enqueue_script('jquery-ui-sortable'); wp_enqueue_script('jquery-ui-widget'); wp_enqueue_script('jquery-ui-slider'); wp_enqueue_script('jquery-ui-spinner'); wp_enqueue_script('jquery-ui-mouse'); wp_enqueue_script('jquery-ui-core'); wp_enqueue_script('jquery-ui-datepicker'); if ( function_exists('wp_add_inline_script') ) { // Since Wordpress 4.5.0 wp_add_inline_script('jquery-ui-datepicker', WDW_FM_Library(self::PLUGIN)->localize_ui_datepicker()); } else { echo '<script>' . WDW_FM_Library(self::PLUGIN)->localize_ui_datepicker() . '</script>'; } if ( $fm_settings['fm_developer_mode'] ) { wp_enqueue_script(WDFMInstance(self::PLUGIN)->handle_prefix . '-admin'); wp_enqueue_script(WDFMInstance(self::PLUGIN)->handle_prefix . '-manage'); wp_enqueue_script(WDFMInstance(self::PLUGIN)->handle_prefix . '-submissions'); wp_enqueue_script('jquery.fancybox.pack'); } else { wp_enqueue_style(WDFMInstance(self::PLUGIN)->handle_prefix . '-submission'); wp_enqueue_script(WDFMInstance(self::PLUGIN)->handle_prefix . '-submission'); } } /** * Forms page. * * @param $params */ public function forms( $params = array() ) { // TODO: Change this function to standard. echo $this->topbar(); $id = $params['id']; $page = $params['page']; $page_title = $params['page_title']; $page_url = $params['page_url']; $forms = $params['forms']; $order_by = $params['order_by']; $asc_or_desc = $params['asc_or_desc']; echo '<div class="wrap">'; echo $this->title(array( 'title' => $page_title, 'title_class' => 'wd-header', )); ?> <br> <div class="tablenav top"> <div class="alignleft"> <?php echo $this->saelect_form( array('id' => $id, 'forms' => $forms, 'page' => $page, 'page_url' => $page_url, 'order_by' => $order_by, 'asc_or_desc' => $asc_or_desc) ); ?> </div> <div class="fm-export-tools"> <?php $blocked_ips_link = add_query_arg(array( 'page' => 'blocked_ips' . WDFMInstance(self::PLUGIN)->menu_postfix ), $page_url); ?> <a class="button" href="<?php echo $blocked_ips_link; ?>" target="_blank"><?php echo _e('Blocked IPs', WDFMInstance(self::PLUGIN)->prefix);?></a> </div> </div> <?php if( !$id ) { ?> <table class="wp-list-table widefat fixed striped posts"> <body id="the-list"> <tr class="no-items"> <td class="colspanchange fm-column-not-hide" colspan="0"><?php _e('Please select a form to view submissions', WDFMInstance(self::PLUGIN)->prefix); ?></td> </tr> </body> </table> <?php } echo '</div>'; } /** * Display page. * * @param array $params */ public function display( $params = array() ) { $id = $params['id']; $page = $params['page']; $page_url = $params['page_url']; $page_number = $params['page_number']; $order_by = $params['order_by']; $asc_or_desc = $params['asc_or_desc']; $pagination_url_args = $params['pagination_url_args']; ob_start(); $unexpected_error_message = sprintf( __('An unexpected error occurred while exporting data. %s Please contact Web-Dorado (10Web) Customer Care. %s', WDFMInstance(self::PLUGIN)->prefix), '<a href="https://web-dorado.com/support/contact-us.html" target="_blank">','</a>'); echo '<div class="fm-unexpected_error_message fm-hide">' . WDW_FM_Library(self::PLUGIN)->message_id('', $unexpected_error_message, 'error') . '</div>'; echo $this->body($params); // Pass the content to form. $action = add_query_arg( array_merge( array('page' => $page, 'task' => 'display', 'current_id' => $id, 'paged' => $page_number, 'order_by' => $order_by, 'asc_or_desc' => $asc_or_desc ), $pagination_url_args ), $page_url); $form_attr = array( // 'id' => WDFMInstance(self::PLUGIN)->prefix . '_submissions', 'id' => 'admin_form', 'name' => WDFMInstance(self::PLUGIN)->prefix . '_submissions', 'class' => WDFMInstance(self::PLUGIN)->prefix . '_submissions fm-table-submissions wd-form', 'action' => $action ); echo $this->form(ob_get_clean(), $form_attr); } /** * Generate page body. * * @param array $params * @return string Body html. */ public function body( $params = array() ) { global $wpdb; $form_id = $params['id']; $page = $params['page']; $page_url = $params['page_url']; $page_title = $params['page_title']; $pagination_url = $params['pagination_url']; $page_number = $params['page_number']; $page_per_num = $params['page_per_num']; $forms = $params['forms']; $statistics = $params['statistics']; $actions = $params['actions']; $blocked_ips = $params['blocked_ips']; $sorted_labels_id = $params['sorted_labels_id']; $sorted_label_types = $params['sorted_label_types']; $sorted_label_names = $params['sorted_label_names']; $sorted_label_names_original = $params['sorted_label_names_original']; $label_name_ids = $params['label_name_ids']; $where_choices = $params['where_choices']; $searched_ids = $params['searched_ids']; $order_by = $params['order_by']; $asc_or_desc = $params['asc_or_desc']; $lists = $params['lists']; $style_id = $params['style_id']; $style_date = $params['style_date']; $style_ip = $params['style_ip']; $style_username = $params['style_username']; $style_useremail = $params['style_useremail']; $style_payment_info = $params['style_payment_info']; $oder_class_default = $params['oder_class_default']; $oder_class = $params['oder_class']; $m = $params['m']; $fm_settings = $params['fm_settings']; $group_id_s = $params['group_id_s']; $groupids = $params['groupids']; $is_search = $params['is_search']; $is_stats = $params['is_stats']; $rows = $params['rows']; $rows_data = $params['rows_data']; $subs_count = $params['subs_count']; $pdf_data = $params['pdf_data']; $verified_emails = array(); echo $this->title(array( 'title' => $page_title, 'title_class' => 'wd-header', )); ?> <br> <div> <?php echo $this->saelect_form( array('id' => $form_id, 'forms' => $forms, 'page' => $page, 'page_url' => $page_url, 'order_by' => $order_by, 'asc_or_desc' => $asc_or_desc) ); ?> <div class="fm-reports"> <div class="fm-tools-button"> <div class="fm-total_entries"><?php echo $statistics["total_entries"]; ?></div> <?php echo _e('Entries', WDFMInstance(self::PLUGIN)->prefix);?> </div> <div class="fm-tools-button"> <div class="fm-total_rate"><?php echo $statistics["conversion_rate"]; ?></div> <?php echo _e('Conversion Rate', WDFMInstance(self::PLUGIN)->prefix);?> </div> <div class="fm-tools-button"> <div class="fm-total_views"><?php echo $statistics["total_views"] ? $statistics["total_views"] : 0; ?></div> <?php echo _e('Views', WDFMInstance(self::PLUGIN)->prefix);?> </div> </div> <div class="fm-export-tools"> <?php $blocked_ips_link = add_query_arg(array( 'page' => 'blocked_ips' . WDFMInstance(self::PLUGIN)->menu_postfix ), $page_url); $xmllibactive = true; if( !class_exists("SimpleXMLElement") ) { $xmllibactive = false; } $msg = __('Form maker Export will not work correctly, as XML PHP extension is disabled on your website. Please contact your hosting provider and ask them to enable it.', WDFMInstance(self::PLUGIN)->prefix); ?> <a class="button" href="<?php echo $blocked_ips_link; ?>" target="_blank"><?php echo _e('Blocked IPs', WDFMInstance(self::PLUGIN)->prefix);?></a> <button class="button" onclick="export_submissions('csv', 0); return false;"><?php echo _e('Export to CSV', WDFMInstance(self::PLUGIN)->prefix);?></button> <button class="button" onclick="<?php if( $xmllibactive ) { ?> export_submissions('xml', 0); <?php } else { ?> alert('<?php echo $msg ?>'); <?php } ?> return false;"><?php echo _e('Export to XML', WDFMInstance(self::PLUGIN)->prefix);?></button> </div> </div> <div class="tablenav top"> <?php echo $this->bulk_actions($actions); ?> <div class="alignleft actions fm-bulk-actions"> <input type="button" class="button action" onclick="toggleChBDiv(true); return false;" value="<?php echo _e('Add/Remove Columns', WDFMInstance(self::PLUGIN)->prefix);?>"> <input type="hidden" name="hide_label_list" value=""> <button type="button" class="button action" onclick="show_hide_filter(); return false;"><span class="show-filter <?php echo !($is_search) ? '' : 'hide'?>"><?php echo __('Show Filters', WDFMInstance(self::PLUGIN)->prefix); ?></span> <span class="hide-filter <?php echo !($is_search) ? 'hide' : 'show'?>" ><?php echo __('Hide Filters', WDFMInstance(self::PLUGIN)->prefix);?></span></button> <span class="search_reset_button <?php echo ($is_search) ? '' : 'hide'; ?>"> <input type="button" class="button action" onclick="fm_form_submit(event, 'admin_form'); return false;" value="<?php echo _e('Search', WDFMInstance(self::PLUGIN)->prefix);?>"> <input type="button" class="button action <?php echo ($is_search) ? '' : 'hide'; ?>" onclick="remove_all(); fm_set_input_value('order_by', 'group_id'); fm_set_input_value('asc_or_desc', 'desc'); fm_form_submit(event, 'admin_form'); return false;" value="<?php echo _e('Reset', WDFMInstance(self::PLUGIN)->prefix);?>"> </span> </div> <?php echo $this->pagination($pagination_url, $subs_count, $page_per_num); ?> </div> <div style="width: 100%;"> <div class="table-wrapper-1 <?php echo ($m == 0) ? 'no-scroll' : ''; ?>"> <div class="table-scroll-1"></div> </div> <div class="table-wrapper-2 <?php echo ($m == 0) ? 'no-scroll' : ''; ?>"> <div class="table-scroll-2 submit_content" id="fm-scroll"> <table id="fm-submission-lists" class="adminlist table table-striped wp-list-table widefat fixed pages"> <thead> <tr class="fm_table_head"> <td id="cb" class="column-cb check-column fm-column-not-hide"> <label class="screen-reader-text" for="cb-select-all-1"><?php _e('Select all', WDFMInstance(self::PLUGIN)->prefix);?></label> <input type="checkbox" id="check_all"> </td> <th id="submitid_fc" class="<?php if ( $order_by == "group_id" ) { echo $oder_class; } else { echo $oder_class_default; } ?> submitid_fc col_id" <?php echo $style_id; ?> data-colname="<?php _e('ID', WDFMInstance(self::PLUGIN)->prefix);?>"> <a href="" class="sub_id" onclick="fm_set_input_value('order_by', 'group_id'); fm_set_input_value('asc_or_desc', '<?php echo(($order_by == 'group_id' && $asc_or_desc == 'asc') ? 'desc' : 'asc'); ?>'); fm_form_submit(event, 'admin_form')"> <span><?php echo _e('ID', WDFMInstance(self::PLUGIN)->prefix);?></span> <span class="sorting-indicator"></span> </a> </th> <th id="submitsubmitdate_fc" class="column-primary col-submit-date fm-column-not-hide <?php if ( $order_by == "date" ) { echo $oder_class; } else { echo $oder_class_default; } ?>" <?php echo $style_date; ?> data-colname="<?php _e('Submit date', WDFMInstance(self::PLUGIN)->prefix);?>"> <a href="" onclick="fm_set_input_value('order_by', 'date'); fm_set_input_value('asc_or_desc', '<?php echo(($order_by == 'date' && $asc_or_desc == 'asc') ? 'desc' : 'asc'); ?>'); fm_form_submit(event, 'admin_form')"> <span><?php _e('Submit date', WDFMInstance(self::PLUGIN)->prefix);?></span> <span class="sorting-indicator"></span> </a> </th> <th scope="col" id="submitterip_fc" class="submitterip_fc <?php if ( $order_by == "ip" ) { echo $oder_class; } else { echo $oder_class_default; } ?>" <?php echo $style_ip; ?> data-colname="<?php _e('Submitter\'s IP', WDFMInstance(self::PLUGIN)->prefix);?>"> <a href="" onclick="fm_set_input_value('order_by', 'ip'); fm_set_input_value('asc_or_desc', '<?php echo(($order_by == 'ip' && $asc_or_desc == 'asc') ? 'desc' : 'asc'); ?>'); fm_form_submit(event, 'admin_form')"> <span><?php _e('Submitter\'s IP', WDFMInstance(self::PLUGIN)->prefix);?></span> <span class="sorting-indicator"></span> </a> </th> <th scope="col" id="submitterusername_fc" class="submitterusername_fc <?php if ( $order_by == "display_name" ) { echo $oder_class; } else { echo $oder_class_default; } ?>" <?php echo $style_username; ?> data-colname="<?php _e('Submitter\'s Username', WDFMInstance(self::PLUGIN)->prefix);?>"> <a href="" onclick="fm_set_input_value('order_by', 'display_name'); fm_set_input_value('asc_or_desc', '<?php echo(($order_by == 'display_name' && $asc_or_desc == 'asc') ? 'desc' : 'asc'); ?>'); fm_form_submit(event, 'admin_form')"> <span><?php _e('Submitter\'s Username', WDFMInstance(self::PLUGIN)->prefix);?></span> <span class="sorting-indicator"></span> </a> </th> <th scope="col" id="submitteremail_fc" class="submitteremail_fc <?php if ( $order_by == "user_email" ) { echo $oder_class; } else { echo $oder_class_default; } ?>" <?php echo $style_useremail; ?> data-colname="<?php _e('Submitter\'s Email Address', WDFMInstance(self::PLUGIN)->prefix);?>"> <a href="" onclick="fm_set_input_value('order_by', 'user_email'); fm_set_input_value('asc_or_desc', '<?php echo(($order_by == 'user_email' && $asc_or_desc == 'asc') ? 'desc' : 'asc'); ?>'); fm_form_submit(event, 'admin_form')"> <span><?php _e('Submitter\'s Email Address', WDFMInstance(self::PLUGIN)->prefix);?></span> <span class="sorting-indicator"></span> </a> </th> <?php $stripe_paypal = false; for ( $i = 0; $i < count($sorted_label_names); $i++ ) { $styleStr = $this->model->hide_or_not($lists['hide_label_list'], $sorted_labels_id[$i]); $field_title = $this->model->get_type_address($sorted_label_types[$i], $sorted_label_names_original[$i]); $textdata = $this->gen_shorter_text($field_title, 42); if ( $sorted_label_types[$i] == 'type_paypal_payment_status' || $sorted_label_types[$i] == 'type_stripe' ) { $stripe_paypal = true; if ( $sorted_label_types[$i] != 'type_stripe' ) { ?> <th id="<?php echo $sorted_labels_id[$i] . '_fc'; ?>" class="table_large_col <?php echo $sorted_labels_id[$i] . '_fc '; if ( $order_by == $sorted_labels_id[$i] . "_field" ) { echo $oder_class . '"'; } else { echo $oder_class_default . '"'; } ?>" <?php echo $styleStr; ?> data-colname="<?php echo $field_title; ?>"> <a href="" onclick="fm_set_input_value('order_by', '<?php echo $sorted_labels_id[$i] . '_field'; ?>'); fm_set_input_value('asc_or_desc', '<?php echo(($order_by == $sorted_labels_id[$i] . '_field' && $asc_or_desc == 'asc') ? 'desc' : 'asc'); ?>'); fm_form_submit(event, 'admin_form')"> <span><?php echo $textdata['text']; ?></span> <span class="sorting-indicator"></span> </a> </th> <?php } } else { ?> <th <?php echo $styleStr; ?> id="<?php echo $sorted_labels_id[$i] . '_fc'; ?>" class="<?php echo ($sorted_label_types[$i] == 'type_mark_map' || $sorted_label_types[$i] == 'type_matrix') ? 'table_large_col ' : ''; echo $sorted_labels_id[$i] . '_fc '; if ( $order_by == $sorted_labels_id[$i] . "_field" ) { echo $oder_class . '"'; } else { echo $oder_class_default . '"'; } ?>" data-colname="<?php echo $field_title; ?>"> <a href="" onclick="fm_set_input_value('order_by', '<?php echo $sorted_labels_id[$i] . '_field'; ?>'); fm_set_input_value('asc_or_desc', '<?php echo(($order_by == $sorted_labels_id[$i] . '_field' && $asc_or_desc == 'asc') ? 'desc' : 'asc'); ?>'); fm_form_submit(event, 'admin_form')"> <span <?php if($textdata['status']) { ?> class="fm_masterTooltip" title="<?php echo $field_title; ?>" <?php } ?> ><?php echo $textdata['text']; ?></span> <span class="sorting-indicator"></span> </a> </th> <?php } } if( $stripe_paypal ) { ?> <th id="payment_info_fc" class="column-autor payment_info_fc" <?php echo $style_payment_info; ?> data-colname="<?php _e('Payment Info', WDFMInstance(self::PLUGIN)->prefix); ?>"><?php _e('Payment Info', WDFMInstance(self::PLUGIN)->prefix); ?></th> <?php } ?> </tr> <tr id="fm-fields-filter" style="display: none;"> <th class="fm-column-not-hide"></th> <th class="submitid_fc" <?php echo $style_id; ?> > <input type="text" name="id_search" id="id_search" value="<?php echo $lists['id_search'] ?>" style="width:30px" /> <input type="hidden" name="fm_is_search" id="fm_is_search" value="0" /> </th> <th class="submitdate_fc fm-column-not-hide" <?php echo $style_date; ?>> <table align="center" style="margin:auto" class="simple_table"> <tr class="simple_table"> <td class="simple_table fm-column-not-hide" style="text-align: left;">From:</td> <td class="simple_table fm-column-not-hide" style="text-align: center;"> <input class="inputbox" type="text" name="startdate" id="startdate" size="10" maxlength="10" value="<?php echo $lists['startdate']; ?>" /> </td> </tr> <tr class="simple_table"> <td class="simple_table fm-column-not-hide" style="text-align: left;">To:</td> <td class="simple_table fm-column-not-hide" style="text-align: center;"> <input class="inputbox" type="text" name="enddate" id="enddate" size="10" maxlength="10" value="<?php echo $lists['enddate']; ?>" /> </td> </tr> </table> </th> <th class="submitterip_fc" <?php echo $style_ip; ?>> <input type="text" name="ip_search" id="ip_search" value="<?php echo $lists['ip_search']; ?>" /> </th> <th class="submitterusername_fc" <?php echo $style_username; ?>> <input type="text" name="username_search" id="username_search" value="<?php echo $lists['username_search']; ?>" /> </th> <th class="submitteremail_fc" <?php echo $style_useremail; ?>> <input type="text" name="useremail_search" id="useremail_search" value="<?php echo $lists['useremail_search']; ?>" /> </th> <?php $column_count = 0; for ( $i = 0; $i < count($sorted_label_names); $i++ ) { if ( $sorted_label_types[$i] == 'type_stripe' ) { continue; } $styleStr = $this->model->hide_or_not($lists['hide_label_list'], $sorted_labels_id[$i]); if ( !$is_search ) { if ( $lists[$form_id . '_' . $sorted_labels_id[$i] . '_search'] || isset($lists[$form_id . '_' . $sorted_labels_id[$i] . '_search_verified']) ) { $is_search = TRUE; } } switch ( $sorted_label_types[$i] ) { case 'type_mark_map': ?> <th class="table_large_col <?php echo $sorted_labels_id[$i]; ?>_fc" <?php echo $styleStr; ?>></th> <?php break; case 'type_paypal_payment_status': ?> <th class="table_large_col <?php echo $sorted_labels_id[$i]; ?>_fc" <?php echo $styleStr; ?>> <select style="font-size: 11px; margin: 0; padding: 0; height: inherit;" name="<?php echo $form_id . '_' . $sorted_labels_id[$i]; ?>_search" id="<?php echo $form_id . '_' . $sorted_labels_id[$i]; ?>_search" value="<?php echo $lists[$form_id . '_' . $sorted_labels_id[$i] . '_search']; ?>"> <option value=""></option> <option value="canceled">Canceled</option> <option value="cleared">Cleared</option> <option value="cleared by payment review">Cleared by payment review</option> <option value="completed">Completed</option> <option value="denied">Denied</option> <option value="failed">Failed</option> <option value="held">Held</option> <option value="in progress">In progress</option> <option value="on hold">On hold</option> <option value="paid">Paid</option> <option value="partially refunded">Partially refunded</option> <option value="pending verification">Pending verification</option> <option value="placed">Placed</option> <option value="processing">Processing</option> <option value="refunded">Refunded</option> <option value="refused">Refused</option> <option value="removed">Removed</option> <option value="returned">Returned</option> <option value="reversed">Reversed</option> <option value="temporary hold">Temporary hold</option> <option value="unclaimed">Unclaimed</option> </select> <script> var element = document.getElementById('<?php echo $form_id . '_' . $sorted_labels_id[$i]; ?>_search'); element.value = '<?php echo $lists[$form_id . '_' . $sorted_labels_id[$i] . '_search']; ?>'; </script> </th> <th class="table_large_col payment_info_fc" <?php echo $style_payment_info; ?>> </th> <?php break; case 'type_submitter_mail': $query = $wpdb->prepare('SELECT id FROM ' . $wpdb->prefix . 'formmaker_submits WHERE form_id ="%d" AND element_label="verifyInfo" AND element_value="verified**%d"', $form_id, $sorted_labels_id[$i]); $is_verified_exist = $wpdb->get_var($query); ?> <th class="<?php echo $sorted_labels_id[$i]; ?>_fc" <?php echo $styleStr; ?>> <div style="width:220px;"> <input name="<?php echo $form_id . '_' . $sorted_labels_id[$i] . '_search'; ?>" id="<?php echo $form_id . '_' . $sorted_labels_id[$i] . '_search'; ?>" type="text" value="<?php echo $lists[$form_id . '_' . $sorted_labels_id[$i] . '_search']; ?>"> <?php if ( $is_verified_exist ) { ?> <label for="<?php echo $form_id . '_' . $sorted_labels_id[$i] . '_search_verified'; ?>">Verified</label> <input name="<?php echo $form_id . '_' . $sorted_labels_id[$i] . '_search_verified'; ?>" id="<?php echo $form_id . '_' . $sorted_labels_id[$i] . '_search_verified'; ?>" type="checkbox" <?php if ( isset($lists[$form_id . '_' . $sorted_labels_id[$i] . '_search_verified']) ) { echo "checked='checked'"; } ?> onChange="this.form.submit();"> <?php } ?> </div> </th> <?php break; default: ?> <th class="<?php echo $sorted_labels_id[$i]; ?>_fc" <?php echo $styleStr; ?>> <input name="<?php echo $form_id . '_' . $sorted_labels_id[$i] . '_search'; ?>" id="<?php echo $form_id . '_' . $sorted_labels_id[$i] . '_search'; ?>" type="text" value="<?php echo stripslashes( urldecode($lists[$form_id . '_' . $sorted_labels_id[$i] . '_search'] ) ); ?>"> </th> <?php break; } } $column_count = $i; ?> </tr> </thead> <tbody> <?php $k = 0; if( !empty($group_id_s) ) { for ( $www = 0, $qqq = count($group_id_s); $www < $qqq; $www++ ) { $i = $group_id_s[$www]; $alternate = (!isset($alternate) || $alternate == 'alternate') ? '' : 'alternate'; $temp = $this->model->array_for_group_id($group_id_s[$www], $rows); $data = $temp[0]; $userinfo = get_userdata($data->user_id_wd); $useremail = $userinfo ? $userinfo->user_email : ""; $username = $userinfo ? $userinfo->display_name : ""; ?> <tr id="tr_<?php echo $data->group_id; ?>" class="<?php echo $alternate; ?>"> <th class="check-column fm-column-not-hide"> <input type="checkbox" id="check_<?php echo $data->group_id; ?>" name="check[<?php echo $data->group_id; ?>]"> </th> <td id="submitid_fc" class="submitid_fc col-id" data-colname="<?php _e('ID', WDFMInstance(self::PLUGIN)->prefix);?>" <?php echo $style_id; ?>> <a href="" onclick="fm_set_input_value('task', 'edit'); fm_set_input_value('current_id',<?php echo $data->group_id; ?>); fm_form_submit(event, 'admin_form');"><?php echo $data->group_id; ?></a> </td> <td class="column-primary col-submit-date fm-column-not-hide" data-colname="<?php _e('Submit date', WDFMInstance(self::PLUGIN)->prefix);?>" <?php echo $style_date; ?>> <?php $view_url = add_query_arg( array( 'action' => 'FormMakerSubmits' . WDFMInstance(self::PLUGIN)->plugin_postfix, 'group_id' => $data->group_id, 'form_id' => $form_id, 'width' => '600', 'height' => '500', 'nonce' => $this->fm_nonce, 'TB_iframe' => '1', ), admin_url('admin-ajax.php')); $edit_url = add_query_arg( array( 'task' => 'edit', 'current_id' => $data->group_id, 'form_id' => $form_id, 'paged' => $page_number, WDFMInstance(self::PLUGIN)->nonce => wp_create_nonce(WDFMInstance(self::PLUGIN)->nonce) ), $pagination_url ); $delete_url = add_query_arg( array( 'task' => 'delete', 'current_id' => $data->group_id, 'form_id' => $form_id, 'paged' => $page_number, WDFMInstance(self::PLUGIN)->nonce => wp_create_nonce(WDFMInstance(self::PLUGIN)->nonce) ), $pagination_url ); $block_url = add_query_arg( array( 'task' => 'block_ip', 'current_id' => $data->group_id, 'form_id' => $form_id, 'paged' => $page_number, WDFMInstance(self::PLUGIN)->nonce => wp_create_nonce(WDFMInstance(self::PLUGIN)->nonce) ), $pagination_url ); $unblock_url = add_query_arg( array( 'task' => 'unblock_ip', 'current_id' => $data->group_id, 'form_id' => $form_id, 'paged' => $page_number, WDFMInstance(self::PLUGIN)->nonce => wp_create_nonce(WDFMInstance(self::PLUGIN)->nonce) ), $pagination_url ); $ip_infoin_popup_url = add_query_arg( array( 'action' => 'FormMakerIpinfoinPopup' . WDFMInstance(self::PLUGIN)->plugin_postfix, 'data_ip' => $data->ip, 'width' => '450', 'height' => '300', 'nonce' => $this->fm_nonce, 'TB_iframe' => '1', ), admin_url('admin-ajax.php')); ?> <p><strong><a href="<?php echo $edit_url; ?>" target="_blank"><?php echo $data->date; ?></a></strong></p> <div class="row-actions"> <span><a href="<?php echo $view_url; ?>" class="thickbox thickbox-preview" title="<?php _e("View submission", WDFMInstance(self::PLUGIN)->prefix); ?>"><?php _e('View', WDFMInstance(self::PLUGIN)->prefix); ?></a> |</span> <span><a href="<?php echo $edit_url; ?>" target="_blank" title="<?php _e("Edit submission", WDFMInstance(self::PLUGIN)->prefix); ?>"><?php _e('Edit', WDFMInstance(self::PLUGIN)->prefix); ?></a> |</span> <?php if ( $pdf_data && isset($pdf_data[$group_id_s[$www]]) ){ ?> <span class="no-wrap"><a href="<?php echo site_url() . '/' . $pdf_data[$group_id_s[$www]]; ?>" download ><?php _e('Download PDF', WDFMInstance(self::PLUGIN)->prefix); ?></a> |</span> <?php } ?> <span class="trash"><a href="<?php echo $delete_url; ?>" title="<?php _e("Edit submission", WDFMInstance(self::PLUGIN)->prefix); ?>" onclick="if (!confirm('<?php echo addslashes(__('Do you want to delete selected item?', WDFMInstance(self::PLUGIN)->prefix)); ?>')) {return false;}"><?php _e('Delete', WDFMInstance(self::PLUGIN)->prefix); ?></a></span> </div> <button class="toggle-row" type="button"><span class="screen-reader-text"><?php _e("Show more details", WDFMInstance(self::PLUGIN)->prefix); ?></span></button> </td> <td id="submitterip_fc" class="submitterip_fc sub-align" <?php echo $style_ip; ?> data-colname="<?php _e('Show submitter information', WDFMInstance(self::PLUGIN)->prefix);?>"> <?php if ( $data->ip ) { ?> <p><a class="thickbox-preview" href="<?php echo $ip_infoin_popup_url; ?>" title="<?php _e("Show submitter information", WDFMInstance(self::PLUGIN)->prefix); ?>" <?php echo (!in_array($data->ip, $blocked_ips)) ? '' : 'style="color: #FF0000;"'; ?>><?php echo $data->ip; ?></a></p> <div class="row-actions"> <?php if( !in_array($data->ip, $blocked_ips) ){ ?> <span><a href="<?php echo $block_url; ?>" title="<?php _e("Block IP", WDFMInstance(self::PLUGIN)->prefix); ?>"><?php _e('Block IP', WDFMInstance(self::PLUGIN)->prefix); ?></a></span> <?php } else { ?> <span><a href="<?php echo $unblock_url; ?>" title="<?php _e("Unblock IP ", WDFMInstance(self::PLUGIN)->prefix); ?>"><?php _e('Unblock IP', WDFMInstance(self::PLUGIN)->prefix); ?></a></span> <?php } ?> </div> <?php } ?> </td> <td id="submitterusername_fc" class="table_large_col submitterusername_fc sub-align" <?php echo $style_username; ?> data-colname="<?php _e('Submitter\'s Username', WDFMInstance(self::PLUGIN)->prefix);?>"> <p><?php echo $username; ?></p> </td> <td id="submitteremail_fc" class="table_large_col submitteremail_fc sub-align" <?php echo $style_useremail; ?> data-colname="<?php _e('Submitter\'s Email Address', WDFMInstance(self::PLUGIN)->prefix);?>"> <p><?php echo $useremail; ?></p> </td> <?php for ( $h = 0; $h < $m; $h++ ) { $ispaypal = false; if ( $sorted_label_types[$h] == 'type_stripe' ) { continue; } $not_label = TRUE; for ( $g = 0; $g < count($temp); $g++ ) { if ( !isset($sorted_label_types[$g]) ) { continue; } $styleStr = $this->model->hide_or_not($lists['hide_label_list'], $sorted_labels_id[$h]); $temp[$g]->element_value = $sorted_label_types[$g] != 'type_file_upload' ? esc_html($temp[$g]->element_value) : $temp[$g]->element_value; if ( $temp[$g]->element_label == $sorted_labels_id[$h] ) { if ( strpos($temp[$g]->element_value, "***map***") ) { $map_params = explode('***map***', $temp[$g]->element_value); ?> <td id="<?php echo $sorted_labels_id[$h]; ?>_fc" class="table_large_col <?php echo $sorted_labels_id[$h]; ?>_fc sub-align" <?php echo $styleStr; ?> data-colname="<?php _e('Show on Map', WDFMInstance(self::PLUGIN)->prefix);?>"> <a class="thickbox-preview" href="<?php echo add_query_arg(array( 'action' => 'FormMakerMapEditinPopup' . WDFMInstance(self::PLUGIN)->plugin_postfix, 'long' => $map_params[0], 'lat' => $map_params[1], 'width' => '620', 'height' => '550', 'nonce' => $this->fm_nonce, 'TB_iframe' => '1', ), admin_url('admin-ajax.php')); ?>" title="<?php _e("Show on Map", WDFMInstance(self::PLUGIN)->prefix); ?>"><?php _e("Show on Map", WDFMInstance(self::PLUGIN)->prefix); ?></a> </td> <?php } elseif ( strpos($temp[$g]->element_value, "*@@url@@*") ) { ?> <td id="<?php echo $sorted_labels_id[$h]; ?>_fc" class="<?php echo $sorted_labels_id[$h]; ?>_fc sub-align" <?php echo $styleStr; ?> data-colname="<?php _e('URL', WDFMInstance(self::PLUGIN)->prefix);?>"> <?php $new_files = explode("*@@url@@*", $temp[$g]->element_value); foreach ( $new_files as $new_file ) { if ( $new_file ) { $new_filename = explode('/', $new_file); $new_filename = $new_filename[count($new_filename) - 1]; ?> <a target="_blank" class="fm_fancybox" rel="group_<?php echo $www; ?>" href="<?php echo $new_file; ?>"><?php echo $new_filename; ?></a> <br /> <?php } } ?> </td> <?php } elseif ( strpos($temp[$g]->element_value, "***star_rating***") ) { $view_star_rating_array = $this->model->view_for_star_rating($temp[$g]->element_value, $temp[$g]->element_label); $stars = $view_star_rating_array[0]; ?> <td id="<?php echo $sorted_labels_id[$h]; ?>_fc" align="center" class="<?php echo $sorted_labels_id[$h]; ?>_fc sub-align" <?php echo $styleStr; ?> data-colname="<?php _e('Star rating', WDFMInstance(self::PLUGIN)->prefix);?>"><?php echo $stars; ?></td> <?php } elseif ( strpos($temp[$g]->element_value, "***matrix***") ) { ?> <td id="<?php echo $sorted_labels_id[$h]; ?>_fc" class="table_large_col <?php echo $sorted_labels_id[$h]; ?>_fc sub-align" <?php echo $styleStr; ?> data-colname="<?php _e('Matrix', WDFMInstance(self::PLUGIN)->prefix);?>"> <a class="thickbox-preview" href="<?php echo add_query_arg(array( 'action' => 'show_matrix' . WDFMInstance(self::PLUGIN)->plugin_postfix, 'matrix_params' => str_replace('#', '%23', urlencode($temp[$g]->element_value)), 'width' => '620', 'height' => '550', 'nonce' => $this->fm_nonce, 'TB_iframe' => '1', ), admin_url('admin-ajax.php')); ?>" title="<?php _e("Show Matrix", WDFMInstance(self::PLUGIN)->prefix); ?>"><?php _e("Show Matrix", WDFMInstance(self::PLUGIN)->prefix); ?></a> </td> <?php } elseif ( strpos($temp[$g]->element_value, "@@@") !== FALSE || $temp[$g]->element_value == "@@@" || $temp[$g]->element_value == "@@@@@@@@@" ) { ?> <td id="<?php echo $sorted_labels_id[$h]; ?>_fc" class="<?php echo $sorted_labels_id[$h]; ?>_fc sub-align" <?php echo $styleStr; ?> data-colname="<?php echo !empty($label_name_ids[$sorted_labels_id[$h]]) ? $label_name_ids[$sorted_labels_id[$h]] : ''; ?>"> <p><?php echo str_replace("@@@", " ", $temp[$g]->element_value); ?></p> </td> <?php } elseif ( strpos($temp[$g]->element_value, "***grading***") ) { $view_grading_array = $this->model->view_for_grading($temp[$g]->element_value); $items = $view_grading_array[0]; ?> <td id="<?php echo $sorted_labels_id[$h]; ?>_fc" class="<?php echo $sorted_labels_id[$h]; ?>_fc sub-align" <?php echo $styleStr; ?> data-colname="<?php _e('Grading', WDFMInstance(self::PLUGIN)->prefix);?>"> <p><?php echo $items; ?></p> </td> <?php } else { // check is paypal status if($sorted_labels_id[$h] == 0 && !empty($temp[$g]->element_value) ) { $ispaypal = true; } if ( strpos($temp[$g]->element_value, "***quantity***") ) { $temp[$g]->element_value = str_replace("***quantity***", " ", $temp[$g]->element_value); } if ( strpos($temp[$g]->element_value, "***property***") ) { $temp[$g]->element_value = str_replace("***property***", " ", $temp[$g]->element_value); } if ( $sorted_label_types[$h] == "type_submitter_mail" ) { $query = $wpdb->prepare('SELECT id FROM ' . $wpdb->prefix . 'formmaker_submits WHERE form_id ="%d" AND group_id="%d" AND element_value="verified**%d"', $form_id, $i, $sorted_labels_id[$h]); $isverified = $wpdb->get_var($query); if ( $isverified ) { if ( !isset($verified_emails[$sorted_labels_id[$h]]) ) { $verified_emails[$sorted_labels_id[$h]] = array(); } $verified_emails[$sorted_labels_id[$h]][] = $i; ?> <td class="<?php echo $sorted_labels_id[$h]; ?>_fc sub-align" id="<?php echo $sorted_labels_id[$h]; ?>_fc" <?php echo $styleStr; ?> data-colname="<?php echo !empty($label_name_ids[$sorted_labels_id[$h]]) ? $label_name_ids[$sorted_labels_id[$h]] : ''; ?>"> <p><?php echo $temp[$g]->element_value; ?> <div style="color:#2DA068;">( <?php _e("Verified", WDFMInstance(self::PLUGIN)->prefix); ?> <img src="<?php echo WDFMInstance(self::PLUGIN)->plugin_url . '/images/verified.png'; ?>" /> )</div> </p> </td> <?php } else { ?> <td id="<?php echo $sorted_labels_id[$h]; ?>_fc" class="<?php echo $sorted_labels_id[$h]; ?>_fc sub-align" <?php echo $styleStr; ?> data-colname="<?php echo !empty($label_name_ids[$sorted_labels_id[$h]]) ? $label_name_ids[$sorted_labels_id[$h]] : ''; ?>"> <p><?php echo $temp[$g]->element_value; ?></p> </td> <?php } } else { $element_value = str_replace("***br***", '<br>', stripslashes($temp[$g]->element_value)); $textdata = $this->gen_shorter_text($element_value, 100); ?> <td id="<?php echo $sorted_labels_id[$h]; ?>_fc" class="<?php echo $sorted_labels_id[$h]; ?>_fc sub-align" <?php echo $styleStr; ?> data-colname="<?php echo !empty($label_name_ids[$sorted_labels_id[$h]]) ? $label_name_ids[$sorted_labels_id[$h]] : ''; ?>"> <p><?php echo $textdata['text']; ?></p> </td> <?php } } $not_label = FALSE; } } if ( $not_label ) { ?> <td id="<?php echo $sorted_labels_id[$h]; ?>_fc" class="<?php echo $sorted_labels_id[$h]; ?>_fc sub-align" <?php echo $styleStr; ?>> <p> </p> </td> <?php } } if ( $ispaypal ) { ?> <td id="payment_info_fc" class="payment_info_fc sub-align" <?php echo $style_payment_info; ?> data-colname="<?php _e('Paypal information', WDFMInstance(self::PLUGIN)->prefix); ?>"> <a class="thickbox-preview" href="<?php echo add_query_arg(array( 'action' => 'paypal_info' . WDFMInstance(self::PLUGIN)->plugin_postfix, 'id' => $i, 'width' => '600', 'height' => '500', 'nonce' => $this->fm_nonce, 'TB_iframe' => '1', ), admin_url('admin-ajax.php')); ?>" title="<?php _e("Paypal information", WDFMInstance(self::PLUGIN)->prefix); ?>"> <img src="<?php echo WDFMInstance(self::PLUGIN)->plugin_url . '/images/info.png'; ?>" /> </a> </td> <?php } ?> </tr> <?php $k = 1 - $k; } } else { echo WDW_FM_Library(self::PLUGIN)->no_items('submissions'); } ?> </tbody> </table> </div> </div> </div> <div class="tablenav bottom"> <?php echo $this->pagination($pagination_url, $subs_count, $page_per_num); ?> </div> <?php if ( $sorted_label_types ) { foreach ( $sorted_label_types as $key => $sorted_label_type ) { if ( $this->model->check_radio_type($sorted_label_type) ) { $is_stats = TRUE; break; } } if ( $is_stats ) { $ajax_nonce = wp_create_nonce( WDFMInstance(self::PLUGIN)->nonce ); ?> <div class="fm-statistics"> <h2><?php echo _e('Statistics', WDFMInstance(self::PLUGIN)->prefix);?></h2> <table class="stats"> <tr> <td colspan="3"> <select id="sorted_label_key"> <option value=""><?php echo _e('- Select -', WDFMInstance(self::PLUGIN)->prefix);?></option> <?php foreach ( $sorted_label_types as $key => $sorted_label_type ) { if ( $sorted_label_type == "type_checkbox" || $sorted_label_type == "type_radio" || $sorted_label_type == "type_own_select" || $sorted_label_type == "type_country" || $sorted_label_type == "type_paypal_select" || $sorted_label_type == "type_paypal_radio" || $sorted_label_type == "type_paypal_checkbox" || $sorted_label_type == "type_paypal_shipping" ) { ?> <option value="<?php echo $key; ?>"><?php echo $sorted_label_names_original[$key]; ?></option> <?php } } ?> </select> <p class="fm_error_sorted_label_key"><?php echo _e('Please select the field!', WDFMInstance(self::PLUGIN)->prefix);?></p> </td> </tr> <tr> <td> <label style="margin-left: 7px;"><?php echo _e('Date From:', WDFMInstance(self::PLUGIN)->prefix);?></label> </td> <td> <input class="inputbox" type="text" name="startstats" id="startstats" size="9" maxlength="9" /> <?php echo _e('To:', WDFMInstance(self::PLUGIN)->prefix);?> <input class="inputbox" type="text" name="endstats" id="endstats" size="9" maxlength="9" /> </td> <td> <span class="fm-div_stats-loading spinner"></span> <button class="button" onclick="show_stats(); return false;"><?php _e('Show', WDFMInstance(self::PLUGIN)->prefix); ?></button> </td> </tr> </table> <div id="div_stats"></div> </div> <script> show_stats_url = "<?php echo add_query_arg( array('action' => 'get_stats' . WDFMInstance(self::PLUGIN)->plugin_postfix, 'task' => 'show_stats', 'nonce' => $this->fm_nonce, 'current_id' => $form_id ), $page_url); ?>"; </script> <?php } } ?> <div class="fm_modal"> <div id="fm-progressbar"> <div class="fm-progress-label">Loading...</div> </div> </div> <div class="export_progress"> <span class="exp_count"><?php echo $subs_count; ?></span> left from <?php echo $subs_count; ?> </div> <div id="sbox-overlay" onclick="toggleChBDiv(false);"></div> <script> <?php if ( isset($sorted_label_names) ) { $templabels = array_merge(array( 'submitid', 'submitterip', 'submitterusername', 'submitteremail', ), $sorted_labels_id); $sorted_label_names_for_check = array_merge(array( 'ID', "Submitter's IP", "Submitter's Username", "Submitter's Email Address", ), $sorted_label_names_original); } else { $templabels = array( 'submitid', 'submitterip', 'submitterusername', 'submitteremail', ); $sorted_label_names_for_check = array( 'ID', "Submitter's IP", 'Submitter\'s Username', 'Submitter\'s Email Address', ); } ?> function clickLabChBAll( ChBAll ) { ChBAll.classList.remove("fm-remove_before"); if ( ChBAll.checked ) { document.forms.admin_form.hide_label_list.value = ''; var ChBDivInputs = document.getElementById('ChBDiv').getElementsByTagName('input'); for (var i = 1, input; input = ChBDivInputs[i++]; ) { if ( input.id != 'ChBAll') { input.checked = ChBAll.checked; } } } else { document.forms.admin_form.hide_label_list.value = '@<?php echo implode($templabels, '@@') ?>@' + '@payment_info@'; for (i = 0; i <= ChBAll.form.length; i++) { if (typeof(ChBAll.form[i]) != "undefined") { if (ChBAll.form[i].type == "checkbox") { ChBAll.form[i].checked = false; } } } } renderColumns(); } </script> <div id="ChBDiv"> <p class="add-col-header"><?php _e('Select columns', WDFMInstance(self::PLUGIN)->prefix); ?></p> <div class="fm_check_labels"> <input type="checkbox" <?php echo ( !$lists['hide_label_list'] ) ? 'checked="checked"' : ''; ?> onclick="clickLabChBAll(this)" id="ChBAll" /> <label for="ChBAll"><?php _e('All', WDFMInstance(self::PLUGIN)->prefix); ?></label> </div> <?php foreach ( $templabels as $key => $curlabel ) { if ( strpos($lists['hide_label_list'], '@' . $curlabel . '@') === FALSE ) { ?> <div class="fm_check_labels"> <input type="checkbox" checked="checked" onclick="clickLabChB('<?php echo $curlabel; ?>', this)" id="fm_check_id_<?php echo $curlabel; ?>" /> <label for="fm_check_id_<?php echo $curlabel; ?>"> <?php echo stripslashes($sorted_label_names_for_check[$key]); ?></label> </div> <?php } else { ?> <div class="fm_check_labels"> <input type="checkbox" onclick="clickLabChB('<?php echo $curlabel; ?>', this)" id="fm_check_id_<?php echo $curlabel; ?>" /> <label for="fm_check_id_<?php echo $curlabel; ?>"> <?php echo stripslashes($sorted_label_names_for_check[$key]); ?></label> </div> <?php } } $ispaypal = FALSE; for ( $i = 0; $i < count($sorted_label_names); $i++ ) { if ( $sorted_label_types[$i] == 'type_paypal_payment_status' || $sorted_label_types[$i] == 'type_stripe' ) { $ispaypal = TRUE; } } if ( $ispaypal ) { ?> <div class="fm_check_labels"> <input type="checkbox" onclick="clickLabChB('payment_info', this)" id="fm_check_payment_info" <?php echo (strpos($lists['hide_label_list'], '@payment_info@') === FALSE) ? 'checked="checked"' : ''; ?> /> <label for="fm_check_payment_info"><?php _e('Payment info', WDFMInstance(self::PLUGIN)->prefix); ?></label> </div> <?php } ?> <div class="done-cont"> <button onclick="toggleChBDiv(false); return false;" class="button button-primary"><?php _e('Done', WDFMInstance(self::PLUGIN)->prefix); ?></button> </div> </div> <script type="text/javascript"> var index = 1; var minLimit = 1; var total_count = <?php echo $subs_count; ?>; var page_num_update = false; var page_num = <?php echo !empty($fm_settings['ajax_export_per_page']) ? $fm_settings['ajax_export_per_page'] : 1000; ?>; var groupids = <?php echo json_encode($groupids);?>; var groupids_string = ''; /** * Export submissions. * * @param string type * @param int limitstart * @param null ids */ function export_submissions(type, limitstart, ids) { var verified_emails = jQuery('#verified_emails').val(); if ( limitstart == 0) { jQuery('.fm_modal').show(); loading_progress(total_count, limitstart); if( typeof ids == "undefined" || ids === null ) { var ids = groupids.slice(limitstart, page_num); groupids_string = ids.toString(); } } jQuery.ajax({ type: "POST", dataType: "json", url: "<?php echo add_query_arg(array( 'form_id' => $form_id, 'send_header' => 0, 'nonce' => $this->fm_nonce, ), admin_url('admin-ajax.php')); ?>&action=generete_" + type + "<?php echo WDFMInstance(self::PLUGIN)->plugin_postfix; ?>&limitstart=" + limitstart, data: { page_num: page_num, page_num_update: page_num_update, groupids: groupids_string, verified_emails: verified_emails }, beforeSend: function () { if ( page_num <= total_count ) { jQuery('.fm_modal').show(); } }, success: function (response, textStatus, xhr) { if ( limitstart < total_count ) { limitstart += page_num; ++index; if ( index <= total_count ) { end = index*page_num; start = end - page_num; ids = groupids.slice(start, end); groupids_string = ids.toString(); } if ( limitstart >= total_count ) { ids = ''; index = 1; start = page_num; } if ( ids ) { export_submissions(type, limitstart, ids); } else { ajax_export_end(total_count, type, limitstart); } loading_progress(total_count, limitstart); } else { ajax_export_end(total_count, type, limitstart); } }, error: function (xhr, ajaxOptions, thrownError) { limitstart = 0; index = 1; page_num = parseInt(page_num / 2); if ( page_num >= minLimit ) { page_num_update = true; export_submissions(type, 0, null); } if ( page_num < minLimit ) { page_num = parseInt(page_num * 2); page_num_update = false; jQuery('.fm_modal').hide(); jQuery('.fm-unexpected_error_message').show(); return false; } } }); } /** * Ajax export end. * * @param int total_count * @param string type * @param int limitstart */ function ajax_export_end(total_count, type, limitstart) { jQuery('.fm_modal').hide(); jQuery('.fm-unexpected_error_message').hide(); loading_progress(total_count, 0); window.location = "<?php echo add_query_arg(array( 'form_id' => $form_id, 'send_header' => 1, 'nonce' => $this->fm_nonce, ), admin_url('admin-ajax.php')); ?>&action=generete_" + type + "<?php echo WDFMInstance(self::PLUGIN)->plugin_postfix; ?>&limitstart=" + limitstart; } /** * Loading progress. * * @param int count * @param int start */ function loading_progress(count, start) { var text = 'Loading ...'; var progressbar = jQuery("#fm-progressbar"); var progressLabel = jQuery(".fm-progress-label"); progressbar.progressbar({ max: count }); if ( start != 0 ) { var interval = Math.round( (progressbar.progressbar("value") * 100) / parseInt(count) ); text = interval + ' %'; } progressbar.progressbar("value", start); progressLabel.text(text); progressbarValue = progressbar.find(".fm-progress-label"); progressbarValue.css({ "color": '#444', }); } function remove_all() { if (document.getElementById('startdate')) { document.getElementById('startdate').value = ''; } if (document.getElementById('enddate')) { document.getElementById('enddate').value = ''; } if (document.getElementById('id_search')) { document.getElementById('id_search').value = ''; } if (document.getElementById('ip_search')) { document.getElementById('ip_search').value = ''; } if (document.getElementById('username_search')) { document.getElementById('username_search').value = ''; } if (document.getElementById('useremail_search')) { document.getElementById('useremail_search').value = ''; } <?php foreach( $sorted_label_types as $slt_index => $slt_val ) { if ($slt_val != "type_mark_map" && $slt_val != "type_stripe") { ?> document.getElementById('<?php echo $form_id . '_' . $sorted_labels_id[$slt_index] . '_search'; ?>').value = ''; <?php } if ($slt_val == "type_submitter_mail") { ?> if (document.getElementById('<?php echo $form_id . '_' . $sorted_labels_id[$slt_index] . '_search_verified'; ?>')) { document.getElementById('<?php echo $form_id . '_' . $sorted_labels_id[$slt_index] . '_search_verified'; ?>').checked = false; } <?php } } ?> } <?php if ( $is_search ) { ?> document.getElementById('fm-fields-filter').style.display = ''; <?php } ?> </script> <input id="form_id" name="form_id" type="hidden" value="<?php echo $form_id; ?>"> <input type="hidden" name="asc_or_desc" id="asc_or_desc" value="<?php echo $asc_or_desc; ?>"/> <input type="hidden" name="order_by" id="order_by" value="<?php echo $order_by; ?>"/> <?php } /** * Show stats. * * @param array $params * @return string */ public function show_stats( $params = array() ) { ob_start(); $sorted_label_name_original = $params['sorted_label_name_original']; $choices_labels = $params['choices_labels']; $choices_count = $params['choices_count']; $all = $params['all']; $unanswered = $params['unanswered']; $colors = $params['colors']; $choices_colors = $params['choices_colors']; ?> <br /> <div class="field-label"><?php echo stripslashes($sorted_label_name_original); ?></div> <table class="adminlist"> <thead> <tr> <th width="20%"><?php _e('Choices', WDFMInstance(self::PLUGIN)->prefix); ?></th> <th><?php _e('Percentage', WDFMInstance(self::PLUGIN)->prefix); ?></th> <th width="10%" style="text-align: left;"><?php _e('Count', WDFMInstance(self::PLUGIN)->prefix); ?></th> </tr> </thead> <?php $k = 0; if ( !empty($choices_labels) ) { foreach ( $choices_labels as $key => $choices_label ) { if ( strpos($choices_label, "***quantity***") ) { $choices_label = str_replace("***quantity***", " ", $choices_label); } if ( strpos($choices_label, "***property***") ) { $choices_label = str_replace("***property***", " ", $choices_label); } ?> <tr> <td class="label<?php echo $k; ?>"><?php echo str_replace("***br***", '<br>', $choices_label) ?></td> <td> <div class="fm-bordered-progress bordered" style="width:<?php echo ($choices_count[$key] / ($all - $unanswered)) * 100; ?>%; background-color:<?php echo $colors[$key % 2]; ?>;"></div> <div <?php echo($choices_count[$key] / ($all - $unanswered) != 1 ? 'class="fm-bordered-progress bordered' . $k . '"' : "") ?> style="width:<?php echo 100 - ($choices_count[$key] / ($all - $unanswered)) * 100; ?>%;"><span class="fm-bordered-progress-percent"><?php echo round( ($choices_count[$key] / ($all - $unanswered)) * 100 , 2 ); ?> %</span></div> </td> <td> <div> <div class="fm-bordered-count-arrow"style="border-right:8px solid <?php echo $choices_colors[$key % 2]; ?>;"></div> <div class="fm-bordered-count" style="background-color:<?php echo $choices_colors[$key % 2]; ?>;"> <?php echo $choices_count[$key] ?> </div> </div> </td> </tr> <tr> <td colspan="3"> </td> </tr> <?php $k = 1 - $k; } } if ( $unanswered ) { ?> <tr> <td colspan="2" style="text-align:right; color: #000;"><?php _e('Unanswered', WDFMInstance(self::PLUGIN)->prefix); ?></td> <td><strong style="margin-left:10px;"><?php echo $unanswered; ?></strong></td> </tr> <?php } ?> <tr> <td colspan="2" style="text-align:right; color: #000;"><strong><?php _e('Total', WDFMInstance(self::PLUGIN)->prefix); ?></strong></td> <td><strong style="margin-left:10px;"><?php echo $all; ?></strong></td> </tr> </table> <?php return ob_get_clean(); die(); } /** * Edit page. * * @param array $params */ public function edit( $params = array() ) { // TODO: Change this function to standard. echo $this->topbar(); $form = $params['form']; $current_id = $params['current_id']; $rows = $params['rows']; $labels_id = $params['labels_id']; $labels_name = $params['labels_name']; $labels_type = $params['labels_type']; $username = $params['username']; $useremail = $params['useremail']; ?> <div class="wrap"> <?php // Generate message container by message id or directly by message. $message_id = WDW_FM_Library(self::PLUGIN)->get('message', 0); $message = WDW_FM_Library(self::PLUGIN)->get('msg', ''); echo WDW_FM_Library(self::PLUGIN)->message_id($message_id, $message); ?> <form action="admin.php?page=submissions<?php echo WDFMInstance(self::PLUGIN)->menu_postfix; ?>" method="post" id="adminForm" name="adminForm" class="form_maker_submissions_edit wd-form"> <div class="wd-page-title wd-header"> <h1 class="wp-heading-inline"><?php _e('Edit Submission', WDFMInstance(self::PLUGIN)->prefix); ?></h1> </div> <div class="wd-buttons"> <button class="button button-primary button-large" onclick="fm_set_input_value('task', 'save'); fm_set_input_value('current_id', <?php echo $current_id; ?>); fm_form_submit(event, 'adminForm');"><?php _e('Save', WDFMInstance(self::PLUGIN)->prefix); ?></button> </div> <div class="wd-table"> <div class="wd-table-col wd-table-col-50 wd-table-col-left"> <div class="wd-box-section"> <div class="wd-box-content non-editable"> <div class="wd-group"> <label class="wd-label" for="id"><?php _e('Form', WDFMInstance(self::PLUGIN)->prefix); ?></label> <span><?php echo $form->title; ?></span> </div> <div class="wd-group"> <label class="wd-label" for="id"><?php _e('ID', WDFMInstance(self::PLUGIN)->prefix); ?></label> <span><?php echo $rows[0]->group_id; ?></span> </div> <div class="wd-group"> <label class="wd-label" for="id"><?php _e('Date', WDFMInstance(self::PLUGIN)->prefix); ?></label> <span><?php echo $rows[0]->date; ?></span> </div> <div class="wd-group"> <label class="wd-label" for="id"><?php _e('IP', WDFMInstance(self::PLUGIN)->prefix); ?></label> <span><?php echo $rows[0]->ip; ?></span> </div> <div class="wd-group"> <label class="wd-label" for="id"><?php _e('Submitter\'s Username', WDFMInstance(self::PLUGIN)->prefix); ?></label> <span><?php echo $username; ?></span> </div> <div class="wd-group"> <label class="wd-label" for="id"><?php _e('Submitter\'s Email Address', WDFMInstance(self::PLUGIN)->prefix); ?></label> <span><?php echo $useremail; ?></span> </div> </div> </div> </div> <div class="wd-table-col wd-table-col-50 wd-table-col-right"> <div class="wd-box-section"> <div class="wd-box-content"> <?php foreach ( $labels_id as $key => $label_id ) { if ( $this->model->check_type_for_edit_function($labels_type[$key]) ) { $element_value = $this->model->check_for_submited_label($rows, $label_id); if ( $element_value == "continue" ) { continue; } switch ( $labels_type[$key] ) { case 'type_checkbox': $choices = explode('***br***', $element_value); $choices = array_slice($choices, 0, count($choices) - 1); ?> <div class="wd-group"> <label class="wd-label"><?php echo $labels_name[$key]; ?></label> <?php foreach ( $choices as $choice_key => $choice ) { ?> <input type="text" name="submission_<?php echo $label_id . '_' . $choice_key; ?>" id="submission_<?php echo $label_id . '_' . $choice_key; ?>" value="<?php echo $choice; ?>" size="80" /> <?php } ?> </div> <?php break; case 'type_paypal_payment_status': ?> <div class="wd-group"> <label class="wd-label"><?php echo $labels_name[$key]; ?></label> <select name="submission_0" id="submission_0"> <option value=""></option> <option value="Canceled"><?php echo _e('Canceled', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Cleared"><?php echo _e('Cleared', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Cleared by payment review"><?php echo _e('Cleared by payment review', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Completed"><?php echo _e('Completed', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Denied"><?php echo _e('Denied', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Failed"><?php echo _e('Failed', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Held"><?php echo _e('Held', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="In progress"><?php echo _e('In progress', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="On hold"><?php echo _e('On hold', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Paid"><?php echo _e('Paid', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Partially refunded"><?php echo _e('Partially refunded', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Pending verification"><?php echo _e('Pending verification', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Placed"><?php echo _e('Placed', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Processing"><?php echo _e('Processing', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Refunded"><?php echo _e('Refunded', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Refused"><?php echo _e('Refused', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Removed"><?php echo _e('Removed', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Returned"><?php echo _e('Returned', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Reversed"><?php echo _e('Reversed', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Temporary hold"><?php echo _e('Temporary hold', WDFMInstance(self::PLUGIN)->prefix); ?></option> <option value="Unclaimed"><?php echo _e('Unclaimed', WDFMInstance(self::PLUGIN)->prefix); ?></option> </select> <script> var element = document.getElementById("submission_0"); element.value = "<?php echo $element_value; ?>"; </script> </div> <?php break; case 'type_star_rating': $star_rating_array = $this->model->images_for_star_rating($element_value, $label_id); $edit_stars = $star_rating_array[0]; $stars_value = $star_rating_array[1]; ?> <div class="wd-group"> <label class="wd-label"><?php echo $labels_name[$key]; ?></label> <?php echo $edit_stars; ?> <input type="hidden" id="<?php echo $label_id; ?>_star_amountform_id_temp" name="<?php echo $label_id; ?>_star_amountform_id_temp" value="<?php echo $stars_value[0]; ?>"> <input type="hidden" name="<?php echo $label_id; ?>_star_colorform_id_temp" id="<?php echo $label_id; ?>_star_colorform_id_temp" value="<?php echo $stars_value[1]; ?>"> <input type="hidden" id="<?php echo $label_id; ?>_selected_star_amountform_id_temp" name="<?php echo $label_id; ?>_selected_star_amountform_id_temp" value="<?php echo $stars_value[0]; ?>"> <input type="hidden" name="submission_<?php echo $label_id; ?>" id="submission_<?php echo $label_id; ?>" value="<?php echo $element_value; ?>" size="80" /> </div> <?php break; case "type_scale_rating": $scale_rating_array = $this->model->params_for_scale_rating($element_value, $label_id); $scale = $scale_rating_array[0]; $scale_radio = $scale_rating_array[1]; $checked = $scale_rating_array[2]; ?> <div class="wd-group"> <label class="wd-label"><?php echo $labels_name[$key]; ?></label> <?php echo $scale; ?> <input type="hidden" id="<?php echo $label_id; ?>_scale_checkedform_id_temp" name="<?php echo $label_id; ?>_scale_checkedform_id_temp" value="<?php echo $scale_radio[1]; ?>"> <input type="hidden" name="submission_<?php echo $label_id; ?>" id="submission_<?php echo $label_id; ?>" value="<?php echo $element_value; ?>" size="80" /> </div> <?php break; case 'type_range': $range = $this->model->params_for_type_range($element_value, $label_id); ?> <div class="wd-group type_range"> <label class="wd-label"><?php echo $labels_name[$key]; ?></label> <?php echo $range; ?> <input type="hidden" name="submission_<?php echo $label_id; ?>" id="submission_<?php echo $label_id; ?>" value="<?php echo $element_value; ?>" size="80" /> </div> <?php break; case 'type_spinner': ?> <div class="wd-group"> <label class="wd-label"><?php echo $labels_name[$key]; ?></label> <input type="text" name="submission_<?php echo $label_id; ?>" id="submission_<?php echo $label_id; ?>" value="<?php echo str_replace("*@@url@@*", '', $element_value); ?>" size="20" /> </div> <?php break; case 'type_grading': $type_grading_array = $this->model->params_for_type_grading($element_value, $label_id); $garding = $type_grading_array[0]; $garding_value = $type_grading_array[1]; $sum = $type_grading_array[2]; $items_count = $type_grading_array[3]; $element_value1 = $type_grading_array[4]; ?> <div class="wd-group type_grading"> <label class="wd-label"><?php echo $labels_name[$key]; ?></label> <?php echo $garding; ?> <p style="padding-left: 80px;"> <span id="<?php echo $label_id; ?>_grading_sumform_id_temp"><?php echo $sum; ?></span> / <span id="<?php echo $label_id; ?>_grading_totalform_id_temp"><?php echo $garding_value[$items_count]; ?></span> <span id="<?php echo $label_id; ?>_text_elementform_id_temp"></span> </p> <input type="hidden" id="<?php echo $label_id; ?>_element_valueform_id_temp" name="<?php echo $label_id; ?>_element_valueform_id_temp" value="<?php echo $element_value1; ?>" /> <input type="hidden" id="<?php echo $label_id; ?>_grading_totalform_id_temp" name="<?php echo $label_id; ?>_grading_totalform_id_temp" value="<?php echo $garding_value[$items_count]; ?>" /> <input type="hidden" name="submission_<?php echo $label_id; ?>" id="submission_<?php echo $label_id; ?>" value="<?php echo $element_value; ?>" size="80" /> </div> <?php break; case 'type_matrix': $type_matrix_array = $this->model->params_for_type_matrix($element_value, $label_id); $matrix = $type_matrix_array[0]; $new_filename = $type_matrix_array[1]; ?> <div class="wd-group type_matrix"> <label class="wd-label"><?php echo $labels_name[$key]; ?></label> <input type="hidden" id="<?php echo $label_id; ?>_matrixform_id_temp" name="<?php echo $label_id; ?>_matrixform_id_temp" value="<?php echo $new_filename; ?>"> <?php echo $matrix; ?> <input type="hidden" name="submission_<?php echo $label_id; ?>" id="submission_<?php echo $label_id; ?>" value="<?php echo $element_value; ?>" size="80" /> </div> <?php break; default: if ( strpos($element_value, "@@@") !== FALSE ) { $element_value = str_replace("@@@", " ", $element_value); } ?> <div class="wd-group"> <label class="wd-label" for="submission_<?php echo $label_id; ?>"><?php echo $labels_name[$key]; ?></label> <input type="text" name="submission_<?php echo $label_id; ?>" id="submission_<?php echo $label_id; ?>" value="<?php echo str_replace("*@@url@@*", '', $element_value); ?>" size="80" /> </div> <?php break; } } } ?> </div> </div> </div> </div> <?php wp_nonce_field(WDFMInstance(self::PLUGIN)->nonce, WDFMInstance(self::PLUGIN)->nonce); ?> <input type="hidden" name="option" value="com_formmaker" /> <input type="hidden" id="current_id" name="current_id" value="<?php echo $rows[0]->group_id; ?>" /> <input type="hidden" name="form_id" value="<?php echo $rows[0]->form_id; ?>" /> <input type="hidden" name="date" value="<?php echo $rows[0]->date; ?>" /> <input type="hidden" name="ip" value="<?php echo $rows[0]->ip; ?>" /> <input type="hidden" id="task" name="task" value="" /> <input type="hidden" value="<?php echo WDFMInstance(self::PLUGIN)->plugin_url; ?>" id="form_plugins_url" /> </form> </div> <?php } /** * Print saelect form. * * @param array $params */ private function saelect_form( $params = array() ) { if ( !empty($params['forms']) ) { $page = $params['page']; $page_url = $params['page_url']; $order_by = $params['order_by']; $asc_or_desc = $params['asc_or_desc']; ?> <select name="form_id" id="form_id"> <option value="0"><?php _e('- Select a form -', WDFMInstance(self::PLUGIN)->prefix); ?></option> <?php foreach ( $params['forms'] as $form ) { $selected = ( $form->id == $params['id'] ) ? 'selected="selected"' : ''; $show_url = add_query_arg( array( 'page' => $page, 'task' => 'display', 'current_id' => $form->id, 'order_by' => $order_by, 'asc_or_desc' => $asc_or_desc ), admin_url('admin.php')); echo '<option value="' . $form->id . '" ' . $selected . ' data-submission-href="' . $show_url . '">' . $form->title . '</option>'; } ?> </select> <script> jQuery(document).ready(function () { jQuery( '#form_id' ).on("change", function () { if (jQuery(this).val() > 0) { var href = jQuery( '#form_id option:selected' ).attr( 'data-submission-href' ); location.href = href; } }); }); </script> <?php } } /** * Generate short text. * * @param string $text * @param int $chars_limit * * @return array. */ public function gen_shorter_text( $text = '', $chars_limit = 0 ) { $data = array(); // Check if length is larger than the character limit. if ( strlen($text) > $chars_limit && $text == strip_tags($text) ) { // If so, cut the string at the character limit. $new_text = mb_substr( $text, 0, $chars_limit,"utf-8" ); // Trim off white space. $new_text = trim($new_text); // Add at end of text ... $data['status'] = TRUE; $data['text'] = $new_text . "..."; } // If not just return the text and status as is. else { $data['status'] = FALSE; $data['text'] = $text; } return $data; } }