From 7a963cf5b3e37a5af8b4e61f58b5b2a50d77b8d6 Mon Sep 17 00:00:00 2001 From: Milos Holba Date: Thu, 25 Feb 2021 18:11:20 +0100 Subject: [PATCH] fix: VueFileManager default title in mails, ShareCreate / ShareEdit opening via CopyInput --- app/Notifications/ResetPassword.php | 8 +- app/Notifications/SharedSendViaEmail.php | 6 +- public/mix-manifest.json | 27 +- .../js/components/FilesView/ContextMenu.vue | 4 +- .../components/Others/Popup/PopupWrapper.vue | 3 + resources/js/components/Others/ShareEdit.vue | 1 + resources/lang/cn/vuefilemanager.php | 1 + resources/lang/en/vuefilemanager.php | 9 +- resources/lang/sk/vuefilemanager.php | 1 + .../views/vendor/mail/html/button.blade.php | 19 ++ .../views/vendor/mail/html/footer.blade.php | 11 + .../views/vendor/mail/html/header.blade.php | 11 + .../views/vendor/mail/html/layout.blade.php | 54 ++++ .../views/vendor/mail/html/message.blade.php | 34 +++ .../views/vendor/mail/html/panel.blade.php | 14 + .../views/vendor/mail/html/subcopy.blade.php | 7 + .../views/vendor/mail/html/table.blade.php | 3 + .../views/vendor/mail/html/themes/default.css | 289 ++++++++++++++++++ .../views/vendor/mail/text/button.blade.php | 1 + .../views/vendor/mail/text/footer.blade.php | 1 + .../views/vendor/mail/text/header.blade.php | 1 + .../views/vendor/mail/text/layout.blade.php | 9 + .../views/vendor/mail/text/message.blade.php | 27 ++ .../views/vendor/mail/text/panel.blade.php | 1 + .../views/vendor/mail/text/subcopy.blade.php | 1 + .../views/vendor/mail/text/table.blade.php | 1 + 26 files changed, 522 insertions(+), 22 deletions(-) create mode 100644 resources/views/vendor/mail/html/button.blade.php create mode 100644 resources/views/vendor/mail/html/footer.blade.php create mode 100644 resources/views/vendor/mail/html/header.blade.php create mode 100644 resources/views/vendor/mail/html/layout.blade.php create mode 100644 resources/views/vendor/mail/html/message.blade.php create mode 100644 resources/views/vendor/mail/html/panel.blade.php create mode 100644 resources/views/vendor/mail/html/subcopy.blade.php create mode 100644 resources/views/vendor/mail/html/table.blade.php create mode 100644 resources/views/vendor/mail/html/themes/default.css create mode 100644 resources/views/vendor/mail/text/button.blade.php create mode 100644 resources/views/vendor/mail/text/footer.blade.php create mode 100644 resources/views/vendor/mail/text/header.blade.php create mode 100644 resources/views/vendor/mail/text/layout.blade.php create mode 100644 resources/views/vendor/mail/text/message.blade.php create mode 100644 resources/views/vendor/mail/text/panel.blade.php create mode 100644 resources/views/vendor/mail/text/subcopy.blade.php create mode 100644 resources/views/vendor/mail/text/table.blade.php diff --git a/app/Notifications/ResetPassword.php b/app/Notifications/ResetPassword.php index 74320caa..7853c244 100644 --- a/app/Notifications/ResetPassword.php +++ b/app/Notifications/ResetPassword.php @@ -2,6 +2,7 @@ namespace App\Notifications; +use App\Setting; use Illuminate\Bus\Queueable; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Notifications\Messages\MailMessage; @@ -41,14 +42,17 @@ class ResetPassword extends Notification public function toMail($notifiable) { $reset_url = url('/create-new-password?token=' . $this->token); + + $get_name = strval(Setting::where('name', 'app_title')->pluck('value')[0]); + $app_name = $get_name ? $get_name : 'VueFileManager'; return (new MailMessage) - ->subject(__('vuefilemanager.reset_password_subject') . config('vuefilemanager.app_name')) + ->subject(__('vuefilemanager.reset_password_subject') . $app_name) ->greeting(__('vuefilemanager.reset_password_greeting')) ->line(__('vuefilemanager.reset_password_line_1')) ->action(__('vuefilemanager.reset_password_action'), $reset_url) ->line(__('vuefilemanager.reset_password_line_2')) - ->salutation(__('vuefilemanager.salutation') . ', ' . config('vuefilemanager.app_name')); + ->salutation(__('vuefilemanager.salutation') . ', ' . $app_name ); } /** diff --git a/app/Notifications/SharedSendViaEmail.php b/app/Notifications/SharedSendViaEmail.php index 7cd1a2b5..381c5570 100644 --- a/app/Notifications/SharedSendViaEmail.php +++ b/app/Notifications/SharedSendViaEmail.php @@ -2,6 +2,7 @@ namespace App\Notifications; +use App\Setting; use Illuminate\Bus\Queueable; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Support\Facades\Auth; @@ -42,11 +43,14 @@ class SharedSendViaEmail extends Notification */ public function toMail($notifiable) { + $app_name = strval(Setting::where('name', 'app_title')->pluck('value')[0]); + return (new MailMessage) ->subject(__('vuefilemanager.shared_link_email_subject' , ['user' => $this->user->name])) ->greeting(__('vuefilemanager.shared_link_email_greeting')) ->line(__('vuefilemanager.shared_link_email_user', ['user' => $this->user->name, 'email' => $this->user->email])) - ->action(__('vuefilemanager.shared_link_email_link'), url('/shared', ['token' => $this->token])); + ->action(__('vuefilemanager.shared_link_email_link'), url('/shared', ['token' => $this->token])) + ->salutation(__('vuefilemanager.shared_link_email_salutation', ['app_name' => $app_name ? $app_name : 'VueFileManager'])); } /** diff --git a/public/mix-manifest.json b/public/mix-manifest.json index 67a6a07c..dfb8e4e9 100644 --- a/public/mix-manifest.json +++ b/public/mix-manifest.json @@ -29,7 +29,7 @@ "/chunks/environment-setup.js": "/chunks/environment-setup.js?id=a2eed5073e52410cab54", "/chunks/files.js": "/chunks/files.js?id=b738eb9054e663cc32b7", "/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/user-subscription.js": "/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/user-subscription.js?id=b646ec02fb9d6a497e74", - "/chunks/files~chunks/shared-files~chunks/shared-page.js": "/chunks/files~chunks/shared-files~chunks/shared-page.js?id=f61085447efd33a6ebbb", + "/chunks/files~chunks/shared-files~chunks/shared-page.js": "/chunks/files~chunks/shared-files~chunks/shared-page.js?id=6948f858eca208df8919", "/chunks/files~chunks/shared-page.js": "/chunks/files~chunks/shared-page.js?id=47ade53389e84dd64310", "/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=d5e39543eeb619cb5513", "/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=be9304e6ba2c61b6cab3", @@ -75,16 +75,17 @@ "/chunks/user-storage.js": "/chunks/user-storage.js?id=5cfec8a8f8a8aef24ef2", "/chunks/user-subscription.js": "/chunks/user-subscription.js?id=c001bef2d6d5171cb359", "/chunks/users.js": "/chunks/users.js?id=6e68cb068f69fba3199c", - "/js/main.f4dc288436914629fafd.hot-update.js": "/js/main.f4dc288436914629fafd.hot-update.js", - "/js/main.bd2090f4ef672caecf2e.hot-update.js": "/js/main.bd2090f4ef672caecf2e.hot-update.js", - "/js/main.008b0db192aeb3c22084.hot-update.js": "/js/main.008b0db192aeb3c22084.hot-update.js", - "/js/main.4a52cce25e297b4d0c6b.hot-update.js": "/js/main.4a52cce25e297b4d0c6b.hot-update.js", - "/js/main.6579cc274c986e1c4d9d.hot-update.js": "/js/main.6579cc274c986e1c4d9d.hot-update.js", - "/js/main.270fa6b54a1d256881a7.hot-update.js": "/js/main.270fa6b54a1d256881a7.hot-update.js", - "/js/main.1119332dbe1f0e94c697.hot-update.js": "/js/main.1119332dbe1f0e94c697.hot-update.js", - "/js/main.81c3b781acb1f687d3e8.hot-update.js": "/js/main.81c3b781acb1f687d3e8.hot-update.js", - "/js/main.fd3f39d3778dbc1a924b.hot-update.js": "/js/main.fd3f39d3778dbc1a924b.hot-update.js", - "/js/main.4304b0309e0e5d90af4c.hot-update.js": "/js/main.4304b0309e0e5d90af4c.hot-update.js", - "/js/main.7455806185c9030a60d6.hot-update.js": "/js/main.7455806185c9030a60d6.hot-update.js", - "/js/main.f80aa16e9ad85008bee4.hot-update.js": "/js/main.f80aa16e9ad85008bee4.hot-update.js" + "/chunks/files~chunks/shared-files~chunks/shared-page.5b29c242c49c58340f1b.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.5b29c242c49c58340f1b.hot-update.js", + "/js/main.c83f793f7444b47d13a1.hot-update.js": "/js/main.c83f793f7444b47d13a1.hot-update.js", + "/js/main.570d62e24b3d35d39178.hot-update.js": "/js/main.570d62e24b3d35d39178.hot-update.js", + "/js/main.3703274ea498354cc13b.hot-update.js": "/js/main.3703274ea498354cc13b.hot-update.js", + "/js/main.791c5b51283a97951504.hot-update.js": "/js/main.791c5b51283a97951504.hot-update.js", + "/js/main.b6381cda8d15b5db30c9.hot-update.js": "/js/main.b6381cda8d15b5db30c9.hot-update.js", + "/js/main.f0c2877baa9090653d42.hot-update.js": "/js/main.f0c2877baa9090653d42.hot-update.js", + "/js/main.1558a02e34c559d48485.hot-update.js": "/js/main.1558a02e34c559d48485.hot-update.js", + "/js/main.8dcc4df9977a0a7f40f9.hot-update.js": "/js/main.8dcc4df9977a0a7f40f9.hot-update.js", + "/js/main.46a090fef2e2ba1414f6.hot-update.js": "/js/main.46a090fef2e2ba1414f6.hot-update.js", + "/js/main.43e0e910643150929a3d.hot-update.js": "/js/main.43e0e910643150929a3d.hot-update.js", + "/js/main.f95fa4d8a3bdd65a21dd.hot-update.js": "/js/main.f95fa4d8a3bdd65a21dd.hot-update.js", + "/js/main.717716b6c2ed8fbadd46.hot-update.js": "/js/main.717716b6c2ed8fbadd46.hot-update.js" } diff --git a/resources/js/components/FilesView/ContextMenu.vue b/resources/js/components/FilesView/ContextMenu.vue index 9330b94d..a7a0988c 100644 --- a/resources/js/components/FilesView/ContextMenu.vue +++ b/resources/js/components/FilesView/ContextMenu.vue @@ -114,8 +114,8 @@ - - diff --git a/resources/js/components/Others/Popup/PopupWrapper.vue b/resources/js/components/Others/Popup/PopupWrapper.vue index 7e5945e0..8b1e8790 100644 --- a/resources/js/components/Others/Popup/PopupWrapper.vue +++ b/resources/js/components/Others/Popup/PopupWrapper.vue @@ -33,6 +33,9 @@ if (this.name === name) this.isVisibleWrapper = true + + if( (this.name !== name)) + this.isVisibleWrapper = false }) // Open called popup diff --git a/resources/js/components/Others/ShareEdit.vue b/resources/js/components/Others/ShareEdit.vue index 8d154677..9e89bb43 100644 --- a/resources/js/components/Others/ShareEdit.vue +++ b/resources/js/components/Others/ShareEdit.vue @@ -333,6 +333,7 @@ if (args.sentToEmail) this.sendToRecipientsMenu = true + this.isEmailSended = false this.canChangePassword = args.item.shared.protected }) diff --git a/resources/lang/cn/vuefilemanager.php b/resources/lang/cn/vuefilemanager.php index 627117ba..83715e14 100644 --- a/resources/lang/cn/vuefilemanager.php +++ b/resources/lang/cn/vuefilemanager.php @@ -12,6 +12,7 @@ return [ 'shared_link_email_greeting' => 'Hello!', 'shared_link_email_user' => ':user (:email) send you a link to shared files.', 'shared_link_email_link' => 'Open your files', + 'shared_link_email_salutation' => 'Regards, :app_name', // Reset password email 'reset_password_greeting' => 'Hello!', diff --git a/resources/lang/en/vuefilemanager.php b/resources/lang/en/vuefilemanager.php index c0717c38..3095fb51 100644 --- a/resources/lang/en/vuefilemanager.php +++ b/resources/lang/en/vuefilemanager.php @@ -8,10 +8,11 @@ return [ 'home' => 'Home', //Shared link email message - 'shared_link_email_subject' => '🙋 :user share some files with you. Look at it!', - 'shared_link_email_greeting' => 'Hello!', - 'shared_link_email_user' => ':user (:email) send you a link to shared files.', - 'shared_link_email_link' => 'Open your files', + 'shared_link_email_subject' => '🙋 :user share some files with you. Look at it!', + 'shared_link_email_greeting' => 'Hello!', + 'shared_link_email_user' => ':user (:email) send you a link to shared files.', + 'shared_link_email_link' => 'Open your files', + 'shared_link_email_salutation' => 'Regards, :app_name', // Reset password email 'reset_password_greeting' => 'Hello!', diff --git a/resources/lang/sk/vuefilemanager.php b/resources/lang/sk/vuefilemanager.php index 0d88dc5f..ba130ab0 100644 --- a/resources/lang/sk/vuefilemanager.php +++ b/resources/lang/sk/vuefilemanager.php @@ -12,6 +12,7 @@ return [ 'shared_link_email_greeting' => 'Ahoj!', 'shared_link_email_user' => ':user (:email) vám posiela odkaz pre zdieľané súbory.', 'shared_link_email_link' => 'Vaše súbory', + 'shared_link_email_salutation' => 'S pozdravom, :app_name', // Reset password email 'reset_password_greeting' => 'Ahoj!', diff --git a/resources/views/vendor/mail/html/button.blade.php b/resources/views/vendor/mail/html/button.blade.php new file mode 100644 index 00000000..e74fe55a --- /dev/null +++ b/resources/views/vendor/mail/html/button.blade.php @@ -0,0 +1,19 @@ + + + + + diff --git a/resources/views/vendor/mail/html/footer.blade.php b/resources/views/vendor/mail/html/footer.blade.php new file mode 100644 index 00000000..3ff41f89 --- /dev/null +++ b/resources/views/vendor/mail/html/footer.blade.php @@ -0,0 +1,11 @@ + + + + + + + + + diff --git a/resources/views/vendor/mail/html/header.blade.php b/resources/views/vendor/mail/html/header.blade.php new file mode 100644 index 00000000..fa1875ca --- /dev/null +++ b/resources/views/vendor/mail/html/header.blade.php @@ -0,0 +1,11 @@ + + + +@if (trim($slot) === 'Laravel') + +@else +{{ $slot }} +@endif + + + diff --git a/resources/views/vendor/mail/html/layout.blade.php b/resources/views/vendor/mail/html/layout.blade.php new file mode 100644 index 00000000..02a54e2d --- /dev/null +++ b/resources/views/vendor/mail/html/layout.blade.php @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + diff --git a/resources/views/vendor/mail/html/message.blade.php b/resources/views/vendor/mail/html/message.blade.php new file mode 100644 index 00000000..1ff6d7a2 --- /dev/null +++ b/resources/views/vendor/mail/html/message.blade.php @@ -0,0 +1,34 @@ +pluck('value')[0]); + +?> + +@component('mail::layout') +{{-- Header --}} +@slot('header') +@component('mail::header', ['url' => config('app.url')]) +{{ $app_name ? $app_name : 'VueFileManager' }} +@endcomponent +@endslot + +{{-- Body --}} +{{ $slot }} + +{{-- Subcopy --}} +@isset($subcopy) +@slot('subcopy') +@component('mail::subcopy') +{{ $subcopy }} +@endcomponent +@endslot +@endisset + +{{-- Footer --}} +@slot('footer') +@component('mail::footer') +© {{ date('Y') }} {{ $app_name ? $app_name : 'VueFileManager' }}. @lang('All rights reserved.') +@endcomponent +@endslot +@endcomponent diff --git a/resources/views/vendor/mail/html/panel.blade.php b/resources/views/vendor/mail/html/panel.blade.php new file mode 100644 index 00000000..2975a60a --- /dev/null +++ b/resources/views/vendor/mail/html/panel.blade.php @@ -0,0 +1,14 @@ + + + + + + diff --git a/resources/views/vendor/mail/html/subcopy.blade.php b/resources/views/vendor/mail/html/subcopy.blade.php new file mode 100644 index 00000000..790ce6c2 --- /dev/null +++ b/resources/views/vendor/mail/html/subcopy.blade.php @@ -0,0 +1,7 @@ + + + + + diff --git a/resources/views/vendor/mail/html/table.blade.php b/resources/views/vendor/mail/html/table.blade.php new file mode 100644 index 00000000..a5f3348b --- /dev/null +++ b/resources/views/vendor/mail/html/table.blade.php @@ -0,0 +1,3 @@ +
+{{ Illuminate\Mail\Markdown::parse($slot) }} +
diff --git a/resources/views/vendor/mail/html/themes/default.css b/resources/views/vendor/mail/html/themes/default.css new file mode 100644 index 00000000..350fb838 --- /dev/null +++ b/resources/views/vendor/mail/html/themes/default.css @@ -0,0 +1,289 @@ +/* Base */ + +body, +body *:not(html):not(style):not(br):not(tr):not(code) { + box-sizing: border-box; + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, + 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; + position: relative; +} + +body { + -webkit-text-size-adjust: none; + background-color: #ffffff; + color: #718096; + height: 100%; + line-height: 1.4; + margin: 0; + padding: 0; + width: 100% !important; +} + +p, +ul, +ol, +blockquote { + line-height: 1.4; + text-align: left; +} + +a { + color: #3869d4; +} + +a img { + border: none; +} + +/* Typography */ + +h1 { + color: #3d4852; + font-size: 18px; + font-weight: bold; + margin-top: 0; + text-align: left; +} + +h2 { + font-size: 16px; + font-weight: bold; + margin-top: 0; + text-align: left; +} + +h3 { + font-size: 14px; + font-weight: bold; + margin-top: 0; + text-align: left; +} + +p { + font-size: 16px; + line-height: 1.5em; + margin-top: 0; + text-align: left; +} + +p.sub { + font-size: 12px; +} + +img { + max-width: 100%; +} + +/* Layout */ + +.wrapper { + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; + background-color: #edf2f7; + margin: 0; + padding: 0; + width: 100%; +} + +.content { + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; + margin: 0; + padding: 0; + width: 100%; +} + +/* Header */ + +.header { + padding: 25px 0; + text-align: center; +} + +.header a { + color: #3d4852; + font-size: 19px; + font-weight: bold; + text-decoration: none; +} + +/* Logo */ + +.logo { + height: 75px; + width: 75px; +} + +/* Body */ + +.body { + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; + background-color: #edf2f7; + border-bottom: 1px solid #edf2f7; + border-top: 1px solid #edf2f7; + margin: 0; + padding: 0; + width: 100%; +} + +.inner-body { + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 570px; + background-color: #ffffff; + border-color: #e8e5ef; + border-radius: 2px; + border-width: 1px; + box-shadow: 0 2px 0 rgba(0, 0, 150, 0.025), 2px 4px 0 rgba(0, 0, 150, 0.015); + margin: 0 auto; + padding: 0; + width: 570px; +} + +/* Subcopy */ + +.subcopy { + border-top: 1px solid #e8e5ef; + margin-top: 25px; + padding-top: 25px; +} + +.subcopy p { + font-size: 14px; +} + +/* Footer */ + +.footer { + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 570px; + margin: 0 auto; + padding: 0; + text-align: center; + width: 570px; +} + +.footer p { + color: #b0adc5; + font-size: 12px; + text-align: center; +} + +.footer a { + color: #b0adc5; + text-decoration: underline; +} + +/* Tables */ + +.table table { + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; + margin: 30px auto; + width: 100%; +} + +.table th { + border-bottom: 1px solid #edeff2; + margin: 0; + padding-bottom: 8px; +} + +.table td { + color: #74787e; + font-size: 15px; + line-height: 18px; + margin: 0; + padding: 10px 0; +} + +.content-cell { + max-width: 100vw; + padding: 32px; +} + +/* Buttons */ + +.action { + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; + margin: 30px auto; + padding: 0; + text-align: center; + width: 100%; +} + +.button { + -webkit-text-size-adjust: none; + border-radius: 4px; + color: #fff; + display: inline-block; + overflow: hidden; + text-decoration: none; +} + +.button-blue, +.button-primary { + background-color: #2d3748; + border-bottom: 8px solid #2d3748; + border-left: 18px solid #2d3748; + border-right: 18px solid #2d3748; + border-top: 8px solid #2d3748; +} + +.button-green, +.button-success { + background-color: #48bb78; + border-bottom: 8px solid #48bb78; + border-left: 18px solid #48bb78; + border-right: 18px solid #48bb78; + border-top: 8px solid #48bb78; +} + +.button-red, +.button-error { + background-color: #e53e3e; + border-bottom: 8px solid #e53e3e; + border-left: 18px solid #e53e3e; + border-right: 18px solid #e53e3e; + border-top: 8px solid #e53e3e; +} + +/* Panels */ + +.panel { + border-left: #2d3748 solid 4px; + margin: 21px 0; +} + +.panel-content { + background-color: #edf2f7; + color: #718096; + padding: 16px; +} + +.panel-content p { + color: #718096; +} + +.panel-item { + padding: 0; +} + +.panel-item p:last-of-type { + margin-bottom: 0; + padding-bottom: 0; +} + +/* Utilities */ + +.break-all { + word-break: break-all; +} diff --git a/resources/views/vendor/mail/text/button.blade.php b/resources/views/vendor/mail/text/button.blade.php new file mode 100644 index 00000000..97444ebd --- /dev/null +++ b/resources/views/vendor/mail/text/button.blade.php @@ -0,0 +1 @@ +{{ $slot }}: {{ $url }} diff --git a/resources/views/vendor/mail/text/footer.blade.php b/resources/views/vendor/mail/text/footer.blade.php new file mode 100644 index 00000000..3338f620 --- /dev/null +++ b/resources/views/vendor/mail/text/footer.blade.php @@ -0,0 +1 @@ +{{ $slot }} diff --git a/resources/views/vendor/mail/text/header.blade.php b/resources/views/vendor/mail/text/header.blade.php new file mode 100644 index 00000000..aaa3e575 --- /dev/null +++ b/resources/views/vendor/mail/text/header.blade.php @@ -0,0 +1 @@ +[{{ $slot }}]({{ $url }}) diff --git a/resources/views/vendor/mail/text/layout.blade.php b/resources/views/vendor/mail/text/layout.blade.php new file mode 100644 index 00000000..9378baa0 --- /dev/null +++ b/resources/views/vendor/mail/text/layout.blade.php @@ -0,0 +1,9 @@ +{!! strip_tags($header) !!} + +{!! strip_tags($slot) !!} +@isset($subcopy) + +{!! strip_tags($subcopy) !!} +@endisset + +{!! strip_tags($footer) !!} diff --git a/resources/views/vendor/mail/text/message.blade.php b/resources/views/vendor/mail/text/message.blade.php new file mode 100644 index 00000000..1ae9ed8f --- /dev/null +++ b/resources/views/vendor/mail/text/message.blade.php @@ -0,0 +1,27 @@ +@component('mail::layout') + {{-- Header --}} + @slot('header') + @component('mail::header', ['url' => config('app.url')]) + {{ config('app.name') }} + @endcomponent + @endslot + + {{-- Body --}} + {{ $slot }} + + {{-- Subcopy --}} + @isset($subcopy) + @slot('subcopy') + @component('mail::subcopy') + {{ $subcopy }} + @endcomponent + @endslot + @endisset + + {{-- Footer --}} + @slot('footer') + @component('mail::footer') + © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.') + @endcomponent + @endslot +@endcomponent diff --git a/resources/views/vendor/mail/text/panel.blade.php b/resources/views/vendor/mail/text/panel.blade.php new file mode 100644 index 00000000..3338f620 --- /dev/null +++ b/resources/views/vendor/mail/text/panel.blade.php @@ -0,0 +1 @@ +{{ $slot }} diff --git a/resources/views/vendor/mail/text/subcopy.blade.php b/resources/views/vendor/mail/text/subcopy.blade.php new file mode 100644 index 00000000..3338f620 --- /dev/null +++ b/resources/views/vendor/mail/text/subcopy.blade.php @@ -0,0 +1 @@ +{{ $slot }} diff --git a/resources/views/vendor/mail/text/table.blade.php b/resources/views/vendor/mail/text/table.blade.php new file mode 100644 index 00000000..3338f620 --- /dev/null +++ b/resources/views/vendor/mail/text/table.blade.php @@ -0,0 +1 @@ +{{ $slot }}