Compare commits
2 Commits
8a30c39262
...
c50a381626
Author | SHA1 | Date |
---|---|---|
Dasc3er | c50a381626 | |
Dasc3er | d9ac17d1b2 |
|
@ -0,0 +1,4 @@
|
||||||
|
<IfModule mod_rewrite.c>
|
||||||
|
RewriteEngine on
|
||||||
|
RewriteRule ^.+$ index.php [L]
|
||||||
|
</IfModule>
|
|
@ -91,10 +91,13 @@ class ConfigurationController extends Controller
|
||||||
*/
|
*/
|
||||||
public function cache(Request $request)
|
public function cache(Request $request)
|
||||||
{
|
{
|
||||||
|
$route = route('config.index');
|
||||||
|
|
||||||
// Refresh della cache sulla configurazione
|
// Refresh della cache sulla configurazione
|
||||||
|
Artisan::call('cache:clear');
|
||||||
Artisan::call('config:cache');
|
Artisan::call('config:cache');
|
||||||
|
|
||||||
return redirect(route('configuration'));
|
return redirect($route);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -119,7 +122,7 @@ class ConfigurationController extends Controller
|
||||||
// Controllo sullo stato della connessione
|
// Controllo sullo stato della connessione
|
||||||
$result = $this->checkConnection($request);
|
$result = $this->checkConnection($request);
|
||||||
if ($result === null) {
|
if ($result === null) {
|
||||||
return redirect(route('configuration'));
|
return redirect(route('config.index'));
|
||||||
}
|
}
|
||||||
|
|
||||||
$env = $this->buildEnvFrom($request->all());
|
$env = $this->buildEnvFrom($request->all());
|
||||||
|
@ -130,11 +133,11 @@ class ConfigurationController extends Controller
|
||||||
|
|
||||||
// Redirect in caso di fallimento
|
// Redirect in caso di fallimento
|
||||||
if ($result === false) {
|
if ($result === false) {
|
||||||
return redirect(route('configuration-write'))
|
return redirect(route('config.write'))
|
||||||
->withInput();
|
->withInput();
|
||||||
}
|
}
|
||||||
|
|
||||||
return redirect(route('configuration-cache'));
|
return redirect(route('config.cache'));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -255,33 +258,13 @@ class ConfigurationController extends Controller
|
||||||
$content = file_get_contents($file);
|
$content = file_get_contents($file);
|
||||||
|
|
||||||
foreach ($config as $key => $value) {
|
foreach ($config as $key => $value) {
|
||||||
$content = str_replace(
|
$content = preg_replace(
|
||||||
"$key=".$this->getCurrentEnvValue($key),
|
'/'.preg_quote($key."=")."(.*)/",
|
||||||
"$key=".$value,
|
$key."=".$value,
|
||||||
$content
|
$content
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $content;
|
return $content;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Restituisce il valore (fisico) corrente per una chiave del file .env.
|
|
||||||
*
|
|
||||||
* @param $key
|
|
||||||
*
|
|
||||||
* @return mixed|string
|
|
||||||
*/
|
|
||||||
protected function getCurrentEnvValue($key)
|
|
||||||
{
|
|
||||||
if (is_bool(env($key))) {
|
|
||||||
$old = env($key) ? 'true' : 'false';
|
|
||||||
} elseif (env($key) === null) {
|
|
||||||
$old = 'null';
|
|
||||||
} else {
|
|
||||||
$old = env($key);
|
|
||||||
}
|
|
||||||
|
|
||||||
return $old;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -85,7 +85,7 @@ class EnsureConfiguration
|
||||||
|
|
||||||
// Redirect nel caso in cui i requisiti siano soddisfatti
|
// Redirect nel caso in cui i requisiti siano soddisfatti
|
||||||
if (in_array($route->getName(), $configuration_paths)) {
|
if (in_array($route->getName(), $configuration_paths)) {
|
||||||
$this->setRedirect(route('configuration'));
|
$this->setRedirect(route('config.index'));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Redirect per requisiti incompleti
|
// Redirect per requisiti incompleti
|
||||||
|
@ -112,20 +112,22 @@ class EnsureConfiguration
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
$configuration_paths = ['configuration', 'configuration-save', 'configuration-write', 'configuration-test'];
|
|
||||||
$configuration_completed = ConfigurationController::isConfigured();
|
$configuration_completed = ConfigurationController::isConfigured();
|
||||||
|
|
||||||
|
$parts = explode('.', $route->getName());
|
||||||
|
$is_configuration_path = $parts[0] == 'config';
|
||||||
|
|
||||||
if ($configuration_completed) {
|
if ($configuration_completed) {
|
||||||
Cache::put('configurazione_completata', true);
|
Cache::put('configurazione_completata', true);
|
||||||
|
|
||||||
// Redirect nel caso in cui la configurazione sia correttamente funzionante
|
// Redirect nel caso in cui la configurazione sia correttamente funzionante
|
||||||
if (in_array($route->getName(), $configuration_paths)) {
|
if ($is_configuration_path) {
|
||||||
$this->setRedirect(route('update'));
|
$this->setRedirect(route('update'));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Redirect per configurazione mancante
|
// Redirect per configurazione mancante
|
||||||
if (!in_array($route->getName(), $configuration_paths)) {
|
if (!$is_configuration_path) {
|
||||||
$this->setRedirect(route('configuration'));
|
$this->setRedirect(route('config.index'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -26,6 +26,8 @@ class EnsureEnvFile
|
||||||
|
|
||||||
// Generazione automatica delle key Laravel
|
// Generazione automatica delle key Laravel
|
||||||
Artisan::call('key:generate');
|
Artisan::call('key:generate');
|
||||||
|
Artisan::call('cache:clear');
|
||||||
|
Artisan::call('config:cache');
|
||||||
header('Refresh: 0;');
|
header('Refresh: 0;');
|
||||||
|
|
||||||
return response('Missing app key');
|
return response('Missing app key');
|
||||||
|
|
|
@ -19,6 +19,7 @@ class Language
|
||||||
|
|
||||||
$locale = env('APP_LOCALE', 'it_IT');
|
$locale = env('APP_LOCALE', 'it_IT');
|
||||||
$manager->setLocale($locale);
|
$manager->setLocale($locale);
|
||||||
|
app()->setLocale($locale);
|
||||||
|
|
||||||
return $next($request);
|
return $next($request);
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$base_dir = __DIR__;
|
||||||
|
|
||||||
|
// Individuazione di $prefix
|
||||||
|
$script = $_SERVER['REQUEST_URI'];
|
||||||
|
$needle = '/'.basename($base_dir).'/';
|
||||||
|
$pos = strrpos($script, $needle);
|
||||||
|
if ($pos !== false) {
|
||||||
|
$prefix = substr($script, 0, $pos).$needle;
|
||||||
|
$suffix = substr($script, $pos + strlen($needle));
|
||||||
|
} else {
|
||||||
|
$prefix = '/';
|
||||||
|
$suffix = '';
|
||||||
|
}
|
||||||
|
$prefix = rtrim($prefix, '/');
|
||||||
|
$prefix = str_replace('%2F', '/', rawurlencode($prefix));
|
||||||
|
$suffix = str_replace('%2F', '/', rawurlencode($suffix));
|
||||||
|
|
||||||
|
$url = 'http://'.$_SERVER['HTTP_HOST'].$prefix.'/public/'.$suffix;
|
||||||
|
$url = str_replace('index.php', '', $url);
|
||||||
|
|
||||||
|
header('Location: '.$url);
|
||||||
|
exit();
|
2
legacy
2
legacy
|
@ -1 +1 @@
|
||||||
Subproject commit 39a79aea88f220f4d49c349df176b1ef310005f8
|
Subproject commit af0668f0c2e9751c36430e1b7595a1d32058ef64
|
|
@ -9,7 +9,7 @@
|
||||||
@section('content')
|
@section('content')
|
||||||
<p>{!! tr('Sembra che non ci siano i permessi di scrittura sul file _FILE_', ['_FILE_' => '<b>.env</b>']) !!}. {{ tr('Per completare la configurazione del gestionale, è necessario inserire provare nuovamente attraverso il pulsante "Riprova" oppure inserire manualmente il contenuto sottostante nel file indicato') }}.</p>
|
<p>{!! tr('Sembra che non ci siano i permessi di scrittura sul file _FILE_', ['_FILE_' => '<b>.env</b>']) !!}. {{ tr('Per completare la configurazione del gestionale, è necessario inserire provare nuovamente attraverso il pulsante "Riprova" oppure inserire manualmente il contenuto sottostante nel file indicato') }}.</p>
|
||||||
|
|
||||||
<form action="{{ route('configuration-save') }}" method="post">
|
<form action="{{ route('config.save') }}" method="post">
|
||||||
@foreach($params as $key => $value)
|
@foreach($params as $key => $value)
|
||||||
<input type="hidden" name="{{ $key }}" value="{{ $value }}">
|
<input type="hidden" name="{{ $key }}" value="{{ $value }}">
|
||||||
@endforeach
|
@endforeach
|
||||||
|
@ -39,7 +39,7 @@
|
||||||
<p>{!! tr('Inserire il seguente testo nel file _FILE_', ['_FILE_' => '<b>.env</b>']) !!}.</p>
|
<p>{!! tr('Inserire il seguente testo nel file _FILE_', ['_FILE_' => '<b>.env</b>']) !!}.</p>
|
||||||
<p><strong>{{ tr('Attenzione!') }}</strong> {!! tr('A seguito del completamento manuale della configurazione, è necessario utilizzare il pulsante dedicato "Completa inserimento" oppure eseguire da riga di comando _CMD_', ['_CMD_' => "<kbd>php artisan config:cache</kbd>"]) !!}.</p>
|
<p><strong>{{ tr('Attenzione!') }}</strong> {!! tr('A seguito del completamento manuale della configurazione, è necessario utilizzare il pulsante dedicato "Completa inserimento" oppure eseguire da riga di comando _CMD_', ['_CMD_' => "<kbd>php artisan config:cache</kbd>"]) !!}.</p>
|
||||||
|
|
||||||
<a class="btn btn-success" href="{{ route('configuration-cache') }}">
|
<a class="btn btn-success" href="{{ route('config.cache') }}">
|
||||||
<i class="fa fa-download"></i> {{ tr('Completa inserimento') }}
|
<i class="fa fa-download"></i> {{ tr('Completa inserimento') }}
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
|
|
@ -5,10 +5,10 @@
|
||||||
|
|
||||||
@section('body')
|
@section('body')
|
||||||
<div class="container pb-5">
|
<div class="container pb-5">
|
||||||
<form action="{{ route('configuration-save') }}" method="post" id="config-form">
|
<form action="{{ route('config.save') }}" method="post" id="config-form">
|
||||||
@csrf
|
@csrf
|
||||||
|
|
||||||
<div class="py-5 text-center">
|
<div class="py-5 text-center" style="margin-top: 40px">
|
||||||
<img class="d-block mx-auto mb-4" src="{{ url('/') }}/assets/img/full_logo.png" alt="{{ tr('Logo OpenSTAManager') }}">
|
<img class="d-block mx-auto mb-4" src="{{ url('/') }}/assets/img/full_logo.png" alt="{{ tr('Logo OpenSTAManager') }}">
|
||||||
<h2>{!! tr('Benvenuto in _NAME_!', ['_NAME_' => '<strong>'.tr('OpenSTAManager').'</strong>']) !!}</h2>
|
<h2>{!! tr('Benvenuto in _NAME_!', ['_NAME_' => '<strong>'.tr('OpenSTAManager').'</strong>']) !!}</h2>
|
||||||
<p class="lead">{!! tr('Puoi procedere alla configurazione tecnica del software attraverso i parametri seguenti, che potranno essere corretti secondo necessità tramite il file _FILE_', ['_FILE_' => '<i>.env</i>']) !!}. </p>
|
<p class="lead">{!! tr('Puoi procedere alla configurazione tecnica del software attraverso i parametri seguenti, che potranno essere corretti secondo necessità tramite il file _FILE_', ['_FILE_' => '<i>.env</i>']) !!}. </p>
|
||||||
|
@ -118,7 +118,7 @@
|
||||||
@section('js')
|
@section('js')
|
||||||
<script>
|
<script>
|
||||||
globals.configuration = {
|
globals.configuration = {
|
||||||
test_url: "{{ route('configuration-test') }}",
|
test_url: "{{ route('config.test') }}",
|
||||||
translations: {
|
translations: {
|
||||||
error: "{{ tr('Errore della configurazione') }}",
|
error: "{{ tr('Errore della configurazione') }}",
|
||||||
errorMessage: "{{ tr('La configurazione non è corretta') }}.",
|
errorMessage: "{{ tr('La configurazione non è corretta') }}.",
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
|
|
||||||
@section('body')
|
@section('body')
|
||||||
<div class="container pb-5">
|
<div class="container pb-5">
|
||||||
<div class="py-5 text-center">
|
<div class="py-5 text-center" style="margin-top: 40px">
|
||||||
<img class="d-block mx-auto mb-4" src="{{ url('/') }}/assets/img/full_logo.png" alt="{{ tr('Logo OpenSTAManager') }}">
|
<img class="d-block mx-auto mb-4" src="{{ url('/') }}/assets/img/full_logo.png" alt="{{ tr('Logo OpenSTAManager') }}">
|
||||||
<h2>{!! tr('Inizializzazione di _NAME_!', ['_NAME_' => '<strong>'.tr('OpenSTAManager').'</strong>']) !!}</h2>
|
<h2>{!! tr('Inizializzazione di _NAME_!', ['_NAME_' => '<strong>'.tr('OpenSTAManager').'</strong>']) !!}</h2>
|
||||||
<p class="lead">{{ tr("Completa la configurazione del gestionale inserendo le ultime informazioni di base") }}. </p>
|
<p class="lead">{{ tr("Completa la configurazione del gestionale inserendo le ultime informazioni di base") }}. </p>
|
||||||
|
|
|
@ -5,6 +5,6 @@
|
||||||
@section('error_color', 'info')
|
@section('error_color', 'info')
|
||||||
@section('error_header', '503')
|
@section('error_header', '503')
|
||||||
|
|
||||||
@section('error_message', tr('Servizio non disponibile!'))
|
@section('error_message', tr('Servizio non disponibile'))
|
||||||
@section('error_info', tr("E' in corso un processo di manutenzione dell'applicazione"))
|
@section('error_info', tr("E' in corso un processo di manutenzione dell'applicazione"))
|
||||||
@section('error_return', tr("Torneremo attivi il più presto possibile"))
|
@section('error_return', tr("Torneremo attivi il più presto possibile"))
|
||||||
|
|
|
@ -39,23 +39,22 @@ Route::get('/requirements', [RequirementsController::class, 'index'])
|
||||||
->name('requirements');
|
->name('requirements');
|
||||||
|
|
||||||
// Sezione di configurazione
|
// Sezione di configurazione
|
||||||
Route::prefix('config')
|
Route::group(['as' => 'config.', 'prefix' => 'config'], function () {
|
||||||
->group(function () {
|
Route::get('/', [ConfigurationController::class, 'index'])
|
||||||
Route::get('/', [ConfigurationController::class, 'index'])
|
->name('index');
|
||||||
->name('configuration');
|
|
||||||
|
|
||||||
Route::get('/test', [ConfigurationController::class, 'test'])
|
Route::get('/test', [ConfigurationController::class, 'test'])
|
||||||
->name('configuration-test');
|
->name('test');
|
||||||
|
|
||||||
Route::get('/cache', [ConfigurationController::class, 'cache'])
|
Route::get('/cache', [ConfigurationController::class, 'cache'])
|
||||||
->name('configuration-cache');
|
->name('cache');
|
||||||
|
|
||||||
Route::get('/write', [ConfigurationController::class, 'write'])
|
Route::get('/write', [ConfigurationController::class, 'write'])
|
||||||
->name('configuration-write');
|
->name('write');
|
||||||
|
|
||||||
Route::post('/save', [ConfigurationController::class, 'save'])
|
Route::post('/save', [ConfigurationController::class, 'save'])
|
||||||
->name('configuration-save');
|
->name('save');
|
||||||
});
|
});
|
||||||
|
|
||||||
// Installazione aggiornamenti del gestionale
|
// Installazione aggiornamenti del gestionale
|
||||||
Route::get('/update', [UpdateController::class, 'index'])
|
Route::get('/update', [UpdateController::class, 'index'])
|
||||||
|
|
Loading…
Reference in New Issue