Added HTML formatting to system emails

This commit is contained in:
Hillel Coren 2015-12-17 20:03:32 +02:00
parent b57866456c
commit 14152fd3f1
31 changed files with 631 additions and 163 deletions

View File

@ -880,7 +880,7 @@ class AccountController extends BaseController
$user = Auth::user(); $user = Auth::user();
$this->userMailer->sendConfirmation($user); $this->userMailer->sendConfirmation($user);
return Redirect::to('/settings/' . ACCOUNT_COMPANY_DETAILS)->with('message', trans('texts.confirmation_resent')); return Redirect::to('/settings/' . ACCOUNT_USER_DETAILS)->with('message', trans('texts.confirmation_resent'));
} }
public function redirectLegacy($section, $subSection = false) public function redirectLegacy($section, $subSection = false)

View File

@ -437,6 +437,10 @@ if (!defined('CONTACT_EMAIL')) {
define('NINJA_VERSION', '2.4.7'); define('NINJA_VERSION', '2.4.7');
define('NINJA_DATE', '2000-01-01'); define('NINJA_DATE', '2000-01-01');
define('SOCIAL_LINK_FACEBOOK', 'https://www.facebook.com/invoiceninja');
define('SOCIAL_LINK_TWITTER', 'https://twitter.com/invoiceninja');
define('SOCIAL_LINK_GITHUB', 'https://github.com/invoiceninja/invoiceninja/');
define('NINJA_FROM_EMAIL', 'maildelivery@invoiceninja.com'); define('NINJA_FROM_EMAIL', 'maildelivery@invoiceninja.com');
define('RELEASES_URL', 'https://trello.com/b/63BbiVVe/invoice-ninja'); define('RELEASES_URL', 'https://trello.com/b/63BbiVVe/invoice-ninja');
define('ZAPIER_URL', 'https://zapier.com/zapbook/invoice-ninja'); define('ZAPIER_URL', 'https://zapier.com/zapbook/invoice-ninja');

View File

@ -209,7 +209,6 @@ class ContactMailer extends Mailer
} }
$data = [ $data = [
'account' => trans('texts.email_from'),
'client' => $name, 'client' => $name,
'amount' => Utils::formatMoney($amount, DEFAULT_CURRENCY, DEFAULT_COUNTRY), 'amount' => Utils::formatMoney($amount, DEFAULT_CURRENCY, DEFAULT_COUNTRY),
'license' => $license 'license' => $license

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@ -950,5 +950,33 @@
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -952,4 +952,32 @@ return array(
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -265,7 +265,7 @@ return array(
'email_signature' => 'Regards,', 'email_signature' => 'Regards,',
'email_from' => 'The Invoice Ninja Team', 'email_from' => 'The Invoice Ninja Team',
'user_email_footer' => 'To adjust your email notification settings please visit '.SITE_URL.'/settings/notifications', 'user_email_footer' => 'To adjust your email notification settings please visit '.SITE_URL.'/settings/notifications',
'invoice_link_message' => 'To view your client invoice click the link below:', 'invoice_link_message' => 'To view the invoice click the link below:',
'notification_invoice_paid_subject' => 'Invoice :invoice was paid by :client', 'notification_invoice_paid_subject' => 'Invoice :invoice was paid by :client',
'notification_invoice_sent_subject' => 'Invoice :invoice was sent to :client', 'notification_invoice_sent_subject' => 'Invoice :invoice was sent to :client',
'notification_invoice_viewed_subject' => 'Invoice :invoice was viewed by :client', 'notification_invoice_viewed_subject' => 'Invoice :invoice was viewed by :client',
@ -977,5 +977,8 @@ return array(
'token_expired' => 'Validation token was expired. Please try again.', 'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link', 'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -928,5 +928,32 @@ return array(
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -949,4 +949,33 @@ return array(
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -942,5 +942,34 @@ return array(
'publishable_key' => 'Publishable Key', 'publishable_key' => 'Publishable Key',
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -943,4 +943,33 @@ return array(
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -944,5 +944,34 @@ return array(
'publishable_key' => 'Publishable Key', 'publishable_key' => 'Publishable Key',
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -951,6 +951,35 @@ return array(
'publishable_key' => 'Publishable Key', 'publishable_key' => 'Publishable Key',
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -950,4 +950,32 @@ return array(
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -945,5 +945,33 @@ return array(
'publishable_key' => 'Publishable Key', 'publishable_key' => 'Publishable Key',
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -941,4 +941,33 @@ return array(
'publishable_key' => 'Publishable Key', 'publishable_key' => 'Publishable Key',
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -271,8 +271,7 @@ return array(
'notification_invoice_sent' => 'Följande kund :client har mailats fakturan :invoice på :amount.', 'notification_invoice_sent' => 'Följande kund :client har mailats fakturan :invoice på :amount.',
'notification_invoice_viewed' => 'Följande kund :client har sett fakturan :invoice på :amount.', 'notification_invoice_viewed' => 'Följande kund :client har sett fakturan :invoice på :amount.',
'reset_password' => 'Du kan återställa ditt lösenord genom att klicka på länken nedan:', 'reset_password' => 'Du kan återställa ditt lösenord genom att klicka på länken nedan:',
'reset_password_footer' => 'Om du inte begärt en återställning av ditt lösenord så var snäll och maila vår support: ' . CONTACT_EMAIL, 'reset_password_footer' => 'Om du inte begärt en återställning av ditt lösenord så var snäll och maila vår support: '.CONTACT_EMAIL,
// Payment page // Payment page
'secure_payment' => 'Säker betalning', 'secure_payment' => 'Säker betalning',
@ -300,7 +299,7 @@ return array(
'logout' => 'Logga ut', 'logout' => 'Logga ut',
'sign_up_to_save' => 'Registrera dig för att spara ditt arbete', 'sign_up_to_save' => 'Registrera dig för att spara ditt arbete',
'agree_to_terms' =>'Jag godkänner Invoice Ninja :terms', 'agree_to_terms' => 'Jag godkänner Invoice Ninja :terms',
'terms_of_service' => 'Villkor för tjänsten', 'terms_of_service' => 'Villkor för tjänsten',
'email_taken' => 'E-postadressen är redan registrerad', 'email_taken' => 'E-postadressen är redan registrerad',
'working' => 'Jobbar', 'working' => 'Jobbar',
@ -419,7 +418,7 @@ return array(
'active' => 'Aktiv', 'active' => 'Aktiv',
'pending' => 'Avvaktar', 'pending' => 'Avvaktar',
'deleted_user' => 'Användare borttagen', 'deleted_user' => 'Användare borttagen',
'limit_users' => 'Ledsen, men du får skapa max ' . MAX_NUM_USERS . ' användare', 'limit_users' => 'Ledsen, men du får skapa max '.MAX_NUM_USERS.' användare',
'confirm_email_invoice' => 'Är du säker på att du vill maila denna fakturan?', 'confirm_email_invoice' => 'Är du säker på att du vill maila denna fakturan?',
'confirm_email_quote' => 'Är du säker på att du vill maila denna offerten?', 'confirm_email_quote' => 'Är du säker på att du vill maila denna offerten?',
@ -486,7 +485,7 @@ return array(
'restored_client' => 'Kund återställd', 'restored_client' => 'Kund återställd',
'restored_payment' => 'betalning återställd', 'restored_payment' => 'betalning återställd',
'restored_credit' => 'Kreditfaktura återställd', 'restored_credit' => 'Kreditfaktura återställd',
'reason_for_canceling' => 'Hjälp oss bli bättre genom att berätta varför du lämnar oss.', 'reason_for_canceling' => 'Hjälp oss bli bättre genom att berätta varför du lämnar oss.',
'discount_percent' => 'Procent', 'discount_percent' => 'Procent',
'discount_amount' => 'Summa', 'discount_amount' => 'Summa',
@ -601,7 +600,7 @@ return array(
'view_documentation' => 'View Documentation', 'view_documentation' => 'View Documentation',
'app_title' => 'Free Open-Source Online Invoicing', 'app_title' => 'Free Open-Source Online Invoicing',
'app_description' => 'Invoice Ninja is a free, open-source solution for invoicing and billing customers. With Invoice Ninja, you can easily build and send beautiful invoices from any device that has access to the web. Your clients can print your invoices, download them as pdf files, and even pay you online from within the system.', 'app_description' => 'Invoice Ninja is a free, open-source solution for invoicing and billing customers. With Invoice Ninja, you can easily build and send beautiful invoices from any device that has access to the web. Your clients can print your invoices, download them as pdf files, and even pay you online from within the system.',
'rows' => 'rows', 'rows' => 'rows',
'www' => 'www', 'www' => 'www',
'logo' => 'Logo', 'logo' => 'Logo',
@ -671,7 +670,7 @@ return array(
'payment_type_dwolla' => 'Dwolla', 'payment_type_dwolla' => 'Dwolla',
'gateway_help_43' => ':link to sign up for Dwolla.', 'gateway_help_43' => ':link to sign up for Dwolla.',
'partial_value' => 'Must be greater than zero and less than the total', 'partial_value' => 'Must be greater than zero and less than the total',
'more_actions' => 'More Actions', 'more_actions' => 'More Actions',
'pro_plan_title' => 'NINJA PRO', 'pro_plan_title' => 'NINJA PRO',
'pro_plan_call_to_action' => 'Upgrade Now!', 'pro_plan_call_to_action' => 'Upgrade Now!',
@ -737,7 +736,7 @@ return array(
'recent_payments' => 'Recent Payments', 'recent_payments' => 'Recent Payments',
'outstanding' => 'Outstanding', 'outstanding' => 'Outstanding',
'manage_companies' => 'Manage Companies', 'manage_companies' => 'Manage Companies',
'total_revenue' => 'Total Revenue', 'total_revenue' => 'Total Revenue',
'current_user' => 'Current User', 'current_user' => 'Current User',
'new_recurring_invoice' => 'New Recurring Invoice', 'new_recurring_invoice' => 'New Recurring Invoice',
@ -763,7 +762,7 @@ return array(
'status_partial' => 'Partial', 'status_partial' => 'Partial',
'status_paid' => 'Paid', 'status_paid' => 'Paid',
'show_line_item_tax' => 'Display <b>line item taxes</b> inline', 'show_line_item_tax' => 'Display <b>line item taxes</b> inline',
'iframe_url' => 'Website', 'iframe_url' => 'Website',
'iframe_url_help1' => 'Copy the following code to a page on your site.', 'iframe_url_help1' => 'Copy the following code to a page on your site.',
'iframe_url_help2' => 'You can test the feature by clicking \'View as recipient\' for an invoice.', 'iframe_url_help2' => 'You can test the feature by clicking \'View as recipient\' for an invoice.',
@ -887,7 +886,7 @@ return array(
'default_invoice_footer' => 'Default Invoice Footer', 'default_invoice_footer' => 'Default Invoice Footer',
'quote_footer' => 'Quote Footer', 'quote_footer' => 'Quote Footer',
'free' => 'Free', 'free' => 'Free',
'quote_is_approved' => 'This quote is approved', 'quote_is_approved' => 'This quote is approved',
'apply_credit' => 'Apply Credit', 'apply_credit' => 'Apply Credit',
'system_settings' => 'System Settings', 'system_settings' => 'System Settings',
@ -948,5 +947,32 @@ return array(
'secret_key' => 'Secret Key', 'secret_key' => 'Secret Key',
'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process', 'missing_publishable_key' => 'Set your Stripe publishable key for an improved checkout process',
'email_design' => 'Email Design',
'due_by' => 'Due by :date',
'enable_email_markup' => 'Enable Markup',
'enable_email_markup_help' => 'Make it easier for your clients to pay you by adding schema.org markup to your emails.',
'template_help_title' => 'Templates Help',
'template_help_1' => 'Available variables:',
'email_design_id' => 'Email Style',
'email_design_help' => 'Make your emails look more professional with HTML layouts',
'plain' => 'Plain',
'light' => 'Light',
'dark' => 'Dark',
'industry_help' => 'Used to provide comparisons against the averages of companies of similar size and industry.',
'subdomain_help' => 'Customize the invoice link subdomain or display the invoice on your own website.',
'invoice_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the invoice number.',
'quote_number_help' => 'Specify a prefix or use a custom pattern to dynamically set the quote number.',
'custom_client_fields_helps' => 'Add a text input to the client create/edit page and display the label and value on the PDF.',
'custom_account_fields_helps' => 'Add the label and value to the company details section of the PDF.',
'custom_invoice_fields_helps' => 'Add a text input to the invoice create/edit page and display the label and value on the PDF.',
'custom_invoice_charges_helps' => 'Add a text input to the invoice create/edit page and include the charge in the invoice subtotals.',
'color_help' => 'Note: the primary color is also used in the client portal and custom email designs.',
'token_expired' => 'Validation token was expired. Please try again.',
'invoice_link' => 'Invoice Link',
'button_confirmation_message' => 'Click to confirm your email address.',
'confirm' => 'Confirm',
'email_preferences' => 'Email Preferences',
); );

View File

@ -1,25 +1,29 @@
<!DOCTYPE html> @extends('emails.master_user')
<html lang="{{ App::getLocale() }}">
<head>
<meta charset="utf-8">
</head>
<body>
@if (!$invitationMessage)
@include('emails.confirm_action', ['user' => $user])
@endif
<h1>{{ trans('texts.confirmation_header') }}</h1> @section('markup')
@if (!$invitationMessage)
@include('emails.confirm_action', ['user' => $user])
@endif
@stop
<p> @section('body')
{{ $invitationMessage . trans('texts.confirmation_message') }}<br/> <h2>{{ trans('texts.confirmation_header') }}</h2>
<a href='{!! URL::to("user/confirm/{$user->confirmation_code}") !!}'> <div>
{!! URL::to("user/confirm/{$user->confirmation_code}")!!} {{ $invitationMessage . trans('texts.button_confirmation_message') }}
</a> </div>
<p/> &nbsp;
<div>
{{ trans('texts.email_signature') }}<br/> <center>
{{ trans('texts.email_from') }} @include('partials.email_button', [
</p> 'link' => URL::to("user/confirm/{$user->confirmation_code}"),
'field' => 'confirm',
</body> 'color' => '#36c157',
</html> ])
</center>
</div>
&nbsp;
<div>
{{ trans('texts.email_signature') }}<br/>
{{ trans('texts.email_from') }}
</div>
@stop

View File

@ -1,5 +1,11 @@
@extends('emails.master') @extends('emails.master')
@section('markup')
@if ($account->enable_email_markup)
@include('emails.partials.client_view_action')
@endif
@stop
@section('content') @section('content')
<tr> <tr>
<td bgcolor="#F4F5F5" style="border-collapse: collapse;">&nbsp;</td> <td bgcolor="#F4F5F5" style="border-collapse: collapse;">&nbsp;</td>
@ -43,4 +49,21 @@
<div style="font-size: 18px; margin: 42px 40px 42px; padding: 0;">{!! $body !!}</div> <div style="font-size: 18px; margin: 42px 40px 42px; padding: 0;">{!! $body !!}</div>
</td> </td>
</tr> </tr>
@stop
@section('footer')
<p style="color: #A7A6A6; font-size: 13px; line-height: 18px; margin: 0 0 7px; padding: 0;">
{{ $account->address1 }}
@if ($account->address1 && $account->getCityState())
-
@endif
{{ $account->getCityState() }}
@if ($account->address1 || $account->getCityState())
<br />
@endif
@if ($account->website)
<strong><a href="{{ $account->present()->website }}" style="color: #A7A6A6; text-decoration: none; font-weight: bold; font-size: 10px;">{{ $account->website }}</a></strong>
@endif
</p>
@stop @stop

View File

@ -1,5 +1,11 @@
@extends('emails.master') @extends('emails.master')
@section('markup')
@if ($account->enable_email_markup)
@include('emails.partials.client_view_action')
@endif
@stop
@section('content') @section('content')
<tr> <tr>
<td bgcolor="#F4F5F5" style="border-collapse: collapse;">&nbsp;</td> <td bgcolor="#F4F5F5" style="border-collapse: collapse;">&nbsp;</td>
@ -43,4 +49,21 @@
<div style="font-size: 18px; margin: 42px 40px 42px; padding: 0;">{!! $body !!}</div> <div style="font-size: 18px; margin: 42px 40px 42px; padding: 0;">{!! $body !!}</div>
</td> </td>
</tr> </tr>
@stop
@section('footer')
<p style="color: #A7A6A6; font-size: 13px; line-height: 18px; margin: 0 0 7px; padding: 0;">
{{ $account->address1 }}
@if ($account->address1 && $account->getCityState())
-
@endif
{{ $account->getCityState() }}
@if ($account->address1 || $account->getCityState())
<br />
@endif
@if ($account->website)
<strong><a href="{{ $account->present()->website }}" style="color: #A7A6A6; text-decoration: none; font-weight: bold; font-size: 10px;">{{ $account->website }}</a></strong>
@endif
</p>
@stop @stop

View File

@ -1,17 +1,20 @@
<!DOCTYPE html> @extends('emails.master_user')
<html lang="{{ App::getLocale() }}">
<head>
<meta charset="utf-8">
</head>
<body>
{{ trans('texts.email_salutation', ['name' => $userName]) }} <p/>
{{ trans("texts.notification_{$entityType}_bounced", ['contact' => $contactName, 'invoice' => $invoiceNumber]) }} <p/> @section('body')
<div>
{{ $emailError }}<p/> {{ trans('texts.email_salutation', ['name' => $userName]) }}
</div>
{{ trans('texts.email_signature') }} <br/> &nbsp;
{{ trans('texts.email_from') }} <p/> <div>
{{ trans("texts.notification_{$entityType}_bounced", ['contact' => $contactName, 'invoice' => $invoiceNumber]) }}
</body> </div>
</html> &nbsp;
<div>
{{ $emailError }}
</div>
&nbsp;
<div>
{{ trans('texts.email_signature') }} <br/>
{{ trans('texts.email_from') }}
</div>
@stop

View File

@ -1,23 +1,32 @@
<!DOCTYPE html> @extends('emails.master_user')
<html lang="{{ App::getLocale() }}">
<head>
<meta charset="utf-8">
</head>
<body>
@if ($account->enable_email_markup)
@include('emails.partials.user_view_action')
@endif
{{ trans('texts.email_salutation', ['name' => $userName]) }} <p/>
{{ trans("texts.notification_{$entityType}_paid", ['amount' => $paymentAmount, 'client' => $clientName, 'invoice' => $invoiceNumber]) }} <p/> @section('markup')
@if ($account->enable_email_markup)
@include('emails.partials.user_view_action')
@endif
@stop
{{ trans("texts.{$entityType}_link_message") }} <br/> @section('body')
<a href="{{ $invoiceLink }}">{{ $invoiceLink }}</a><p/> <div>
{{ trans('texts.email_salutation', ['name' => $userName]) }}
{{ trans('texts.email_signature') }} <br/> </div>
{{ trans('texts.email_from') }} <p/> &nbsp;
{{ trans('texts.user_email_footer') }} <p/> <div>
{{ trans("texts.notification_{$entityType}_paid", ['amount' => $paymentAmount, 'client' => $clientName, 'invoice' => $invoiceNumber]) }}
</div>
</body> &nbsp;
</html> <div>
<center>
@include('partials.email_button', [
'link' => $invoiceLink,
'field' => "view_{$entityType}",
'color' => '#0b4d78',
])
</center>
</div>
&nbsp;
<div>
{{ trans('texts.email_signature') }} <br/>
{{ trans('texts.email_from') }}
</div>
@stop

View File

@ -1,20 +1,32 @@
<!DOCTYPE html> @extends('emails.master_user')
<html lang="{{ App::getLocale() }}">
<head>
<meta charset="utf-8">
</head>
<body>
@if ($account->enable_email_markup)
@include('emails.partials.user_view_action')
@endif
{{ trans('texts.email_salutation', ['name' => $userName]) }} <p/>
{{ trans("texts.notification_{$entityType}_sent", ['amount' => $invoiceAmount, 'client' => $clientName, 'invoice' => $invoiceNumber]) }} <p/> @section('markup')
@if ($account->enable_email_markup)
@include('emails.partials.user_view_action')
@endif
@stop
{{ trans('texts.email_signature') }} <br/> @section('body')
{{ trans('texts.email_from') }} <p/> <div>
{{ trans('texts.email_salutation', ['name' => $userName]) }}
{{ trans('texts.user_email_footer') }} <p/> </div>
&nbsp;
</body> <div>
</html> {{ trans("texts.notification_{$entityType}_sent", ['amount' => $invoiceAmount, 'client' => $clientName, 'invoice' => $invoiceNumber]) }}
</div>
&nbsp;
<div>
<center>
@include('partials.email_button', [
'link' => $invoiceLink,
'field' => "view_{$entityType}",
'color' => '#0b4d78',
])
</center>
</div>
&nbsp;
<div>
{{ trans('texts.email_signature') }} <br/>
{{ trans('texts.email_from') }}
</div>
@stop

View File

@ -1,20 +1,32 @@
<!DOCTYPE html> @extends('emails.master_user')
<html lang="{{ App::getLocale() }}">
<head>
<meta charset="utf-8">
</head>
<body>
@if ($account->enable_email_markup)
@include('emails.partials.user_view_action')
@endif
{{ trans('texts.email_salutation', ['name' => $userName]) }} <p/>
{{ trans("texts.notification_{$entityType}_viewed", ['amount' => $invoiceAmount, 'client' => $clientName, 'invoice' => $invoiceNumber]) }} <p/> @section('markup')
@if ($account->enable_email_markup)
@include('emails.partials.user_view_action')
@endif
@stop
{{ trans('texts.email_signature') }} <br/> @section('body')
{{ trans('texts.email_from') }} <p/> <div>
{{ trans('texts.email_salutation', ['name' => $userName]) }}
{{ trans('texts.user_email_footer') }} <p/> </div>
&nbsp;
</body> <div>
</html> {{ trans("texts.notification_{$entityType}_viewed", ['amount' => $invoiceAmount, 'client' => $clientName, 'invoice' => $invoiceNumber]) }}
</div>
&nbsp;
<div>
<center>
@include('partials.email_button', [
'link' => $invoiceLink,
'field' => "view_{$entityType}",
'color' => '#0b4d78',
])
</center>
</div>
&nbsp;
<div>
{{ trans('texts.email_signature') }} <br/>
{{ trans('texts.email_from') }}
</div>
@stop

View File

@ -1,18 +1,20 @@
<!DOCTYPE html> @extends('emails.master_user')
<html lang="{{ App::getLocale() }}">
<head>
<meta charset="utf-8">
</head>
<body>
{{ $client }},<p/> @section('body')
<div>
{{ trans('texts.payment_message', ['amount' => $amount]) }}<p/> {{ $client }},
</div>
{{ $license }}<p/> &nbsp;
<div>
{{ trans('texts.email_signature') }}<br/> {{ trans('texts.payment_message', ['amount' => $amount]) }}
{{ $account }} </div>
&nbsp;
</body> <div>
</html> {{ $license }}
</div>
&nbsp;
<div>
{{ trans('texts.email_signature') }}<br/>
{{ trans('texts.email_from') }}
</div>
@stop

View File

@ -6,9 +6,7 @@
<body style="min-height: 700px; color: #000000; font-family: Arial, Helvetica, sans-serif; font-size: 12px; -webkit-text-size-adjust: none; -ms-text-size-adjust: none; background: #F4F5F5; margin: 0; padding: 0;" <body style="min-height: 700px; color: #000000; font-family: Arial, Helvetica, sans-serif; font-size: 12px; -webkit-text-size-adjust: none; -ms-text-size-adjust: none; background: #F4F5F5; margin: 0; padding: 0;"
alink="#FF0000" link="#FF0000" bgcolor="#F4F5F5" text="#000000" yahoo="fix"> alink="#FF0000" link="#FF0000" bgcolor="#F4F5F5" text="#000000" yahoo="fix">
@if ($account->enable_email_markup) @yield('markup')
@include('emails.partials.client_view_action')
@endif
<style type="text/css"> <style type="text/css">
.footer a:visited { .footer a:visited {
@ -60,20 +58,7 @@
<tr class="footer" style="text-align: center; color: #a7a6a6;" align="center"> <tr class="footer" style="text-align: center; color: #a7a6a6;" align="center">
<td bgcolor="#F4F5F5" <td bgcolor="#F4F5F5"
style="border-collapse: collapse; padding-top: 32px;"> style="border-collapse: collapse; padding-top: 32px;">
<p style="color: #A7A6A6; font-size: 13px; line-height: 18px; margin: 0 0 7px; padding: 0;"> @yield('footer')
{{ $account->address1 }}
@if ($account->address1 && $account->getCityState())
-
@endif
{{ $account->getCityState() }}
@if ($account->address1 || $account->getCityState())
<br />
@endif
@if ($account->website)
<strong><a href="{{ $account->present()->website }}" style="color: #A7A6A6; text-decoration: none; font-weight: bold; font-size: 10px;">{{ $account->website }}</a></strong>
@endif
</p>
</td> </td>
</tr> </tr>

View File

@ -0,0 +1,38 @@
@extends('emails.master')
@section('content')
<tr>
<td bgcolor="#F4F5F5" style="border-collapse: collapse;">&nbsp;</td>
</tr>
<tr>
<td style="border-collapse: collapse;">
<table cellpadding="10" cellspacing="0" border="0" bgcolor="#2F2C2B" width="600" align="center" class="header">
<tr>
<td class="logo" style="border-collapse: collapse; vertical-align: middle; padding-left:34px; padding-top:20px; padding-bottom:12px" valign="middle">
<img src="{{ $message->embed(asset('images/emails/logo.png')) }}" alt="github" />
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="content" style="border-collapse: collapse;">
<div style="font-size: 18px; margin: 42px 40px 42px; padding: 0;">
@yield('body')
</div>
</td>
</tr>
@stop
@section('footer')
<p style="color: #A7A6A6; font-size: 13px; line-height: 18px; margin: 0 0 7px; padding: 0;">
<a href="{{ SOCIAL_LINK_FACEBOOK }}" style="color: #A7A6A6; text-decoration: none; font-weight: bold; font-size: 10px;"><img src="{{ $message->embed(asset('images/emails/icon-facebook.png')) }}" alt="facebook" /></a>
<a href="{{ SOCIAL_LINK_TWITTER }}" style="color: #A7A6A6; text-decoration: none; font-weight: bold; font-size: 10px;"><img src="{{ $message->embed(asset('images/emails/icon-twitter.png')) }}" alt="twitter" /></a>
<a href="{{ SOCIAL_LINK_GITHUB }}" style="color: #A7A6A6; text-decoration: none; font-weight: bold; font-size: 10px;"><img src="{{ $message->embed(asset('images/emails/icon-github.png')) }}" alt="github" /></a>
</p>
<p style="color: #A7A6A6; font-size: 13px; line-height: 18px; margin: 0 0 7px; padding: 0;">
© {{ date('Y') }} {{ CONTACT_NAME }}<br />
<strong><a href="{{ URL::to('/settings/notifications') }}" style="color: #A7A6A6; text-decoration: none; font-weight: bold; font-size: 10px;">{{ strtoupper(trans('texts.email_preferences')) }}</a></strong>
</p>
@stop

View File

@ -1,20 +1,32 @@
<!DOCTYPE html> @extends('emails.master_user')
<html lang="{{ App::getLocale() }}">
<head>
<meta charset="utf-8">
</head>
<body>
@if ($account->enable_email_markup)
@include('emails.partials.user_view_action')
@endif
{{ trans('texts.email_salutation', ['name' => $userName]) }} <p/>
{{ trans("texts.notification_quote_approved", ['amount' => $invoiceAmount, 'client' => $clientName, 'invoice' => $invoiceNumber]) }} <p/> @section('markup')
@if ($account->enable_email_markup)
@include('emails.partials.user_view_action')
@endif
@stop
{{ trans('texts.email_signature') }} <br/> @section('body')
{{ trans('texts.email_from') }} <p/> <div>
{{ trans('texts.email_salutation', ['name' => $userName]) }}
{{ trans('texts.user_email_footer') }} <p/> </div>
&nbsp;
</body> <div>
</html> {{ trans("texts.notification_quote_approved", ['amount' => $invoiceAmount, 'client' => $clientName, 'invoice' => $invoiceNumber]) }}
</div>
&nbsp;
<div>
<center>
@include('partials.email_button', [
'link' => $invoiceLink,
'field' => "view_{$entityType}",
'color' => '#0b4d78',
])
</center>
</div>
&nbsp;
<div>
{{ trans('texts.email_signature') }} <br/>
{{ trans('texts.email_from') }}
</div>
@stop