settings_api = new WeDevs_Settings_API; } public function register() { add_filter( 'notifysms_setting_section', array($this, 'set_smsoutbox_setting_section' ) ); add_filter( 'notifysms_setting_fields', array($this, 'set_smsoutbox_setting_field' ) ); add_action( 'notifysms_setting_fields_custom_html', array($this, 'display_smsoutbox_page'), 10, 1); } public function set_smsoutbox_setting_section( $sections ) { $sections[] = array( 'id' => 'notifysms_smsoutbox_setting', 'title' => __( 'WhatsApp Outbox', '360notify' ), 'submit_button' => '', // 'action' => 'notifysms_sms_form', // 'action_url' => admin_url('admin-post.php'), ); return $sections; } /** * Returns all the settings fields * * @return array settings fields */ public function set_smsoutbox_setting_field( $setting_fields ) { return $setting_fields; } public function display_smsoutbox_page($form_id) { if($form_id != 'notifysms_smsoutbox_setting') { return; } global $wpdb; $db_table_name = NOTIFY_DB_TABLE_NAME; $count_result = wp_cache_get('count_' . $db_table_name, 'count_group'); if ($count_result === false) { // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery.DirectQuery $query = "SELECT COUNT(*) as count FROM {$db_table_name}"; // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery , WordPress.DB.PreparedSQL.NotPrepared $count_result = $wpdb->get_results($query); wp_cache_set('count_' . $db_table_name, $count_result, 'count_group'); } if (!empty($count_result)) { foreach ($count_result as $result) { $total = $result->count; } } $total_page = ceil($total / 10); $total_show_pages= 5; $middle_page_add_on_number = floor($total_show_pages/2); if(isset($_GET['pageno'])){ $current_page = sanitize_text_field($_GET['pageno']); }else{ $current_page = 1; } if($total_page < $total_show_pages) { $start_page = 1; $end_page = $total_page; } else { if(($current_page + $middle_page_add_on_number) > $total_page) { $start_page = $total_page - $total_show_pages + 1; $end_page = $total_page; } else if($current_page > $middle_page_add_on_number) { $start_page = $current_page - $middle_page_add_on_number; $end_page = $start_page + $total_show_pages - 1; } else { $start_page = 1; $end_page = $total_show_pages; } } $first_page = 1; $last_page = ($total_page > 0 ? $total_page : $first_page); $previous_page = ($current_page>1 ? $current_page -1 : 1); $next_page = ($current_page<$total_page ? $current_page +1 : $last_page); $admin_url = admin_url('options-general.php?page=360notify-woocoommerce-setting'); $pageno = ($current_page - 1) * 10; ?>
prepare("SELECT * FROM {$db_table_name} ORDER BY id DESC LIMIT %d, 10",$pageno); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery , WordPress.DB.PreparedSQL.NotPrepared $results = $wpdb->get_results($query); wp_cache_set($cache_key, $results, $cache_group); } foreach ( $results as $print ) { ?>
date);?> sender);?> recipient);?> message);?> status);?>