2014-09-02 01:58:56 -05:00
|
|
|
<?php
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Class MigrateController
|
|
|
|
*/
|
|
|
|
class MigrateController extends BaseController
|
|
|
|
{
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @return $this
|
|
|
|
*/
|
|
|
|
public function index()
|
|
|
|
{
|
|
|
|
return View::make('migrate.index')->with('index', 'Migration');
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
public function upload()
|
|
|
|
{
|
|
|
|
if (Input::hasFile('file') && Input::file('file')->isValid()) {
|
|
|
|
$path = storage_path();
|
|
|
|
$fileName = 'firefly-iii-import-' . date('Y-m-d-H-i') . '.json';
|
|
|
|
$fullName = $path . DIRECTORY_SEPARATOR . $fileName;
|
2014-09-12 23:30:31 -05:00
|
|
|
if (Input::file('file')->move($path, $fileName)) {
|
2014-09-09 13:00:04 -05:00
|
|
|
// so now Firefly pushes something in a queue and does something with it! Yay!
|
2014-09-02 10:27:28 -05:00
|
|
|
\Log::debug('Pushed a job to start the import.');
|
|
|
|
Queue::push('Firefly\Queue\Import@start', ['file' => $fullName, 'user' => \Auth::user()->id]);
|
2014-09-11 08:19:07 -05:00
|
|
|
if (Config::get('queue.default') == 'sync') {
|
|
|
|
Session::flash('success', 'Your data has been imported!');
|
|
|
|
} else {
|
|
|
|
Session::flash(
|
|
|
|
'success',
|
|
|
|
'The import job has been queued. Please be patient. Data will appear slowly. Please be patient.'
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2014-09-02 10:27:28 -05:00
|
|
|
return Redirect::route('index');
|
2014-09-02 01:58:56 -05:00
|
|
|
}
|
|
|
|
Session::flash('error', 'Could not save file to storage.');
|
|
|
|
return Redirect::route('migrate.index');
|
|
|
|
|
|
|
|
} else {
|
|
|
|
Session::flash('error', 'Please upload a file.');
|
|
|
|
return Redirect::route('migrate.index');
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|