From bc0ff706b000c3b6f6c118ef670606131c6e837c Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 1 Aug 2024 10:31:39 -0700 Subject: [PATCH 01/32] fixes dashboard box overflow --- resources/assets/less/overrides.less | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/resources/assets/less/overrides.less b/resources/assets/less/overrides.less index 8ef34bb3e..4f8805e09 100644 --- a/resources/assets/less/overrides.less +++ b/resources/assets/less/overrides.less @@ -719,6 +719,14 @@ th.css-location > .th-inner::before { height:170px; } } +@media screen and (max-width: 1494px) and (min-width: 1200px){ + .dashboard{ + overflow: hidden; + text-overflow: ellipsis; + text-align: center; + white-space: nowrap; + } +} .ellipsis { overflow: hidden; From 5d1c48c071389acea676653f5b437e88dcb00a14 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 13 Aug 2024 10:11:49 -0700 Subject: [PATCH 02/32] fixes alignment, and box issue with pie chart --- resources/assets/less/overrides.less | 18 ++++-------- resources/views/dashboard.blade.php | 12 ++++---- resources/views/settings/index.blade.php | 36 ++++++++++++------------ 3 files changed, 30 insertions(+), 36 deletions(-) diff --git a/resources/assets/less/overrides.less b/resources/assets/less/overrides.less index 4f8805e09..5b2f5b82e 100644 --- a/resources/assets/less/overrides.less +++ b/resources/assets/less/overrides.less @@ -715,26 +715,20 @@ th.css-location > .th-inner::before { } } @media screen and (max-width: 1318px) and (min-width: 1200px){ - .box{ + .admin.box{ height:170px; } } @media screen and (max-width: 1494px) and (min-width: 1200px){ - .dashboard{ - overflow: hidden; - text-overflow: ellipsis; - text-align: center; + .dashboard.small-box{ white-space: nowrap; + text-overflow: ellipsis; + max-width: 188px; + display: block; + overflow: hidden; } } -.ellipsis { - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} - - /** Form-stuff overrides for checkboxes and stuff **/ label.form-control { diff --git a/resources/views/dashboard.blade.php b/resources/views/dashboard.blade.php index 40255f88b..233912207 100755 --- a/resources/views/dashboard.blade.php +++ b/resources/views/dashboard.blade.php @@ -31,7 +31,7 @@
-
+

{{ number_format(\App\Models\Asset::AssetsForShow()->count()) }}

{{ strtolower(trans('general.assets')) }}

@@ -49,7 +49,7 @@
-
+

{{ number_format($counts['license']) }}

{{ strtolower(trans('general.licenses')) }}

@@ -68,7 +68,7 @@
-
+

{{ number_format($counts['accessory']) }}

{{ strtolower(trans('general.accessories')) }}

@@ -87,7 +87,7 @@
-
+

{{ number_format($counts['consumable']) }}

{{ strtolower(trans('general.consumables')) }}

@@ -104,7 +104,7 @@
-
+

{{ number_format($counts['component']) }}

{{ strtolower(trans('general.components')) }}

@@ -122,7 +122,7 @@
-
+

{{ number_format($counts['user']) }}

{{ strtolower(trans('general.people')) }}

diff --git a/resources/views/settings/index.blade.php b/resources/views/settings/index.blade.php index 3b805f921..ac7095814 100755 --- a/resources/views/settings/index.blade.php +++ b/resources/views/settings/index.blade.php @@ -57,7 +57,7 @@
-
+
@@ -74,7 +74,7 @@
-
+
@@ -91,7 +91,7 @@
-
+
-
+
@@ -124,7 +124,7 @@
-
+
@@ -142,7 +142,7 @@
-
+
-
+
-
+
-
+
-
+
@@ -219,7 +219,7 @@
-
+
-
+
-
+
-
+
@@ -280,7 +280,7 @@
-
+
-
+
@@ -311,7 +311,7 @@ @if (config('app.debug')=== true)
-
+
@@ -329,7 +329,7 @@
-
+
From 0d7cf55a3a510ee3eb06e3bc6164fd0f9466c173 Mon Sep 17 00:00:00 2001 From: r-xyz <100710244+r-xyz@users.noreply.github.com> Date: Tue, 13 Aug 2024 17:56:22 +0200 Subject: [PATCH 03/32] Add support for Docker secrets in Standard and alpine image. --- docker/entrypoint_alpine.sh | 43 ++++++++++++++++++++++++++++++++++++- docker/startup.sh | 43 ++++++++++++++++++++++++++++++++++++- 2 files changed, 84 insertions(+), 2 deletions(-) diff --git a/docker/entrypoint_alpine.sh b/docker/entrypoint_alpine.sh index c1a75b0cb..d9d6c8a9a 100644 --- a/docker/entrypoint_alpine.sh +++ b/docker/entrypoint_alpine.sh @@ -1,7 +1,48 @@ #!/bin/sh +# Cribbed from nextcloud docker official repo +# https://github.com/nextcloud/docker/blob/master/docker-entrypoint.sh +# usage: file_env VAR [DEFAULT] +# ie: file_env 'XYZ_DB_PASSWORD' 'example' +# (will allow for "$XYZ_DB_PASSWORD_FILE" to fill in the value of +# "$XYZ_DB_PASSWORD" from a file, especially for Docker's secrets feature) +file_env() { + local var="$1" + local fileVar="${var}_FILE" + local def="${2:-}" + local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//") + local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//") + if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then + echo >&2 "error: both $var and $fileVar are set (but are exclusive)" + exit 1 + fi + if [ -n "${varValue}" ]; then + export "$var"="${varValue}" + elif [ -n "${fileVarValue}" ]; then + export "$var"="$(cat "${fileVarValue}")" + elif [ -n "${def}" ]; then + export "$var"="$def" + fi + unset "$fileVar" +} + +# Add docker secrets support for the variables below: +file_env APP_KEY +file_env DB_HOST +file_env DB_PORT +file_env DB_DATABASE +file_env DB_USERNAME +file_env DB_PASSWORD +file_env REDIS_HOST +file_env REDIS_PASSWORD +file_env REDIS_PORT +file_env MAIL_HOST +file_env MAIL_PORT +file_env MAIL_USERNAME +file_env MAIL_PASSWORD + # fix key if needed -if [ -z "$APP_KEY" ] +if [ -z "$APP_KEY" -a -z "$APP_KEY_FILE" ] then echo "Please re-run this container with an environment variable \$APP_KEY" echo "An example APP_KEY you could use is: " diff --git a/docker/startup.sh b/docker/startup.sh index 62002a2ba..2f6be7b0f 100644 --- a/docker/startup.sh +++ b/docker/startup.sh @@ -1,7 +1,48 @@ #!/bin/bash +# Cribbed from nextcloud docker official repo +# https://github.com/nextcloud/docker/blob/master/docker-entrypoint.sh +# usage: file_env VAR [DEFAULT] +# ie: file_env 'XYZ_DB_PASSWORD' 'example' +# (will allow for "$XYZ_DB_PASSWORD_FILE" to fill in the value of +# "$XYZ_DB_PASSWORD" from a file, especially for Docker's secrets feature) +file_env() { + local var="$1" + local fileVar="${var}_FILE" + local def="${2:-}" + local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//") + local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//") + if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then + echo >&2 "error: both $var and $fileVar are set (but are exclusive)" + exit 1 + fi + if [ -n "${varValue}" ]; then + export "$var"="${varValue}" + elif [ -n "${fileVarValue}" ]; then + export "$var"="$(cat "${fileVarValue}")" + elif [ -n "${def}" ]; then + export "$var"="$def" + fi + unset "$fileVar" +} + +# Add docker secrets support for the variables below: +file_env APP_KEY +file_env DB_HOST +file_env DB_PORT +file_env DB_DATABASE +file_env DB_USERNAME +file_env DB_PASSWORD +file_env REDIS_HOST +file_env REDIS_PASSWORD +file_env REDIS_PORT +file_env MAIL_HOST +file_env MAIL_PORT +file_env MAIL_USERNAME +file_env MAIL_PASSWORD + # fix key if needed -if [ -z "$APP_KEY" ] +if [ -z "$APP_KEY" -a -z "$APP_KEY_FILE" ] then echo "Please re-run this container with an environment variable \$APP_KEY" echo "An example APP_KEY you could use is: " From d8df52cc8fdc421f1ecab428c6a8c34769bebd44 Mon Sep 17 00:00:00 2001 From: Glukose1 Date: Thu, 15 Aug 2024 12:20:51 +0200 Subject: [PATCH 04/32] Implemented setting to specify the amount of days before an assets appers in the due for checkin page. Currently this uses the audit warning days but a sperated setting gives the possibility of defineing different values for each field. --- app/Http/Controllers/SettingsController.php | 1 + app/Models/Asset.php | 2 +- .../lang/en-US/admin/settings/general.php | 2 ++ .../views/hardware/checkin-due.blade.php | 2 +- resources/views/settings/alerts.blade.php | 19 +++++++++++++++++++ 5 files changed, 24 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/SettingsController.php b/app/Http/Controllers/SettingsController.php index 9c7392560..72fcfd00a 100755 --- a/app/Http/Controllers/SettingsController.php +++ b/app/Http/Controllers/SettingsController.php @@ -636,6 +636,7 @@ class SettingsController extends Controller $setting->alert_threshold = $request->input('alert_threshold'); $setting->audit_interval = $request->input('audit_interval'); $setting->audit_warning_days = $request->input('audit_warning_days'); + $setting->due_checkin_days = $request->input('due_checkin_days'); $setting->show_alerts_in_menu = $request->input('show_alerts_in_menu', '0'); if ($setting->save()) { diff --git a/app/Models/Asset.php b/app/Models/Asset.php index cddca9802..c15ec3824 100644 --- a/app/Models/Asset.php +++ b/app/Models/Asset.php @@ -1315,7 +1315,7 @@ class Asset extends Depreciable public function scopeDueForCheckin($query, $settings) { - $interval = $settings->audit_warning_days ?? 0; + $interval = $settings->due_checkin_days ?? 0; $today = Carbon::now(); $interval_date = $today->copy()->addDays($interval)->format('Y-m-d'); diff --git a/resources/lang/en-US/admin/settings/general.php b/resources/lang/en-US/admin/settings/general.php index 9ba69ef22..52aee1e8c 100644 --- a/resources/lang/en-US/admin/settings/general.php +++ b/resources/lang/en-US/admin/settings/general.php @@ -379,5 +379,7 @@ return [ 'default_avatar_help' => 'This image will be displayed as a profile if a user does not have a profile photo.', 'restore_default_avatar' => 'Restore original system default avatar', 'restore_default_avatar_help' => '', + 'due_checkin_days' => 'Due For Checkin Warning', + 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', ]; diff --git a/resources/views/hardware/checkin-due.blade.php b/resources/views/hardware/checkin-due.blade.php index 6ed7cf42c..79ea7553a 100644 --- a/resources/views/hardware/checkin-due.blade.php +++ b/resources/views/hardware/checkin-due.blade.php @@ -2,7 +2,7 @@ {{-- Page title --}} @section('title') - {{ trans_choice('general.checkin_due_days', $settings->audit_warning_days, ['days' => $settings->audit_warning_days]) }} + {{ trans_choice('general.checkin_due_days', $settings->due_checkin_days, ['days' => $settings->due_checkin_days]) }} @stop {{-- Page content --}} diff --git a/resources/views/settings/alerts.blade.php b/resources/views/settings/alerts.blade.php index 0d434040a..fc52ae386 100644 --- a/resources/views/settings/alerts.blade.php +++ b/resources/views/settings/alerts.blade.php @@ -150,6 +150,25 @@
+ +
+
+ {{ Form::label('due_checkin_days', trans('admin/settings/general.due_checkin_days')) }} +
+
+ {{ Form::text('due_checkin_days', old('due_checkin_days', $setting->due_checkin_days), array('class' => 'form-control','placeholder' => '14', 'maxlength'=>'3', 'style'=>'width: 60px;')) }} + {{ trans('general.days') }} + + + + +
+
+ {!! $errors->first('due_checkin_days', '') !!} +

{{ trans('admin/settings/general.due_checkin_days_help') }}

+
+
+
From f9172594b279497d6b90cc7cec774be40460ed63 Mon Sep 17 00:00:00 2001 From: snipe Date: Fri, 16 Aug 2024 10:14:43 +0100 Subject: [PATCH 05/32] Clearer time example display Signed-off-by: snipe --- resources/macros/macros.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/resources/macros/macros.php b/resources/macros/macros.php index 584c7df84..7fefba2aa 100644 --- a/resources/macros/macros.php +++ b/resources/macros/macros.php @@ -84,8 +84,9 @@ Form::macro('time_display_format', function ($name = 'time_display_format', $sel 'H:i', ]; + $datetime = date("y-m-d").' 14:00:00'; foreach ($formats as $format) { - $time_display_formats[$format] = Carbon::now()->format($format); + $time_display_formats[$format] = Carbon::parse($datetime)->format($format); } $select = '