mirror of
https://github.com/kremalicious/krtmn.git
synced 2024-12-22 09:13:25 +01:00
89 lines
2.9 KiB
PHP
89 lines
2.9 KiB
PHP
<?php
|
|
define( 'YOURLS_ADMIN', true );
|
|
define( 'YOURLS_NO_UPGRADE_CHECK', true ); // Bypass version checking to prevent loop
|
|
require_once( dirname(dirname(__FILE__)).'/includes/load-yourls.php' );
|
|
require_once( YOURLS_INC.'/functions-upgrade.php' );
|
|
require_once( YOURLS_INC.'/functions-install.php' );
|
|
yourls_maybe_require_auth();
|
|
|
|
yourls_html_head( 'upgrade', 'Upgrade YOURLS' );
|
|
yourls_html_logo();
|
|
yourls_html_menu();
|
|
?>
|
|
<h2>Upgrade YOURLS</h2>
|
|
<?php
|
|
|
|
// Check if upgrade is needed
|
|
if ( !yourls_upgrade_is_needed() ) {
|
|
echo '<p>Upgrade not required. Go <a href="'.yourls_admin_url('index.php').'">back to play</a>!</p>';
|
|
|
|
|
|
} else {
|
|
/*
|
|
step 1: create new tables and populate them, update old tables structure,
|
|
step 2: convert each row of outdated tables if needed
|
|
step 3: - if applicable finish updating outdated tables (indexes etc)
|
|
- update version & db_version in options, this is all done!
|
|
*/
|
|
|
|
// From what are we upgrading?
|
|
if ( isset( $_GET['oldver'] ) && isset( $_GET['oldsql'] ) ) {
|
|
$oldver = yourls_sanitize_version( $_GET['oldver'] );
|
|
$oldsql = yourls_sanitize_version( $_GET['oldsql'] );
|
|
} else {
|
|
list( $oldver, $oldsql ) = yourls_get_current_version_from_sql();
|
|
}
|
|
|
|
// To what are we upgrading ?
|
|
$newver = YOURLS_VERSION;
|
|
$newsql = YOURLS_DB_VERSION;
|
|
|
|
// Verbose & ugly details
|
|
$ydb->show_errors = true;
|
|
|
|
// Let's go
|
|
$step = ( isset( $_GET['step'] ) ? intval( $_GET['step'] ) : 0 );
|
|
switch( $step ) {
|
|
|
|
default:
|
|
case 0:
|
|
echo "
|
|
<p>Your current installation needs to be upgraded.</p>
|
|
<p>Please, pretty please, it is recommended that
|
|
you <strong>backup</strong> your database<br/>(you should do this regularly anyway)</p>
|
|
<p>Nothing awful <em>should</em> happen, but this doesn't mean it <em>won't</em> happen, right? ;)</p>
|
|
<p>On every step, if <span class='error'>something goes wrong</span>, you'll see a message and hopefully a way to fix</p>
|
|
<p>If everything goes too fast and you cannot read, <span class='success'>good for you</span>, let it go :)</p>
|
|
<p>Once you are ready, press Upgrade!</p>
|
|
<form action='upgrade.php?' method='get'>
|
|
<input type='hidden' name='step' value='1' />
|
|
<input type='hidden' name='oldver' value='$oldver' />
|
|
<input type='hidden' name='newver' value='$newver' />
|
|
<input type='hidden' name='oldsql' value='$oldsql' />
|
|
<input type='hidden' name='newsql' value='$newsql' />
|
|
<input type='submit' class='primary' value='Upgrade' />
|
|
</form>";
|
|
|
|
break;
|
|
|
|
case 1:
|
|
case 2:
|
|
$upgrade = yourls_upgrade( $step, $oldver, $newver, $oldsql, $newsql );
|
|
break;
|
|
|
|
case 3:
|
|
$upgrade = yourls_upgrade( 3, $oldver, $newver, $oldsql, $newsql );
|
|
$admin = yourls_admin_url('index.php');
|
|
echo "
|
|
<p>Your installation is now up to date !</p>
|
|
<p>Go back to <a href='$admin'>the admin interface</a></p>
|
|
";
|
|
}
|
|
|
|
}
|
|
|
|
|
|
?>
|
|
|
|
<?php yourls_html_footer(); ?>
|