diff --git a/app/Http/Controllers/HookController.php b/app/Http/Controllers/HookController.php new file mode 100644 index 000000000..e8f5088db --- /dev/null +++ b/app/Http/Controllers/HookController.php @@ -0,0 +1,48 @@ + $hook->id, + 'name' => $hook->name, + ]; + } + + return response()->json($results); + } + + public function lock(Request $request, $hook_id) + { + $hook = Hook::find($hook_id); + $token = $hook->lock(); + + return response()->json($token); + } + + public function execute(Request $request, $hook_id, $token) + { + $hook = Hook::find($hook_id); + $results = $hook->execute($token); + + return response()->json($results); + } + + public function response(Request $request, $hook_id) + { + $hook = Hook::find($hook_id); + $results = $hook->response(); + + return response()->json($results); + } +} diff --git a/app/Http/Controllers/InfoController.php b/app/Http/Controllers/InfoController.php index ffffffa53..0d6eade82 100644 --- a/app/Http/Controllers/InfoController.php +++ b/app/Http/Controllers/InfoController.php @@ -12,11 +12,17 @@ class InfoController extends Controller { protected static $bugEmail = 'info@openstamanager.com'; + /** + * Gestore della pagina di informazioni del gestionale. + */ public function info() { return view('info'); } + /** + * Gestore della pagina di segnalazione bug del gestionale. + */ public function bug() { $account = Account::where('predefined', true)->first(); @@ -27,6 +33,9 @@ class InfoController extends Controller ]); } + /** + * Operazione di invio di una segnalazione bug. + */ public function send(Request $request) { $user = auth()->user(); diff --git a/app/Http/Controllers/MessageController.php b/app/Http/Controllers/MessageController.php new file mode 100644 index 000000000..9c9bb569b --- /dev/null +++ b/app/Http/Controllers/MessageController.php @@ -0,0 +1,24 @@ +getMessage($element); + } + + return response()->json($results); + } +} diff --git a/app/Http/Requests/Auth/LoginRequest.php b/app/Http/Requests/Auth/LoginRequest.php index 548d328bd..a30fffa2b 100644 --- a/app/Http/Requests/Auth/LoginRequest.php +++ b/app/Http/Requests/Auth/LoginRequest.php @@ -106,12 +106,14 @@ class LoginRequest extends FormRequest */ protected function registerLog($status) { + $user = auth()->user(); + // Log di accesso $log = new Log(); $log->username = $this->input('username'); $log->ip = $this->ip(); - $log->id_utente = auth()->user()->id; + $log->id_utente = $user ? $user->id : null; $log->setStatus($status); $log->save(); diff --git a/legacy b/legacy index 9310e63a3..01a293d36 160000 --- a/legacy +++ b/legacy @@ -1 +1 @@ -Subproject commit 9310e63a3b0ec69cf43481bedcf0f1099e876bd1 +Subproject commit 01a293d3650fcf96d8617fab2b14a0c193bca6d9 diff --git a/resources/views/bug.blade.php b/resources/views/bug.blade.php index 25faa98ee..a89df59b4 100644 --- a/resources/views/bug.blade.php +++ b/resources/views/bug.blade.php @@ -73,6 +73,8 @@ @endsection diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php index 29ce00e2c..ee254c804 100644 --- a/resources/views/layouts/app.blade.php +++ b/resources/views/layouts/app.blade.php @@ -19,6 +19,7 @@ @endforeach globals = { + content_was_modified: false, rootdir: '{{ base_url() }}', id_module: '{{ $id_module }}', @@ -33,7 +34,8 @@ decimals: "{{ formatter()->getNumberSeparators()['decimals'] }}", thousands: "{{ formatter()->getNumberSeparators()['thousands'] }}", - currency: "{{ currency() }}", + locale: '{{ substr(app()->getLocale(), 0, strpos(app()->getLocale(), "_")) }}', + full_locale: '{{ app()->getLocale() }}', search: search, translations: { @@ -120,9 +122,6 @@ }, }, - locale: '{{ app()->getLocale() }}', - full_locale: '{{ app()->getLocale() }}', - start_date: '{{ session('period_start') }}', start_date_formatted: '{{ dateFormat(session('period_start')) }}', end_date: '{{ session('period_end') }}', @@ -132,20 +131,23 @@ ["Undo","Redo","-","Cut","Copy","Paste","PasteText","PasteFromWord","-","Scayt", "-","Link","Unlink","-","Bold","Italic","Underline","Superscript","SpecialChar","HorizontalRule","-","JustifyLeft","JustifyCenter","JustifyRight","JustifyBlock","-","NumberedList","BulletedList","Outdent","Indent","Blockquote","-","Styles","Format","Image","Table", "TextColor", "BGColor" ], ], - order_manager_id: '{{ module('Stato dei servizi')['id'] }}', + order_manager_id: '{{ module('Stato dei servizi')->id }}', tempo_attesa_ricerche: {{ setting('Tempo di attesa ricerche in secondi') }}, restrict_summables_to_selected: {{ setting('Totali delle tabelle ristretti alla selezione') }}, - select_url: "{{ route('ajax-select') }}", - dataload_url: "{{ route('ajax-dataload', ['module_id' => '|module_id|']) }}", - dataload_url_plugin: "{{ route('ajax-dataload', ['module_id' => '|module_id|', 'reference_id' => '|reference_id|']) }}", - ajax_set_url: "{{ route('ajax-session') }}", - ajax_array_set_url: "{{ route('ajax-session-array') }}", - messages_url: "{{ route('messages') }}", - hooks: { - list: "{{ route('hooks') }}", - lock: "{{ route('hook-lock', ['hook_id' => '|id|']) }}", - execute: "{{ route('hook-execute', ['hook_id' => '|id|', 'token' => '|token|']) }}", - response: "{{ route('hook-response', ['hook_id' => '|id|']) }}", + + urls: { + select: "{{ route('ajax-select') }}", + dataload: "{{ route('ajax-dataload', ['module_id' => '|module_id|']) }}", + dataload_plugin: "{{ route('ajax-dataload', ['module_id' => '|module_id|', 'reference_id' => '|reference_id|']) }}", + ajax_set: "{{ route('ajax-session') }}", + ajax_array_set: "{{ route('ajax-session-array') }}", + messages: "{{ route('messages') }}", + hooks: { + list: "{{ route('hooks') }}", + lock: "{{ route('hook-lock', ['hook_id' => '|id|']) }}", + execute: "{{ route('hook-execute', ['hook_id' => '|id|', 'token' => '|token|']) }}", + response: "{{ route('hook-response', ['hook_id' => '|id|']) }}", + } } }; @@ -311,6 +313,9 @@ // Toast alertPush(); + // Orologio + clock(); + // Hooks startHooks(); diff --git a/resources/views/layouts/base.blade.php b/resources/views/layouts/base.blade.php index b480c3e3e..530568bff 100644 --- a/resources/views/layouts/base.blade.php +++ b/resources/views/layouts/base.blade.php @@ -8,6 +8,8 @@ + + @@ -68,8 +70,17 @@ }, }, - messages_url: "{{ route('messages') }}", + urls: { + messages: "{{ route('messages') }}", + } }; + + // CSRF Token automatico per richieste AJAX + $.ajaxSetup({ + headers: { + 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') + } + }); @yield('css') diff --git a/routes/web.php b/routes/web.php index 0afa737d7..ac9cdf1af 100644 --- a/routes/web.php +++ b/routes/web.php @@ -1,8 +1,10 @@ name('initialization-save'); // Messaggi flash -Route::get('/messages', [Test::class, 'index']) +Route::get('/messages', [MessageController::class, 'index']) ->name('messages'); // Operazioni Ajax @@ -74,19 +76,19 @@ Route::prefix('ajax') Route::prefix('hook') ->middleware(['auth']) ->group(function () { - Route::get('/list', [Test::class, 'index']) + Route::get('/list', [HookController::class, 'list']) ->name('hooks'); - Route::get('/lock/{hook_id}', [Test::class, 'index']) - ->where('hook_id', '[0-9]+') + Route::get('/lock/{hook_id}', [HookController::class, 'lock']) + ->whereNumber('hook_id') ->name('hook-lock'); - Route::get('/execute/{hook_id}/{token}', [Test::class, 'index']) - ->where('hook_id', '[0-9]+') + Route::get('/execute/{hook_id}/{token}', [HookController::class, 'execute']) + ->whereNumber('hook_id') ->name('hook-execute'); - Route::get('/response/{hook_id}', [Test::class, 'index']) - ->where('hook_id', '[0-9]+') + Route::get('/response/{hook_id}', [HookController::class, 'response']) + ->whereNumber('hook_id') ->name('hook-response'); });