diff --git a/app/Http/Controllers/V1/Admin/General/BootstrapController.php b/app/Http/Controllers/V1/Admin/General/BootstrapController.php index da489946..b9c72ff4 100644 --- a/app/Http/Controllers/V1/Admin/General/BootstrapController.php +++ b/app/Http/Controllers/V1/Admin/General/BootstrapController.php @@ -55,7 +55,9 @@ class BootstrapController extends Controller 'admin_portal_logo', 'login_page_logo', 'login_page_heading', - 'login_page_description' + 'login_page_description', + 'admin_page_title', + 'copyright_text' ]); return response()->json([ diff --git a/app/Http/Controllers/V1/Customer/InvoicePdfController.php b/app/Http/Controllers/V1/Customer/InvoicePdfController.php index 858e5005..ad94403c 100644 --- a/app/Http/Controllers/V1/Customer/InvoicePdfController.php +++ b/app/Http/Controllers/V1/Customer/InvoicePdfController.php @@ -44,8 +44,8 @@ class InvoicePdfController extends Controller } return view('app')->with([ - 'customer_logo' => get_customer_logo($invoice->company_id), - 'current_theme' => get_customer_portal_theme($invoice->company_id) + 'customer_logo' => get_company_setting('customer_portal_logo', $invoice->company_id), + 'current_theme' => get_company_setting('customer_portal_theme', $invoice->company_id) ]); } diff --git a/app/Providers/ViewServiceProvider.php b/app/Providers/ViewServiceProvider.php index f9a27763..216adbd6 100644 --- a/app/Providers/ViewServiceProvider.php +++ b/app/Providers/ViewServiceProvider.php @@ -26,9 +26,11 @@ class ViewServiceProvider extends ServiceProvider public function boot() { if (\Storage::disk('local')->has('database_created') && Schema::hasTable('settings')) { - View::share('login_page_logo', get_login_page_logo()); - View::share('login_page_heading', get_login_page_heading()); - View::share('login_page_description', get_login_page_description()); + View::share('login_page_logo', get_app_setting('login_page_logo')); + View::share('login_page_heading', get_app_setting('login_page_heading')); + View::share('login_page_description', get_app_setting('login_page_description')); + View::share('admin_page_title', get_app_setting('admin_page_title')); + View::share('copyright_text', get_app_setting('copyright_text')); } } } diff --git a/app/Space/helpers.php b/app/Space/helpers.php index 160bf1ec..7a3e078e 100644 --- a/app/Space/helpers.php +++ b/app/Space/helpers.php @@ -7,93 +7,56 @@ use Crater\Models\Setting; use Illuminate\Support\Str; /** - * Get current customer theme + * Get company setting * * @param $company_id * @return string */ -function get_customer_portal_theme($company_id) +function get_company_setting($key, $company_id) { if (\Storage::disk('local')->has('database_created')) { - return CompanySetting::getSetting('customer_portal_theme', $company_id); + return CompanySetting::getSetting($key, $company_id); } } - /** - * Get current customer logo + * Get app setting * * @param $company_id * @return string */ -function get_customer_logo($company_id) +function get_app_setting($key) { if (\Storage::disk('local')->has('database_created')) { - return CompanySetting::getSetting('customer_portal_logo', $company_id); + return Setting::getSetting($key); } } - /** - * Get current admin portal logo + * Get page title * * @param $company_id * @return string */ -function get_login_page_logo() +function get_page_title($company_id) { - if (\Storage::disk('local')->has('database_created')) { - return Setting::getSetting('login_page_logo'); - } -} + $routeName = Route::currentRouteName(); -/** - * Get current admin theme - * - * @return string - */ -function get_admin_portal_theme() -{ - if (\Storage::disk('local')->has('database_created')) { - $setting = Setting::getSetting('admin_portal_theme'); + $pageTitle = null; + $defaultPageTitle = 'Crater - Self Hosted Invoicing Platform'; - if ($setting) { - return $setting; + if (\Storage::disk('local')->has('database_created')) { + if ($routeName === 'customer.dashboard') { + $pageTitle = CompanySetting::getSetting('customer_portal_page_title', $company_id); + + return $pageTitle ? $pageTitle : $defaultPageTitle; } - return 'crater'; - } - - return 'crater'; -} - -/** - * Get current login page heading - * - * @param $company_id - * @return string - */ -function get_login_page_heading() -{ - if (\Storage::disk('local')->has('database_created')) { - return Setting::getSetting('login_page_heading'); + $pageTitle = Setting::getSetting('admin_page_title'); + return $pageTitle ? $pageTitle : $defaultPageTitle; } } -/** - * Get current login page description - * - * @param $company_id - * @return string - */ -function get_login_page_description() -{ - if (\Storage::disk('local')->has('database_created')) { - return Setting::getSetting('login_page_description'); - } -} - - /** * Set Active Path * diff --git a/database/migrations/2022_02_23_130108_update_value_column_to_nullable_on_settings_table.php b/database/migrations/2022_02_23_130108_update_value_column_to_nullable_on_settings_table.php new file mode 100644 index 00000000..09d7f1f2 --- /dev/null +++ b/database/migrations/2022_02_23_130108_update_value_column_to_nullable_on_settings_table.php @@ -0,0 +1,30 @@ +string('value')->nullable()->change(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + // + } +} diff --git a/resources/scripts/admin/layouts/LayoutLogin.vue b/resources/scripts/admin/layouts/LayoutLogin.vue index 1f31dbdb..91540649 100644 --- a/resources/scripts/admin/layouts/LayoutLogin.vue +++ b/resources/scripts/admin/layouts/LayoutLogin.vue @@ -46,7 +46,8 @@ " >
- Copyright @ Crater Invoice, Inc. {{ new Date().getFullYear() }} + {{ copyrightText }} + {{ new Date().getFullYear() }}
@@ -151,6 +152,13 @@ const pageDescription = computed(() => { return 'Crater helps you track expenses, record payments & generate beautiful invoices & estimates.' }) +const copyrightText = computed(() => { + if (window.copyright_text) { + return window.copyright_text + } + return 'Copyright @ Crater Invoice, Inc.' +}) + const loginPageLogo = computed(() => { if (window.login_page_logo) { return window.login_page_logo diff --git a/resources/views/app.blade.php b/resources/views/app.blade.php index 1c1cdfda..80aed311 100644 --- a/resources/views/app.blade.php +++ b/resources/views/app.blade.php @@ -3,7 +3,7 @@ -