mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-07-09 03:14:30 -04:00
Merge branch 'v5-develop' into v5-develop
This commit is contained in:
commit
cb959fd3a3
@ -197,7 +197,7 @@ class TemplateEngine
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$wrapper = view($this->getTemplatePath($email_style), $data)->render();
|
$wrapper = view($this->getTemplatePath($email_style), $data)->render();
|
||||||
$injection = '<head><link rel="stylesheet" type="text/css" property="stylesheet" href="'.config('ninja.app_url').'/css/tailwind-1.2.0.css">';
|
$injection = '';
|
||||||
$wrapper = str_replace('<head>', $injection, $wrapper);
|
$wrapper = str_replace('<head>', $injection, $wrapper);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -208,7 +208,7 @@ class TemplateEngine
|
|||||||
'raw_body' => $this->raw_body,
|
'raw_body' => $this->raw_body,
|
||||||
'raw_subject' => $this->raw_subject
|
'raw_subject' => $this->raw_subject
|
||||||
];
|
];
|
||||||
|
|
||||||
$this->tearDown();
|
$this->tearDown();
|
||||||
|
|
||||||
return $data;
|
return $data;
|
||||||
|
@ -1,20 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
|
|
||||||
/*
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
| Css Files
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
|
|
|
||||||
| Css file of your style for your emails
|
|
||||||
| The content of these files will be added directly into the inliner
|
|
||||||
| Use absolute paths, ie. public_path('css/main.css')
|
|
||||||
|
|
|
||||||
*/
|
|
||||||
|
|
||||||
'css-files' => [
|
|
||||||
public_path('css/app.css'),
|
|
||||||
],
|
|
||||||
|
|
||||||
];
|
|
1
public/css/tailwind-1.2.0.css
vendored
1
public/css/tailwind-1.2.0.css
vendored
File diff suppressed because one or more lines are too long
1
public/css/tailwindcss@1.4.6.css
vendored
1
public/css/tailwindcss@1.4.6.css
vendored
File diff suppressed because one or more lines are too long
52
public/flutter_service_worker.js
vendored
52
public/flutter_service_worker.js
vendored
@ -3,36 +3,36 @@ const MANIFEST = 'flutter-app-manifest';
|
|||||||
const TEMP = 'flutter-temp-cache';
|
const TEMP = 'flutter-temp-cache';
|
||||||
const CACHE_NAME = 'flutter-app-cache';
|
const CACHE_NAME = 'flutter-app-cache';
|
||||||
const RESOURCES = {
|
const RESOURCES = {
|
||||||
"assets/assets/images/payment_types/paypal.png": "8e06c094c1871376dfea1da8088c29d1",
|
"icons/Icon-512.png": "0f9aff01367f0a0c69773d25ca16ef35",
|
||||||
"assets/assets/images/payment_types/ach.png": "7433f0aff779dc98a649b7a2daf777cf",
|
"icons/Icon-192.png": "bb1cf5f6982006952211c7c8404ffbed",
|
||||||
"assets/assets/images/payment_types/switch.png": "4fa11c45327f5fdc20205821b2cfd9cc",
|
"favicon.ico": "51636d3a390451561744c42188ccd628",
|
||||||
"assets/assets/images/payment_types/amex.png": "c49a4247984b3732a4af50a3390aa978",
|
"manifest.json": "77215c1737c7639764e64a192be2f7b8",
|
||||||
"assets/assets/images/payment_types/dinerscard.png": "06d85186ba858c18ab7c9caa42c92024",
|
|
||||||
"assets/assets/images/payment_types/solo.png": "2030c3ccaccf5d5e87916a62f5b084d6",
|
|
||||||
"assets/assets/images/payment_types/unionpay.png": "7002f52004e0ab8cc0b7450b0208ccb2",
|
|
||||||
"assets/assets/images/payment_types/other.png": "d936e11fa3884b8c9f1bd5c914be8629",
|
|
||||||
"assets/assets/images/payment_types/jcb.png": "07e0942d16c5592118b72e74f2f7198c",
|
|
||||||
"assets/assets/images/payment_types/maestro.png": "e533b92bfb50339fdbfa79e3dfe81f08",
|
|
||||||
"assets/assets/images/payment_types/mastercard.png": "6f6cdc29ee2e22e06b1ac029cb52ef71",
|
|
||||||
"assets/assets/images/payment_types/discover.png": "6c0a386a00307f87db7bea366cca35f5",
|
|
||||||
"assets/assets/images/payment_types/visa.png": "3ddc4a4d25c946e8ad7e6998f30fd4e3",
|
|
||||||
"assets/assets/images/payment_types/carteblanche.png": "d936e11fa3884b8c9f1bd5c914be8629",
|
|
||||||
"assets/assets/images/payment_types/laser.png": "b4e6e93dd35517ac429301119ff05868",
|
|
||||||
"assets/assets/images/logo.png": "090f69e23311a4b6d851b3880ae52541",
|
|
||||||
"assets/assets/images/google-icon.png": "0f118259ce403274f407f5e982e681c3",
|
|
||||||
"assets/packages/material_design_icons_flutter/lib/fonts/materialdesignicons-webfont.ttf": "c1242726c7eac4eb5e843d826f78fb1b",
|
"assets/packages/material_design_icons_flutter/lib/fonts/materialdesignicons-webfont.ttf": "c1242726c7eac4eb5e843d826f78fb1b",
|
||||||
|
"assets/NOTICES": "1965e076d9705b3500fedcfad4bebcdf",
|
||||||
|
"assets/assets/images/logo.png": "090f69e23311a4b6d851b3880ae52541",
|
||||||
|
"assets/assets/images/payment_types/mastercard.png": "6f6cdc29ee2e22e06b1ac029cb52ef71",
|
||||||
|
"assets/assets/images/payment_types/amex.png": "c49a4247984b3732a4af50a3390aa978",
|
||||||
|
"assets/assets/images/payment_types/unionpay.png": "7002f52004e0ab8cc0b7450b0208ccb2",
|
||||||
|
"assets/assets/images/payment_types/switch.png": "4fa11c45327f5fdc20205821b2cfd9cc",
|
||||||
|
"assets/assets/images/payment_types/paypal.png": "8e06c094c1871376dfea1da8088c29d1",
|
||||||
|
"assets/assets/images/payment_types/visa.png": "3ddc4a4d25c946e8ad7e6998f30fd4e3",
|
||||||
|
"assets/assets/images/payment_types/laser.png": "b4e6e93dd35517ac429301119ff05868",
|
||||||
|
"assets/assets/images/payment_types/other.png": "d936e11fa3884b8c9f1bd5c914be8629",
|
||||||
|
"assets/assets/images/payment_types/dinerscard.png": "06d85186ba858c18ab7c9caa42c92024",
|
||||||
|
"assets/assets/images/payment_types/carteblanche.png": "d936e11fa3884b8c9f1bd5c914be8629",
|
||||||
|
"assets/assets/images/payment_types/ach.png": "7433f0aff779dc98a649b7a2daf777cf",
|
||||||
|
"assets/assets/images/payment_types/solo.png": "2030c3ccaccf5d5e87916a62f5b084d6",
|
||||||
|
"assets/assets/images/payment_types/discover.png": "6c0a386a00307f87db7bea366cca35f5",
|
||||||
|
"assets/assets/images/payment_types/maestro.png": "e533b92bfb50339fdbfa79e3dfe81f08",
|
||||||
|
"assets/assets/images/payment_types/jcb.png": "07e0942d16c5592118b72e74f2f7198c",
|
||||||
|
"assets/assets/images/google-icon.png": "0f118259ce403274f407f5e982e681c3",
|
||||||
|
"assets/AssetManifest.json": "659dcf9d1baf3aed3ab1b9c42112bf8f",
|
||||||
"assets/FontManifest.json": "cf3c681641169319e61b61bd0277378f",
|
"assets/FontManifest.json": "cf3c681641169319e61b61bd0277378f",
|
||||||
"assets/fonts/MaterialIcons-Regular.otf": "1288c9e28052e028aba623321f7826ac",
|
"assets/fonts/MaterialIcons-Regular.otf": "1288c9e28052e028aba623321f7826ac",
|
||||||
"assets/NOTICES": "1965e076d9705b3500fedcfad4bebcdf",
|
|
||||||
"assets/AssetManifest.json": "659dcf9d1baf3aed3ab1b9c42112bf8f",
|
|
||||||
"version.json": "6b7a4ad416a3730ae32b64e007cef7f3",
|
|
||||||
"favicon.png": "dca91c54388f52eded692718d5a98b8b",
|
|
||||||
"main.dart.js": "970638cb2278a4390edc11bc44e7adf8",
|
|
||||||
"manifest.json": "77215c1737c7639764e64a192be2f7b8",
|
|
||||||
"/": "23224b5e03519aaa87594403d54412cf",
|
"/": "23224b5e03519aaa87594403d54412cf",
|
||||||
"icons/Icon-512.png": "0f9aff01367f0a0c69773d25ca16ef35",
|
"version.json": "7e4c19c87f9676a83714d8b531ea766f",
|
||||||
"icons/Icon-192.png": "bb1cf5f6982006952211c7c8404ffbed",
|
"main.dart.js": "32470587c5ec5d29e6a33ee322ed9cbf",
|
||||||
"favicon.ico": "51636d3a390451561744c42188ccd628"
|
"favicon.png": "dca91c54388f52eded692718d5a98b8b"
|
||||||
};
|
};
|
||||||
|
|
||||||
// The application shell files that are downloaded before a service worker can
|
// The application shell files that are downloaded before a service worker can
|
||||||
|
92328
public/main.dart.js
vendored
92328
public/main.dart.js
vendored
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
|||||||
{"app_name":"invoiceninja_flutter","version":"5.0.38","build_number":"38"}
|
{"app_name":"invoiceninja_flutter","version":"5.0.39","build_number":"39"}
|
@ -1,26 +1,27 @@
|
|||||||
@component('email.template.master', ['design' => 'light', 'settings' =>$settings])
|
@component('email.template.master', ['design' => 'light', 'settings' => $settings])
|
||||||
|
|
||||||
@slot('header')
|
|
||||||
@component('email.components.header', ['p' => $title, 'logo' => $logo])
|
@slot('header')
|
||||||
|
@include('email.components.header', ['logo' => $logo])
|
||||||
|
@endslot
|
||||||
|
|
||||||
|
<h1>{{ $title }}</h1>
|
||||||
|
|
||||||
|
@slot('greeting')
|
||||||
|
@lang($message)
|
||||||
|
@endslot
|
||||||
|
|
||||||
|
@component('email.components.button', ['url' => $url])
|
||||||
|
@lang($button)
|
||||||
@endcomponent
|
@endcomponent
|
||||||
@endslot
|
|
||||||
|
|
||||||
<p>
|
@slot('signature')
|
||||||
{!! $message !!}
|
{{ $signature }}
|
||||||
</p>
|
@endslot
|
||||||
|
|
||||||
@component('email.components.button', ['url' => $url])
|
@slot('footer')
|
||||||
@lang($button)
|
@component('email.components.footer', ['url' => 'https://invoiceninja.com', 'url_text' => '© InvoiceNinja'])
|
||||||
|
For any info, please visit InvoiceNinja.
|
||||||
|
@endcomponent
|
||||||
|
@endslot
|
||||||
@endcomponent
|
@endcomponent
|
||||||
|
|
||||||
@slot('signature')
|
|
||||||
{{ $signature }}
|
|
||||||
@endslot
|
|
||||||
|
|
||||||
@slot('footer')
|
|
||||||
@component('email.components.footer', ['url' => 'https://invoiceninja.com', 'url_text' => '© InvoiceNinja'])
|
|
||||||
For any info, please visit InvoiceNinja.
|
|
||||||
@endcomponent
|
|
||||||
@endslot
|
|
||||||
|
|
||||||
@endcomponent
|
|
@ -1,3 +1,3 @@
|
|||||||
<div class="px-10 py-6 flex flex-col items-center">
|
<a href="{{ $url }}" target="_blank" class="button">
|
||||||
<a href="{{ $url }}" class="bg-green-500 px-4 py-3 text-white leading-tight hover:bg-green-600" style="color: white !important;">{{ $slot }}</a>
|
{{ $slot }}
|
||||||
</div>
|
</a>
|
||||||
|
@ -1,13 +1,11 @@
|
|||||||
<div class="mt-8 text-center break-words">
|
<p>{{ $slot }}</p>
|
||||||
<p class="block text-center text-sm break-words">{{ $slot }}</p>
|
|
||||||
|
|
||||||
@isset($url)
|
@isset($url)
|
||||||
<a href="{{ $url }}" class="text-blue-500 hover:text-blue-600 mt-4 text-sm break-words">
|
<a href="{{ $url }}" target="_blank">
|
||||||
@isset($url_text)
|
@isset($url_text)
|
||||||
{!! $url_text !!}
|
{!! $url_text !!}
|
||||||
@else
|
@else
|
||||||
{{ $url }}
|
{{ $url }}
|
||||||
@endisset
|
@endisset
|
||||||
</a>
|
</a>
|
||||||
@endisset
|
@endisset
|
||||||
</div>
|
|
||||||
|
@ -64,7 +64,12 @@
|
|||||||
<table cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse;">
|
<table cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse;">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center" id="email-content">
|
<td align="center" id="email-content">
|
||||||
|
@yield('greeting')
|
||||||
|
|
||||||
{{ $slot }}
|
{{ $slot }}
|
||||||
|
|
||||||
|
@yield('signature')
|
||||||
|
@yield('footer')
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
@ -50,7 +50,7 @@
|
|||||||
</th>
|
</th>
|
||||||
<th class="px-6 py-3 text-xs font-medium leading-4 tracking-wider text-left text-white uppercase border-b border-gray-200 bg-primary">
|
<th class="px-6 py-3 text-xs font-medium leading-4 tracking-wider text-left text-white uppercase border-b border-gray-200 bg-primary">
|
||||||
<span role="button" wire:click="sortBy('balance')" class="cursor-pointer">
|
<span role="button" wire:click="sortBy('balance')" class="cursor-pointer">
|
||||||
{{ ctrans('texts.balance') }}
|
{{ ctrans('texts.amount') }}
|
||||||
</span>
|
</span>
|
||||||
</th>
|
</th>
|
||||||
<th class="px-6 py-3 text-xs font-medium leading-4 tracking-wider text-left text-white uppercase border-b border-gray-200 bg-primary">
|
<th class="px-6 py-3 text-xs font-medium leading-4 tracking-wider text-left text-white uppercase border-b border-gray-200 bg-primary">
|
||||||
|
@ -72,8 +72,10 @@
|
|||||||
{{-- Feel free to push anything to header using @push('header') --}}
|
{{-- Feel free to push anything to header using @push('header') --}}
|
||||||
@stack('head')
|
@stack('head')
|
||||||
|
|
||||||
@if((bool) \App\Utils\Ninja::isSelfHost())
|
@if((bool) \App\Utils\Ninja::isSelfHost() && !empty($client->getSetting('portal_custom_head')))
|
||||||
{!! $client->getSetting('portal_custom_head') !!}
|
<div class="py-1 text-sm text-center text-white bg-primary">
|
||||||
|
{!! $client->getSetting('portal_custom_head') !!}
|
||||||
|
</div>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/cookieconsent@3/build/cookieconsent.min.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/cookieconsent@3/build/cookieconsent.min.css" />
|
||||||
@ -125,7 +127,9 @@
|
|||||||
@stack('footer')
|
@stack('footer')
|
||||||
|
|
||||||
@if((bool) \App\Utils\Ninja::isSelfHost())
|
@if((bool) \App\Utils\Ninja::isSelfHost())
|
||||||
{!! $client->getSetting('portal_custom_footer') !!}
|
<div class="py-1 text-sm text-center text-white bg-primary">
|
||||||
|
{!! $client->getSetting('portal_custom_footer') !!}
|
||||||
|
</div>
|
||||||
@endif
|
@endif
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
@ -67,7 +67,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="bg-gray-50 px-4 py-5 sm:grid sm:grid-cols-3 sm:gap-4 sm:px-6">
|
<div class="bg-gray-50 px-4 py-5 sm:grid sm:grid-cols-3 sm:gap-4 sm:px-6">
|
||||||
<dt class="text-sm leading-5 font-medium text-gray-500">
|
<dt class="text-sm leading-5 font-medium text-gray-500">
|
||||||
{{ ctrans('texts.balance') }}
|
{{ ctrans('texts.amount') }}
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="mt-1 text-sm leading-5 text-gray-900 sm:mt-0 sm:col-span-2">
|
<dd class="mt-1 text-sm leading-5 text-gray-900 sm:mt-0 sm:col-span-2">
|
||||||
{{ App\Utils\Number::formatMoney($quote->balance, $quote->client) }}
|
{{ App\Utils\Number::formatMoney($quote->balance, $quote->client) }}
|
||||||
|
@ -68,8 +68,8 @@
|
|||||||
</dt>
|
</dt>
|
||||||
<dd class="text-sm leading-5 text-gray-900 sm:mt-0 sm:col-span-2">
|
<dd class="text-sm leading-5 text-gray-900 sm:mt-0 sm:col-span-2">
|
||||||
<select name="encryption" class="input w-full form-select">
|
<select name="encryption" class="input w-full form-select">
|
||||||
<option value="tls">TLS</option>
|
<option value="tls">STARTTLS</option>
|
||||||
<option value="ssl">SSL</option>
|
<option value="ssl">SSL/TLS</option>
|
||||||
</select>
|
</select>
|
||||||
</dd>
|
</dd>
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user