upgrades.php
154 lines
| 1 | <?php |
| 2 | /** |
| 3 | * Upgrade Screen |
| 4 | * |
| 5 | * @package Give |
| 6 | * @subpackage Admin/Upgrades |
| 7 | * @copyright Copyright (c) 2017, WordImpress |
| 8 | * @license https://opensource.org/licenses/gpl-license GNU Public License |
| 9 | * @since 1.8.12 |
| 10 | */ |
| 11 | |
| 12 | // Exit if accessed directly. |
| 13 | if ( ! defined( 'ABSPATH' ) ) { |
| 14 | exit; |
| 15 | } |
| 16 | |
| 17 | $give_updates = Give_Updates::get_instance(); |
| 18 | ?> |
| 19 | <div class="wrap" id="poststuff"> |
| 20 | <div id="give-updates"> |
| 21 | <h1 id="give-updates-h1"><?php esc_html_e( 'Give - Updates', 'give' ); ?></h1> |
| 22 | <hr class="wp-header-end"> |
| 23 | |
| 24 | <div class="give-update-panel-content"> |
| 25 | <p><?php printf( __( 'Give regularly receives new features, bug fixes, and enhancements. It is important to always stay up-to-date with latest version of Give core and its add-ons. Please create a backup of your site before updating. To update add-ons be sure your <a href="%1$s">license keys</a> are activated.', 'give' ), 'https://givewp.com/my-account/' ); ?></p> |
| 26 | </div> |
| 27 | |
| 28 | <?php $db_updates = $give_updates->get_pending_db_update_count(); ?> |
| 29 | <?php if ( ! empty( $db_updates ) ) : ?> |
| 30 | <?php |
| 31 | $is_doing_updates = $give_updates->is_doing_updates(); |
| 32 | $db_update_url = add_query_arg( array( 'type' => 'database', ) ); |
| 33 | $resume_updates = get_option( 'give_doing_upgrade' ); |
| 34 | $width = ! empty( $resume_updates ) ? $resume_updates['percentage'] : 0; |
| 35 | ?> |
| 36 | <div id="give-db-updates" data-resume-update="<?php echo absint( $give_updates->is_doing_updates() ); ?>"> |
| 37 | <div class="postbox-container"> |
| 38 | <div class="postbox"> |
| 39 | <h2 class="hndle"><?php _e( 'Database Updates', 'give' ); ?></h2> |
| 40 | <div class="inside"> |
| 41 | <div class="panel-content"> |
| 42 | <p class="give-update-button"> |
| 43 | <span class="give-doing-update-text-p" <?php echo Give_Updates::$background_updater->is_paused_process() ? 'style="display:none;"' : ''; ?>> |
| 44 | <?php echo sprintf( |
| 45 | __( '%1$s <a href="%2$s" class="give-update-now %3$s">%4$s</a>', 'give' ), |
| 46 | $is_doing_updates ? |
| 47 | __( 'Give is currently updating the database in the background.', 'give' ) : |
| 48 | __( 'Give needs to update the database.', 'give' ), |
| 49 | $db_update_url, |
| 50 | ( $is_doing_updates ? 'give-hidden' : '' ), |
| 51 | __( 'Update now', 'give' ) |
| 52 | ); |
| 53 | ?> |
| 54 | </span> |
| 55 | <span class="give-update-paused-text-p" <?php echo ! Give_Updates::$background_updater->is_paused_process() ? 'style="display:none;"' : ''; ?>> |
| 56 | <?php if ( get_option( 'give_upgrade_error' ) ) : ?> |
| 57 | <?php _e( 'An unexpected issue occurred during the database update which caused it to stop automatically. Please contact support for assistance.', 'give' ); ?> |
| 58 | <?php else : ?> |
| 59 | <?php _e( 'The updates have been paused.', 'give' ); ?> |
| 60 | |
| 61 | <?php endif; ?> |
| 62 | </span> |
| 63 | |
| 64 | <?php if ( Give_Updates::$background_updater->is_paused_process() ) : ?> |
| 65 | <?php $is_disabled = isset( $_GET['give-restart-db-upgrades'] ) ? ' disabled' : ''; ?> |
| 66 | <button id="give-restart-upgrades" class="button button-primary alignright" data-redirect-url="<?php echo esc_url( admin_url( '/edit.php?post_type=give_forms&page=give-updates&give-restart-db-upgrades=1' ) ); ?>"<?php echo $is_disabled; ?>><?php _e( 'Restart Upgrades', 'give' ); ?></button> |
| 67 | <?php elseif( $give_updates->is_doing_updates() ): ?> |
| 68 | <?php $is_disabled = isset( $_GET['give-pause-db-upgrades'] ) ? ' disabled' : ''; ?> |
| 69 | <button id="give-pause-upgrades" class="button button-primary alignright" data-redirect-url="<?php echo esc_url( admin_url( '/edit.php?post_type=give_forms&page=give-updates&give-pause-db-upgrades=1' ) ); ?>"<?php echo $is_disabled; ?>> |
| 70 | <?php _e( 'Pause Upgrades', 'give' ); ?> |
| 71 | </button> |
| 72 | <?php endif; ?> |
| 73 | |
| 74 | <script type="text/javascript"> |
| 75 | jQuery('#give-pause-upgrades').click('click', function (e) { |
| 76 | e.preventDefault(); |
| 77 | jQuery('.give-doing-update-text-p').hide(); |
| 78 | jQuery('.give-update-paused-text-p').show(); |
| 79 | if (window.confirm('<?php echo esc_js( __( 'Do you want to stop the update process now?', 'give' ) ); ?>')) { |
| 80 | window.location.assign(jQuery(this).data('redirect-url')); |
| 81 | } |
| 82 | }); |
| 83 | jQuery('#give-restart-upgrades').click('click', function (e) { |
| 84 | e.preventDefault(); |
| 85 | jQuery('.give-doing-update-text-p').show(); |
| 86 | jQuery('.give-update-paused-text-p').hide(); |
| 87 | if (window.confirm('<?php echo esc_js( __( 'Do you want to restart the update process?', 'give' ) ); ?>')) { |
| 88 | window.location.assign(jQuery(this).data('redirect-url')); |
| 89 | } |
| 90 | }); |
| 91 | </script> |
| 92 | </p> |
| 93 | </div> |
| 94 | <div class="progress-container<?php echo $is_doing_updates ? '' : ' give-hidden'; ?>"> |
| 95 | <p class="update-message"> |
| 96 | <strong> |
| 97 | <?php |
| 98 | echo sprintf( |
| 99 | __( 'Update %s of %s', 'give' ), |
| 100 | $give_updates->get_running_db_update(), |
| 101 | $give_updates->get_total_new_db_update_count() |
| 102 | ); |
| 103 | ?> |
| 104 | </strong> |
| 105 | </p> |
| 106 | <div class="progress-content"> |
| 107 | <?php if ( $is_doing_updates ) : ?> |
| 108 | <div class="notice-wrap give-clearfix"> |
| 109 | |
| 110 | <?php if ( ! Give_Updates::$background_updater->is_paused_process() ) : ?> |
| 111 | <span class="spinner is-active"></span> |
| 112 | <?php endif; ?> |
| 113 | |
| 114 | <div class="give-progress"> |
| 115 | <div style="width: <?php echo $width ?>%;"></div> |
| 116 | </div> |
| 117 | </div> |
| 118 | <?php endif; ?> |
| 119 | </div> |
| 120 | </div> |
| 121 | |
| 122 | <?php if ( ! $is_doing_updates ) : ?> |
| 123 | <div class="give-run-database-update"></div> |
| 124 | <?php endif; ?> |
| 125 | </div> |
| 126 | <!-- .inside --> |
| 127 | </div><!-- .postbox --> |
| 128 | </div> |
| 129 | </div> |
| 130 | <?php endif; ?> |
| 131 | |
| 132 | <?php $plugin_updates = $give_updates->get_total_plugin_update_count(); ?> |
| 133 | <?php if ( ! empty( $plugin_updates ) ) : ?> |
| 134 | <?php $plugin_update_url = add_query_arg( array( |
| 135 | 's' => 'Give', |
| 136 | ), admin_url( '/plugins.php' ) ); ?> |
| 137 | <div id="give-plugin-updates"> |
| 138 | <div class="postbox-container"> |
| 139 | <div class="postbox"> |
| 140 | <h2 class="hndle"><?php _e( 'Add-on Updates', 'give' ); ?></h2> |
| 141 | <div class="inside"> |
| 142 | <div class="panel-content"> |
| 143 | <p><?php echo sprintf( __( 'There %1$s %2$s Give %3$s that %4$s to be updated. <a href="%5$s">Update now</a>', 'give' ), _n( 'is', 'are', $plugin_updates, 'give' ), $plugin_updates, _n( 'add-on', 'add-ons', $plugin_updates, 'give' ), _n( 'needs', 'need', $plugin_updates, 'give' ), $plugin_update_url ); ?></p> |
| 144 | <?php include_once 'plugins-update-section.php'; ?> |
| 145 | </div> |
| 146 | </div> |
| 147 | <!-- .inside --> |
| 148 | </div><!-- .postbox --> |
| 149 | </div> |
| 150 | </div> |
| 151 | <?php endif; ?> |
| 152 | |
| 153 | </div> |
| 154 | </div> |