mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-10-27 05:51:56 +00:00
Fix webbased upgrade routine.
This commit is contained in:
@@ -153,6 +153,34 @@ class InstallController extends Controller
|
|||||||
return response()->json(['error' => false, 'message' => 'OK']);
|
return response()->json(['error' => false, 'message' => 'OK']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Do database decrypt.
|
||||||
|
*
|
||||||
|
* @return \Illuminate\Http\JsonResponse
|
||||||
|
*/
|
||||||
|
public function decrypt(): JsonResponse
|
||||||
|
{
|
||||||
|
if ($this->hasForbiddenFunctions()) {
|
||||||
|
return response()->json(['error' => true, 'message' => self::FORBIDDEN_ERROR]);
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
Log::debug('Am now calling decrypt database routine...');
|
||||||
|
Artisan::call('firefly:decrypt-all');
|
||||||
|
Log::debug(Artisan::output());
|
||||||
|
} catch (Exception $e) {
|
||||||
|
Log::error($e->getMessage());
|
||||||
|
Log::error($e->getTraceAsString());
|
||||||
|
if (strpos($e->getMessage(), 'open_basedir restriction in effect')) {
|
||||||
|
return response()->json(['error' => true, 'message' => self::BASEDIR_ERROR]);
|
||||||
|
}
|
||||||
|
|
||||||
|
return response()->json(['error' => true, 'message' => self::OTHER_ERROR . ' ' . $e->getMessage()]);
|
||||||
|
}
|
||||||
|
|
||||||
|
return response()->json(['error' => false, 'message' => 'OK']);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Do database verification.
|
* Do database verification.
|
||||||
*
|
*
|
||||||
|
|||||||
16
public/v1/js/ff/install/index.js
vendored
16
public/v1/js/ff/install/index.js
vendored
@@ -30,6 +30,22 @@ function startMigration() {
|
|||||||
$('#status-box').html('<i class="fa fa-spin fa-spinner"></i> Setting up DB...');
|
$('#status-box').html('<i class="fa fa-spin fa-spinner"></i> Setting up DB...');
|
||||||
$.post(migrateUri, {_token: token}).done(function (data) {
|
$.post(migrateUri, {_token: token}).done(function (data) {
|
||||||
if(data.error === false) {
|
if(data.error === false) {
|
||||||
|
// move to decrypt routine.
|
||||||
|
startDecryption();
|
||||||
|
} else {
|
||||||
|
displaySoftFail(data.message);
|
||||||
|
}
|
||||||
|
|
||||||
|
}).fail(function () {
|
||||||
|
$('#status-box').html('<i class="fa fa-warning"></i> Migration failed! See log files :(');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function startDecryption() {
|
||||||
|
$('#status-box').html('<i class="fa fa-spin fa-spinner"></i> Setting up DB #2...');
|
||||||
|
$.post(decryptUri, {_token: token}).done(function (data) {
|
||||||
|
if(data.error === false) {
|
||||||
|
// move to decrypt routine.
|
||||||
startPassport();
|
startPassport();
|
||||||
} else {
|
} else {
|
||||||
displaySoftFail(data.message);
|
displaySoftFail(data.message);
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
var keysUri = '{{ route('installer.keys') }}';
|
var keysUri = '{{ route('installer.keys') }}';
|
||||||
var upgradeUri = '{{ route('installer.upgrade') }}';
|
var upgradeUri = '{{ route('installer.upgrade') }}';
|
||||||
var verifyUri = '{{ route('installer.verify') }}';
|
var verifyUri = '{{ route('installer.verify') }}';
|
||||||
|
var decryptUri = '{{ route('installer.decrypt') }}';
|
||||||
var homeUri = '{{ route('home') }}';
|
var homeUri = '{{ route('home') }}';
|
||||||
</script>
|
</script>
|
||||||
<script type="text/javascript" src="v1/js/ff/install/index.js"></script>
|
<script type="text/javascript" src="v1/js/ff/install/index.js"></script>
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ Route::group(
|
|||||||
Route::post('keys', ['uses' => 'InstallController@keys', 'as' => 'keys']);
|
Route::post('keys', ['uses' => 'InstallController@keys', 'as' => 'keys']);
|
||||||
Route::post('upgrade', ['uses' => 'InstallController@upgrade', 'as' => 'upgrade']);
|
Route::post('upgrade', ['uses' => 'InstallController@upgrade', 'as' => 'upgrade']);
|
||||||
Route::post('verify', ['uses' => 'InstallController@verify', 'as' => 'verify']);
|
Route::post('verify', ['uses' => 'InstallController@verify', 'as' => 'verify']);
|
||||||
|
Route::post('decrypt', ['uses' => 'InstallController@decrypt', 'as' => 'decrypt']);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user