diff --git a/app/Http/Controllers/Accessories/AccessoriesController.php b/app/Http/Controllers/Accessories/AccessoriesController.php
index eb004d559..44bd891ce 100755
--- a/app/Http/Controllers/Accessories/AccessoriesController.php
+++ b/app/Http/Controllers/Accessories/AccessoriesController.php
@@ -112,13 +112,13 @@ class AccessoriesController extends Controller
{
$this->authorize('create', Accessory::class);
-
- $accessory = clone $accessory;
- $accessory->id = null;
- $accessory->location_id = null;
+ $cloned = clone $accessory;
+ $cloned->id = null;
+ $cloned->deleted_at = '';
+ $cloned->location_id = null;
return view('accessories/edit')
- ->with('item', $accessory);
+ ->with('item', $cloned);
}
diff --git a/app/Http/Controllers/Account/AcceptanceController.php b/app/Http/Controllers/Account/AcceptanceController.php
index 278d7e208..b20f7d97e 100644
--- a/app/Http/Controllers/Account/AcceptanceController.php
+++ b/app/Http/Controllers/Account/AcceptanceController.php
@@ -208,9 +208,12 @@ class AcceptanceController extends Controller
*/
$branding_settings = SettingsController::getPDFBranding();
- if (is_null($branding_settings->logo)){
- $path_logo = "";
- } else {
+ $path_logo = "";
+
+ // Check for the PDF logo path and use that, otherwise use the regular logo path
+ if (!is_null($branding_settings->acceptance_pdf_logo)) {
+ $path_logo = public_path() . '/uploads/' . $branding_settings->acceptance_pdf_logo;
+ } elseif (!is_null($branding_settings->logo)) {
$path_logo = public_path() . '/uploads/' . $branding_settings->logo;
}
diff --git a/app/Http/Controllers/SettingsController.php b/app/Http/Controllers/SettingsController.php
index ecb21e2ab..2300f2f68 100644
--- a/app/Http/Controllers/SettingsController.php
+++ b/app/Http/Controllers/SettingsController.php
@@ -428,6 +428,13 @@ class SettingsController extends Controller
$setting->label_logo = null;
}
+ // Acceptance PDF upload
+ $setting = $request->handleImages($setting, 600, 'acceptance_pdf_logo', '', 'acceptance_pdf_logo');
+ if ('1' == $request->input('clear_acceptance_pdf_logo')) {
+ $setting = $request->deleteExistingImage($setting, '', 'acceptance_pdf_logo');
+ $setting->acceptance_pdf_logo = null;
+ }
+
// Favicon upload
$setting = $request->handleImages($setting, 100, 'favicon', '', 'favicon');
if ('1' == $request->input('clear_favicon')) {
@@ -435,6 +442,7 @@ class SettingsController extends Controller
$setting->favicon = null;
}
+
// Default avatar upload
$setting = $request->handleImages($setting, 500, 'default_avatar', 'avatars', 'default_avatar');
if ($request->input('clear_default_avatar') == '1') {
diff --git a/composer.lock b/composer.lock
index 9acc60817..63617c5bc 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4679,16 +4679,16 @@
},
{
"name": "monolog/monolog",
- "version": "3.8.1",
+ "version": "3.9.0",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/monolog.git",
- "reference": "aef6ee73a77a66e404dd6540934a9ef1b3c855b4"
+ "reference": "10d85740180ecba7896c87e06a166e0c95a0e3b6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/aef6ee73a77a66e404dd6540934a9ef1b3c855b4",
- "reference": "aef6ee73a77a66e404dd6540934a9ef1b3c855b4",
+ "url": "https://api.github.com/repos/Seldaek/monolog/zipball/10d85740180ecba7896c87e06a166e0c95a0e3b6",
+ "reference": "10d85740180ecba7896c87e06a166e0c95a0e3b6",
"shasum": ""
},
"require": {
@@ -4766,7 +4766,7 @@
],
"support": {
"issues": "https://github.com/Seldaek/monolog/issues",
- "source": "https://github.com/Seldaek/monolog/tree/3.8.1"
+ "source": "https://github.com/Seldaek/monolog/tree/3.9.0"
},
"funding": [
{
@@ -4778,7 +4778,7 @@
"type": "tidelift"
}
],
- "time": "2024-12-05T17:15:07+00:00"
+ "time": "2025-03-24T10:02:05+00:00"
},
{
"name": "mtdowling/jmespath.php",
@@ -7479,22 +7479,22 @@
},
{
"name": "rollbar/rollbar",
- "version": "v4.0.2",
+ "version": "v4.1.1",
"source": {
"type": "git",
"url": "https://github.com/rollbar/rollbar-php.git",
- "reference": "6966a4c97c170298108f5e5b543c2710658f8fe0"
+ "reference": "146216bbfde503632c6969a7c334c8a63c98f50e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/rollbar/rollbar-php/zipball/6966a4c97c170298108f5e5b543c2710658f8fe0",
- "reference": "6966a4c97c170298108f5e5b543c2710658f8fe0",
+ "url": "https://api.github.com/repos/rollbar/rollbar-php/zipball/146216bbfde503632c6969a7c334c8a63c98f50e",
+ "reference": "146216bbfde503632c6969a7c334c8a63c98f50e",
"shasum": ""
},
"require": {
"ext-curl": "*",
"monolog/monolog": "^2 || ^3",
- "php": ">=8.0.0 <9.0",
+ "php": ">=8.1.0 <9.0",
"psr/log": "^1 || ^2 || ^3"
},
"require-dev": {
@@ -7536,28 +7536,28 @@
"support": {
"email": "support@rollbar.com",
"issues": "https://github.com/rollbar/rollbar-php/issues",
- "source": "https://github.com/rollbar/rollbar-php/tree/v4.0.2"
+ "source": "https://github.com/rollbar/rollbar-php/tree/v4.1.1"
},
- "time": "2023-12-22T21:40:31+00:00"
+ "time": "2025-03-21T19:07:30+00:00"
},
{
"name": "rollbar/rollbar-laravel",
- "version": "v8.0.1",
+ "version": "v8.1.2",
"source": {
"type": "git",
"url": "https://github.com/rollbar/rollbar-php-laravel.git",
- "reference": "69ecc7c19b54b1d88bf8a2bdfa56277500cc41f6"
+ "reference": "fbe96ea28601294aa7dc41cd16db62cddddeb0c2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/rollbar/rollbar-php-laravel/zipball/69ecc7c19b54b1d88bf8a2bdfa56277500cc41f6",
- "reference": "69ecc7c19b54b1d88bf8a2bdfa56277500cc41f6",
+ "url": "https://api.github.com/repos/rollbar/rollbar-php-laravel/zipball/fbe96ea28601294aa7dc41cd16db62cddddeb0c2",
+ "reference": "fbe96ea28601294aa7dc41cd16db62cddddeb0c2",
"shasum": ""
},
"require": {
- "illuminate/support": "^10.0|^11.0",
+ "illuminate/support": "^10.0|^11.0|^12.0",
"php": "^8.1",
- "rollbar/rollbar": "^4.0"
+ "rollbar/rollbar": "v4.1.1"
},
"require-dev": {
"mockery/mockery": "^1",
@@ -7608,9 +7608,9 @@
],
"support": {
"issues": "https://github.com/rollbar/rollbar-php-laravel/issues",
- "source": "https://github.com/rollbar/rollbar-php-laravel/tree/v8.0.1"
+ "source": "https://github.com/rollbar/rollbar-php-laravel/tree/v8.1.2"
},
- "time": "2024-02-13T21:58:17+00:00"
+ "time": "2025-03-21T19:26:39+00:00"
},
{
"name": "sabberworm/php-css-parser",
diff --git a/config/version.php b/config/version.php
index defc7861f..f2452d7ef 100644
--- a/config/version.php
+++ b/config/version.php
@@ -1,10 +1,10 @@
'v8.0.4',
- 'full_app_version' => 'v8.0.4 - build 17196-gc29bdbdac',
- 'build_version' => '17196',
+ 'full_app_version' => 'v8.0.4 - build 17333-gaf408bb45',
+ 'build_version' => '17333',
'prerelease_version' => '',
- 'hash_version' => 'gc29bdbdac',
- 'full_hash' => 'v8.0.4-29-gc29bdbdac',
+ 'hash_version' => 'gaf408bb45',
+ 'full_hash' => 'v8.0.4-135-gaf408bb45',
'branch' => 'master',
);
\ No newline at end of file
diff --git a/database/migrations/2025_04_02_113438_add_acceptance_pdf_logo_to_settings.php b/database/migrations/2025_04_02_113438_add_acceptance_pdf_logo_to_settings.php
new file mode 100644
index 000000000..26ce894e5
--- /dev/null
+++ b/database/migrations/2025_04_02_113438_add_acceptance_pdf_logo_to_settings.php
@@ -0,0 +1,28 @@
+char('acceptance_pdf_logo')->after('label_logo')->nullable()->default(null);
+ });
+ }
+
+ /**
+ * Reverse the migrations.
+ */
+ public function down(): void
+ {
+ Schema::table('settings', function (Blueprint $table) {
+ $table->dropColumn('acceptance_pdf_logo');
+ });
+ }
+};
diff --git a/resources/lang/en-US/admin/settings/general.php b/resources/lang/en-US/admin/settings/general.php
index ce19ed47f..ed148cf81 100644
--- a/resources/lang/en-US/admin/settings/general.php
+++ b/resources/lang/en-US/admin/settings/general.php
@@ -58,10 +58,8 @@ return [
'display_eol' => 'Display EOL in table view',
'display_qr' => 'Display 2D barcode',
'display_alt_barcode' => 'Display 1D barcode',
- 'email_logo' => 'Email Logo',
'barcode_type' => '2D Barcode Type',
'alt_barcode_type' => '1D barcode type',
- 'email_logo_size' => 'Square logos in email look best. ',
'enabled' => 'Enabled',
'eula_settings' => 'EULA Settings',
'eula_markdown' => 'This EULA allows Github flavored markdown.',
@@ -77,7 +75,6 @@ return [
'google_workspaces' => 'Google Workspaces',
'header_color' => 'Header Color',
'info' => 'These settings let you customize certain aspects of your installation.',
- 'label_logo' => 'Label Logo',
'label_logo_size' => 'Square logos look best - will be displayed in the top right of each asset label. ',
'laravel' => 'Laravel Version',
'ldap' => 'LDAP',
@@ -389,7 +386,7 @@ return [
'test_mail' => 'Test Mail',
'profile_edit' => 'Edit Profile',
'profile_edit_help' => 'Allow users to edit their own profiles.',
- 'default_avatar' => 'Upload custom default avatar',
+ 'default_avatar' => 'Custom Default Avatar',
'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' => '',
@@ -398,6 +395,17 @@ return [
'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups
to add one.',
'text' => 'Text',
+ 'logo_labels' => [
+ 'acceptance_pdf_logo' => 'PDF Logo',
+ 'email_logo' => 'Email Logo',
+ 'label_logo' => 'Label Logo',
+ 'logo' => 'Site Logo',
+ 'favicon' => 'Favicon',
+ ],
+
+ 'logo_help' => [
+ 'email_logo_size' => 'Square logos in email look best. ',
+ ],
'logo_option_types' => [
'text' => 'Text',
diff --git a/resources/views/partials/forms/edit/uploadLogo.blade.php b/resources/views/partials/forms/edit/uploadLogo.blade.php
index 695829dbd..9eba6497b 100644
--- a/resources/views/partials/forms/edit/uploadLogo.blade.php
+++ b/resources/views/partials/forms/edit/uploadLogo.blade.php
@@ -3,7 +3,7 @@