mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-10-28 06:15:39 +00:00
Fix rules surrounding creation of jobs [skip ci]
This commit is contained in:
@@ -72,13 +72,11 @@ class IndexController extends Controller
|
|||||||
public function create(string $importProvider)
|
public function create(string $importProvider)
|
||||||
{
|
{
|
||||||
// can only create "fake" for demo user.
|
// can only create "fake" for demo user.
|
||||||
|
$providers = array_keys($this->getProviders());
|
||||||
|
if (!in_array($importProvider, $providers, true)) {
|
||||||
|
session()->flash('warning', trans('import.cannot_create_for_provider', ['provider' => $importProvider]));
|
||||||
|
|
||||||
if (
|
return redirect(route('import.index'));
|
||||||
!(bool)config('app.debug')
|
|
||||||
&& !(bool)config(sprintf('import.enabled.%s', $importProvider)) === true
|
|
||||||
&& !\in_array(config('app.env'), ['demo', 'testing'])
|
|
||||||
) {
|
|
||||||
throw new FireflyException(sprintf('Import using provider "%s" is currently not available.', $importProvider)); // @codeCoverageIgnore
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$importJob = $this->repository->create($importProvider);
|
$importJob = $this->repository->create($importProvider);
|
||||||
@@ -148,6 +146,7 @@ class IndexController extends Controller
|
|||||||
$providerNames = array_keys(config('import.enabled'));
|
$providerNames = array_keys(config('import.enabled'));
|
||||||
$providers = [];
|
$providers = [];
|
||||||
$isDemoUser = $this->userRepository->hasRole(auth()->user(), 'demo');
|
$isDemoUser = $this->userRepository->hasRole(auth()->user(), 'demo');
|
||||||
|
$isDebug = (bool)config('app.debug');
|
||||||
foreach ($providerNames as $providerName) {
|
foreach ($providerNames as $providerName) {
|
||||||
Log::debug(sprintf('Now with provider %s', $providerName));
|
Log::debug(sprintf('Now with provider %s', $providerName));
|
||||||
// only consider enabled providers
|
// only consider enabled providers
|
||||||
@@ -163,7 +162,7 @@ class IndexController extends Controller
|
|||||||
Log::debug('User is demo and this provider is not allowed for demo user. NEXT!');
|
Log::debug('User is demo and this provider is not allowed for demo user. NEXT!');
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if ($isDemoUser === false && $allowedForUser === false) {
|
if ($isDemoUser === false && $allowedForUser === false && $isDebug === false) {
|
||||||
Log::debug('User is not demo and this provider is not allowed for such users. NEXT!');
|
Log::debug('User is not demo and this provider is not allowed for such users. NEXT!');
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ return [
|
|||||||
'prerequisites_breadcrumb_fake' => 'Prerequisites for the fake import provider',
|
'prerequisites_breadcrumb_fake' => 'Prerequisites for the fake import provider',
|
||||||
'job_configuration_breadcrumb' => 'Configuration for ":key"',
|
'job_configuration_breadcrumb' => 'Configuration for ":key"',
|
||||||
'job_status_breadcrumb' => 'Import status for ":key"',
|
'job_status_breadcrumb' => 'Import status for ":key"',
|
||||||
|
'cannot_create_for_provider' => 'Firefly III cannot create a job for the ":provider"-provider.',
|
||||||
|
|
||||||
// index page:
|
// index page:
|
||||||
'general_index_title' => 'Import a file',
|
'general_index_title' => 'Import a file',
|
||||||
@@ -132,7 +133,7 @@ return [
|
|||||||
'job_config_field_value' => 'Field value',
|
'job_config_field_value' => 'Field value',
|
||||||
'job_config_field_mapped' => 'Mapped to',
|
'job_config_field_mapped' => 'Mapped to',
|
||||||
'map_do_not_map' => '(do not map)',
|
'map_do_not_map' => '(do not map)',
|
||||||
'job_config_map_submit' => 'Start the import',
|
'job_config_map_submit' => 'Start the import',
|
||||||
|
|
||||||
|
|
||||||
// import status page:
|
// import status page:
|
||||||
|
|||||||
Reference in New Issue
Block a user