DONE: layout letter with letterhead and footer, notification for newly...

This commit is contained in:
ISMAIL MASSERAN
2026-06-28 02:16:49 +00:00
parent 94ecbe5887
commit 034ecf947f
400 changed files with 29802 additions and 5446 deletions
+11
View File
@@ -122,4 +122,15 @@ return [
'max_attempts' => (int) env('EMAIL_VERIFICATION_OTP_MAX_ATTEMPTS', 5),
],
/*
|--------------------------------------------------------------------------
| Password Reset OTP
|--------------------------------------------------------------------------
*/
'password_reset' => [
'expiry_minutes' => (int) env('PASSWORD_RESET_OTP_EXPIRY_MINUTES', 10),
'max_attempts' => (int) env('PASSWORD_RESET_OTP_MAX_ATTEMPTS', 5),
],
];
+36
View File
@@ -0,0 +1,36 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Node / Puppeteer paths
|--------------------------------------------------------------------------
|
| Browsershot shells out to Node and uses Puppeteer from node_modules.
| node_module_path should point to the directory that contains node_modules/.
|
*/
'node_binary' => env('BROWSERSHOT_NODE_BINARY'),
'npm_binary' => env('BROWSERSHOT_NPM_BINARY'),
'node_module_path' => env('BROWSERSHOT_NODE_MODULE_PATH', base_path()),
'chrome_path' => env('BROWSERSHOT_CHROME_PATH'),
/*
|--------------------------------------------------------------------------
| Chrome sandbox
|--------------------------------------------------------------------------
|
| Disable sandbox in Docker/Linux containers where Chrome cannot run sandboxed.
|
*/
'no_sandbox' => env('BROWSERSHOT_NO_SANDBOX', false),
'timeout' => (int) env('BROWSERSHOT_TIMEOUT', 60),
];
+3 -1
View File
@@ -20,13 +20,15 @@ return [
'allowed_methods' => ['*'],
'allowed_origins' => [
'http://localhost',
'http://127.0.0.1',
'http://localhost:5173',
'http://127.0.0.1:5173',
'http://20.11.32.49',
'http://20.11.32.50',
],
'allowed_origins_patterns' => ['*'],
'allowed_origins_patterns' => [],
'allowed_headers' => ['*'],
+85
View File
@@ -0,0 +1,85 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Page
|--------------------------------------------------------------------------
|
| Single source of truth for letter page size and margins.
| Margins are in millimetres used by Browsershot PDF and the Blade layout.
|
*/
'page' => [
'format' => 'A4',
'width_mm' => 210,
'height_mm' => 297,
'margin_top_mm' => 20,
'margin_right_mm' => 10,
'margin_bottom_mm' => 1,
'margin_left_mm' => 10,
],
/*
|--------------------------------------------------------------------------
| Content
|--------------------------------------------------------------------------
*/
'content' => [
'padding_x_mm' => 10,
],
/*
|--------------------------------------------------------------------------
| Typography
|--------------------------------------------------------------------------
*/
'typography' => [
'font_family' => 'Arial, Helvetica, sans-serif',
'font_size' => '11pt',
'line_height' => 1.5,
'body_color' => '#1a1a1a',
'signatory_title_size' => '10pt',
'signatory_title_color' => '#333333',
'footer_font_size' => '10pt',
'footer_line_height' => 1.45,
'letterhead_registration_size' => '9pt',
],
/*
|--------------------------------------------------------------------------
| Spacing (pixels in CSS)
|--------------------------------------------------------------------------
*/
'spacing' => [
'letterhead_margin_bottom' => 20,
'meta_margin_bottom' => 20,
'recipient_margin_bottom' => 16,
'subject_margin_bottom' => 16,
'body_margin_bottom' => 20,
'body_paragraph_margin_bottom' => 10,
'signature_block_margin_bottom' => 20,
'signature_company_margin_bottom' => 16,
'signature_space_height' => 48,
'logo_height' => 80,
],
/*
|--------------------------------------------------------------------------
| Brand colours
|--------------------------------------------------------------------------
*/
'colors' => [
'blue' => '#0e579b',
'orange' => '#d35400',
'white' => '#ffffff',
'black' => '#000000',
],
];
+11
View File
@@ -115,4 +115,15 @@ return [
'name' => env('MAIL_FROM_NAME', 'Example'),
],
/*
|--------------------------------------------------------------------------
| Email Logo
|--------------------------------------------------------------------------
|
| Path to the logo embedded in transactional email templates.
|
*/
'logo_path' => env('MAIL_LOGO_PATH', public_path('images/logo/logo-kopkb-letterhead.svg')),
];