From 6d65f6646f43d9ceb2f84ed7df0a00e707657841 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 14 Nov 2023 14:55:51 -0800 Subject: [PATCH 01/91] allows validation to ignore self and update --- app/Providers/ValidationServiceProvider.php | 24 ++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/app/Providers/ValidationServiceProvider.php b/app/Providers/ValidationServiceProvider.php index 70fa64702e..fffb571eee 100644 --- a/app/Providers/ValidationServiceProvider.php +++ b/app/Providers/ValidationServiceProvider.php @@ -218,19 +218,37 @@ class ValidationServiceProvider extends ServiceProvider Validator::extend('is_unique_department', function ($attribute, $value, $parameters, $validator) { $data = $validator->getData(); - if ((array_key_exists('location_id', $data) && $data['location_id'] != null) && (array_key_exists('company_id', $data) && $data['company_id'] != null)) { + + if ( + array_key_exists('location_id', $data) && $data['location_id'] !== null && + array_key_exists('company_id', $data) && $data['company_id'] !== null + ) { + //for updating existing departments + if(array_key_exists('id', $data) && $data['id'] !== null){ + $count = Department::where('name', $data['name']) + ->where('location_id', $data['location_id']) + ->where('company_id', $data['company_id']) + ->whereNotNull('company_id') + ->whereNotNull('location_id') + ->where('id', '!=', $data['id']) + ->count(); + + return $count < 1; + }else // for entering in new departments + { $count = Department::where('name', $data['name']) ->where('location_id', $data['location_id']) ->where('company_id', $data['company_id']) ->whereNotNull('company_id') ->whereNotNull('location_id') - ->count('name'); + ->count(); return $count < 1; } + } else { return true; - } + } }); Validator::extend('not_array', function ($attribute, $value, $parameters, $validator) { From c9d46856a32047dec91e56eb9398ebd841ed9715 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 14 Nov 2023 15:00:11 -0800 Subject: [PATCH 02/91] added name back --- app/Providers/ValidationServiceProvider.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Providers/ValidationServiceProvider.php b/app/Providers/ValidationServiceProvider.php index fffb571eee..7a8465f0d1 100644 --- a/app/Providers/ValidationServiceProvider.php +++ b/app/Providers/ValidationServiceProvider.php @@ -231,7 +231,7 @@ class ValidationServiceProvider extends ServiceProvider ->whereNotNull('company_id') ->whereNotNull('location_id') ->where('id', '!=', $data['id']) - ->count(); + ->count('name'); return $count < 1; }else // for entering in new departments @@ -241,7 +241,7 @@ class ValidationServiceProvider extends ServiceProvider ->where('company_id', $data['company_id']) ->whereNotNull('company_id') ->whereNotNull('location_id') - ->count(); + ->count('name'); return $count < 1; } From 040f826c521d33d9a95b4c341b9ccb436adf8cee Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 26 Mar 2024 08:57:18 -0700 Subject: [PATCH 03/91] removes encrypted fields as a selectable option for labels --- resources/views/partials/label2-field-definitions.blade.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/views/partials/label2-field-definitions.blade.php b/resources/views/partials/label2-field-definitions.blade.php index 8d8c680c94..c16a09ded1 100644 --- a/resources/views/partials/label2-field-definitions.blade.php +++ b/resources/views/partials/label2-field-definitions.blade.php @@ -348,7 +348,9 @@ @foreach($customFields as $customField) + @if($customField->field_encrypted != 1) + @endif @endforeach From aa8af2220ce9ff40dfabbebcd343ad89bc8cf0f7 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 26 Mar 2024 16:10:08 -0700 Subject: [PATCH 04/91] trying to remove an encrypted field but not all fields --- app/Http/Controllers/LabelsController.php | 25 +++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/LabelsController.php b/app/Http/Controllers/LabelsController.php index 4fe04dc1c5..e1fc55086d 100755 --- a/app/Http/Controllers/LabelsController.php +++ b/app/Http/Controllers/LabelsController.php @@ -14,6 +14,7 @@ use App\Models\Setting; use App\Models\Supplier; use App\Models\User; use App\View\Label as LabelView; +use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Storage; class LabelsController extends Controller @@ -21,12 +22,13 @@ class LabelsController extends Controller /** * Returns the Label view with test data * - * @author Grant Le Roux - * @param string $labelName + * @param string $labelName * @return \Illuminate\Contracts\View\View + * @author Grant Le Roux */ public function show(string $labelName) { + $this->clearEncryptedLabelOptions(); $labelName = str_replace('/', '\\', $labelName); $template = Label::find($labelName); @@ -95,4 +97,23 @@ class LabelsController extends Controller return redirect()->route('home')->with('error', trans('admin/labels/message.does_not_exist')); } + + private function clearEncryptedLabelOptions() + { + + $customfields = CustomField::where('field_encrypted', 1)->get(); + $selected_label_options = Setting::getSettings()->label2_fields; + if($selected_label_options != '') { + } + collect(explode(';', Setting::getSettings()->label2_fields)) + ->filter() + ->each(function ($item) use ($customfields, $selected_label_options) { + if (!str_contains($item, $customfields->db_column)) { + $selected_label_options .= $item; + } + DB::table('Settings')->update(['label2_fields' => $selected_label_options]); + }); + + } + } From 1b8c7ff4ece71905b830e39825bea11db8ca0cf8 Mon Sep 17 00:00:00 2001 From: Jeff Clay Date: Wed, 27 Mar 2024 11:38:13 -0500 Subject: [PATCH 05/91] Added PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT options to database.php and updated .env files to provide value for the new option. --- .env.docker | 1 + .env.dusk.example | 1 + .env.example | 1 + config/database.php | 1 + 4 files changed, 4 insertions(+) diff --git a/.env.docker b/.env.docker index 87897b10db..7b9e2000cf 100644 --- a/.env.docker +++ b/.env.docker @@ -45,6 +45,7 @@ DB_SSL_KEY_PATH=null DB_SSL_CERT_PATH=null DB_SSL_CA_PATH=null DB_SSL_CIPHER=null +DB_SSL_VERIFY_SERVER=null # -------------------------------------------- # REQUIRED: OUTGOING MAIL SERVER SETTINGS diff --git a/.env.dusk.example b/.env.dusk.example index 074f6fc3d7..3a9765dc19 100644 --- a/.env.dusk.example +++ b/.env.dusk.example @@ -36,6 +36,7 @@ DB_SSL_KEY_PATH=null DB_SSL_CERT_PATH=null DB_SSL_CA_PATH=null DB_SSL_CIPHER=null +DB_SSL_VERIFY_SERVER=null # -------------------------------------------- # REQUIRED: OUTGOING MAIL SERVER SETTINGS diff --git a/.env.example b/.env.example index fd90391973..8f3e5a2d69 100644 --- a/.env.example +++ b/.env.example @@ -42,6 +42,7 @@ DB_SSL_KEY_PATH=null DB_SSL_CERT_PATH=null DB_SSL_CA_PATH=null DB_SSL_CIPHER=null +DB_SSL_VERIFY_SERVER=null # -------------------------------------------- # REQUIRED: OUTGOING MAIL SERVER SETTINGS diff --git a/config/database.php b/config/database.php index 1b4feeca93..de3c40bb25 100755 --- a/config/database.php +++ b/config/database.php @@ -96,6 +96,7 @@ return [ PDO::MYSQL_ATTR_SSL_CERT => env('DB_SSL_CERT_PATH'), // /path/to/cert.pem PDO::MYSQL_ATTR_SSL_CA => env('DB_SSL_CA_PATH'), // /path/to/ca.pem PDO::MYSQL_ATTR_SSL_CIPHER => env('DB_SSL_CIPHER'), + PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT => env('DB_SSL_VERIFY_SERVER'), //true/false ]) : [], ], From a450530c749bffa8de8711681ccc50c00344d361 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 28 Mar 2024 11:44:55 -0700 Subject: [PATCH 06/91] fixes z-index of table load --- resources/assets/less/overrides.less | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/resources/assets/less/overrides.less b/resources/assets/less/overrides.less index f651826ddb..72b8437eb2 100644 --- a/resources/assets/less/overrides.less +++ b/resources/assets/less/overrides.less @@ -358,6 +358,10 @@ body { white-space: normal; } +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading { + z-index: 840 !important; +} + @media print { a[href]:after { content: none; From b221d99e7ba922d22f1dca651cce7abc464cf9f3 Mon Sep 17 00:00:00 2001 From: MrM <11910225+mauro-miatello@users.noreply.github.com> Date: Sun, 31 Mar 2024 12:27:35 +0200 Subject: [PATCH 07/91] Encrypted values enhancement Show asterisks instead of the value, respecting the length of the field --- resources/views/hardware/view.blade.php | 31 ++++++++++++++----------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/resources/views/hardware/view.blade.php b/resources/views/hardware/view.blade.php index 461f2a4688..07f24ec3dd 100755 --- a/resources/views/hardware/view.blade.php +++ b/resources/views/hardware/view.blade.php @@ -415,19 +415,24 @@ @if ($field->isFieldDecryptable($asset->{$field->db_column_name()} )) @can('assets.view.encrypted_custom_fields') - ******** - - @if (($field->format=='URL') && ($asset->{$field->db_column_name()}!='')) - {{ Helper::gracefulDecrypt($field, $asset->{$field->db_column_name()}) }} - @elseif (($field->format=='DATE') && ($asset->{$field->db_column_name()}!='')) - {{ \App\Helpers\Helper::gracefulDecrypt($field, \App\Helpers\Helper::getFormattedDateObject($asset->{$field->db_column_name()}, 'date', false)) }} - @else - {{ Helper::gracefulDecrypt($field, $asset->{$field->db_column_name()}) }} - @endif - - + @php + $fieldSize=strlen(Helper::gracefulDecrypt($field, $asset->{$field->db_column_name()})) + @endphp + @if ($fieldSize>0) + {{ str_repeat('*', $fieldSize) }} + + @if (($field->format=='URL') && ($asset->{$field->db_column_name()}!='')) + {{ Helper::gracefulDecrypt($field, $asset->{$field->db_column_name()}) }} + @elseif (($field->format=='DATE') && ($asset->{$field->db_column_name()}!='')) + {{ \App\Helpers\Helper::gracefulDecrypt($field, \App\Helpers\Helper::getFormattedDateObject($asset->{$field->db_column_name()}, 'date', false)) }} + @else + {{ Helper::gracefulDecrypt($field, $asset->{$field->db_column_name()}) }} + @endif + + + @endif @else {{ strtoupper(trans('admin/custom_fields/general.encrypted')) }} @endcan From 658ba092e2157f3f889b9e839836b20625045d62 Mon Sep 17 00:00:00 2001 From: MrM <11910225+mauro-miatello@users.noreply.github.com> Date: Sun, 31 Mar 2024 18:55:58 +0200 Subject: [PATCH 08/91] Hide encrypted values in hardware list Encrypted values are now hidden also in hardware list, clicking on them show the decrypted value --- resources/views/layouts/default.blade.php | 58 +++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/resources/views/layouts/default.blade.php b/resources/views/layouts/default.blade.php index 216632ccf8..03442bd0b4 100644 --- a/resources/views/layouts/default.blade.php +++ b/resources/views/layouts/default.blade.php @@ -1041,6 +1041,64 @@ }); }); + // Select encrypted custom fields to hide them in the asset list + $(document).ready(function() { + // Selector for elements with css-padlock class + var selector = 'td.css-padlock'; + + // Function to add original value to elements + function addValue($element) { + // Get original value of the element + var originalValue = $element.text().trim(); + + // Show asterisks only for not empty values + if (originalValue !== '') { + // This is necessary to avoid loop because value is generated dynamically + if (originalValue !== '' && originalValue !== asterisks) $element.attr('value', originalValue); + + // Hide the original value and show asterisks of the same length + var asterisks = '*'.repeat(originalValue.length); + $element.text(asterisks); + + // Add click event to show original text + $element.click(function() { + var $this = $(this); + if ($this.text().trim() === asterisks) { + $this.text($this.attr('value')); + } else { + $this.text(asterisks); + } + }); + } + } + // Add value to existing elements + $(selector).each(function() { + addValue($(this)); + }); + + // Function to handle mutations in the DOM because content is generated dynamically + var observer = new MutationObserver(function(mutations) { + mutations.forEach(function(mutation) { + // Check if new nodes have been inserted + if (mutation.type === 'childList') { + mutation.addedNodes.forEach(function(node) { + if ($(node).is(selector)) { + addValue($(node)); + } else { + $(node).find(selector).each(function() { + addValue($(this)); + }); + } + }); + } + }); + }); + + // Configure the observer to observe changes in the DOM + var config = { childList: true, subtree: true }; + observer.observe(document.body, config); + }); + From 79c5697042c3352899ab3631c730796f14c3dd57 Mon Sep 17 00:00:00 2001 From: snipe Date: Wed, 3 Apr 2024 13:06:49 +0100 Subject: [PATCH 09/91] Fixed dev - take 2! Signed-off-by: snipe --- resources/views/hardware/view.blade.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/resources/views/hardware/view.blade.php b/resources/views/hardware/view.blade.php index 461f2a4688..15ccf856ec 100755 --- a/resources/views/hardware/view.blade.php +++ b/resources/views/hardware/view.blade.php @@ -32,8 +32,6 @@
- - +
From df95447ea43595d158e67a0294bf4f8dc43d5831 Mon Sep 17 00:00:00 2001 From: snipe Date: Wed, 3 Apr 2024 13:08:08 +0100 Subject: [PATCH 10/91] New dev assets Signed-off-by: snipe --- public/css/build/app.css | 3 +++ public/css/build/overrides.css | 3 +++ public/css/dist/all.css | 6 ++++++ public/mix-manifest.json | 6 +++--- 4 files changed, 15 insertions(+), 3 deletions(-) diff --git a/public/css/build/app.css b/public/css/build/app.css index f6e9fd6804..9ba05108f8 100644 --- a/public/css/build/app.css +++ b/public/css/build/app.css @@ -697,6 +697,9 @@ body { font-size: 14px; white-space: normal; } +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading { + z-index: 840 !important; +} @media print { a[href]:after { content: none; diff --git a/public/css/build/overrides.css b/public/css/build/overrides.css index f32d3051dd..52928e416c 100644 --- a/public/css/build/overrides.css +++ b/public/css/build/overrides.css @@ -330,6 +330,9 @@ body { font-size: 14px; white-space: normal; } +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading { + z-index: 840 !important; +} @media print { a[href]:after { content: none; diff --git a/public/css/dist/all.css b/public/css/dist/all.css index 9d7cd1b408..d70874aadc 100644 --- a/public/css/dist/all.css +++ b/public/css/dist/all.css @@ -22197,6 +22197,9 @@ body { font-size: 14px; white-space: normal; } +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading { + z-index: 840 !important; +} @media print { a[href]:after { content: none; @@ -23461,6 +23464,9 @@ body { font-size: 14px; white-space: normal; } +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading { + z-index: 840 !important; +} @media print { a[href]:after { content: none; diff --git a/public/mix-manifest.json b/public/mix-manifest.json index 68309ab7e0..b467422888 100644 --- a/public/mix-manifest.json +++ b/public/mix-manifest.json @@ -1,8 +1,8 @@ { "/js/build/app.js": "/js/build/app.js?id=ea5f3edebafdb29b616d23fa89106080", "/css/dist/skins/skin-blue.css": "/css/dist/skins/skin-blue.css?id=f677207c6cf9678eb539abecb408c374", - "/css/build/overrides.css": "/css/build/overrides.css?id=742bf17cd1ed6feaa90756beeb09d749", - "/css/build/app.css": "/css/build/app.css?id=1e755f4e7a6968ee5d46747a4ffeca47", + "/css/build/overrides.css": "/css/build/overrides.css?id=ba34afc5bd6ee746744fd109672f715e", + "/css/build/app.css": "/css/build/app.css?id=1b976575001241a8f97ec4fad7bd1f3d", "/css/build/AdminLTE.css": "/css/build/AdminLTE.css?id=dc383f8560a8d4adb51d44fb4043e03b", "/css/dist/skins/skin-orange.css": "/css/dist/skins/skin-orange.css?id=6f0563e726c2fe4fab4026daaa5bfdf2", "/css/dist/skins/skin-orange-dark.css": "/css/dist/skins/skin-orange-dark.css?id=e6e53eef152bba01a4c666a4d8b01117", @@ -18,7 +18,7 @@ "/css/dist/skins/skin-green.css": "/css/dist/skins/skin-green.css?id=0a82a6ae6bb4e58fe62d162c4fb50397", "/css/dist/skins/skin-contrast.css": "/css/dist/skins/skin-contrast.css?id=da6c7997d9de2f8329142399f0ce50da", "/css/dist/skins/skin-red.css": "/css/dist/skins/skin-red.css?id=44bf834f2110504a793dadec132a5898", - "/css/dist/all.css": "/css/dist/all.css?id=205f918653b20e1eb25f5c322b7a6832", + "/css/dist/all.css": "/css/dist/all.css?id=53cc9f0f60753c049f4e49617d21c0fe", "/css/dist/signature-pad.css": "/css/dist/signature-pad.css?id=6a89d3cd901305e66ced1cf5f13147f7", "/css/dist/signature-pad.min.css": "/css/dist/signature-pad.min.css?id=6a89d3cd901305e66ced1cf5f13147f7", "/css/webfonts/fa-brands-400.ttf": "/css/webfonts/fa-brands-400.ttf?id=69e5d8e4e818f05fd882cceb758d1eba", From 5f7f4c9b917281063cad85de4a7af503aeb8a24a Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 3 Apr 2024 10:41:50 -0700 Subject: [PATCH 11/91] aligns dropdown menu for user in nav --- resources/assets/less/overrides.less | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/resources/assets/less/overrides.less b/resources/assets/less/overrides.less index 72b8437eb2..bc41659594 100644 --- a/resources/assets/less/overrides.less +++ b/resources/assets/less/overrides.less @@ -688,6 +688,12 @@ th.css-accessory > .th-inner::before .sidebar-menu { margin-top:100px } + .navbar-custom-menu > .navbar-nav > li.dropdown.user.user-menu { + float:right; + } + .navbar-custom-menu > .navbar-nav > li > .dropdown-menu { + margin-right:-39px; + } } @media screen and (max-width: 1268px) and (min-width: 912px){ From 4327653d705a6375302cbb9fc58a9b9d4bc9c172 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 3 Apr 2024 10:57:41 -0700 Subject: [PATCH 12/91] remove db cleaner for encrypted selections --- app/Http/Controllers/LabelsController.php | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/app/Http/Controllers/LabelsController.php b/app/Http/Controllers/LabelsController.php index e1fc55086d..461d8c4c39 100755 --- a/app/Http/Controllers/LabelsController.php +++ b/app/Http/Controllers/LabelsController.php @@ -28,7 +28,6 @@ class LabelsController extends Controller */ public function show(string $labelName) { - $this->clearEncryptedLabelOptions(); $labelName = str_replace('/', '\\', $labelName); $template = Label::find($labelName); @@ -97,23 +96,4 @@ class LabelsController extends Controller return redirect()->route('home')->with('error', trans('admin/labels/message.does_not_exist')); } - - private function clearEncryptedLabelOptions() - { - - $customfields = CustomField::where('field_encrypted', 1)->get(); - $selected_label_options = Setting::getSettings()->label2_fields; - if($selected_label_options != '') { - } - collect(explode(';', Setting::getSettings()->label2_fields)) - ->filter() - ->each(function ($item) use ($customfields, $selected_label_options) { - if (!str_contains($item, $customfields->db_column)) { - $selected_label_options .= $item; - } - DB::table('Settings')->update(['label2_fields' => $selected_label_options]); - }); - - } - } From bb2c73348d1032ba14f705fc1b44c5a56d83a8bc Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 3 Apr 2024 11:03:58 -0700 Subject: [PATCH 13/91] only grabs custom Fields that are not encrpyted --- app/Http/Controllers/LabelsController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Controllers/LabelsController.php b/app/Http/Controllers/LabelsController.php index 461d8c4c39..b5b8740a4d 100755 --- a/app/Http/Controllers/LabelsController.php +++ b/app/Http/Controllers/LabelsController.php @@ -67,7 +67,7 @@ class LabelsController extends Controller $exampleAsset->model->category->id = 999999; $exampleAsset->model->category->name = trans('admin/labels/table.example_category'); - $customFieldColumns = CustomField::all()->pluck('db_column'); + $customFieldColumns = CustomField::where('field_encrypted', '=', 0)->pluck('db_column'); collect(explode(';', Setting::getSettings()->label2_fields)) ->filter() From df5cacf8a2814c631f89b94b213a60b5b2789f16 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 3 Apr 2024 11:06:05 -0700 Subject: [PATCH 14/91] removed front end if statement --- resources/views/partials/label2-field-definitions.blade.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/resources/views/partials/label2-field-definitions.blade.php b/resources/views/partials/label2-field-definitions.blade.php index c16a09ded1..8d8c680c94 100644 --- a/resources/views/partials/label2-field-definitions.blade.php +++ b/resources/views/partials/label2-field-definitions.blade.php @@ -348,9 +348,7 @@ @foreach($customFields as $customField) - @if($customField->field_encrypted != 1) - @endif @endforeach From a72d4e5dc1988ee13359cbf34f6fa2942ed4d243 Mon Sep 17 00:00:00 2001 From: snipe Date: Thu, 4 Apr 2024 14:23:58 +0100 Subject: [PATCH 15/91] Fixed ambiguous id clause in custom report Signed-off-by: snipe --- app/Http/Controllers/ReportsController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Controllers/ReportsController.php b/app/Http/Controllers/ReportsController.php index 6372c37beb..c1ae800342 100644 --- a/app/Http/Controllers/ReportsController.php +++ b/app/Http/Controllers/ReportsController.php @@ -696,7 +696,7 @@ class ReportsController extends Controller ->whereBetween('action_date',[$checkout_start, $checkout_end]) ->pluck('item_id'); - $assets->whereIn('id',$actionlogassets); + $assets->whereIn('assets.id',$actionlogassets); } if (($request->filled('checkin_date_start'))) { From e11287ec25d15969edce68c410f9f1ddcf01b7d2 Mon Sep 17 00:00:00 2001 From: snipe Date: Thu, 4 Apr 2024 15:00:55 +0100 Subject: [PATCH 16/91] Redirect on checkin if the asset is already checked in Signed-off-by: snipe --- app/Http/Controllers/Assets/AssetCheckinController.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/Http/Controllers/Assets/AssetCheckinController.php b/app/Http/Controllers/Assets/AssetCheckinController.php index 82cb98abe9..30ffd8bba2 100644 --- a/app/Http/Controllers/Assets/AssetCheckinController.php +++ b/app/Http/Controllers/Assets/AssetCheckinController.php @@ -39,6 +39,12 @@ class AssetCheckinController extends Controller $this->authorize('checkin', $asset); + // This asset is already checked in, redirect + + if (is_null($asset->assignedTo)) { + return redirect()->route('hardware.index')->with('error', trans('admin/hardware/message.checkin.already_checked_in')); + } + return view('hardware/checkin', compact('asset'))->with('statusLabel_list', Helper::statusLabelList())->with('backto', $backto); } From 774d0aa90cfd23c6e7dffe4d08a6cdd0e0ad2a8c Mon Sep 17 00:00:00 2001 From: snipe Date: Thu, 4 Apr 2024 15:05:35 +0100 Subject: [PATCH 17/91] Updated dev assets Signed-off-by: snipe --- public/css/build/app.css | 6 ++++++ public/css/build/overrides.css | 6 ++++++ public/css/dist/all.css | 12 ++++++++++++ public/mix-manifest.json | 6 +++--- 4 files changed, 27 insertions(+), 3 deletions(-) diff --git a/public/css/build/app.css b/public/css/build/app.css index 9ba05108f8..a5a5ba53d6 100644 --- a/public/css/build/app.css +++ b/public/css/build/app.css @@ -971,6 +971,12 @@ th.css-accessory > .th-inner::before { .sidebar-menu { margin-top: 100px; } + .navbar-custom-menu > .navbar-nav > li.dropdown.user.user-menu { + float: right; + } + .navbar-custom-menu > .navbar-nav > li > .dropdown-menu { + margin-right: -39px; + } } @media screen and (max-width: 1268px) and (min-width: 912px) { .sidebar-menu { diff --git a/public/css/build/overrides.css b/public/css/build/overrides.css index 52928e416c..2b30b9fdec 100644 --- a/public/css/build/overrides.css +++ b/public/css/build/overrides.css @@ -604,6 +604,12 @@ th.css-accessory > .th-inner::before { .sidebar-menu { margin-top: 100px; } + .navbar-custom-menu > .navbar-nav > li.dropdown.user.user-menu { + float: right; + } + .navbar-custom-menu > .navbar-nav > li > .dropdown-menu { + margin-right: -39px; + } } @media screen and (max-width: 1268px) and (min-width: 912px) { .sidebar-menu { diff --git a/public/css/dist/all.css b/public/css/dist/all.css index d70874aadc..c5f309cc05 100644 --- a/public/css/dist/all.css +++ b/public/css/dist/all.css @@ -22471,6 +22471,12 @@ th.css-accessory > .th-inner::before { .sidebar-menu { margin-top: 100px; } + .navbar-custom-menu > .navbar-nav > li.dropdown.user.user-menu { + float: right; + } + .navbar-custom-menu > .navbar-nav > li > .dropdown-menu { + margin-right: -39px; + } } @media screen and (max-width: 1268px) and (min-width: 912px) { .sidebar-menu { @@ -23738,6 +23744,12 @@ th.css-accessory > .th-inner::before { .sidebar-menu { margin-top: 100px; } + .navbar-custom-menu > .navbar-nav > li.dropdown.user.user-menu { + float: right; + } + .navbar-custom-menu > .navbar-nav > li > .dropdown-menu { + margin-right: -39px; + } } @media screen and (max-width: 1268px) and (min-width: 912px) { .sidebar-menu { diff --git a/public/mix-manifest.json b/public/mix-manifest.json index b467422888..8052e88763 100644 --- a/public/mix-manifest.json +++ b/public/mix-manifest.json @@ -1,8 +1,8 @@ { "/js/build/app.js": "/js/build/app.js?id=ea5f3edebafdb29b616d23fa89106080", "/css/dist/skins/skin-blue.css": "/css/dist/skins/skin-blue.css?id=f677207c6cf9678eb539abecb408c374", - "/css/build/overrides.css": "/css/build/overrides.css?id=ba34afc5bd6ee746744fd109672f715e", - "/css/build/app.css": "/css/build/app.css?id=1b976575001241a8f97ec4fad7bd1f3d", + "/css/build/overrides.css": "/css/build/overrides.css?id=5ee51def3786ccd4ac36287ed74496e7", + "/css/build/app.css": "/css/build/app.css?id=8e63a06059e22f0cd450bcde31055f81", "/css/build/AdminLTE.css": "/css/build/AdminLTE.css?id=dc383f8560a8d4adb51d44fb4043e03b", "/css/dist/skins/skin-orange.css": "/css/dist/skins/skin-orange.css?id=6f0563e726c2fe4fab4026daaa5bfdf2", "/css/dist/skins/skin-orange-dark.css": "/css/dist/skins/skin-orange-dark.css?id=e6e53eef152bba01a4c666a4d8b01117", @@ -18,7 +18,7 @@ "/css/dist/skins/skin-green.css": "/css/dist/skins/skin-green.css?id=0a82a6ae6bb4e58fe62d162c4fb50397", "/css/dist/skins/skin-contrast.css": "/css/dist/skins/skin-contrast.css?id=da6c7997d9de2f8329142399f0ce50da", "/css/dist/skins/skin-red.css": "/css/dist/skins/skin-red.css?id=44bf834f2110504a793dadec132a5898", - "/css/dist/all.css": "/css/dist/all.css?id=53cc9f0f60753c049f4e49617d21c0fe", + "/css/dist/all.css": "/css/dist/all.css?id=bf3a5397f580f3469fa92ecf8ea93dbc", "/css/dist/signature-pad.css": "/css/dist/signature-pad.css?id=6a89d3cd901305e66ced1cf5f13147f7", "/css/dist/signature-pad.min.css": "/css/dist/signature-pad.min.css?id=6a89d3cd901305e66ced1cf5f13147f7", "/css/webfonts/fa-brands-400.ttf": "/css/webfonts/fa-brands-400.ttf?id=69e5d8e4e818f05fd882cceb758d1eba", From a9ed748fb2be3ade683d235e6abd1ee4563ef83b Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 4 Apr 2024 11:39:49 -0700 Subject: [PATCH 18/91] adds audit dates to label options --- resources/views/partials/label2-field-definitions.blade.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/views/partials/label2-field-definitions.blade.php b/resources/views/partials/label2-field-definitions.blade.php index 8d8c680c94..b9c2ce3d55 100644 --- a/resources/views/partials/label2-field-definitions.blade.php +++ b/resources/views/partials/label2-field-definitions.blade.php @@ -313,6 +313,8 @@ + + From 5519fddb78f11c2f431b5e961b84196548876118 Mon Sep 17 00:00:00 2001 From: akemidx Date: Thu, 4 Apr 2024 15:50:30 -0400 Subject: [PATCH 19/91] new clean branch for color change --- resources/assets/less/skins/skin-black-dark.less | 5 ++++- resources/assets/less/skins/skin-blue-dark.less | 5 ++++- resources/assets/less/skins/skin-green-dark.less | 5 ++++- resources/assets/less/skins/skin-orange-dark.less | 5 ++++- resources/assets/less/skins/skin-purple-dark.less | 5 ++++- resources/assets/less/skins/skin-red-dark.less | 5 ++++- resources/assets/less/skins/skin-yellow-dark.less | 3 +++ 7 files changed, 27 insertions(+), 6 deletions(-) diff --git a/resources/assets/less/skins/skin-black-dark.less b/resources/assets/less/skins/skin-black-dark.less index 6f0a2204b2..12a9f2b609 100644 --- a/resources/assets/less/skins/skin-black-dark.less +++ b/resources/assets/less/skins/skin-black-dark.less @@ -375,7 +375,10 @@ input[type=text], input[type=search] { color: var(--text-main); } .skin-black-dark .main-header .navbar .dropdown-menu li a { - color: var(--header); + color: var(--text-main); +} +.skin-black-dark .main-header .navbar .dropdown-menu li a:hover { + background-color: #000000; } .fixed-table-body thead th .th-inner, .skin-black-dark .sidebar-menu>li.active>a, .skin-black .sidebar-menu>li:hover>a, .sidebar-toggle:hover { background-color: var(--header)!important; diff --git a/resources/assets/less/skins/skin-blue-dark.less b/resources/assets/less/skins/skin-blue-dark.less index 6c502b1781..635615ebeb 100644 --- a/resources/assets/less/skins/skin-blue-dark.less +++ b/resources/assets/less/skins/skin-blue-dark.less @@ -361,7 +361,10 @@ input[type=text], input[type=search] { color: var(--text-main); } .skin-blue-dark .main-header .navbar .dropdown-menu li a { - color: var(--header); + color: var(--text-main); +} +.skin-blue-dark .main-header .navbar .dropdown-menu li a:hover { + background-color: #3c8dbc; } .fixed-table-body thead th .th-inner, .skin-blue-dark .sidebar-menu>li.active>a, .skin-blue .sidebar-menu>li:hover>a, .sidebar-toggle:hover { background-color: var(--header)!important; diff --git a/resources/assets/less/skins/skin-green-dark.less b/resources/assets/less/skins/skin-green-dark.less index 5267803656..7e57ce0215 100644 --- a/resources/assets/less/skins/skin-green-dark.less +++ b/resources/assets/less/skins/skin-green-dark.less @@ -348,7 +348,10 @@ input[type=text], input[type=search] { color: var(--text-main); } .skin-green-dark .main-header .navbar .dropdown-menu li a { - color: var(--link); + color: var(--text-main); +} +.skin-green-dark .main-header .navbar .dropdown-menu li a:hover { + background-color: #006300; } .fixed-table-body thead th .th-inner, .skin-green-dark .sidebar-menu>li.active>a, .skin-green .sidebar-menu>li:hover>a, .sidebar-toggle:hover { background-color: var(--header)!important; diff --git a/resources/assets/less/skins/skin-orange-dark.less b/resources/assets/less/skins/skin-orange-dark.less index 98925b475e..5544f33925 100644 --- a/resources/assets/less/skins/skin-orange-dark.less +++ b/resources/assets/less/skins/skin-orange-dark.less @@ -359,7 +359,10 @@ input[type=text], input[type=search] { color: var(--text-main); } .skin-orange-dark .main-header .navbar .dropdown-menu li a { - color: var(--header); + color: var(--text-main); +} +.skin-orange-dark .main-header .navbar .dropdown-menu li a:hover { + background-color: #ff8c00; } .fixed-table-body thead th .th-inner, .skin-orange-dark .sidebar-menu>li.active>a, .skin-orange .sidebar-menu>li:hover>a, .sidebar-toggle:hover { background-color: var(--header)!important; diff --git a/resources/assets/less/skins/skin-purple-dark.less b/resources/assets/less/skins/skin-purple-dark.less index 10868045af..f43b0831ba 100644 --- a/resources/assets/less/skins/skin-purple-dark.less +++ b/resources/assets/less/skins/skin-purple-dark.less @@ -362,7 +362,10 @@ input[type=text], input[type=search] { color: var(--text-main); } .skin-purple-dark .main-header .navbar .dropdown-menu li a { - color: var(--header); + color: var(--text-main); +} +.skin-purple-dark .main-header .navbar .dropdown-menu li a:hover { + background-color: #5f5ca8; } .fixed-table-body thead th .th-inner, .skin-purple-dark .sidebar-menu>li.active>a, .skin-purple .sidebar-menu>li:hover>a, .sidebar-toggle:hover { background-color: var(--header)!important; diff --git a/resources/assets/less/skins/skin-red-dark.less b/resources/assets/less/skins/skin-red-dark.less index 3fded5f067..9d41e3a2a6 100644 --- a/resources/assets/less/skins/skin-red-dark.less +++ b/resources/assets/less/skins/skin-red-dark.less @@ -363,7 +363,10 @@ input[type=text], input[type=search] { color: var(--text-main); } .skin-red-dark .main-header .navbar .dropdown-menu li a { - color: var(--header); + color: var(--text-main); +} +.skin-red-dark .main-header .navbar .dropdown-menu li a:hover { + background-color: #c23320; } .fixed-table-body thead th .th-inner, .skin-red-dark .sidebar-menu>li.active>a, .skin-red .sidebar-menu>li:hover>a, .sidebar-toggle:hover { background-color: var(--header)!important; diff --git a/resources/assets/less/skins/skin-yellow-dark.less b/resources/assets/less/skins/skin-yellow-dark.less index c111cb122c..dbecd6b3dd 100644 --- a/resources/assets/less/skins/skin-yellow-dark.less +++ b/resources/assets/less/skins/skin-yellow-dark.less @@ -355,6 +355,9 @@ input[type=text], input[type=search] { .skin-yellow-dark .main-header .navbar .dropdown-menu li a { color: var(--header); } +.skin-yellow-dark .main-header .navbar .dropdown-menu li a:hover { + background-color: #ffcc32; +} tr th div.th-inner { color:var(--text-main); } From f7f199d929b5a99a6f3237237f842b23adad493d Mon Sep 17 00:00:00 2001 From: akemidx Date: Thu, 4 Apr 2024 15:51:46 -0400 Subject: [PATCH 20/91] black hover bg for dark yellow theme --- resources/assets/less/skins/skin-yellow-dark.less | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/assets/less/skins/skin-yellow-dark.less b/resources/assets/less/skins/skin-yellow-dark.less index dbecd6b3dd..bbf022c8d9 100644 --- a/resources/assets/less/skins/skin-yellow-dark.less +++ b/resources/assets/less/skins/skin-yellow-dark.less @@ -356,7 +356,7 @@ input[type=text], input[type=search] { color: var(--header); } .skin-yellow-dark .main-header .navbar .dropdown-menu li a:hover { - background-color: #ffcc32; + background-color: #000000; } tr th div.th-inner { color:var(--text-main); From d548b800d5227f0a1fe30144212b70e9d3edd0f6 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 4 Apr 2024 15:43:33 -0700 Subject: [PATCH 21/91] nullifies location after ldap user sync --- app/Console/Commands/LdapSync.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Console/Commands/LdapSync.php b/app/Console/Commands/LdapSync.php index 05f60ee4e1..bd91c2bf25 100755 --- a/app/Console/Commands/LdapSync.php +++ b/app/Console/Commands/LdapSync.php @@ -390,7 +390,7 @@ class LdapSync extends Command $user->location_id = $location->id; } } - + $location = null; $user->ldap_import = 1; $errors = ''; From 90cf612ac7666c721ca56a64a5ae9ccd6a64ed9e Mon Sep 17 00:00:00 2001 From: snipe Date: Mon, 8 Apr 2024 10:50:52 +0100 Subject: [PATCH 22/91] Remove city as required field on location modal Signed-off-by: snipe --- resources/views/modals/location.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/views/modals/location.blade.php b/resources/views/modals/location.blade.php index 112e710249..0b5424b294 100644 --- a/resources/views/modals/location.blade.php +++ b/resources/views/modals/location.blade.php @@ -17,7 +17,7 @@
-
+
From 858da800be05300f245b1e421a0af68ca8363fc8 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 9 Apr 2024 09:40:39 -0700 Subject: [PATCH 23/91] attempting to lock screen orientation --- package-lock.json | 5 +++++ package.json | 1 + .../views/account/accept/create.blade.php | 22 ++++++++++++++++++- 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index 3a81578e6a..4dfe83582d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19162,6 +19162,11 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, + "signature_pad": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/signature_pad/-/signature_pad-4.2.0.tgz", + "integrity": "sha512-YLWysmaUBaC5wosAKkgbX7XI+LBv2w5L0QUcI6Jc4moHYzv9BUBJtAyNLpWzHjtjKTeWOH6bfP4a4pzf0UinfQ==" + }, "simple-concat": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", diff --git a/package.json b/package.json index 7908293012..ebadfb06be 100644 --- a/package.json +++ b/package.json @@ -56,6 +56,7 @@ "papaparse": "^4.3.3", "select2": "4.0.13", "sheetjs": "^2.0.0", + "signature_pad": "^4.2.0", "tableexport.jquery.plugin": "1.28.0", "tether": "^1.4.0", "vue-resource": "^1.5.2", diff --git a/resources/views/account/accept/create.blade.php b/resources/views/account/accept/create.blade.php index c05bc3a892..eb9398604c 100644 --- a/resources/views/account/accept/create.blade.php +++ b/resources/views/account/accept/create.blade.php @@ -70,9 +70,10 @@

{{trans('general.sign_tos')}}

- +
+
@@ -94,6 +95,25 @@ @section('moar_scripts')