?? File Manager Pro
v10.0.2 | PHP: 8.2.31
Server: LiteSpeed
2026-06-26 05:45:23
??
/
/
home
/
kaskqphv
/
angka-winkaskus.com
/
wp-content
/
plugins
/
wpvivid-backuprestore
/
includes
/
snapshot
??
Editing: class-wpvivid-snapshots-list.php
<?php if (!defined('WPVIVID_PLUGIN_DIR')) { die; } if ( ! class_exists( 'WP_List_Table' ) ) { require_once( ABSPATH . 'wp-admin/includes/class-wp-list-table.php' ); } if ( ! class_exists( 'WPvivid_Snapshots_List_Ex' ) ) { class WPvivid_Snapshots_List_Ex extends WP_List_Table { public $page_num; public $Snapshots_list; public function __construct( $args = array() ) { parent::__construct( array( 'plural' => 'snapshots', 'screen' => 'snapshots' ) ); } protected function get_table_classes() { return array( 'widefat striped' ); } public function get_columns() { $columns = array(); $columns['cb'] = __( 'cb', 'wpvivid-snapshot-database' ); $columns['wpvivid_time'] = __( 'Time', 'wpvivid-snapshot-database' ); $columns['wpvivid_type'] = __( 'Type', 'wpvivid-snapshot-database' ); $columns['wpvivid_prefix'] = __( 'Prefix', 'wpvivid-snapshot-database' ); $columns['wpvivid_comment'] = __( 'Comment', 'wpvivid-snapshot-database' ); $columns['wpvivid_actions'] = __( 'Actions', 'wpvivid-snapshot-database' ); return $columns; } public function column_cb( $data ) { echo '<input type="checkbox"/>'; } public function _column_wpvivid_time( $data ) { $time = gmdate('M-d-Y H:i', $data['time']); echo '<td>' . esc_html( $time ) . '</td>'; } public function _column_wpvivid_type( $data ) { echo '<td>' . esc_html( $data['type'] ) . '</td>'; } public function _column_wpvivid_prefix( $data ) { echo '<td>' . esc_html( $data['id'] ) . '</td>'; } public function _column_wpvivid_comment( $data ) { echo '<td>' . esc_html($data['comment'] ) . '</td>'; } public function _column_wpvivid_actions( $data ) { echo '<td> <div style="cursor:pointer;float:left;"> <span class="dashicons dashicons-update wpvivid-dashicons-green wpvivid-snapshot-restore"></span> <span class="wpvivid-snapshot-restore">Restore</span> <span style="width:1rem;">|</span> <span class="dashicons dashicons-trash wpvivid-dashicons-grey wpvivid-snapshot-delete"></span> <span class="wpvivid-snapshot-delete">Delete</span> </div> </td>'; } public function set_list($Snapshots_list,$page_num=1) { $this->Snapshots_list=$Snapshots_list; $this->page_num=$page_num; } public function get_pagenum() { if($this->page_num=='first') { $this->page_num=1; } else if($this->page_num=='last') { $this->page_num=$this->_pagination_args['total_pages']; } $pagenum = $this->page_num ? $this->page_num : 0; if ( isset( $this->_pagination_args['total_pages'] ) && $pagenum > $this->_pagination_args['total_pages'] ) { $pagenum = $this->_pagination_args['total_pages']; } return max( 1, $pagenum ); } public function prepare_items() { $columns = $this->get_columns(); $hidden = array(); $sortable = array(); $this->_column_headers = array($columns, $hidden, $sortable); $total_items =sizeof($this->Snapshots_list); $this->set_pagination_args( array( 'total_items' => $total_items, 'per_page' => 10, ) ); } public function has_items() { return !empty($this->Snapshots_list); } public function display_rows() { $this->_display_rows($this->Snapshots_list); } private function _display_rows($Snapshots_list) { $page=$this->get_pagenum(); $page_file_list=array(); $count=0; while ( $count<$page ) { $page_file_list = array_splice( $Snapshots_list, 0, 10); $count++; } foreach ( $page_file_list as $data) { $this->single_row($data); } } public function single_row($data) { ?> <tr class='wpvivid-snapshot-row' slug="<?php echo esc_attr($data['id']);?>"> <?php $this->single_row_columns( $data ); ?> </tr> <?php } protected function pagination( $which ) { if ( empty( $this->_pagination_args ) ) { return; } $total_items = $this->_pagination_args['total_items']; $total_pages = $this->_pagination_args['total_pages']; $infinite_scroll = false; if ( isset( $this->_pagination_args['infinite_scroll'] ) ) { $infinite_scroll = $this->_pagination_args['infinite_scroll']; } if ( 'top' === $which && $total_pages > 1 ) { $this->screen->render_screen_reader_content( 'heading_pagination' ); } $output = '<span class="displaying-num">' . sprintf( _n( '%s item', '%s items', $total_items ), number_format_i18n( $total_items ) ) . '</span>'; $current = $this->get_pagenum(); $page_links = array(); $total_pages_before = '<span class="paging-input">'; $total_pages_after = '</span></span>'; $disable_first = $disable_last = $disable_prev = $disable_next = false; if ( $current == 1 ) { $disable_first = true; $disable_prev = true; } if ( $current == 2 ) { $disable_first = true; } if ( $current == $total_pages ) { $disable_last = true; $disable_next = true; } if ( $current == $total_pages - 1 ) { $disable_last = true; } if ( $disable_first ) { $page_links[] = '<span class="tablenav-pages-navspan button disabled" aria-hidden="true">«</span>'; } else { $page_links[] = sprintf( "<div class='first-page button'><span class='screen-reader-text'>%s</span><span aria-hidden='true'>%s</span></div>", __( 'First page' ), '«' ); } if ( $disable_prev ) { $page_links[] = '<span class="tablenav-pages-navspan button disabled" aria-hidden="true">‹</span>'; } else { $page_links[] = sprintf( "<div class='prev-page button' value='%s'><span class='screen-reader-text'>%s</span><span aria-hidden='true'>%s</span></div>", $current, __( 'Previous page' ), '‹' ); } if ( 'bottom' === $which ) { $html_current_page = $current; $total_pages_before = '<span class="screen-reader-text">' . __( 'Current Page' ) . '</span><span id="table-paging" class="paging-input"><span class="tablenav-paging-text">'; } else { $html_current_page = sprintf( "%s<input class='current-page' id='current-page-selector-filelist' type='text' name='paged' value='%s' size='%d' aria-describedby='table-paging' /><span class='tablenav-paging-text'>", '<label for="current-page-selector-filelist" class="screen-reader-text">' . __( 'Current Page' ) . '</label>', $current, strlen( $total_pages ) ); } $html_total_pages = sprintf( "<span class='total-pages'>%s</span>", number_format_i18n( $total_pages ) ); $page_links[] = $total_pages_before . sprintf( _x( '%1$s of %2$s', 'paging' ), $html_current_page, $html_total_pages ) . $total_pages_after; if ( $disable_next ) { $page_links[] = '<span class="tablenav-pages-navspan button disabled" aria-hidden="true">›</span>'; } else { $page_links[] = sprintf( "<div class='next-page button' value='%s'><span class='screen-reader-text'>%s</span><span aria-hidden='true'>%s</span></div>", $current, __( 'Next page' ), '›' ); } if ( $disable_last ) { $page_links[] = '<span class="tablenav-pages-navspan button disabled" aria-hidden="true">»</span>'; } else { $page_links[] = sprintf( "<div class='last-page button'><span class='screen-reader-text'>%s</span><span aria-hidden='true'>%s</span></div>", __( 'Last page' ), '»' ); } $pagination_links_class = 'pagination-links'; if ( ! empty( $infinite_scroll ) ) { $pagination_links_class .= ' hide-if-js'; } $output .= "\n<span class='$pagination_links_class'>" . join( "\n", $page_links ) . '</span>'; if ( $total_pages ) { $page_class = $total_pages < 2 ? ' one-page' : ''; } else { $page_class = ' no-pages'; } $this->_pagination = "<div class='tablenav-pages{$page_class}'>$output</div>"; echo $this->_pagination; } protected function display_tablenav( $which ) { $css_type = ''; if ( 'top' === $which ) { wp_nonce_field( 'bulk-' . $this->_args['plural'] ); $css_type = 'margin: 0 0 10px 0'; } else if( 'bottom' === $which ) { $css_type = 'margin: 10px 0 0 0'; } $total_pages = $this->_pagination_args['total_pages']; if ( $total_pages >1 && 'top' === $which) { ?> <div class="tablenav <?php echo esc_attr( $which ); ?>" style="<?php echo esc_attr($css_type); ?>"> <input type="submit" id="wpvivid_delete_snapshots_action" class="button action" value="Delete the selected snapshots"> <?php $this->extra_tablenav( $which ); $this->pagination( $which ); ?> <br class="clear" /> </div> <?php } else if($total_pages >1) { ?> <div class="tablenav <?php echo esc_attr( $which ); ?>" style="<?php echo esc_attr($css_type); ?>"> <?php $this->extra_tablenav( $which ); $this->pagination( $which ); ?> <br class="clear" /> </div> <?php } else if($total_pages <=1 && 'top' === $which) { ?> <input type="submit" id="wpvivid_delete_snapshots_action" class="button action" value="Delete the selected snapshots"> <p></p> <?php } } public function display() { $singular = $this->_args['singular']; $this->display_tablenav( 'top' ); $this->screen->render_screen_reader_content( 'heading_list' ); ?> <table class="wp-list-table <?php echo esc_attr(implode( ' ', $this->get_table_classes() )); ?>"> <thead> <tr> <?php $this->print_column_headers(); ?> </tr> </thead> <tbody id="the-list" <?php if ( $singular ) { echo esc_attr(" data-wp-lists='list:$singular'"); } ?> > <?php $this->display_rows_or_placeholder(); ?> </tbody> </table> <?php $this->display_tablenav( 'bottom' ); } } }
?? Save Changes
? Cancel