diff --git a/app/Http/Controllers/Api/UploadedFilesController.php b/app/Http/Controllers/Api/UploadedFilesController.php index 787a6669b4..994ef5f1b6 100644 --- a/app/Http/Controllers/Api/UploadedFilesController.php +++ b/app/Http/Controllers/Api/UploadedFilesController.php @@ -113,7 +113,7 @@ class UploadedFilesController extends Controller $object->logUpload($file_name, $request->input('notes')); } - if ($files) { + if (isset($files)) { $file_results = Actionlog::select('action_logs.*')->where('action_type', '=', 'uploaded') ->where('item_type', '=', self::$map_object_type[$object_type]) ->where('item_id', '=', $id)->whereIn('filename', $files) diff --git a/app/Http/Controllers/Users/UsersController.php b/app/Http/Controllers/Users/UsersController.php index 1e443a5492..92d23aacaa 100755 --- a/app/Http/Controllers/Users/UsersController.php +++ b/app/Http/Controllers/Users/UsersController.php @@ -56,7 +56,7 @@ class UsersController extends Controller public function create(Request $request) { $this->authorize('create', User::class); - $groups = Group::pluck('name', 'id'); + $groups = Group::orderBy('name', 'asc')->pluck('name', 'id'); $userGroups = collect(); @@ -151,7 +151,9 @@ class UsersController extends Controller } if ($request->filled('groups')) { - $user->groups()->sync($request->input('groups')); + if (auth()->user()->can('canEditAuthFields', $user) && auth()->user()->can('editableOnDemo')) { + $user->groups()->sync($request->input('groups')); + } } else { $user->groups()->sync([]); } @@ -199,7 +201,7 @@ class UsersController extends Controller } $permissions = config('permissions'); - $groups = Group::pluck('name', 'id'); + $groups = Group::orderBy('name', 'asc')->pluck('name', 'id'); $userGroups = $user->groups()->pluck('name', 'id'); $user->permissions = $user->decodePermissions(); diff --git a/composer.lock b/composer.lock index 5b33a59cbd..077f669386 100644 --- a/composer.lock +++ b/composer.lock @@ -5067,16 +5067,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.6.1", + "version": "v5.7.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "f103601b29efebd7ff4a1ca7b3eeea9e3336a2a2" + "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/f103601b29efebd7ff4a1ca7b3eeea9e3336a2a2", - "reference": "f103601b29efebd7ff4a1ca7b3eeea9e3336a2a2", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/dca41cd15c2ac9d055ad70dbfd011130757d1f82", + "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82", "shasum": "" }, "require": { @@ -5119,9 +5119,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.6.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.7.0" }, - "time": "2025-08-13T20:13:15+00:00" + "time": "2025-12-06T11:56:16+00:00" }, { "name": "nunomaduro/collision", @@ -7495,16 +7495,16 @@ }, { "name": "sebastian/comparator", - "version": "5.0.4", + "version": "5.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "e8e53097718d2b53cfb2aa859b06a41abf58c62e" + "reference": "55dfef806eb7dfeb6e7a6935601fef866f8ca48d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e8e53097718d2b53cfb2aa859b06a41abf58c62e", - "reference": "e8e53097718d2b53cfb2aa859b06a41abf58c62e", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55dfef806eb7dfeb6e7a6935601fef866f8ca48d", + "reference": "55dfef806eb7dfeb6e7a6935601fef866f8ca48d", "shasum": "" }, "require": { @@ -7560,7 +7560,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", "security": "https://github.com/sebastianbergmann/comparator/security/policy", - "source": "https://github.com/sebastianbergmann/comparator/tree/5.0.4" + "source": "https://github.com/sebastianbergmann/comparator/tree/5.0.5" }, "funding": [ { @@ -7580,7 +7580,7 @@ "type": "tidelift" } ], - "time": "2025-09-07T05:25:07+00:00" + "time": "2026-01-24T09:25:16+00:00" }, { "name": "sebastian/diff", @@ -7651,16 +7651,16 @@ }, { "name": "sebastian/exporter", - "version": "5.1.2", + "version": "5.1.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "955288482d97c19a372d3f31006ab3f37da47adf" + "reference": "0735b90f4da94969541dac1da743446e276defa6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/955288482d97c19a372d3f31006ab3f37da47adf", - "reference": "955288482d97c19a372d3f31006ab3f37da47adf", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/0735b90f4da94969541dac1da743446e276defa6", + "reference": "0735b90f4da94969541dac1da743446e276defa6", "shasum": "" }, "require": { @@ -7669,7 +7669,7 @@ "sebastian/recursion-context": "^5.0" }, "require-dev": { - "phpunit/phpunit": "^10.0" + "phpunit/phpunit": "^10.5" }, "type": "library", "extra": { @@ -7717,15 +7717,27 @@ "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", "security": "https://github.com/sebastianbergmann/exporter/security/policy", - "source": "https://github.com/sebastianbergmann/exporter/tree/5.1.2" + "source": "https://github.com/sebastianbergmann/exporter/tree/5.1.4" }, "funding": [ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/exporter", + "type": "tidelift" } ], - "time": "2024-03-02T07:17:12+00:00" + "time": "2025-09-24T06:09:11+00:00" }, { "name": "sebastian/recursion-context", @@ -14245,16 +14257,16 @@ }, { "name": "phpunit/phpunit", - "version": "10.5.55", + "version": "10.5.63", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "4b2d546b336876bd9562f24641b08a25335b06b6" + "reference": "33198268dad71e926626b618f3ec3966661e4d90" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/4b2d546b336876bd9562f24641b08a25335b06b6", - "reference": "4b2d546b336876bd9562f24641b08a25335b06b6", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/33198268dad71e926626b618f3ec3966661e4d90", + "reference": "33198268dad71e926626b618f3ec3966661e4d90", "shasum": "" }, "require": { @@ -14275,10 +14287,10 @@ "phpunit/php-timer": "^6.0.0", "sebastian/cli-parser": "^2.0.1", "sebastian/code-unit": "^2.0.0", - "sebastian/comparator": "^5.0.4", + "sebastian/comparator": "^5.0.5", "sebastian/diff": "^5.1.1", "sebastian/environment": "^6.1.0", - "sebastian/exporter": "^5.1.2", + "sebastian/exporter": "^5.1.4", "sebastian/global-state": "^6.0.2", "sebastian/object-enumerator": "^5.0.0", "sebastian/recursion-context": "^5.0.1", @@ -14326,7 +14338,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.55" + "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.63" }, "funding": [ { @@ -14350,7 +14362,7 @@ "type": "tidelift" } ], - "time": "2025-09-14T06:19:20+00:00" + "time": "2026-01-27T05:48:37+00:00" }, { "name": "react/cache", @@ -16454,16 +16466,16 @@ }, { "name": "theseer/tokenizer", - "version": "1.2.3", + "version": "1.3.1", "source": { "type": "git", "url": "https://github.com/theseer/tokenizer.git", - "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2" + "reference": "b7489ce515e168639d17feec34b8847c326b0b3c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2", - "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/b7489ce515e168639d17feec34b8847c326b0b3c", + "reference": "b7489ce515e168639d17feec34b8847c326b0b3c", "shasum": "" }, "require": { @@ -16492,7 +16504,7 @@ "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", "support": { "issues": "https://github.com/theseer/tokenizer/issues", - "source": "https://github.com/theseer/tokenizer/tree/1.2.3" + "source": "https://github.com/theseer/tokenizer/tree/1.3.1" }, "funding": [ { @@ -16500,7 +16512,7 @@ "type": "github" } ], - "time": "2024-03-03T12:36:25+00:00" + "time": "2025-11-17T20:03:58+00:00" } ], "aliases": [], diff --git a/config/version.php b/config/version.php index a1bc400642..6f35ed190e 100644 --- a/config/version.php +++ b/config/version.php @@ -1,10 +1,10 @@ 'v8.3.7', - 'full_app_version' => 'v8.3.7 - build 20803-gdba8cb83b', - 'build_version' => '20803', + 'full_app_version' => 'v8.3.7 - build 21025-ga8c268760', + 'build_version' => '21025', 'prerelease_version' => '', - 'hash_version' => 'gdba8cb83b', - 'full_hash' => 'v8.3.7-250-gdba8cb83b', + 'hash_version' => 'ga8c268760', + 'full_hash' => 'v8.3.7-220-ga8c268760', 'branch' => 'develop', ); \ No newline at end of file diff --git a/resources/lang/en-US/admin/settings/general.php b/resources/lang/en-US/admin/settings/general.php index 35a2796212..de022e1e94 100644 --- a/resources/lang/en-US/admin/settings/general.php +++ b/resources/lang/en-US/admin/settings/general.php @@ -402,6 +402,7 @@ return [ 'select_template' => 'Select a Template', 'label2_fields' => 'Field Definitions', 'label2_fields_help' => 'Fields can be added, removed, and reordered in the left column. For each field, multiple options for Label and DataSource can be added, removed, and reordered in the right column. Field changes made here will be reflected immediately in the preview below but must be saved for them to apply to new labels.', + "label2_label_preview" => 'Label Preview', 'purge_barcodes' => 'Purge Barcodes', 'help_asterisk_bold' => 'Text entered as **text** will be displayed as bold', 'help_blank_to_use' => 'Leave blank to use the value from :setting_name', diff --git a/resources/views/blade/table/index.blade.php b/resources/views/blade/table/index.blade.php index 58a549f03b..aa0a9c2a35 100644 --- a/resources/views/blade/table/index.blade.php +++ b/resources/views/blade/table/index.blade.php @@ -51,11 +51,11 @@ @if ($api_url) data-side-pagination="server" - data-url="{!! $api_url !!}" + data-url="{!! $api_url !!}" @endif data-export-options='{ "fileName": "{{ $export_filename }}", "ignoreColumn": ["actions","available_actions", "image","change","checkbox","checkincheckout","icon"] }'> - \ No newline at end of file + diff --git a/resources/views/custom_fields/fieldsets/view.blade.php b/resources/views/custom_fields/fieldsets/view.blade.php index feef5566aa..0668ef2cf3 100644 --- a/resources/views/custom_fields/fieldsets/view.blade.php +++ b/resources/views/custom_fields/fieldsets/view.blade.php @@ -21,8 +21,7 @@
- +
{{-- Hide the sorting handle if we can't update the fieldset --}} diff --git a/resources/views/hardware/checkout.blade.php b/resources/views/hardware/checkout.blade.php index b94fb58a0c..3df2743a96 100755 --- a/resources/views/hardware/checkout.blade.php +++ b/resources/views/hardware/checkout.blade.php @@ -157,7 +157,7 @@ {!! $errors->first('note', '') !!} - + @include("models/custom_fields_form", [ 'model' => $asset->model, @@ -167,7 +167,8 @@ @if ($asset->requireAcceptance() || $asset->getEula() || ($snipeSettings->webhook_endpoint!='')) -
+
+
@@ -190,6 +191,7 @@
+
@endif
diff --git a/resources/views/layouts/default.blade.php b/resources/views/layouts/default.blade.php index 53c725c17d..3160661e3c 100644 --- a/resources/views/layouts/default.blade.php +++ b/resources/views/layouts/default.blade.php @@ -175,6 +175,11 @@ border: 1px solid hsl(from var(--btn-theme-base) h s calc(l - 15)) !important; } + .btn-theme.active + { + background-color: var(--btn-theme-hover) !important; + } + .btn-theme:focus { color: var(--nav-primary-text-color) !important; } @@ -529,14 +534,18 @@ .table-striped > tbody > tr:nth-of-type(even), .row-new-striped > .row:nth-of-type(even), - .row-new-striped > .div:nth-of-type(odd) { + .row-new-striped > .div:nth-of-type(odd), + .cansort + { background-color: var(--table-stripe-bg) !important; border-top: var(--table-border-row-top) !important; + color: var(--nav-primary-text-color) !important; } .table-striped > tbody > tr:nth-of-type(odd), .row-new-striped > .row:nth-of-type(even), - .row-new-striped > .div:nth-of-type(odd) + .row-new-striped > .div:nth-of-type(odd), + .cansort { background-color: var(--table-stripe-bg-alt) !important; border-top: var(--table-border-row-top) !important; @@ -729,8 +738,9 @@ .table > tfoot > tr > td { - border-top-color: var(--box-header-bottom-border-color) !important; + border-top-color: var(--box-bg) !important; border-bottom-color: var(--box-header-bottom-border-color) !important; + color: var(--color-fg); } @@ -1826,7 +1836,7 @@ - + diff --git a/resources/views/locations/view.blade.php b/resources/views/locations/view.blade.php index 0772a07837..5e35e0b053 100644 --- a/resources/views/locations/view.blade.php +++ b/resources/views/locations/view.blade.php @@ -355,9 +355,9 @@ diff --git a/resources/views/partials/forms/checkout-selector.blade.php b/resources/views/partials/forms/checkout-selector.blade.php index 30975d683c..09e25a3c53 100644 --- a/resources/views/partials/forms/checkout-selector.blade.php +++ b/resources/views/partials/forms/checkout-selector.blade.php @@ -4,7 +4,7 @@
@if ((isset($user_select)) && ($user_select!='false')) -