From b5eb6c383be628ae53dfde92f40afe7d7dcb70a5 Mon Sep 17 00:00:00 2001 From: FlavioBarachino Date: Tue, 18 Jul 2023 17:00:08 +0200 Subject: [PATCH] Creato Avvisi e terminato task (manca editing) --- app/Http/Controllers/AvvisoController.php | 10 +++ app/Http/Controllers/TaskController.php | 14 +++- app/Http/Controllers/Utenti.php | 4 ++ app/Models/Avviso.php | 11 +++ app/Models/User.php | 2 +- composer.json | 1 + composer.lock | 67 ++++++++++++++++++- config/app.php | 2 + ...2023_07_18_145041_create_avvisos_table.php | 33 +++++++++ public/js/app/dashboard.js | 8 +++ public/js/app/task.js | 33 +++++---- resources/views/layouts/dashboard.blade.php | 42 ++++++++++-- resources/views/tasks/list.blade.php | 61 ++++++++++++++++- routes/admin.php | 3 +- 14 files changed, 260 insertions(+), 31 deletions(-) create mode 100644 app/Http/Controllers/AvvisoController.php create mode 100644 app/Models/Avviso.php create mode 100644 database/migrations/2023_07_18_145041_create_avvisos_table.php diff --git a/app/Http/Controllers/AvvisoController.php b/app/Http/Controllers/AvvisoController.php new file mode 100644 index 0000000..645ddbd --- /dev/null +++ b/app/Http/Controllers/AvvisoController.php @@ -0,0 +1,10 @@ +$this->listTask()]); } - public function newTask() + public function newTask(Request $data) { - + Task::create([ + 'titolo'=>$data['titolo'], + 'descrizione'=>$data['descrizione'], + 'assegnato_a'=>$data['assegnato_a'], + 'creato_da'=>$data['creato_da'], + 'termine_il'=>$data['termine_il'], + 'creato_il'=>$data['creato_il'], + 'chiuso_il'=>$data['chiuso_il'], + 'stato'=>$data['stato'], + ]); + return redirect()->back(); } diff --git a/app/Http/Controllers/Utenti.php b/app/Http/Controllers/Utenti.php index f7fedcf..a95ba2a 100644 --- a/app/Http/Controllers/Utenti.php +++ b/app/Http/Controllers/Utenti.php @@ -47,6 +47,10 @@ class Utenti extends Controller return view('users.list',['users'=>$users]); } + function getUsers(){ + return User::getUsers(); + } + function listRoles(){ $roles = Role::all(); return $roles; diff --git a/app/Models/Avviso.php b/app/Models/Avviso.php new file mode 100644 index 0000000..8b38f0a --- /dev/null +++ b/app/Models/Avviso.php @@ -0,0 +1,11 @@ +where('id','=',$id)->get(); + return DB::table('users')->where('id','=',$id)->first(); } public static function getUsers() diff --git a/composer.json b/composer.json index 5f1be95..bcd9e46 100644 --- a/composer.json +++ b/composer.json @@ -10,6 +10,7 @@ "require" : { "php": "^7.3|^8.0", "barryvdh/laravel-dompdf": "^2.0", + "creativeorange/gravatar": "^1.0", "directorytree/ldaprecord": "^2.9", "fruitcake/laravel-cors": "^2.0", "guzzlehttp/guzzle": "^7.0.1", diff --git a/composer.lock b/composer.lock index b186b27..4f95cbe 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "e6ac2be787f145ea140b72b55e302e90", + "content-hash": "acd096c2d0a14521dd551b39dde1ef28", "packages": [ { "name": "asm89/stack-cors", @@ -350,6 +350,69 @@ ], "time": "2022-04-01T19:23:25+00:00" }, + { + "name": "creativeorange/gravatar", + "version": "v1.0.23", + "source": { + "type": "git", + "url": "https://github.com/creativeorange/gravatar.git", + "reference": "3a1b227c48091b039b967265ec13c0800c70ac79" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/creativeorange/gravatar/zipball/3a1b227c48091b039b967265ec13c0800c70ac79", + "reference": "3a1b227c48091b039b967265ec13c0800c70ac79", + "shasum": "" + }, + "require": { + "illuminate/support": "^5|^6|^7|^8|^9|^10.0", + "php": ">=5.4.0" + }, + "require-dev": { + "nunomaduro/larastan": "^0.6.2|^2.4", + "orchestra/testbench": "^5.4|^8.0", + "php": ">=7.2" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Creativeorange\\Gravatar\\GravatarServiceProvider" + ], + "aliases": { + "Gravatar": "Creativeorange\\Gravatar\\Facades\\Gravatar" + } + } + }, + "autoload": { + "psr-4": { + "Creativeorange\\Gravatar\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jaco Tijssen", + "email": "jaco@creativeorange.nl", + "homepage": "https://www.creativeorange.nl", + "role": "Developer" + } + ], + "description": "A Laravel Gravatar package for retrieving gravatar image URLs or checking the existance of an image.", + "keywords": [ + "avatar", + "gravatar", + "laravel" + ], + "support": { + "issues": "https://github.com/creativeorange/gravatar/issues", + "source": "https://github.com/creativeorange/gravatar/tree/v1.0.23" + }, + "time": "2023-02-06T07:57:20+00:00" + }, { "name": "dflydev/dot-access-data", "version": "v3.0.2", @@ -10285,5 +10348,5 @@ "php": "^7.3|^8.0" }, "platform-dev": [], - "plugin-api-version": "2.3.0" + "plugin-api-version": "2.2.0" } diff --git a/config/app.php b/config/app.php index cf42dc4..271e31a 100644 --- a/config/app.php +++ b/config/app.php @@ -161,6 +161,7 @@ return [ Illuminate\Translation\TranslationServiceProvider::class, Illuminate\Validation\ValidationServiceProvider::class, Illuminate\View\ViewServiceProvider::class, + Creativeorange\Gravatar\GravatarServiceProvider::class, /* @@ -232,6 +233,7 @@ return [ 'Validator' => Illuminate\Support\Facades\Validator::class, 'View' => Illuminate\Support\Facades\View::class, 'FastExcel' => Rap2hpoutre\FastExcel\Facades\FastExcel::class, + 'Gravatar' => Creativeorange\Gravatar\Facade\Gravatar::class, ], diff --git a/database/migrations/2023_07_18_145041_create_avvisos_table.php b/database/migrations/2023_07_18_145041_create_avvisos_table.php new file mode 100644 index 0000000..0f0ec58 --- /dev/null +++ b/database/migrations/2023_07_18_145041_create_avvisos_table.php @@ -0,0 +1,33 @@ +id(); + $table->timestamps(); + $table->longtext('avviso'); + $table->date('creato_il'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('avvisos'); + } +} diff --git a/public/js/app/dashboard.js b/public/js/app/dashboard.js index a730aae..fdc5c97 100644 --- a/public/js/app/dashboard.js +++ b/public/js/app/dashboard.js @@ -3,4 +3,12 @@ $(document).ready(function() { $('#categorie').DataTable({ responsive: true }); + // Reload del div + $.ajaxSetup({ cache: false }); + setInterval(function() { + $('#mieitask').load('/admin'); + }, 8000); }); + + + diff --git a/public/js/app/task.js b/public/js/app/task.js index c683586..5219114 100644 --- a/public/js/app/task.js +++ b/public/js/app/task.js @@ -21,38 +21,35 @@ var strDate = d.getFullYear() + '-' + (day<10 ? '0' : '') + day; -$(document).on('click', '.open_modal_spesa', function() { +$(document).on('click', '.open_modal_new', function() { console.log(strDate); - $("#categoria").empty(); - $("#tags").empty(); + $("#titolo").empty(); + $("#descrizione").empty(); $('#form').find('input[type="text"], textarea, input[type="number"],input[type="date"],option').val(""); $('#form').find('input[type="date"]').val(strDate); $('#myModal').modal('show'); - $('.modal-title').text(' Nuovo movimento in uscita'); - $('#form').attr('action', '/admin/movimenti/spesa'); - $.getJSON("/admin/service/catlistSpesa", {}, function(cats) { - $.each(cats, function(i, cat) { - $("select[name='mov_fk_categoria']").append( - new Option(cat.cat_name, cat.id) + $('.modal-title').text(' Nuova attività'); + $('#form').attr('action', '/admin/task/new'); + $.getJSON("/admin/service/getUsers", {}, function(users) { + $.each(users, function(i, users) { + $("select[name='assegnato_a']").append( + new Option(users.name, users.id) ) } ); }); - $.getJSON("/admin/service/taglist", {}, function(tags) { - $.each(tags, function(i, tag) { - $("select[name='mov_fk_tags']").append( - new Option(tag.tag_name, tag.id) - ) - }); -}); + }); + + +/* $(document).on('click', '.open_modal_entrata', function() { console.log(strDate); - $("#categoria").empty(); + $("#titolo").empty(); $("#tags").empty(); $('#form').find('input[type="text"], textarea, input[type="number"],option').val(""); $('#form').find('input[type="date"]').val(strDate); - $('#myModal').modal('show'); + $('#myModal_new').modal('show'); $('.modal-title').text('Nuovo movimento in entrata'); $('#form').attr('action', '/admin/movimenti/entrata'); $.getJSON("/admin/service/catlistEntrata", {}, function(data) { diff --git a/resources/views/layouts/dashboard.blade.php b/resources/views/layouts/dashboard.blade.php index 9b69bb0..a511700 100644 --- a/resources/views/layouts/dashboard.blade.php +++ b/resources/views/layouts/dashboard.blade.php @@ -109,12 +109,28 @@
- Attività a me assegnate + Attività da svolgere
-
+
    @foreach($mieitask as $task) -
  • {{ $task->titolo }}
  • + + + + +
    +
  • + @if($task->stato==='Chiuso') + + {{ $task->titolo }} +
    +
    {{$task->descrizione}}
    + @else + {{ $task->titolo }}
    +
    {{$task->descrizione}}
    + @endif +
  • +
    @endforeach
@@ -126,12 +142,28 @@
- Attività da me assegnate ad altri + Avvisi e informazioni
    @foreach($assegnati as $assegnato) -
  • {{ $assegnato->titolo }}
  • + + + + +
    +
  • + @if($assegnato->stato==='Chiuso') + + {{ $assegnato->titolo }} + + {{$assegnato->descrizione}} + @else + {{ $assegnato->titolo }} +
    {{$assegnato->descrizione}}
    + @endif +
  • +
    @endforeach
diff --git a/resources/views/tasks/list.blade.php b/resources/views/tasks/list.blade.php index f7b684b..42b759a 100644 --- a/resources/views/tasks/list.blade.php +++ b/resources/views/tasks/list.blade.php @@ -25,7 +25,7 @@
  • - +
    {{ $task->titolo}} @@ -40,7 +40,64 @@
  • +
    + + + + @endsection @section('script') - @endsection \ No newline at end of file diff --git a/routes/admin.php b/routes/admin.php index ad4050c..b37d4b1 100644 --- a/routes/admin.php +++ b/routes/admin.php @@ -150,7 +150,8 @@ Route::group(['middleware'=>['permission:progetti']], function(){ // TASKS Route::group(['middleware'=>['permission:tasks']], function(){ Route::get('tasks', [TaskController::class, 'Task'])->name('tasks'); - + Route::post('task/new',[TaskController::class, 'newTask']); + Route::get('service/getUsers', [Utenti::class,'getUsers']); }); // -- ONLY FOR TEST -- TO BE REMOVED //