diff --git a/app/Http/Middleware/StartupCheck.php b/app/Http/Middleware/StartupCheck.php index 9e0cd93078b6..75a4a010c951 100644 --- a/app/Http/Middleware/StartupCheck.php +++ b/app/Http/Middleware/StartupCheck.php @@ -70,12 +70,10 @@ class StartupCheck private function buildTemplates($name = 'templates') { $data = [ - 'invoice' => [ 'subject' => EmailTemplateDefaults::emailInvoiceSubject(), 'body' => EmailTemplateDefaults::emailInvoiceTemplate(), ], - 'quote' => [ 'subject' => EmailTemplateDefaults::emailQuoteSubject(), 'body' => EmailTemplateDefaults::emailQuoteTemplate(), diff --git a/app/Providers/StaticServiceProvider.php b/app/Providers/StaticServiceProvider.php new file mode 100644 index 000000000000..211275bc7c79 --- /dev/null +++ b/app/Providers/StaticServiceProvider.php @@ -0,0 +1,100 @@ +singleton('currencies', function ($app) { + return Currency::query()->orderBy('name')->get(); + }); + + app()->singleton('languages', function ($app) { + return Language::query()->orderBy('name')->get(); + }); + + app()->singleton('countries', function ($app) { + return Country::query()->orderBy('name')->get(); + }); + + app()->singleton('payment_types', function ($app) { + return PaymentTerm::query()->orderBy('num_days')->get(); + }); + + app()->singleton('industries', function ($app) { + return Industry::query()->orderBy('name')->get(); + }); + + app()->singleton('banks', function ($app){ + return Bank::query()->orderBy('name')->get(); + }); + + app()->singleton('templates', function ($app){ + return [ + 'invoice' => [ + 'subject' => EmailTemplateDefaults::emailInvoiceSubject(), + 'body' => EmailTemplateDefaults::emailInvoiceTemplate(), + ], + 'quote' => [ + 'subject' => EmailTemplateDefaults::emailQuoteSubject(), + 'body' => EmailTemplateDefaults::emailQuoteTemplate(), + ], + 'payment' => [ + 'subject' => EmailTemplateDefaults::emailPaymentSubject(), + 'body' => EmailTemplateDefaults::emailPaymentTemplate(), + ], + 'reminder1' => [ + 'subject' => EmailTemplateDefaults::emailReminder1Subject(), + 'body' => EmailTemplateDefaults::emailReminder1Template(), + ], + 'reminder2' => [ + 'subject' => EmailTemplateDefaults::emailReminder2Subject(), + 'body' => EmailTemplateDefaults::emailReminder2Template(), + ], + 'reminder3' => [ + 'subject' => EmailTemplateDefaults::emailReminder3Subject(), + 'body' => EmailTemplateDefaults::emailReminder3Template(), + ], + 'reminder_endless' => [ + 'subject' => EmailTemplateDefaults::emailReminderEndlessSubject(), + 'body' => EmailTemplateDefaults::emailReminderEndlessTemplate(), + ], + 'statement' => [ + 'subject' => EmailTemplateDefaults::emailStatementSubject(), + 'body' => EmailTemplateDefaults::emailStatementTemplate(), + ], + ]; + + }); + } + + public function boot() + { + + } +} \ No newline at end of file diff --git a/config/app.php b/config/app.php index 225f88c32d82..1bef51091a75 100644 --- a/config/app.php +++ b/config/app.php @@ -201,6 +201,7 @@ return [ App\Providers\MultiDBProvider::class, App\Providers\ClientPortalServiceProvider::class, App\Providers\NinjaTranslationServiceProvider::class, + // App\Providers\StaticServiceProvider::class, ], /*