From 5d9b0b6b7beca0ffc57ba6bf397746117cb843ec Mon Sep 17 00:00:00 2001 From: Nils Fischer Date: Thu, 1 Feb 2024 15:24:50 +0000 Subject: [PATCH 01/11] Init bootstrap rewrite --- app/Models/Device.php | 4 +- lang/de.json | 4 +- package-lock.json | 24 ++- package.json | 3 +- resources/js/app.js | 72 +++++---- resources/sass/app.scss | 13 +- resources/views/devices/index.blade.php | 7 +- resources/views/layouts/app.blade.php | 153 +++--------------- resources/views/layouts/menu.blade.php | 118 ++++++++++++++ .../livewire/live-monitor-overview.blade.php | 91 ++++++----- routes/web.php | 7 +- 11 files changed, 276 insertions(+), 220 deletions(-) create mode 100644 resources/views/layouts/menu.blade.php diff --git a/app/Models/Device.php b/app/Models/Device.php index 0fab0d8..fc32d26 100644 --- a/app/Models/Device.php +++ b/app/Models/Device.php @@ -157,9 +157,9 @@ public function isActive() { $seconds = $daysInSecs + $hoursInSecs + $minsInSecs + $diff->s; if ($seconds > $refresh_interval*2.5 || $this->created_at == $this->updated_at) { - return '🔮'; + return '
OFFLINE
'; } - return '🟱'; + return '
ACTIVE
'; } } diff --git a/lang/de.json b/lang/de.json index 961ebf6..7442bcd 100644 --- a/lang/de.json +++ b/lang/de.json @@ -169,5 +169,7 @@ "Slides updated": "Folien aktualisiert", "Cancel": "Abbrechen", "Today": "Heute", - "Presentation is assigned to schedules": "PrĂ€sentation ist ZeitplĂ€nen zugewiesen" + "Presentation is assigned to schedules": "PrĂ€sentation ist ZeitplĂ€nen zugewiesen", + "Overview": "Übersicht", + "Change theme": "Design wechseln" } diff --git a/package-lock.json b/package-lock.json index 9c97776..407a451 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,6 +6,7 @@ "": { "dependencies": { "@mdi/font": "^7.2.96", + "bootstrap-icons": "^1.11.3", "bulma": "^0.9.4", "bulma-calendar": "^6.1.19", "bulma-extensions": "^6.2.7", @@ -15,7 +16,7 @@ "devDependencies": { "@popperjs/core": "^2.11.6", "axios": "^1.1.2", - "bootstrap": "^5.2.3", + "bootstrap": "^5.3.2", "laravel-vite-plugin": "^0.8.0", "sass": "^1.56.1", "vite": "^4.4.9" @@ -439,9 +440,9 @@ } }, "node_modules/bootstrap": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.1.tgz", - "integrity": "sha512-jzwza3Yagduci2x0rr9MeFSORjcHpt0lRZukZPZQJT1Dth5qzV7XcgGqYzi39KGAVYR8QEDVoO0ubFKOxzMG+g==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.2.tgz", + "integrity": "sha512-D32nmNWiQHo94BKHLmOrdjlL05q1c8oxbtBphQFb9Z5to6eGRDCm0QgeaZ4zFBHzfg2++rqa2JkqCcxDy0sH0g==", "dev": true, "funding": [ { @@ -457,6 +458,21 @@ "@popperjs/core": "^2.11.8" } }, + "node_modules/bootstrap-icons": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/bootstrap-icons/-/bootstrap-icons-1.11.3.tgz", + "integrity": "sha512-+3lpHrCw/it2/7lBL15VR0HEumaBss0+f/Lb6ZvHISn1mlK83jjFpooTLsMWbIjJMDjDjOExMsTxnXSIT4k4ww==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ] + }, "node_modules/braces": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", diff --git a/package.json b/package.json index 73a897b..fc3a3fb 100644 --- a/package.json +++ b/package.json @@ -8,13 +8,14 @@ "devDependencies": { "@popperjs/core": "^2.11.6", "axios": "^1.1.2", - "bootstrap": "^5.2.3", + "bootstrap": "^5.3.2", "laravel-vite-plugin": "^0.8.0", "sass": "^1.56.1", "vite": "^4.4.9" }, "dependencies": { "@mdi/font": "^7.2.96", + "bootstrap-icons": "^1.11.3", "bulma": "^0.9.4", "bulma-calendar": "^6.1.19", "bulma-extensions": "^6.2.7", diff --git a/resources/js/app.js b/resources/js/app.js index 697c77d..da74dc8 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -1,12 +1,6 @@ import bulmaCalendar from 'bulma-calendar/dist/js/bulma-calendar.min.js'; +import "bootstrap/dist/js/bootstrap.min.js"; -let secrets = document.querySelectorAll('.secret'); - -for (let i = 0; i < secrets.length; i++) { - secrets[i].addEventListener("click", function () { - secrets[i].classList.toggle("blur"); - }); -} // Initialize all input of type date let options = { @@ -18,14 +12,14 @@ let options = { var calendars = bulmaCalendar.attach('[type="date"]', options); // Loop on each calendar initialized -for(var i = 0; i < calendars.length; i++) { - // Add listener to select event - calendars[i].on('select', date => { - console.log(date); - }); +for (var i = 0; i < calendars.length; i++) { + // Add listener to select event + calendars[i].on('select', date => { + console.log(date); + }); } -window.checkIfFileIsNotValid = function(file) { +window.checkIfFileIsNotValid = function (file) { const fileType = file['type']; const validImageTypes = ['application/pdf', 'video/mp4']; if (!validImageTypes.includes(fileType)) { @@ -37,27 +31,28 @@ window.checkIfFileIsNotValid = function(file) { } const fileInput = document.querySelector('#file-upload input[type=file]'); - -fileInput.onchange = () => { - if (fileInput.files.length > 0) { - if(checkIfFileIsNotValid(fileInput.files[0])) { - return; - } - - const fileName = document.querySelector('#file-upload .file-name'); - fileName.textContent = fileInput.files[0].name; - - if(inputDescription.value == "") { - let fileNameWithoutExtension = fileInput.files[0].name.split('.').slice(0, -1).join('.'); - inputDescription.value = fileNameWithoutExtension; +if (fileInput) { + fileInput.onchange = () => { + if (fileInput.files.length > 0) { + if (checkIfFileIsNotValid(fileInput.files[0])) { + return; + } + + const fileName = document.querySelector('#file-upload .file-name'); + fileName.textContent = fileInput.files[0].name; + + if (inputDescription.value == "") { + let fileNameWithoutExtension = fileInput.files[0].name.split('.').slice(0, -1).join('.'); + inputDescription.value = fileNameWithoutExtension; + } } } } -window.dropHandler = function(ev) { +window.dropHandler = function (ev) { ev.preventDefault(); - if(checkIfFileIsNotValid(ev.dataTransfer.files[0])) { + if (checkIfFileIsNotValid(ev.dataTransfer.files[0])) { return; } @@ -67,7 +62,7 @@ window.dropHandler = function(ev) { fileName.textContent = fileInput.files[0].name; let inputDescription = document.getElementById('inputDescription') - if(inputDescription.value == "") { + if (inputDescription.value == "") { let fileNameWithoutExtension = fileInput.files[0].name.split('.').slice(0, -1).join('.'); inputDescription.value = fileNameWithoutExtension; } @@ -75,7 +70,24 @@ window.dropHandler = function(ev) { } } -window.dragOverHandler = function(ev) { +window.dragOverHandler = function (ev) { // Prevent default behavior (Prevent file from being opened) ev.preventDefault(); } + +// Hide alert after 5 seconds +window.setTimeout(function () { + let alert = document.querySelector('.alert'); + if (alert) { + alert.animate([ + { opacity: 1 }, + { opacity: 0 } + ], { + duration: 1000 + }); + + window.setTimeout(function () { + alert.style.display = 'none'; + }, 1000); + } +}, 5000); diff --git a/resources/sass/app.scss b/resources/sass/app.scss index b3f42ff..de69c52 100644 --- a/resources/sass/app.scss +++ b/resources/sass/app.scss @@ -1,9 +1,5 @@ -@import 'bulma/bulma.sass'; -@import '@mdi/font/css/materialdesignicons.css'; -@import "bulma-prefers-dark/bulma-prefers-dark.sass"; -@import "bulma-calendar/src/sass/index.sass"; -@import "bulma-extensions/bulma-switch/src/sass/index.sass"; - +@import 'bootstrap/scss/bootstrap.scss'; +@import 'bootstrap-icons/font/bootstrap-icons.css'; .is-fullheight { @@ -115,3 +111,8 @@ footer { border-color: #000; color: #000; } + +.fading { + opacity: 0; + transition: opacity 0.5s ease-in-out; +} diff --git a/resources/views/devices/index.blade.php b/resources/views/devices/index.blade.php index c6fc751..39e88b5 100644 --- a/resources/views/devices/index.blade.php +++ b/resources/views/devices/index.blade.php @@ -2,9 +2,10 @@ @section('content') @can('read devices') -
{{ __('Devices') }}
- - @livewire('live-monitor-overview') +

{{ __('Devices') }}

+ {{ $devices->where('active', true)->count() }} active + {{ $devices->where('active', true)->count() }} offline + @livewire('live-monitor-overview') @endcan @cannot('read devices') diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php index 0f48dee..e73eee9 100644 --- a/resources/views/layouts/app.blade.php +++ b/resources/views/layouts/app.blade.php @@ -1,5 +1,5 @@ - + @@ -10,145 +10,34 @@ MIS Manager - - - - @vite(['resources/sass/app.scss', 'resources/js/app.js']) - -
-
- -
- -
+ + @include('layouts.menu')
-
-
- @if ($errors) - @foreach ($errors->all() as $error) -
- {{ $error }} -
- @endforeach - @endif - - @if (session()->has('success')) -
- {{ session()->get('success') }} -
- @endif + @if ($errors) + @foreach ($errors->all() as $error) +
+ {{ $error }} +
+ @endforeach + @endif + + @if (session()->has('success')) +
+ {{ session()->get('success') }} +
+ @endif - @yield('content') + @yield('content') -
- Build with Laravel, Bulma and | v{{ config('app.version') }} -
-
-
-
-
+
+ Build with Laravel, Bulma and | v{{ config('app.version') }} +
diff --git a/resources/views/layouts/menu.blade.php b/resources/views/layouts/menu.blade.php new file mode 100644 index 0000000..3782d91 --- /dev/null +++ b/resources/views/layouts/menu.blade.php @@ -0,0 +1,118 @@ + diff --git a/resources/views/livewire/live-monitor-overview.blade.php b/resources/views/livewire/live-monitor-overview.blade.php index 9eba41e..b8c3e4a 100644 --- a/resources/views/livewire/live-monitor-overview.blade.php +++ b/resources/views/livewire/live-monitor-overview.blade.php @@ -1,41 +1,47 @@ -
-
-

- {{ __('Devices') }} -

+
+
+ {{ __('Overview') }} + @can('create devices') + + + {{ __('Create device') }} + + @endcan +
+
+
+
+ +
+
-
- @can('create devices') - - - {{ __('Create device') }} - - @endcan +
+
-
-
- +
- - - - - - - - + + + + + {{-- --}} + + {{-- --}} + @foreach ($devices as $device) - - + {{-- --}} - + --}} @@ -95,4 +108,4 @@ class="mdi mdi-trash-can">
{{ __('Current slide') }}Name{{ __('Location') }}{{ __('Presentation') }}{{ __('Last connection') }}{{ __('Last monitor reload') }}{{ __('Actions') }}{{ __('Current slide') }}Name{{ __('Location') }}{{ __('Presentation') }}Status{{ __('Last connection') }}{{ __('Last monitor reload') }}{{ __('Actions') }}
- {{ $device->isActive() }} - + @php $device_pres = $device->getPresentation(); $slides = $device_pres?->slides; @@ -45,43 +51,50 @@ } else { $preview = config('app.placeholder_image'); } - @endphp - + @endphp + {{ $device->name }} {{ $device->description }} {{ $device_pres?->name ?? __('No template assigned') }} @if($device->presentationFromSchedule())
{{ __('Inherited by schedule') }} @elseif($device->presentationFromGroup())
{{ __('Inherited by group') }} @endif
+
OFFLINE
+
- @if ($device->last_seen) - {{ Carbon::parse($device->last_seen)->diffForHumans() }} - @else + @if ($device->last_seen && Carbon::parse($device->last_seen)->diffInMinutes() < 5) +
{{ Carbon::parse($device->last_seen)->diffForHumans() }}
+ @elseif($device->last_seen) +
{{ Carbon::parse($device->last_seen)->diffForHumans() }}
+ @elseif($device->last_seen == null) {{ $device->registered ? __('Registered') : __('Waiting for registration...') }} @endif
+ {{-- @if ($device->startup_timestamp) {{ Carbon::parse($device->startup_timestamp)->diffForHumans() }} @else N/A @endif -
@method('DELETE') @csrf +
@can('read devices') - + class="bi-pen"> @endcan @can('delete devices') - + @endcan +
-
+ diff --git a/routes/web.php b/routes/web.php index c10473b..5a30142 100644 --- a/routes/web.php +++ b/routes/web.php @@ -34,11 +34,14 @@ Route::get('/discover', [DeviceController::class, 'discover'])->name('devices.discover'); Route::middleware(['auth:sanctum', 'check_for_first_user'])->group(function () { - Route::get('/', [App\Http\Controllers\DeviceController::class, 'index']); + Route::get('/', function () { + // Redirect to / + return redirect('/devices'); + }); Route::get('/home', function() { // Redirect to / - return redirect('/'); + return redirect('/devices'); }); Route::prefix('devices')->group(function () { From 6bf8cea511959e892aa12d648797be84b23cae07 Mon Sep 17 00:00:00 2001 From: Nils Fischer Date: Sat, 3 Feb 2024 20:55:23 +0000 Subject: [PATCH 02/11] Rewrite to bootstrap --- app/Http/Controllers/DeviceController.php | 7 + app/Models/Device.php | 9 +- lang/de.json | 4 +- public/data/img/favicon.png | Bin 0 -> 826 bytes resources/views/auth/login.blade.php | 80 ++++---- resources/views/devices/index.blade.php | 4 +- resources/views/groups/index.blade.php | 113 ++++++------ resources/views/layouts/app.blade.php | 39 ++-- resources/views/layouts/footer.blade.php | 4 + resources/views/layouts/menu.blade.php | 22 ++- .../livewire/live-monitor-overview.blade.php | 79 ++++---- resources/views/presentations/index.blade.php | 61 +++--- resources/views/schedules/index.blade.php | 173 ++---------------- 13 files changed, 236 insertions(+), 359 deletions(-) create mode 100644 public/data/img/favicon.png create mode 100644 resources/views/layouts/footer.blade.php diff --git a/app/Http/Controllers/DeviceController.php b/app/Http/Controllers/DeviceController.php index 11a3dbc..809d119 100644 --- a/app/Http/Controllers/DeviceController.php +++ b/app/Http/Controllers/DeviceController.php @@ -219,4 +219,11 @@ public function discover(Request $request) { return redirect()->route('devices.monitor', ['secret' => $secret]); } + + static function getActiveInactiveDevices() { + $active = Device::where('active', true)->count(); + $inactive = Device::where('active', false)->count(); + + return ['active' => $active, 'inactive' => $inactive]; + } } diff --git a/app/Models/Device.php b/app/Models/Device.php index fc32d26..acdfb6d 100644 --- a/app/Models/Device.php +++ b/app/Models/Device.php @@ -138,9 +138,10 @@ public function presentationFromSchedule() { public function isActive() { $now = new \DateTime(); $lastSeen = new \DateTime($this->last_seen); + $this->active = true; if(!$this->registered) { - return '🟠'; + $this->active = false; } $diff = $now->diff($lastSeen); @@ -157,9 +158,11 @@ public function isActive() { $seconds = $daysInSecs + $hoursInSecs + $minsInSecs + $diff->s; if ($seconds > $refresh_interval*2.5 || $this->created_at == $this->updated_at) { - return '
OFFLINE
'; + $this->active = false; } - return '
ACTIVE
'; + $this->save(); + + return $this->active; } } diff --git a/lang/de.json b/lang/de.json index 7442bcd..4cfd783 100644 --- a/lang/de.json +++ b/lang/de.json @@ -171,5 +171,7 @@ "Today": "Heute", "Presentation is assigned to schedules": "PrĂ€sentation ist ZeitplĂ€nen zugewiesen", "Overview": "Übersicht", - "Change theme": "Design wechseln" + "Change theme": "Design wechseln", + "active": "aktiv", + "offline": "inaktiv" } diff --git a/public/data/img/favicon.png b/public/data/img/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..edc61e01ea22a10adce14165ad88573ca9ea06d4 GIT binary patch literal 826 zcmV-A1I7G_P)Px%^hrcPR9Hvt*Gs5Xbrc5hpFJ$Bln4rXX=2bMrN^LAVH8P*C`6j}#Dt)iMg)x- zHqeqvCj|wX2{p(fLMNqxB3MQ>$%q~(5@Cr}roH)KZ8%=eIeXvGGinVk_nf`Xe|`V; z_|~^4U@hk2AEUJicsGB(#SQprMDb6-rT86N0^m*Diz6cfa0Z^n#wG(dVJrR|5r9*1 z9lpc%WMB`j#m^%GFcFXC_ShT%L2@My7l7$F51*XGtel3k@L4|qx8UXKjTZ}G+l1u6 zoYiJ2b92^YeBKYh96W+gaXmKRbsXw*dOG^H8spSGF2u9g zhGRWZ&Z+NS!hse5ldATMtM6I?EUQ^P6F1{w?89^T0)HVRmEco5jB!(@MfkBx1{wg( z#V)|}xCTq{VLeDQB~!WKFiYCM!ohOtoPpGN2A1OrtigLYS_kF%lenV=K?u106s?inkF8afsD#- zti+CL#$o5D8BcEkkf!~u$7djbS(u4UCz+lH0%#bmjs4nKukHCj0Bt`!QO}P9aCOfz zI#B`I&Iy3sNq5$8Ml1?tl$N!;AOL>A6Udy7(!!vt0^kjti(dvrk55J{O&L0kh1awF znylqE8M8)J#XrA`|Da|*J32H@`6nVIhxD^h?L*jGqZyxDi zK1amtFAIz`&MeeG#oaT+KLb(35wi}Oq{y%{Kl7Vc#CAbPtRZ5>J z86N@Ls~KA>GF||Aqe)gIovo3}VLSjrK6#UlFnzz~xFMOG6CTN^ zUQ`0M)2rTi03^UV%q|7IzGysmIUjeIFwOkm({;D}3(cj*7zvT~R{#J207*qoM6N<$ Ef(S8teE -
-
-
-
-

- {{ __('Login') }} -

-
- -
-
- @csrf - -
- - - - @error('email') - - {{ $message }} - - @enderror -
-
- - - - - - @error('password') - - {{ $message }} - - @enderror - -
- -
- -
-
-
+
+
+

+ {{ config('app.name') }} +

+
+
+ {{ __('Login') }} +
+
+ @error('username') + + @enderror + +
+ @csrf +
+ + + +
+
+ + +
+ +
diff --git a/resources/views/devices/index.blade.php b/resources/views/devices/index.blade.php index 39e88b5..95e1e3d 100644 --- a/resources/views/devices/index.blade.php +++ b/resources/views/devices/index.blade.php @@ -3,8 +3,8 @@ @section('content') @can('read devices')

{{ __('Devices') }}

- {{ $devices->where('active', true)->count() }} active - {{ $devices->where('active', true)->count() }} offline + {{ $devices->where('active', true)->count() }} {{ __('active') }} + {{ $devices->where('active', false)->count() }} {{ __('offline') }} @livewire('live-monitor-overview') @endcan diff --git a/resources/views/groups/index.blade.php b/resources/views/groups/index.blade.php index 8c16687..1b2f1cc 100644 --- a/resources/views/groups/index.blade.php +++ b/resources/views/groups/index.blade.php @@ -2,73 +2,68 @@ @section('content') @can('read groups') -
{{ __('Groups') }}
+

{{ __('Groups') }}

-
-
-

- {{ __('Groups') }} -

- -
+
+
+ {{ __('Overview') }} @can('create groups') - - + + {{ __('Create group') }} @endcan -
-
- -
- - - - - - - - - - - - - @foreach ($groups as $group) - - - - - - - - @endforeach - @if ($groups->count() == 0) + +
+
Name{{ __('Devices assigned') }}{{ __('Assigned template') }}{{ __('Created by') }}{{ __('Actions') }}
{{ $group->name }}{{ $group->devices->count() }}{{ $group->presentation?->name ?? __('No template assigned') }}{{ $group->created_by }} - -
- @method('DELETE') - @csrf - @can('read presentations') - - @endcan - @can('delete presentations') - - @endcan -
-
+ - + + + + + - @endif - -
- {{ __('No groups found') }}Name{{ __('Devices assigned') }}{{ __('Assigned template') }}{{ __('Created by') }}{{ __('Actions') }}
+ + + + @foreach ($groups as $group) + + {{ $group->name }} + {{ $group->devices->count() }} + {{ $group->presentation?->name ?? __('No template assigned') }} + {{ $group->created_by }} + + +
+ @method('DELETE') + @csrf +
+ @can('read groups') + + @endcan + @can('delete groups') + + @endcan +
+
+ + + @endforeach + @if ($groups->count() == 0) + + + {{ __('No groups found') }} + + @endif + + +
-
@endcan @cannot('read groups') @include('unauthorized') diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php index e73eee9..fd659fc 100644 --- a/resources/views/layouts/app.blade.php +++ b/resources/views/layouts/app.blade.php @@ -8,36 +8,39 @@ - MIS Manager + {{ config('app.name') }} + + @vite(['resources/sass/app.scss', 'resources/js/app.js']) - @include('layouts.menu') + @auth + @include('layouts.menu') + @endauth
- @if ($errors) - @foreach ($errors->all() as $error) -
- {{ $error }} + @auth + @if ($errors) + @foreach ($errors->all() as $error) +
+ {{ $error }} +
+ @endforeach + @endif + + @if (session()->has('success')) +
+ {{ session()->get('success') }}
- @endforeach - @endif - - @if (session()->has('success')) -
- {{ session()->get('success') }} -
- @endif + @endif + @endauth @yield('content') -
- Build with Laravel, Bulma and | v{{ config('app.version') }} -
+ @include('layouts.footer')
diff --git a/resources/views/layouts/footer.blade.php b/resources/views/layouts/footer.blade.php new file mode 100644 index 0000000..1b8bb3b --- /dev/null +++ b/resources/views/layouts/footer.blade.php @@ -0,0 +1,4 @@ + diff --git a/resources/views/layouts/menu.blade.php b/resources/views/layouts/menu.blade.php index 3782d91..d80bddb 100644 --- a/resources/views/layouts/menu.blade.php +++ b/resources/views/layouts/menu.blade.php @@ -1,4 +1,4 @@ -
diff --git a/resources/views/livewire/live-monitor-overview.blade.php b/resources/views/livewire/live-monitor-overview.blade.php index 0985740..d4afad0 100644 --- a/resources/views/livewire/live-monitor-overview.blade.php +++ b/resources/views/livewire/live-monitor-overview.blade.php @@ -11,11 +11,12 @@
- + + + + +
@@ -50,18 +51,16 @@ $preview = config('app.placeholder_image'); } @endphp - + {{ $device->name }} {{ $device->description }} {{ $device_pres?->name ?? __('No template assigned') }} @if ($device->presentationFromSchedule()) -
+
{{ __('Inherited by schedule') }} @elseif($device->presentationFromGroup()) -
+
{{ __('Inherited by group') }} @endif @@ -100,7 +99,7 @@ class="bi-trash"> @endforeach @if ($devices->count() == 0) - + {{ __('No devices found') }} @endif diff --git a/resources/views/livewire/show-slides.blade.php b/resources/views/livewire/show-slides.blade.php index 226c9bf..2503bff 100644 --- a/resources/views/livewire/show-slides.blade.php +++ b/resources/views/livewire/show-slides.blade.php @@ -2,7 +2,7 @@
{{ $presentation->slides->count() }}@if(!$presentation->processed)/{{ $presentation->total_slides }} @endif {{ __('Slides') }}
@if (!$presentation->processed) -
+