bbp_admin_upgrade_page()
Admin repair page
Description Description
Source Source
File: includes/admin/tools/upgrade.php
function bbp_admin_upgrade_page() {
// Get the registered upgrade tools
$tools = bbp_admin_repair_list( 'upgrade' );
// Orderby
$orderby = ! empty( $_GET['orderby'] )
? sanitize_key( $_GET['orderby'] )
: 'priority';
// Order
$order = ! empty( $_GET['order'] ) && in_array( strtolower( $_GET['order'] ), array( 'asc', 'desc' ), true )
? strtolower( $_GET['order'] )
: 'asc';
// New order
$new_order = ( 'desc' === $order )
? 'asc'
: 'desc'; ?>
<div class="wrap">
<h1 class="wp-heading-inline"><?php esc_html_e( 'Forum Tools', 'bbpress' ); ?></h1>
<hr class="wp-header-end">
<h2 class="nav-tab-wrapper"><?php bbp_tools_admin_tabs( 'bbp-upgrade' ); ?></h2>
<p><?php esc_html_e( 'As bbPress improves, occasionally database upgrades are required but some forums are too large to upgrade automatically. Use the tools below to manually run upgrade routines.', 'bbpress' ); ?></p>
<p class="description"><?php esc_html_e( 'Some of these tools create substantial database overhead. Use caution when running more than 1 upgrade at a time.', 'bbpress' ); ?></p>
<?php bbp_admin_repair_tool_status_filters(); ?>
<form class="settings" method="get" action="">
<?php bbp_admin_repair_list_search_form(); ?>
<input type="hidden" name="page" value="bbp-upgrade" />
<?php wp_nonce_field( 'bbpress-do-counts' ); ?>
<div class="tablenav top">
<div class="alignleft actions bulkactions">
<label for="bulk-action-selector-top" class="screen-reader-text"><?php esc_html_e( 'Select bulk action', 'bbpress' ); ?></label>
<select name="action" id="bulk-action-selector-top">
<option value="" selected="selected"><?php esc_html_e( 'Bulk Actions', 'bbpress' ); ?></option>
<option value="run" class="hide-if-no-js"><?php esc_html_e( 'Run', 'bbpress' ); ?></option>
</select>
<input type="submit" id="doaction" class="button action" value="<?php esc_attr_e( 'Apply', 'bbpress' ); ?>">
</div>
<div class="alignleft actions">
<?php bbp_admin_repair_list_components_filter(); ?>
<?php bbp_admin_repair_list_versions_filter(); ?>
<input type="submit" name="filter_action" id="components-submit" class="button" value="<?php esc_html_e( 'Filter', 'bbpress' ); ?>">
</div>
<br class="clear">
</div>
<table class="wp-list-table widefat striped posts">
<thead>
<tr>
<td id="cb" class="manage-column column-cb check-column">
<label class="screen-reader-text" for="cb-select-all-1">
<?php esc_html_e( 'Select All', 'bbpress' ); ?>
</label>
<input id="cb-select-all-1" type="checkbox">
</td>
<th scope="col" id="description" class="manage-column column-primary column-description sortable <?php echo ( 'priority' === $orderby ) ? esc_attr( $order ) : 'asc'; ?>">
<a href="<?php echo esc_url( bbp_get_admin_repair_tool_page_url( array(
'orderby' => 'priority',
'order' => $new_order
) ) ); ?>"><span><?php esc_html_e( 'Description', 'bbpress' ); ?></span><span class="sorting-indicator"></span>
</a>
</th>
<th scope="col" id="version" class="manage-column column-version sortable <?php echo ( 'version' === $orderby ) ? esc_attr( $order ) : 'asc'; ?>">
<a href="<?php echo esc_url( bbp_get_admin_repair_tool_page_url( array(
'orderby' => 'version',
'order' => $new_order
) ) ); ?>"><span><?php esc_html_e( 'Version', 'bbpress' ); ?></span><span class="sorting-indicator"></span>
</a>
</th>
<th scope="col" id="components" class="manage-column column-components"><?php esc_html_e( 'Components', 'bbpress' ); ?></th>
<th scope="col" id="overhead" class="manage-column column-overhead sortable <?php echo ( 'overhead' === $orderby ) ? esc_attr( $order ) : 'asc'; ?>">
<a href="<?php echo esc_url( bbp_get_admin_repair_tool_page_url( array(
'orderby' => 'overhead',
'order' => $new_order
) ) ); ?>"><span><?php esc_html_e( 'Overhead', 'bbpress' ); ?></span><span class="sorting-indicator"></span>
</a>
</th>
</tr>
</thead>
<tbody id="the-list">
<?php if ( ! empty( $tools ) ) : ?>
<?php foreach ( $tools as $item ) : ?>
<tr id="bbp-repair-tools" class="inactive">
<th scope="row" class="check-column">
<label class="screen-reader-text" for="<?php echo esc_attr( str_replace( '_', '-', $item['id'] ) ); ?>"></label>
<input type="checkbox" name="checked[]" value="<?php echo esc_attr( $item['id'] ); ?>" id="<?php echo esc_attr( str_replace( '_', '-', $item['id'] ) ); ?>">
</th>
<td class="bbp-tool-title column-primary column-description" data-colname="<?php esc_html_e( 'Description', 'bbpress' ); ?>">
<strong><?php echo esc_html( $item['title'] ); ?></strong><?php
// Optional description
if ( ! empty( $item['description'] ) ) :
echo '<p class="description">' . esc_html( $item['description'] ) . '</p>';
endif;
?><div class="row-actions hide-if-no-js">
<span class="run">
<a href="<?php bbp_admin_repair_tool_run_url( $item ); ?>" aria-label="<?php printf( esc_html__( 'Run %s', 'bbpress' ), $item['title'] ); ?>" id="<?php echo esc_attr( $item['id'] ); ?>" ><?php esc_html_e( 'Run', 'bbpress' ); ?></a>
</span>
</div>
<button type="button" class="toggle-row">
<span class="screen-reader-text"><?php esc_html_e( 'Show more details', 'bbpress' ); ?></span>
</button>
</td>
<td class="column-version desc" data-colname="<?php esc_html_e( 'Version', 'bbpress' ); ?>">
<div class="bbp-tool-version">
<?php echo implode( ', ', bbp_get_admin_repair_tool_version( $item ) ); ?>
</div>
</td>
<td class="column-components desc" data-colname="<?php esc_html_e( 'Components', 'bbpress' ); ?>">
<div class="bbp-tool-components">
<?php echo implode( ', ', bbp_get_admin_repair_tool_components( $item ) ); ?>
</div>
</td>
<td class="column-overhead desc" data-colname="<?php esc_html_e( 'Overhead', 'bbpress' ); ?>">
<div class="bbp-tool-overhead">
<?php echo implode( ', ', bbp_get_admin_repair_tool_overhead( $item ) ); ?>
</div>
</td>
</tr>
<?php endforeach; ?>
<?php else : ?>
<tr>
<td colspan="4">
<?php esc_html_e( 'No repair tools match this criteria.', 'bbpress' ); ?>
</td>
</tr>
<?php endif; ?>
</tbody>
<tfoot>
<tr>
<td class="manage-column column-cb check-column">
<label class="screen-reader-text" for="cb-select-all-2">
<?php esc_html_e( 'Select All', 'bbpress' ); ?>
</label>
<input id="cb-select-all-2" type="checkbox">
</td>
<th scope="col" class="manage-column column-primary column-description"><?php esc_html_e( 'Description', 'bbpress' ); ?></th>
<th scope="col" class="manage-column column-version"><?php esc_html_e( 'Version', 'bbpress' ); ?></th>
<th scope="col" class="manage-column column-components"><?php esc_html_e( 'Components', 'bbpress' ); ?></th>
<th scope="col" class="manage-column column-overhead"><?php esc_html_e( 'Overhead', 'bbpress' ); ?></th>
</tr>
</tfoot>
</table>
<div class="tablenav bottom">
<div class="alignleft actions bulkactions">
<label for="bulk-action-selector-bottom" class="screen-reader-text"><?php esc_html_e( 'Select bulk action', 'bbpress' ); ?></label>
<select name="action2" id="bulk-action-selector-bottom">
<option value="" selected="selected"><?php esc_html_e( 'Bulk Actions', 'bbpress' ); ?></option>
<option value="run" class="hide-if-no-js"><?php esc_html_e( 'Run', 'bbpress' ); ?></option>
</select>
<input type="submit" id="doaction2" class="button action" value="<?php esc_attr_e( 'Apply', 'bbpress' ); ?>">
</div>
</div>
</form>
</div>
<?php
}
Changelog Changelog
| Version | Description |
|---|---|
| 2.6.0 | Introduced. |