diff --git a/package-lock.json b/package-lock.json index 82a0a17..48e341a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,57 +1,3 @@ { - "requires": true, - "lockfileVersion": 1, - "dependencies": { - "@ckeditor/ckeditor5-alignment": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-alignment/-/ckeditor5-alignment-21.0.0.tgz", - "integrity": "sha512-jtUc7g+9TKgNS819UD23tJSTJosp+VAk/fk+p1HJEgrq5YuH/F3djVwW4fyyJRuepbvYOObhOa2YHET1gtOuFw==", - "requires": { - "@ckeditor/ckeditor5-core": "^21.0.0", - "@ckeditor/ckeditor5-ui": "^21.0.0" - } - }, - "@ckeditor/ckeditor5-core": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-core/-/ckeditor5-core-21.0.0.tgz", - "integrity": "sha512-qoBLE0dGaxYHN6zetYe5ct/w9E3+iX9T2oCgHNbCD/zaYhxfNTQ9uHp7x6Hn4Zq0xyieUhNIeq+ZR9CJlBEMwA==", - "requires": { - "@ckeditor/ckeditor5-engine": "^21.0.0", - "@ckeditor/ckeditor5-utils": "^21.0.0", - "lodash-es": "^4.17.15" - } - }, - "@ckeditor/ckeditor5-engine": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-21.0.0.tgz", - "integrity": "sha512-wa0Fmn62o1i4Jw0vHnCvtwqM2ARkIU2V2/6MUgWAez5gpAIFwSGu4kjUGeIbuHISAIGKIwtRIVAdL9EtqsTV/A==", - "requires": { - "@ckeditor/ckeditor5-utils": "^21.0.0", - "lodash-es": "^4.17.15" - } - }, - "@ckeditor/ckeditor5-ui": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-21.0.0.tgz", - "integrity": "sha512-oACL96HUbHhQ5Me5WpOYq9qZ+zJw0Hfqe+f8/UtCfQ99zHcrfZ2odvNHSPdn16cZ5f8ED+zLJNHb8b8IMWwy2Q==", - "requires": { - "@ckeditor/ckeditor5-core": "^21.0.0", - "@ckeditor/ckeditor5-utils": "^21.0.0", - "lodash-es": "^4.17.15" - } - }, - "@ckeditor/ckeditor5-utils": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-21.0.0.tgz", - "integrity": "sha512-JDEFO/bC8uP/K6xHEJdN/Pm1G7EO2WG363CY3qGZc49eNvYeXrluniLHIh7pL3kUSIr0yqLjJGGdPKc/sZYsHQ==", - "requires": { - "lodash-es": "^4.17.15" - } - }, - "lodash-es": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.15.tgz", - "integrity": "sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ==" - } - } + "lockfileVersion": 1 } diff --git a/skolehjem/app/Http/Controllers/GuideController.php b/skolehjem/app/Http/Controllers/GuideController.php index c8b8e66..d54f732 100644 --- a/skolehjem/app/Http/Controllers/GuideController.php +++ b/skolehjem/app/Http/Controllers/GuideController.php @@ -80,6 +80,7 @@ class GuideController extends Controller $news->subname = $guide->name; $news->arrangement_id = $guide->id; $news->type_id = '4'; + $news->news_expiration_date = $request->input("news_expiration_date"); $news->content = $guide->guide_articles; diff --git a/skolehjem/app/Http/Controllers/NewsController.php b/skolehjem/app/Http/Controllers/NewsController.php index c5d84be..7d71d6a 100644 --- a/skolehjem/app/Http/Controllers/NewsController.php +++ b/skolehjem/app/Http/Controllers/NewsController.php @@ -11,6 +11,8 @@ use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; use Illuminate\Http\Response; +date_default_timezone_set('Europe/Copenhagen'); + class NewsController extends Controller { public function __construct() @@ -31,6 +33,11 @@ class NewsController extends Controller */ public function index(Request $request) { + $news = News::query()->where('news_expiration_date', '<=', date('Y-m-d').'T'.date('H:i') )->get(); + foreach ($news as $new) { + $new->delete(); + } + $news = News::query()->orderBy('id', 'desc')->get(); return Response::detect("news.index", [ "news" => $news ]); @@ -56,7 +63,8 @@ class NewsController extends Controller { $data = $request->validate([ "subname" => "required", - "content" => "required" + "content" => "required", + "news_expiration_date" => "" ]); $news = new News($data); @@ -116,7 +124,8 @@ class NewsController extends Controller { $data = $request->validate([ "subname" => "required", - "content" => "required" + "content" => "required", + "news_expiration_date" => "" ]); $news->update($data); diff --git a/skolehjem/app/Http/Controllers/RootController.php b/skolehjem/app/Http/Controllers/RootController.php index 3f27ace..4b83023 100644 --- a/skolehjem/app/Http/Controllers/RootController.php +++ b/skolehjem/app/Http/Controllers/RootController.php @@ -7,6 +7,8 @@ use App\News; use Illuminate\Http\Request; use Illuminate\Http\Response; +date_default_timezone_set('Europe/Copenhagen'); + class RootController extends Controller { function __construct() @@ -18,6 +20,13 @@ class RootController extends Controller public function index() { $perPage = 5; + //Delete news Articels + $news = News::query()->where('news_expiration_date', '<=', date('Y-m-d').'T'.date('H:i'))->get(); + foreach ($news as $new) { + $new->delete(); + } + + //All news $newsCollection = News::query()->orderBy('id', 'desc')->get(); @@ -34,12 +43,12 @@ class RootController extends Controller if(Response::detect("root.index")->name() == "admin.root.index") return view("admin.root.index"); else { - $news = News::query()->join('news_types', 'news_types.id', '=', 'news.type_id')->orderBy('news.id', 'desc')->get(); + $news = News::query()->select(['news_types.type', 'news.subname', 'news.id', 'news.resource_id', 'news.created_at', 'news.arrangement_id', 'news.content' ])->join('news_types', 'news_types.id', '=', 'news.type_id')->orderBy('news.id', 'desc')->get(); return view("app.root.index", ["news" => $news]); } } else { - $news = News::query()->join('news_types', 'news_types.id', '=', 'news.type_id')->orderBy('news.id', 'desc')->get(); + $news = News::query()->select(['news_types.type', 'news.subname', 'news.id', 'news.resource_id', 'news.created_at' ])->join('news_types', 'news_types.id', '=', 'news.type_id')->orderBy('news.id', 'desc')->get(); return Response::detect('root.index', ["news" => $news]); } diff --git a/skolehjem/app/News.php b/skolehjem/app/News.php index 8f6f0c4..a067619 100644 --- a/skolehjem/app/News.php +++ b/skolehjem/app/News.php @@ -7,6 +7,6 @@ use Illuminate\Database\Eloquent\Model; class News extends Model { protected $fillable = [ - 'name', 'subname', 'content', 'resource_id', 'arrangement_id', 'type' + 'name', 'subname', 'news_expiration_date', 'content', 'resource_id', 'arrangement_id', 'type' ]; } diff --git a/skolehjem/config/app.php b/skolehjem/config/app.php index a942d37..8544d0e 100644 --- a/skolehjem/config/app.php +++ b/skolehjem/config/app.php @@ -67,7 +67,7 @@ return [ | */ - 'timezone' => 'UTC', + 'timezone' => 'Europe/Copenhagen', /* |-------------------------------------------------------------------------- diff --git a/skolehjem/database/migrations/2020_08_06_092000_create_news_table.php b/skolehjem/database/migrations/2020_08_06_092000_create_news_table.php index a2c2a60..9b61c21 100644 --- a/skolehjem/database/migrations/2020_08_06_092000_create_news_table.php +++ b/skolehjem/database/migrations/2020_08_06_092000_create_news_table.php @@ -17,6 +17,7 @@ class CreateNewsTable extends Migration $table->id(); $table->string("name"); $table->string('subname'); + $table->date('news_expiration_date')->nullable(); $table->text("content"); $table->foreignId('resource_id')->nullable()->constrained('resources', 'id'); $table->integer("arrangement_id")->nullable(); //Gets ID from given event, menu, guide or news diff --git a/skolehjem/public/css/webappdark.css b/skolehjem/public/css/webappdark.css index ce59563..aceed77 100644 --- a/skolehjem/public/css/webappdark.css +++ b/skolehjem/public/css/webappdark.css @@ -80,15 +80,6 @@ select { margin-bottom: 1rem; } -.select2-container--default, .select2-search, .selection, .select2-selection--single, .select2-results__options * { - color: white !important; - background-color: #2F3136 !important; -} - -.select2-selection__rendered { - color: white !important; -} - input.appinput { border: none; border-bottom: white solid 2px; diff --git a/skolehjem/resources/lang/dk/msg.php b/skolehjem/resources/lang/dk/msg.php index bb0c202..889d1f9 100644 --- a/skolehjem/resources/lang/dk/msg.php +++ b/skolehjem/resources/lang/dk/msg.php @@ -75,5 +75,7 @@ return[ "ris" => "Ris", "andet" => "Andet", "besked" => "Besked", - "send" => "Send besked" + "send" => "Send besked", + "kategori" => "Kategori", + "opret" => "Oprettet den: " ]; diff --git a/skolehjem/resources/lang/en/msg.php b/skolehjem/resources/lang/en/msg.php index 12d63c9..62065c9 100644 --- a/skolehjem/resources/lang/en/msg.php +++ b/skolehjem/resources/lang/en/msg.php @@ -81,5 +81,7 @@ return[ "ros" => "Positive", "andet" => "Other", "besked" => "Messages", - "send" => "Send messeags" + "send" => "Send messeags", + "kategori" => "Category", + "opret" => "Created at: " ]; diff --git a/skolehjem/resources/views/admin/guides/create.blade.php b/skolehjem/resources/views/admin/guides/create.blade.php index c315acf..0bf2c48 100644 --- a/skolehjem/resources/views/admin/guides/create.blade.php +++ b/skolehjem/resources/views/admin/guides/create.blade.php @@ -41,11 +41,15 @@
+
+ + +
@@ -144,5 +148,16 @@ }) + function change() { + if ($('#isNews').is(":checked")) + { + $('#delete_event').show(400); + }else { + $('#delete_event').hide(400); + } + } + change(); + + @endsection diff --git a/skolehjem/resources/views/admin/news/create.blade.php b/skolehjem/resources/views/admin/news/create.blade.php index 59f2c67..621b194 100644 --- a/skolehjem/resources/views/admin/news/create.blade.php +++ b/skolehjem/resources/views/admin/news/create.blade.php @@ -22,6 +22,8 @@ + +
diff --git a/skolehjem/resources/views/admin/news/edit.blade.php b/skolehjem/resources/views/admin/news/edit.blade.php index 6e9b25a..6d420f3 100644 --- a/skolehjem/resources/views/admin/news/edit.blade.php +++ b/skolehjem/resources/views/admin/news/edit.blade.php @@ -23,6 +23,8 @@ + +
{!! $news->content !!}
diff --git a/skolehjem/resources/views/admin/news/index.blade.php b/skolehjem/resources/views/admin/news/index.blade.php index 3902ddf..d1531ed 100644 --- a/skolehjem/resources/views/admin/news/index.blade.php +++ b/skolehjem/resources/views/admin/news/index.blade.php @@ -18,6 +18,7 @@ + @if(auth()->user()->can('news.edit')) @endif @@ -29,6 +30,11 @@ @foreach($news as $new) + @if($new->news_expiration_date !== null) + + @else + + @endif @if(auth()->user()->can('news.edit')) @endif diff --git a/skolehjem/resources/views/app/news/index.blade.php b/skolehjem/resources/views/app/news/index.blade.php index 9ccf58e..b7dc05f 100644 --- a/skolehjem/resources/views/app/news/index.blade.php +++ b/skolehjem/resources/views/app/news/index.blade.php @@ -41,11 +41,13 @@ padding: 10px 10px; font-size: 22px; line-height: 30px; + display: flex; + flex-direction: column; } .img{ - width: 1em; - height: calc(1em + 20px); + width: 2em; + height: calc(2em + 20px); margin-top: 5px; margin-bottom: 5px; margin-left: 5px; @@ -61,7 +63,7 @@ } .img > a { - width: 100%; + width: 75%; height: 100%; display: flex; justify-content: center; @@ -103,12 +105,18 @@
+ @foreach($news as $new) @if($new->type == 'News')
News:
-
{{ $new->subname }}
+
+ {{ $new->subname }} + {{__('msg.opret')}}{{ date('Y-m-d H:i:s', strtotime($new->created_at))}} +
@if($new->resource_id !== null)
@endif @@ -120,7 +128,10 @@ @elseif($new->type == 'Menu')
Menuplan:
-
{{ $new->subname }}
+
+ {{ $new->subname }} + {{__('msg.opret')}}{{ date('Y-m-d H:i:s', strtotime($new->created_at))}} +
@if($new->resource_id !== null)
@endif @@ -128,14 +139,16 @@ @if ($new->type_id == 1 || $new->type_id == 2) {{-- If it's a news or menu then display the whole message --}} {!! $new->content !!} @else {{-- If it's a menu, guide or event. Then display up to 300 characters of text --}} - {!! \App\Helpers::closetags(substr($new->content, 0, 300) ) !!} + {!! \App\Helpers::closetags(substr($new->content, 0, 500) ) !!} @endif
@elseif($new->type == 'Activity')
Aktiviteter:
-
{{ $new->subname }}
+
{{ $new->subname }} + {{__('msg.opret')}}{{ date('Y-m-d H:i:s', strtotime($new->created_at))}} +
@if($new->resource_id !== null)
{{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime(\App\Event::query()->where('id', '=', $new->arrangement_id)->first()->date))->format('d/m/Y \k\l\. H:i') }} | {{\App\Event::query()->where('id', '=', $new->arrangement_id)->first()->accountable}}
@@ -170,9 +183,12 @@ @else
Vejledninger:
-
{{ $new->subname }}
+
{{ $new->subname }} + {{__('msg.opret')}}{{ date('Y-m-d H:i:s', strtotime($new->created_at))}} +
@if($new->resource_id !== null)
+
{{__('msg.kategori')}}: {{\App\GuidesCategory::query()->where('id', '=', \App\Guide::query()->where('id','=', $new->arrangement_id)->first()->guide_category_id)->first()->guidesCategoryName}}
@endif
NavnUdløbsdatoUpdate
{{$new->subname}}{{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime($new->news_expiration_date))->format('d/m/Y \k\l\. H:i') }}Ingen udløbsdato $new ]) }}">Update