Merge pull request #9631 from turbo124/v5-develop

Fixes for task rounding (down)
This commit is contained in:
David Bomba 2024-06-12 14:53:19 +10:00 committed by GitHub
commit f2d0506dd0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
56 changed files with 1024 additions and 399 deletions

View File

@ -1 +1 @@
5.9.4 5.9.5

View File

@ -220,17 +220,17 @@ class ExpenseExport extends BaseExport
// $entity['expense.client'] = $expense->client ? $expense->client->present()->name() : ''; // $entity['expense.client'] = $expense->client ? $expense->client->present()->name() : '';
// } // }
// if (in_array('expense.invoice_id', $this->input['report_keys'])) { if (in_array('expense.invoice_id', $this->input['report_keys'])) {
// $entity['expense.invoice_id'] = $expense->invoice ? $expense->invoice->number : ''; $entity['expense.invoice_id'] = $expense->invoice ? $expense->invoice->number : '';
// } }
// if (in_array('expense.category', $this->input['report_keys'])) { // if (in_array('expense.category', $this->input['report_keys'])) {
// $entity['expense.category'] = $expense->category ? $expense->category->name : ''; // $entity['expense.category'] = $expense->category ? $expense->category->name : '';
// } // }
// if (in_array('expense.vendor_id', $this->input['report_keys'])) { if (in_array('expense.vendor_id', $this->input['report_keys'])) {
// $entity['expense.vendor'] = $expense->vendor ? $expense->vendor->name : ''; $entity['expense.vendor'] = $expense->vendor ? $expense->vendor->name : '';
// } }
// if (in_array('expense.payment_type_id', $this->input['report_keys'])) { // if (in_array('expense.payment_type_id', $this->input['report_keys'])) {
// $entity['expense.payment_type_id'] = $expense->payment_type ? $expense->payment_type->name : ''; // $entity['expense.payment_type_id'] = $expense->payment_type ? $expense->payment_type->name : '';

View File

@ -88,7 +88,7 @@ class TaskFilters extends QueryFilters
return $this->builder; return $this->builder;
} }
public function project_tasks($project): Builder public function project_tasks(string $project = ''): Builder
{ {
if (strlen($project) == 0) { if (strlen($project) == 0) {
return $this->builder; return $this->builder;

View File

@ -59,13 +59,13 @@ class EpcQrGenerator
<rect x='0' y='0' width='100%'' height='100%' />{$qr}</svg>"; <rect x='0' y='0' width='100%'' height='100%' />{$qr}</svg>";
} catch(\Throwable $e) { } catch(\Throwable $e) {
// nlog("EPC QR failure => ".$e->getMessage()); nlog("EPC QR failure => ".$e->getMessage());
return ''; return '';
} catch(\Exception $e) { } catch(\Exception $e) {
// nlog("EPC QR failure => ".$e->getMessage()); nlog("EPC QR failure => ".$e->getMessage());
return ''; return '';
} catch(InvalidArgumentException $e) { } catch(InvalidArgumentException $e) {
// nlog("EPC QR failure => ".$e->getMessage()); nlog("EPC QR failure => ".$e->getMessage());
return ''; return '';
} }
@ -73,20 +73,37 @@ class EpcQrGenerator
public function encodeMessage() public function encodeMessage()
{ {
return rtrim(implode("\n", [ // return rtrim(implode("\n", [
$this->sepa['serviceTag'], // $this->sepa['serviceTag'],
sprintf('%03d', $this->sepa['version']), // sprintf('%03d', $this->sepa['version']),
$this->sepa['characterSet'], // $this->sepa['characterSet'],
$this->sepa['identification'], // $this->sepa['identification'],
isset($this->company?->custom_fields?->company2) ? $this->company->settings->custom_value2 : '', // isset($this->company?->custom_fields?->company2) ? $this->company->settings->custom_value2 : '',
$this->company->present()->name(), // $this->company->present()->name(),
isset($this->company?->custom_fields?->company1) ? $this->company->settings->custom_value1 : '', // isset($this->company?->custom_fields?->company1) ? $this->company->settings->custom_value1 : '',
$this->formatMoney($this->amount), // $this->formatMoney($this->amount),
$this->sepa['purpose'], // $this->sepa['purpose'],
substr($this->invoice->number, 0, 34), // substr($this->invoice->number, 0, 34),
'', // '',
' ' // ' '
]), "\n"); // ]), "\n");
$data = [
'BCD',
'002', // Version
'1', // Encoding: 1 = UTF-8
'SCT', // Service Tag: SEPA Credit Transfer
isset($this->company?->custom_fields?->company2) ? $this->company->settings->custom_value2 : '', // BIC
$this->company->present()->name(), // Name of the beneficiary
isset($this->company?->custom_fields?->company1) ? $this->company->settings->custom_value1 : '', // IBAN
$this->formatMoney($this->amount), // Amount with EUR prefix
'', // Reference
substr($this->invoice->number, 0, 34) // Unstructured remittance information
];
return implode("\n", $data);
} }

View File

@ -48,6 +48,9 @@ class PrePaymentController extends Controller
'allows_recurring' => true, 'allows_recurring' => true,
'minimum' => $minimum, 'minimum' => $minimum,
'minimum_amount' => $minimum_amount, 'minimum_amount' => $minimum_amount,
'notes' => request()->has('notes') ? request()->input('notes') : "",
'amount' => request()->has('amount') ? request()->input('amount') : "",
'show' => request()->has('is_recurring') ? "true" : "false",
]; ];
return $this->render('pre_payments.index', $data); return $this->render('pre_payments.index', $data);

View File

@ -155,7 +155,6 @@ class PreviewController extends BaseController
return response()->json(['message' => ctrans('texts.invalid_design_object')], 400); return response()->json(['message' => ctrans('texts.invalid_design_object')], 400);
} }
// $entity = ucfirst(request()->input('entity'));
$entity = Str::camel(request()->input('entity')); $entity = Str::camel(request()->input('entity'));
$class = "App\Models\\$entity"; $class = "App\Models\\$entity";

View File

@ -12,6 +12,7 @@
namespace App\Http\Requests\Preview; namespace App\Http\Requests\Preview;
use App\Http\Requests\Request; use App\Http\Requests\Request;
use App\Http\ValidationRules\Design\TwigLint;
use App\Utils\Traits\MakesHash; use App\Utils\Traits\MakesHash;
class ShowPreviewRequest extends Request class ShowPreviewRequest extends Request
@ -31,6 +32,7 @@ class ShowPreviewRequest extends Request
public function rules() public function rules()
{ {
$rules = [ $rules = [
'design.design.body' => ['sometimes', 'required_if:design.design.is_template,true', new TwigLint()],
]; ];
return $rules; return $rules;

View File

@ -0,0 +1,44 @@
<?php
/**
* Invoice Ninja (https://invoiceninja.com).
*
* @link https://github.com/invoiceninja/invoiceninja source repository
*
* @copyright Copyright (c) 2024. Invoice Ninja LLC (https://invoiceninja.com)
*
* @license https://www.elastic.co/licensing/elastic-license
*/
namespace App\Http\ValidationRules\Design;
use Closure;
use App\Services\Template\TemplateService;
use Illuminate\Contracts\Validation\ValidationRule;
class TwigLint implements ValidationRule
{
/**
* Run the validation rule.
*
* @param \Closure(string): \Illuminate\Translation\PotentiallyTranslatedString $fail
*/
public function validate(string $attribute, mixed $value, Closure $fail): void
{
$ts = new TemplateService();
$twig = $ts->twig;
try {
$twig->parse($twig->tokenize(new \Twig\Source(preg_replace('/<!--.*?-->/s', '', $value), '')));
} catch (\Twig\Error\SyntaxError $e) {
// echo json_encode(['status' => 'error', 'message' => $e->getMessage()]);
nlog($e->getMessage());
$fail($e->getMessage());
}
}
}

View File

@ -28,7 +28,7 @@ class ClientTransformer extends BaseTransformer
*/ */
public function transform($data) public function transform($data)
{ {
if (isset($data->name) && $this->getString($data, 'client.name')) { if (isset($data['client.name']) && $this->hasClient($data['client.name'])) {
throw new ImportException('Client already exists'); throw new ImportException('Client already exists');
} }

View File

@ -26,6 +26,7 @@ class PaymentTransformer extends BaseTransformer
*/ */
public function transform($data) public function transform($data)
{ {
nlog($data);
$client_id = $this->getClient( $client_id = $this->getClient(
$this->getString($data, 'payment.client_id'), $this->getString($data, 'payment.client_id'),
$this->getString($data, 'payment.client_id') $this->getString($data, 'payment.client_id')

View File

@ -48,6 +48,7 @@ class CleanStaleInvoiceOrder implements ShouldQueue
if (! config('ninja.db.multi_db_enabled')) { if (! config('ninja.db.multi_db_enabled')) {
Invoice::query() Invoice::query()
->withTrashed() ->withTrashed()
->where('status_id', Invoice::STATUS_SENT)
->where('is_proforma', 1) ->where('is_proforma', 1)
->where('created_at', '<', now()->subHour()) ->where('created_at', '<', now()->subHour())
->cursor() ->cursor()

View File

@ -119,6 +119,10 @@ class CreditEmailEngine extends BaseEmailEngine
$pdf = ((new CreateRawPdf($this->invitation))->handle()); $pdf = ((new CreateRawPdf($this->invitation))->handle());
if($this->client->getSetting('embed_documents') && ($this->credit->documents()->where('is_public', true)->count() > 0 || $this->credit->company->documents()->where('is_public', true)->count() > 0)) {
$pdf = $this->credit->documentMerge($pdf);
}
$this->setAttachments([['file' => base64_encode($pdf), 'name' => $this->credit->numberFormatter().'.pdf']]); $this->setAttachments([['file' => base64_encode($pdf), 'name' => $this->credit->numberFormatter().'.pdf']]);
} }

View File

@ -131,6 +131,10 @@ class InvoiceEmailEngine extends BaseEmailEngine
if ($this->client->getSetting('pdf_email_attachment') !== false && $this->invoice->company->account->hasFeature(Account::FEATURE_PDF_ATTACHMENT)) { if ($this->client->getSetting('pdf_email_attachment') !== false && $this->invoice->company->account->hasFeature(Account::FEATURE_PDF_ATTACHMENT)) {
$pdf = ((new CreateRawPdf($this->invitation))->handle()); $pdf = ((new CreateRawPdf($this->invitation))->handle());
if($this->client->getSetting('embed_documents') && ($this->invoice->documents()->where('is_public', true)->count() > 0 || $this->invoice->company->documents()->where('is_public', true)->count() > 0)) {
$pdf = $this->invoice->documentMerge($pdf);
}
$this->setAttachments([['file' => base64_encode($pdf), 'name' => $this->invoice->numberFormatter().'.pdf']]); $this->setAttachments([['file' => base64_encode($pdf), 'name' => $this->invoice->numberFormatter().'.pdf']]);
} }

View File

@ -123,6 +123,10 @@ class PurchaseOrderEmailEngine extends BaseEmailEngine
$pdf = (new CreateRawPdf($this->invitation))->handle(); $pdf = (new CreateRawPdf($this->invitation))->handle();
if($this->vendor->getSetting('embed_documents') && ($this->purchase_order->documents()->where('is_public', true)->count() > 0 || $this->purchase_order->company->documents()->where('is_public', true)->count() > 0)) {
$pdf = $this->purchase_order->documentMerge($pdf);
}
$this->setAttachments([['file' => base64_encode($pdf), 'name' => $this->purchase_order->numberFormatter().'.pdf']]); $this->setAttachments([['file' => base64_encode($pdf), 'name' => $this->purchase_order->numberFormatter().'.pdf']]);
} }

View File

@ -17,6 +17,7 @@ use App\Models\Account;
use App\Utils\HtmlEngine; use App\Utils\HtmlEngine;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use App\Jobs\Entity\CreateRawPdf; use App\Jobs\Entity\CreateRawPdf;
use App\Services\PdfMaker\PdfMerge;
use Illuminate\Support\Facades\App; use Illuminate\Support\Facades\App;
use Illuminate\Support\Facades\URL; use Illuminate\Support\Facades\URL;
use Illuminate\Support\Facades\Cache; use Illuminate\Support\Facades\Cache;
@ -117,6 +118,10 @@ class QuoteEmailEngine extends BaseEmailEngine
if ($this->client->getSetting('pdf_email_attachment') !== false && $this->quote->company->account->hasFeature(Account::FEATURE_PDF_ATTACHMENT)) { if ($this->client->getSetting('pdf_email_attachment') !== false && $this->quote->company->account->hasFeature(Account::FEATURE_PDF_ATTACHMENT)) {
$pdf = ((new CreateRawPdf($this->invitation))->handle()); $pdf = ((new CreateRawPdf($this->invitation))->handle());
if($this->client->getSetting('embed_documents') && ($this->quote->documents()->where('is_public', true)->count() > 0 || $this->quote->company->documents()->where('is_public', true)->count() > 0)){
$pdf = $this->quote->documentMerge($pdf);
}
$this->setAttachments([['file' => base64_encode($pdf), 'name' => $this->quote->numberFormatter().'.pdf']]); $this->setAttachments([['file' => base64_encode($pdf), 'name' => $this->quote->numberFormatter().'.pdf']]);
} }

View File

@ -11,16 +11,17 @@
namespace App\Models; namespace App\Models;
use Illuminate\Support\Str;
use Illuminate\Support\Carbon;
use App\Utils\Traits\MakesHash;
use App\Jobs\Entity\CreateRawPdf; use App\Jobs\Entity\CreateRawPdf;
use App\Jobs\Util\WebhookHandler; use App\Jobs\Util\WebhookHandler;
use App\Models\Traits\Excludable; use App\Models\Traits\Excludable;
use App\Utils\Traits\MakesHash; use App\Services\PdfMaker\PdfMerge;
use Illuminate\Database\Eloquent\Model;
use App\Utils\Traits\UserSessionAttributes; use App\Utils\Traits\UserSessionAttributes;
use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\ModelNotFoundException as ModelNotFoundException; use Illuminate\Database\Eloquent\ModelNotFoundException as ModelNotFoundException;
use Illuminate\Support\Carbon;
use Illuminate\Support\Str;
/** /**
* Class BaseModel * Class BaseModel
@ -77,6 +78,8 @@ class BaseModel extends Model
use UserSessionAttributes; use UserSessionAttributes;
use HasFactory; use HasFactory;
use Excludable; use Excludable;
public int $max_attachment_size = 3000000;
protected $appends = [ protected $appends = [
'hashed_id', 'hashed_id',
@ -337,4 +340,42 @@ class BaseModel extends Model
return strtr($section, $variables['values']); return strtr($section, $variables['values']);
} }
/**
* Merged PDFs associated with the entity / company
* into a single document
*
* @param string $pdf
* @return mixed
*/
public function documentMerge(string $pdf): mixed
{
$files = collect([$pdf]);
$entity_docs = $this->documents()
->where('is_public', true)
->get()
->filter(function ($document) {
return $document->size < $this->max_attachment_size && stripos($document->name, ".pdf") !== false;
})->map(function ($d) {
return $d->getFile();
});
$files->push($entity_docs);
$company_docs = $this->company->documents()
->where('is_public', true)
->get()
->filter(function ($document) {
return $document->size < $this->max_attachment_size && stripos($document->name, ".pdf") !== false;
})->map(function ($d) {
return $d->getFile();
});
$files->push($company_docs);
$pdf = (new PdfMerge($files->flatten()->toArray()))->run();
return $pdf;
}
} }

View File

@ -412,6 +412,7 @@ class Client extends BaseModel implements HasLocalePreference
public function date_format() public function date_format()
{ {
/** @var \Illuminate\Support\Collection $date_formats */
$date_formats = app('date_formats'); $date_formats = app('date_formats');
// $date_formats = Cache::get('date_formats'); // $date_formats = Cache::get('date_formats');
@ -428,6 +429,8 @@ class Client extends BaseModel implements HasLocalePreference
public function currency() public function currency()
{ {
/** @var \Illuminate\Support\Collection $currencies */
$currencies = app('currencies'); $currencies = app('currencies');
// $currencies = Cache::get('currencies'); // $currencies = Cache::get('currencies');

View File

@ -319,6 +319,7 @@ class PayPalPPCPPaymentDriver extends PayPalBasePaymentDriver
*/ */
public function processTokenPayment($request, array $response) { public function processTokenPayment($request, array $response) {
/** @var \App\Models\ClientGatewayToken $cgt */
$cgt = ClientGatewayToken::where('client_id', $this->client->id) $cgt = ClientGatewayToken::where('client_id', $this->client->id)
->where('token', $request['token']) ->where('token', $request['token'])
->firstOrFail(); ->firstOrFail();

View File

@ -295,7 +295,7 @@ class PayPalRestPaymentDriver extends PayPalBasePaymentDriver
*/ */
public function processTokenPayment($request, array $response) { public function processTokenPayment($request, array $response) {
/** @car \App\Models\ClientGatwayToken $cgt */ /** @var \App\Models\ClientGatewayToken $cgt */
$cgt = ClientGatewayToken::where('client_id', $this->client->id) $cgt = ClientGatewayToken::where('client_id', $this->client->id)
->where('token', $request['token']) ->where('token', $request['token'])
->firstOrFail(); ->firstOrFail();

View File

@ -75,7 +75,7 @@ class WePayPaymentDriver extends BaseDriver
* Setup the gateway * Setup the gateway
* *
* @param array $data user_id + company * @param array $data user_id + company
* @return \Illuminate\View\View * @return void
*/ */
public function setup(array $data) public function setup(array $data)
{ {

View File

@ -265,7 +265,7 @@ class TaskRepository extends BaseRepository
if($interval <= $this->task_round_to_nearest) if($interval <= $this->task_round_to_nearest)
return $start_time; return $start_time;
return $start_time - (int)floor($interval/$this->task_round_to_nearest) * $this->task_round_to_nearest; return $start_time + (int)floor($interval/$this->task_round_to_nearest) * $this->task_round_to_nearest;
} }

View File

@ -25,10 +25,16 @@ use horstoeko\orderx\OrderProfiles;
class OrderXDocument extends AbstractService class OrderXDocument extends AbstractService
{ {
public OrderDocumentBuilder $orderxdocument; public OrderDocumentBuilder $orderxdocument;
/** @var \App\Models\Invoice | \App\Models\Quote | \App\Models\PurchaseOrder | \App\Models\Credit $document */ /**
* __construct
public function __construct(public mixed $document, private readonly bool $returnObject = false, private array $tax_map = []) *
* @param \App\Models\Invoice | \App\Models\Quote | \App\Models\PurchaseOrder | \App\Models\Credit $document
* @param bool $returnObject
* @param array $tax_map
* @return void
*/
public function __construct(public \App\Models\Invoice | \App\Models\Quote | \App\Models\PurchaseOrder | \App\Models\Credit $document, private readonly bool $returnObject = false, private array $tax_map = [])
{ {
} }
@ -36,7 +42,6 @@ class OrderXDocument extends AbstractService
{ {
$company = $this->document->company; $company = $this->document->company;
/** @var \App\Models\Client | \App\Models\Vendor $settings_entity */
$settings_entity = ($this->document instanceof PurchaseOrder) ? $this->document->vendor : $this->document->client; $settings_entity = ($this->document instanceof PurchaseOrder) ? $this->document->vendor : $this->document->client;
$profile = $settings_entity->getSetting('e_quote_type') ? $settings_entity->getSetting('e_quote_type') : "OrderX_Extended"; $profile = $settings_entity->getSetting('e_quote_type') ? $settings_entity->getSetting('e_quote_type') : "OrderX_Extended";
@ -176,7 +181,17 @@ class OrderXDocument extends AbstractService
} }
} }
$this->orderxdocument->setDocumentSummation($this->document->amount, $this->document->balance, $invoicing_data->getSubTotal(), $invoicing_data->getTotalSurcharges(), $invoicing_data->getTotalDiscount(), $invoicing_data->getSubTotal(), $invoicing_data->getItemTotalTaxes(), 0.0, $this->document->amount - $this->document->balance); $this->orderxdocument->setDocumentSummation(
$this->document->amount,
$this->document->balance,
$invoicing_data->getSubTotal(),
$invoicing_data->getTotalSurcharges(),
// $invoicing_data->getTotalDiscount(),
$invoicing_data->getSubTotal(),
$invoicing_data->getItemTotalTaxes(),
// 0.0,
// ($this->document->amount - $this->document->balance)
);
foreach ($this->tax_map as $item) { foreach ($this->tax_map as $item) {
$this->orderxdocument->addDocumentTax($item["tax_type"], "VAT", $item["net_amount"], $item["tax_rate"] * $item["net_amount"], $item["tax_rate"] * 100); $this->orderxdocument->addDocumentTax($item["tax_type"], "VAT", $item["net_amount"], $item["tax_rate"] * $item["net_amount"], $item["tax_rate"] * 100);

View File

@ -74,6 +74,7 @@ class Peppol extends AbstractService
public function getInvoice(): \InvoiceNinja\EInvoice\Models\Peppol\Invoice public function getInvoice(): \InvoiceNinja\EInvoice\Models\Peppol\Invoice
{ {
//@todo - need to process this and remove null values
return $this->p_invoice; return $this->p_invoice;
} }

View File

@ -25,7 +25,16 @@ class ZugferdEDokument extends AbstractService
{ {
public ZugferdDocumentBuilder $xdocument; public ZugferdDocumentBuilder $xdocument;
public function __construct(public object $document, private readonly bool $returnObject = false, private array $tax_map = [])
/**
* __construct
*
* \App\Models\Invoice | \App\Models\Quote | \App\Models\PurchaseOrder | \App\Models\Credit $document
* @param bool $returnObject
* @param array $tax_map
* @return void
*/
public function __construct(public \App\Models\Invoice | \App\Models\Quote | \App\Models\PurchaseOrder | \App\Models\Credit $document, private readonly bool $returnObject = false, private array $tax_map = [])
{ {
} }

View File

@ -309,6 +309,11 @@ class EmailDefaults
/** Purchase Order / Invoice / Credit / Quote PDF */ /** Purchase Order / Invoice / Credit / Quote PDF */
if ($this->email->email_object->settings->pdf_email_attachment) { if ($this->email->email_object->settings->pdf_email_attachment) {
$pdf = ((new CreateRawPdf($this->email->email_object->invitation))->handle()); $pdf = ((new CreateRawPdf($this->email->email_object->invitation))->handle());
if($this->email->email_object->settings->embed_documents && ($this->email->email_object->entity->documents()->where('is_public', true)->count() > 0 || $this->email->email_object->entity->company->documents()->where('is_public', true)->count() > 0)) {
$pdf = $this->email->email_object->entity->documentMerge($pdf);
}
$this->email->email_object->attachments = array_merge($this->email->email_object->attachments, [['file' => base64_encode($pdf), 'name' => $this->email->email_object->entity->numberFormatter().'.pdf']]); $this->email->email_object->attachments = array_merge($this->email->email_object->attachments, [['file' => base64_encode($pdf), 'name' => $this->email->email_object->entity->numberFormatter().'.pdf']]);
} }

View File

@ -434,7 +434,7 @@ class InvoiceService
$balance = $this->invoice->balance; $balance = $this->invoice->balance;
//return early if type three does not exist. //return early if type three does not exist.
if (! collect($this->invoice->line_items)->contains('type_id', 3)) { if ($this->invoice->status_id == Invoice::STATUS_PAID || ! collect($this->invoice->line_items)->contains('type_id', 3)) {
return $this; return $this;
} }

View File

@ -103,7 +103,6 @@
"twig/intl-extra": "^3.7", "twig/intl-extra": "^3.7",
"twig/twig": "^3", "twig/twig": "^3",
"twilio/sdk": "^6.40", "twilio/sdk": "^6.40",
"webpatser/laravel-countries": "dev-master#75992ad",
"wildbit/postmark-php": "^4.0" "wildbit/postmark-php": "^4.0"
}, },
"require-dev": { "require-dev": {

104
composer.lock generated
View File

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically" "This file is @generated automatically"
], ],
"content-hash": "a1bbd8c63e7c792674843dc50a435d86", "content-hash": "a52dad71889f0bfe78dca5f02e7373c5",
"packages": [ "packages": [
{ {
"name": "adrienrn/php-mimetyper", "name": "adrienrn/php-mimetyper",
@ -1385,16 +1385,16 @@
}, },
{ {
"name": "aws/aws-sdk-php", "name": "aws/aws-sdk-php",
"version": "3.311.1", "version": "3.311.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/aws/aws-sdk-php.git", "url": "https://github.com/aws/aws-sdk-php.git",
"reference": "90218b9372469babf294f97bdd764c9d47ec8a57" "reference": "731cd73062909594c5f7443413c4c4c40ed1c25c"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/90218b9372469babf294f97bdd764c9d47ec8a57", "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/731cd73062909594c5f7443413c4c4c40ed1c25c",
"reference": "90218b9372469babf294f97bdd764c9d47ec8a57", "reference": "731cd73062909594c5f7443413c4c4c40ed1c25c",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -1474,9 +1474,9 @@
"support": { "support": {
"forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80", "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
"issues": "https://github.com/aws/aws-sdk-php/issues", "issues": "https://github.com/aws/aws-sdk-php/issues",
"source": "https://github.com/aws/aws-sdk-php/tree/3.311.1" "source": "https://github.com/aws/aws-sdk-php/tree/3.311.2"
}, },
"time": "2024-06-06T18:05:50+00:00" "time": "2024-06-07T18:05:33+00:00"
}, },
{ {
"name": "bacon/bacon-qr-code", "name": "bacon/bacon-qr-code",
@ -4630,16 +4630,16 @@
}, },
{ {
"name": "horstoeko/zugferd", "name": "horstoeko/zugferd",
"version": "v1.0.53", "version": "v1.0.54",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/horstoeko/zugferd.git", "url": "https://github.com/horstoeko/zugferd.git",
"reference": "939e93ab2e84ec476735e5957f4db7e7d58880c3" "reference": "91547c8aee9d8da22568b90d7cedfaba15373ebe"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/horstoeko/zugferd/zipball/939e93ab2e84ec476735e5957f4db7e7d58880c3", "url": "https://api.github.com/repos/horstoeko/zugferd/zipball/91547c8aee9d8da22568b90d7cedfaba15373ebe",
"reference": "939e93ab2e84ec476735e5957f4db7e7d58880c3", "reference": "91547c8aee9d8da22568b90d7cedfaba15373ebe",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -4699,9 +4699,9 @@
], ],
"support": { "support": {
"issues": "https://github.com/horstoeko/zugferd/issues", "issues": "https://github.com/horstoeko/zugferd/issues",
"source": "https://github.com/horstoeko/zugferd/tree/v1.0.53" "source": "https://github.com/horstoeko/zugferd/tree/v1.0.54"
}, },
"time": "2024-06-05T16:49:22+00:00" "time": "2024-06-07T07:47:18+00:00"
}, },
{ {
"name": "http-interop/http-factory-guzzle", "name": "http-interop/http-factory-guzzle",
@ -5076,12 +5076,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/invoiceninja/einvoice.git", "url": "https://github.com/invoiceninja/einvoice.git",
"reference": "1b9a488d65715272941f1ae6ddfe2d94ad25c2c1" "reference": "d77f090f8a5e954ee27e3dd02a1e071a40639978"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/invoiceninja/einvoice/zipball/1b9a488d65715272941f1ae6ddfe2d94ad25c2c1", "url": "https://api.github.com/repos/invoiceninja/einvoice/zipball/d77f090f8a5e954ee27e3dd02a1e071a40639978",
"reference": "1b9a488d65715272941f1ae6ddfe2d94ad25c2c1", "reference": "d77f090f8a5e954ee27e3dd02a1e071a40639978",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -5123,7 +5123,7 @@
"source": "https://github.com/invoiceninja/einvoice/tree/main", "source": "https://github.com/invoiceninja/einvoice/tree/main",
"issues": "https://github.com/invoiceninja/einvoice/issues" "issues": "https://github.com/invoiceninja/einvoice/issues"
}, },
"time": "2024-06-07T04:32:09+00:00" "time": "2024-06-07T10:37:13+00:00"
}, },
{ {
"name": "invoiceninja/inspector", "name": "invoiceninja/inspector",
@ -16394,73 +16394,6 @@
}, },
"time": "2022-06-03T18:03:27+00:00" "time": "2022-06-03T18:03:27+00:00"
}, },
{
"name": "webpatser/laravel-countries",
"version": "dev-master",
"source": {
"type": "git",
"url": "https://github.com/webpatser/laravel-countries.git",
"reference": "75992ad"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/webpatser/laravel-countries/zipball/75992ad",
"reference": "75992ad",
"shasum": ""
},
"require": {
"php": ">=5.3.0"
},
"default-branch": true,
"type": "library",
"extra": {
"laravel": {
"providers": [
"Webpatser\\Countries\\CountriesServiceProvider"
],
"aliases": {
"Countries": "Webpatser\\Countries\\CountriesFacade"
}
}
},
"autoload": {
"psr-0": {
"Webpatser\\Countries": "src/"
},
"classmap": [
"src/commands"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Christoph Kempen",
"email": "christoph@downsized.nl",
"homepage": "http://downsized.nl/",
"role": "developer"
},
{
"name": "Paul Kievits",
"role": "developer"
}
],
"description": "Laravel Countries is a bundle for Laravel, providing Almost ISO 3166_2, 3166_3, currency, Capital and more for all countries.",
"homepage": "https://github.com/webpatser/laravel-countries",
"keywords": [
"countries",
"iso_3166_2",
"iso_3166_3",
"laravel"
],
"support": {
"issues": "https://github.com/webpatser/laravel-countries/issues",
"source": "https://github.com/webpatser/laravel-countries"
},
"time": "2023-02-08T11:09:34+00:00"
},
{ {
"name": "wildbit/postmark-php", "name": "wildbit/postmark-php",
"version": "v4.0.5", "version": "v4.0.5",
@ -20732,8 +20665,7 @@
"stability-flags": { "stability-flags": {
"horstoeko/orderx": 20, "horstoeko/orderx": 20,
"invoiceninja/einvoice": 20, "invoiceninja/einvoice": 20,
"socialiteproviders/apple": 20, "socialiteproviders/apple": 20
"webpatser/laravel-countries": 20
}, },
"prefer-stable": true, "prefer-stable": true,
"prefer-lowest": false, "prefer-lowest": false,

View File

@ -183,7 +183,6 @@ return [
/* /*
* Dependency Service Providers * Dependency Service Providers
*/ */
'Webpatser\Countries\CountriesServiceProvider',
/* /*
* Package Service Providers... * Package Service Providers...
@ -217,7 +216,6 @@ return [
'aliases' => Facade::defaultAliases()->merge([ 'aliases' => Facade::defaultAliases()->merge([
'Collector' => Turbo124\Beacon\CollectorFacade::class, 'Collector' => Turbo124\Beacon\CollectorFacade::class,
// 'Countries' => 'Webpatser\Countries\CountriesFacade',
'CustomMessage' => App\Utils\ClientPortal\CustomMessage\CustomMessageFacade::class, 'CustomMessage' => App\Utils\ClientPortal\CustomMessage\CustomMessageFacade::class,
'Redis' => Illuminate\Support\Facades\Redis::class, 'Redis' => Illuminate\Support\Facades\Redis::class,
])->toArray(), ])->toArray(),

View File

@ -17,8 +17,8 @@ return [
'require_https' => env('REQUIRE_HTTPS', true), 'require_https' => env('REQUIRE_HTTPS', true),
'app_url' => rtrim(env('APP_URL', ''), '/'), 'app_url' => rtrim(env('APP_URL', ''), '/'),
'app_domain' => env('APP_DOMAIN', 'invoicing.co'), 'app_domain' => env('APP_DOMAIN', 'invoicing.co'),
'app_version' => env('APP_VERSION', '5.9.4'), 'app_version' => env('APP_VERSION', '5.9.5'),
'app_tag' => env('APP_TAG', '5.9.4'), 'app_tag' => env('APP_TAG', '5.9.5'),
'minimum_client_version' => '5.0.16', 'minimum_client_version' => '5.0.16',
'terms_version' => '1.0.1', 'terms_version' => '1.0.1',
'api_secret' => env('API_SECRET', false), 'api_secret' => env('API_SECRET', false),

File diff suppressed because one or more lines are too long

View File

@ -192,7 +192,7 @@ $lang = array(
'removed_logo' => 'تمت إزالة الشعار بنجاح', 'removed_logo' => 'تمت إزالة الشعار بنجاح',
'sent_message' => 'تم إرسال الرسالة بنجاح', 'sent_message' => 'تم إرسال الرسالة بنجاح',
'invoice_error' => 'يرجى التأكد من تحديد العميل وتصحيح أي أخطاء', 'invoice_error' => 'يرجى التأكد من تحديد العميل وتصحيح أي أخطاء',
'limit_clients' => 'لقد وصلت إلى حد العميل :count للحسابات المجانية. تهانينا على نجاحك!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'كان هناك خطأ في معالجة الدفع الخاص بك. الرجاء معاودة المحاولة في وقت لاحق', 'payment_error' => 'كان هناك خطأ في معالجة الدفع الخاص بك. الرجاء معاودة المحاولة في وقت لاحق',
'registration_required' => 'التسجيل مطلوب', 'registration_required' => 'التسجيل مطلوب',
'confirmation_required' => 'يرجى تأكيد عنوان بريدك الإلكتروني: رابط لإعادة إرسال رسالة التأكيد عبر البريد الإلكتروني.', 'confirmation_required' => 'يرجى تأكيد عنوان بريدك الإلكتروني: رابط لإعادة إرسال رسالة التأكيد عبر البريد الإلكتروني.',
@ -5128,7 +5128,7 @@ $lang = array(
'payment_refund_receipt' => 'إيصال استرداد المبلغ رقم :number', 'payment_refund_receipt' => 'إيصال استرداد المبلغ رقم :number',
'payment_receipt' => 'إيصال الدفع رقم :number', 'payment_receipt' => 'إيصال الدفع رقم :number',
'load_template_description' => 'سيتم تطبيق القالب على ما يلي:', 'load_template_description' => 'سيتم تطبيق القالب على ما يلي:',
'run_template' => 'تشغيل القالب', 'run_template' => 'Run Template',
'statement_design' => 'تصميم البيان', 'statement_design' => 'تصميم البيان',
'delivery_note_design' => 'تصميم مذكرة التسليم', 'delivery_note_design' => 'تصميم مذكرة التسليم',
'payment_receipt_design' => 'تصميم إيصال الدفع', 'payment_receipt_design' => 'تصميم إيصال الدفع',
@ -5281,6 +5281,41 @@ $lang = array(
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'El logo s\'ha eliminat correctament', 'removed_logo' => 'El logo s\'ha eliminat correctament',
'sent_message' => 'S\'ha enviat el missatge satisfactòriament', 'sent_message' => 'S\'ha enviat el missatge satisfactòriament',
'invoice_error' => 'Per favor, assegura\'t de seleccionar un client, i corregeix els errors', 'invoice_error' => 'Per favor, assegura\'t de seleccionar un client, i corregeix els errors',
'limit_clients' => 'Heu arribat al límit de client :count als comptes gratuïts. Felicitats pel teu èxit!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Ha hagut un error al processar el teu pagament. Per favor, torna-ho a intentar més tard.', 'payment_error' => 'Ha hagut un error al processar el teu pagament. Per favor, torna-ho a intentar més tard.',
'registration_required' => 'Registration Required', 'registration_required' => 'Registration Required',
'confirmation_required' => 'Per favor, confirma la teua adreça de correu electrònic, :link per a reenviar el missatge de confirmació.', 'confirmation_required' => 'Per favor, confirma la teua adreça de correu electrònic, :link per a reenviar el missatge de confirmació.',
@ -5147,7 +5147,7 @@ $lang = array(
'payment_refund_receipt' => 'Rebut de devolució del pagament # :number', 'payment_refund_receipt' => 'Rebut de devolució del pagament # :number',
'payment_receipt' => 'Rebut de pagament # :number', 'payment_receipt' => 'Rebut de pagament # :number',
'load_template_description' => 'La plantilla s&#39;aplicarà a:', 'load_template_description' => 'La plantilla s&#39;aplicarà a:',
'run_template' => 'Executar plantilla', 'run_template' => 'Run Template',
'statement_design' => 'Disseny de declaracions', 'statement_design' => 'Disseny de declaracions',
'delivery_note_design' => 'Disseny de albarans', 'delivery_note_design' => 'Disseny de albarans',
'payment_receipt_design' => 'Disseny del rebut de pagament', 'payment_receipt_design' => 'Disseny del rebut de pagament',
@ -5300,6 +5300,41 @@ $lang = array(
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -2196,7 +2196,7 @@ $lang = array(
'mailgun_private_key' => 'Mailgun privat nøgle', 'mailgun_private_key' => 'Mailgun privat nøgle',
'brevo_domain' => 'Brevo domæne', 'brevo_domain' => 'Brevo domæne',
'brevo_private_key' => 'Brevo privat nøgle', 'brevo_private_key' => 'Brevo privat nøgle',
'send_test_email' => 'Send Test Email', 'send_test_email' => 'Send test e-mail',
'select_label' => 'Vælg Label', 'select_label' => 'Vælg Label',
'label' => 'Etiket', 'label' => 'Etiket',
'service' => 'Service', 'service' => 'Service',
@ -4028,7 +4028,7 @@ $lang = array(
'user_detached' => 'Bruger løsrevet fra selskabet', 'user_detached' => 'Bruger løsrevet fra selskabet',
'create_webhook_failure' => 'Opret Webhook mislykkedes', 'create_webhook_failure' => 'Opret Webhook mislykkedes',
'payment_message_extended' => 'Tak for din Betaling på :amount for :invoice', 'payment_message_extended' => 'Tak for din Betaling på :amount for :invoice',
'online_payments_minimum_note' => 'Note: Online payments are supported only if amount is larger than $1 or currency equivalent.', 'online_payments_minimum_note' => 'Bemærk : Online Betalinger understøttes kun, hvis Beløb er større end $1 eller tilsvarende i valuta.',
'payment_token_not_found' => 'Betaling blev ikke fundet, prøv venligst igen. Hvis et problem stadig fortsætter, kan du prøve med en anden Betaling', 'payment_token_not_found' => 'Betaling blev ikke fundet, prøv venligst igen. Hvis et problem stadig fortsætter, kan du prøve med en anden Betaling',
'vendor_address1' => 'Sælger Gade', 'vendor_address1' => 'Sælger Gade',
'vendor_address2' => 'Sælger Apt/Suite', 'vendor_address2' => 'Sælger Apt/Suite',
@ -4169,7 +4169,7 @@ $lang = array(
'one_time_purchases' => 'Engangskøb', 'one_time_purchases' => 'Engangskøb',
'recurring_purchases' => 'Gentagen indkøb', 'recurring_purchases' => 'Gentagen indkøb',
'you_might_be_interested_in_following' => 'Du kan være interesseret i følgende', 'you_might_be_interested_in_following' => 'Du kan være interesseret i følgende',
'quotes_with_status_sent_can_be_approved' => 'Only quotes with "Sent" status can be approved. Expired quotes cannot be approved.', 'quotes_with_status_sent_can_be_approved' => 'Kun tilbud med status "Sendt" kan være godkendt. Udløbede tilbud can ikke blive godkendt',
'no_quotes_available_for_download' => 'Ingen tilbud tilgængelige for download.', 'no_quotes_available_for_download' => 'Ingen tilbud tilgængelige for download.',
'copyright' => 'ophavsret', 'copyright' => 'ophavsret',
'user_created_user' => ':user oprettet :created_user på :time', 'user_created_user' => ':user oprettet :created_user på :time',
@ -5295,10 +5295,45 @@ $lang = array(
'rappen_rounding' => 'Rappen afrunding', 'rappen_rounding' => 'Rappen afrunding',
'rappen_rounding_help' => 'Rund Beløb til 5 øre', 'rappen_rounding_help' => 'Rund Beløb til 5 øre',
'assign_group' => 'Tildel gruppe', 'assign_group' => 'Tildel gruppe',
'paypal_advanced_cards' => 'Advanced Card Payments', 'paypal_advanced_cards' => 'Avancerede Kort Betalinger',
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domæne (valgfrit)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'fx. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'fx. smtp.gmail.com',
'always_show_required_fields' => 'Tillad visning af obligatoriske formularfelter',
'always_show_required_fields_help' => 'Vis altid de obligatoriske formularfelter ved kassen',
'advanced_cards' => 'Avancerede Kort',
'activity_140' => 'Kontoudtog sendt til :client',
'invoice_net_amount' => 'Faktura netto beløb',
'round_to_minutes' => 'Afrund til minutter',
'1_second' => '1 Sekund',
'1_minute' => '1 Minut',
'5_minutes' => '5 Minutter',
'15_minutes' => '15 Minutter',
'30_minutes' => '30 Minutter',
'1_hour' => '1 Time',
'1_day' => '1 Dag',
'round_tasks' => 'Opgave afrundingsretning',
'round_tasks_help' => 'Afrund opgave tider op eller ned.',
'direction' => 'Retning',
'round_up' => 'Afrund op',
'round_down' => 'Afrund ned',
'task_round_to_nearest' => 'Afrund til nærmeste',
'task_round_to_nearest_help' => 'Afrundingsinterval for opgaven.',
'bulk_updated' => 'Data opdateret succesfuldt',
'bulk_update' => 'Bulk opdater',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Penge',
'web_app' => 'Web App',
'desktop_app' => 'Skrivebords App',
'disconnected' => 'Afbrudt',
'reconnect' => 'Genoprrettet',
'e_invoice_settings' => 'E-faktura indstillinger',
'btcpay_refund_subject' => 'Refunderer din faktura via BTCPay',
'btcpay_refund_body' => 'En refundering til dig er blevet udstedt. For at gøre krav på det via BTCPay, klik venligst på dette link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -200,7 +200,7 @@ $lang = array(
'removed_logo' => 'Logo erfolgreich entfernt', 'removed_logo' => 'Logo erfolgreich entfernt',
'sent_message' => 'Nachricht erfolgreich versendet', 'sent_message' => 'Nachricht erfolgreich versendet',
'invoice_error' => 'Bitte stelle sicher, dass ein Kunde ausgewählt und alle Fehler behoben wurden', 'invoice_error' => 'Bitte stelle sicher, dass ein Kunde ausgewählt und alle Fehler behoben wurden',
'limit_clients' => 'Sie haben das Kunde von :count für kostenlose Konten erreicht. Herzlichen Glückwunsch zu Ihrem Erfolg!', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Es ist ein Fehler während der Zahlung aufgetreten. Bitte versuche es später noch einmal.', 'payment_error' => 'Es ist ein Fehler während der Zahlung aufgetreten. Bitte versuche es später noch einmal.',
'registration_required' => 'Registrierung erforderlich', 'registration_required' => 'Registrierung erforderlich',
'confirmation_required' => 'Bitte verifiziern Sie Ihre E-Mail-Adresse, :link um die E-Mail-Bestätigung erneut zu senden.', 'confirmation_required' => 'Bitte verifiziern Sie Ihre E-Mail-Adresse, :link um die E-Mail-Bestätigung erneut zu senden.',
@ -5151,7 +5151,7 @@ Leistungsempfängers',
'payment_refund_receipt' => 'Zahlungs-Rückerstattungsbeleg #:number', 'payment_refund_receipt' => 'Zahlungs-Rückerstattungsbeleg #:number',
'payment_receipt' => 'Zahlungsbeleg #:number', 'payment_receipt' => 'Zahlungsbeleg #:number',
'load_template_description' => 'Das Template wird auf Folgendes angewendet:', 'load_template_description' => 'Das Template wird auf Folgendes angewendet:',
'run_template' => 'Template anwenden', 'run_template' => 'Run Template',
'statement_design' => 'Statement-Design', 'statement_design' => 'Statement-Design',
'delivery_note_design' => 'Lieferschein Design', 'delivery_note_design' => 'Lieferschein Design',
'payment_receipt_design' => 'Zahlungsbeleg Design', 'payment_receipt_design' => 'Zahlungsbeleg Design',
@ -5310,18 +5310,20 @@ Leistungsempfängers',
'activity_140' => 'Statement sent to :client', 'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Rechnungsnettobetrag', 'invoice_net_amount' => 'Rechnungsnettobetrag',
'round_to_minutes' => 'Auf Minuten runden', 'round_to_minutes' => 'Auf Minuten runden',
'1_second' => '1 Second',
'1_minute' => '1 Minute', '1_minute' => '1 Minute',
'5_minutes' => '5 Minuten', '5_minutes' => '5 Minuten',
'15_minutes' => '15 Minuten', '15_minutes' => '15 Minuten',
'30_minutes' => '30 Minuten', '30_minutes' => '30 Minuten',
'1_hour' => '1 Stunde', '1_hour' => '1 Stunde',
'1_day' => '1 Tag', '1_day' => '1 Tag',
'round_tasks' => 'Round Tasks', 'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Zeitintervalle beim speichern runden', 'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Richtung', 'direction' => 'Richtung',
'round_up' => 'Aufrunden', 'round_up' => 'Aufrunden',
'round_down' => 'Abrunden', 'round_down' => 'Abrunden',
'task_round_to_nearest' => 'Round To Nearest', 'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Daten erfolgreich aktualisiert', 'bulk_updated' => 'Daten erfolgreich aktualisiert',
'bulk_update' => 'Bulk Update', 'bulk_update' => 'Bulk Update',
'calculate' => 'Berechnen', 'calculate' => 'Berechnen',
@ -5329,6 +5331,14 @@ Leistungsempfängers',
'money' => 'Money', 'money' => 'Money',
'web_app' => 'Webanwendung', 'web_app' => 'Webanwendung',
'desktop_app' => 'Desktopanwendung', 'desktop_app' => 'Desktopanwendung',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -2695,7 +2695,7 @@ $lang = array(
'no_assets' => 'No images, drag to upload', 'no_assets' => 'No images, drag to upload',
'add_image' => 'Add Image', 'add_image' => 'Add Image',
'select_image' => 'Select Image', 'select_image' => 'Select Image',
'upgrade_to_upload_images' => 'Upgrade to the Enterprise Plan to upload images', 'upgrade_to_upload_images' => 'Upgrade to the Enterprise Plan to upload files & images',
'delete_image' => 'Delete Image', 'delete_image' => 'Delete Image',
'delete_image_help' => 'Warning: deleting the image will remove it from all proposals.', 'delete_image_help' => 'Warning: deleting the image will remove it from all proposals.',
'amount_variable_help' => 'Note: the invoice $amount field will use the partial/deposit field if set otherwise it will use the invoice balance.', 'amount_variable_help' => 'Note: the invoice $amount field will use the partial/deposit field if set otherwise it will use the invoice balance.',
@ -4437,7 +4437,7 @@ $lang = array(
'client_shipping_country' => 'Client Shipping Country', 'client_shipping_country' => 'Client Shipping Country',
'load_pdf' => 'Load PDF', 'load_pdf' => 'Load PDF',
'start_free_trial' => 'Start Free Trial', 'start_free_trial' => 'Start Free Trial',
'start_free_trial_message' => 'Start your FREE 14 day trial of the pro plan', 'start_free_trial_message' => 'Start your FREE 14 day trial of the Pro Plan',
'due_on_receipt' => 'Due on Receipt', 'due_on_receipt' => 'Due on Receipt',
'is_paid' => 'Is Paid', 'is_paid' => 'Is Paid',
'age_group_paid' => 'Paid', 'age_group_paid' => 'Paid',

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Logo eliminado con éxito', 'removed_logo' => 'Logo eliminado con éxito',
'sent_message' => 'Mensaje enviado con éxito', 'sent_message' => 'Mensaje enviado con éxito',
'invoice_error' => 'Seleccionar cliente y corregir errores.', 'invoice_error' => 'Seleccionar cliente y corregir errores.',
'limit_clients' => 'Has alcanzado el límite de clientes :count en cuentas gratuitas. ¡Felicidades por tu éxito!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Ha habido un error en el proceso de tu pago. Inténtalo de nuevo más tarde.', 'payment_error' => 'Ha habido un error en el proceso de tu pago. Inténtalo de nuevo más tarde.',
'registration_required' => 'Se requiere registro', 'registration_required' => 'Se requiere registro',
'confirmation_required' => 'Por favor confirma tu dirección de correo electrónico, :link para reenviar el correo de confirmación.', 'confirmation_required' => 'Por favor confirma tu dirección de correo electrónico, :link para reenviar el correo de confirmación.',
@ -5146,7 +5146,7 @@ $lang = array(
'payment_refund_receipt' => 'Recibo de reembolso de pago n.° :number', 'payment_refund_receipt' => 'Recibo de reembolso de pago n.° :number',
'payment_receipt' => 'Recibo de pago # :number', 'payment_receipt' => 'Recibo de pago # :number',
'load_template_description' => 'La plantilla se aplicará a lo siguiente:', 'load_template_description' => 'La plantilla se aplicará a lo siguiente:',
'run_template' => 'Ejecutar plantilla', 'run_template' => 'Run Template',
'statement_design' => 'Diseño de declaración', 'statement_design' => 'Diseño de declaración',
'delivery_note_design' => 'Diseño de albarán de entrega', 'delivery_note_design' => 'Diseño de albarán de entrega',
'payment_receipt_design' => 'Diseño de recibo de pago', 'payment_receipt_design' => 'Diseño de recibo de pago',
@ -5299,6 +5299,41 @@ $lang = array(
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Logo eliminado correctamente', 'removed_logo' => 'Logo eliminado correctamente',
'sent_message' => 'Mensaje enviado correctamente', 'sent_message' => 'Mensaje enviado correctamente',
'invoice_error' => 'Seleccionar cliente y corregir errores.', 'invoice_error' => 'Seleccionar cliente y corregir errores.',
'limit_clients' => 'Has alcanzado el límite de :count clientes en cuentas gratuitas. ¡Felicidades por tu éxito!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Ha habido un error en el proceso de tu Pago. Inténtalo de nuevo más tarde.', 'payment_error' => 'Ha habido un error en el proceso de tu Pago. Inténtalo de nuevo más tarde.',
'registration_required' => 'Se requiere registro', 'registration_required' => 'Se requiere registro',
'confirmation_required' => 'Por favor, confirma tu dirección de correo electrónico, :link para reenviar el email de confirmación.', 'confirmation_required' => 'Por favor, confirma tu dirección de correo electrónico, :link para reenviar el email de confirmación.',
@ -5144,7 +5144,7 @@ De lo contrario, este campo deberá dejarse en blanco.',
'payment_refund_receipt' => 'Recibo de reembolso de pago Nº :number', 'payment_refund_receipt' => 'Recibo de reembolso de pago Nº :number',
'payment_receipt' => 'Recibo de pago Nº :number', 'payment_receipt' => 'Recibo de pago Nº :number',
'load_template_description' => 'La plantilla se aplicará a lo siguiente:', 'load_template_description' => 'La plantilla se aplicará a lo siguiente:',
'run_template' => 'Ejecutar plantilla', 'run_template' => 'Run Template',
'statement_design' => 'Diseño de Estado de Cuenta', 'statement_design' => 'Diseño de Estado de Cuenta',
'delivery_note_design' => 'Diseño de albarán de entrega', 'delivery_note_design' => 'Diseño de albarán de entrega',
'payment_receipt_design' => 'Diseño de recibo de pago', 'payment_receipt_design' => 'Diseño de recibo de pago',
@ -5297,6 +5297,41 @@ De lo contrario, este campo deberá dejarse en blanco.',
'local_domain_help' => 'Dominio EHLO (opcional)', 'local_domain_help' => 'Dominio EHLO (opcional)',
'port_help' => 'Ej. 25.587.465', 'port_help' => 'Ej. 25.587.465',
'host_help' => 'Ej. smtp.gmail.com', 'host_help' => 'Ej. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Logo supprimé avec succès', 'removed_logo' => 'Logo supprimé avec succès',
'sent_message' => 'Message envoyé avec succès', 'sent_message' => 'Message envoyé avec succès',
'invoice_error' => 'Veuillez vous assurer de sélectionner un client et de corriger les erreurs', 'invoice_error' => 'Veuillez vous assurer de sélectionner un client et de corriger les erreurs',
'limit_clients' => 'Vous avez atteint la limite de clients :count sur les comptes gratuits. Félicitations pour votre succès !.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Il y a eu une erreur lors du traitement de votre paiement. Veuillez réessayer ultérieurement', 'payment_error' => 'Il y a eu une erreur lors du traitement de votre paiement. Veuillez réessayer ultérieurement',
'registration_required' => 'Enregistrement Requis', 'registration_required' => 'Enregistrement Requis',
'confirmation_required' => 'Veuillez confirmer votre adresse e-mail, :link pour renvoyer l\'e-mail de confirmation.', 'confirmation_required' => 'Veuillez confirmer votre adresse e-mail, :link pour renvoyer l\'e-mail de confirmation.',
@ -5147,7 +5147,7 @@ Lorsque les montant apparaîtront sur votre relevé, veuillez revenir sur cette
'payment_refund_receipt' => 'Reçu de remboursement de paiement # :number', 'payment_refund_receipt' => 'Reçu de remboursement de paiement # :number',
'payment_receipt' => 'Reçu de paiement # :number', 'payment_receipt' => 'Reçu de paiement # :number',
'load_template_description' => 'Le modèle sera appliqué aux éléments suivants :', 'load_template_description' => 'Le modèle sera appliqué aux éléments suivants :',
'run_template' => 'Exécuter le modèle', 'run_template' => 'Run Template',
'statement_design' => 'Conception de la déclaration', 'statement_design' => 'Conception de la déclaration',
'delivery_note_design' => 'Conception du bon de livraison', 'delivery_note_design' => 'Conception du bon de livraison',
'payment_receipt_design' => 'Conception du reçu de paiement', 'payment_receipt_design' => 'Conception du reçu de paiement',
@ -5300,6 +5300,41 @@ Lorsque les montant apparaîtront sur votre relevé, veuillez revenir sur cette
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -5303,18 +5303,20 @@ Lorsque les montant apparaîtront sur votre relevé, veuillez revenir sur cette
'activity_140' => 'État de compte envoyé à :client', 'activity_140' => 'État de compte envoyé à :client',
'invoice_net_amount' => 'Montant net de la facture', 'invoice_net_amount' => 'Montant net de la facture',
'round_to_minutes' => 'Arrondir aux minutes', 'round_to_minutes' => 'Arrondir aux minutes',
'1_second' => '1 seconde',
'1_minute' => '1 minute', '1_minute' => '1 minute',
'5_minutes' => '5 minutes', '5_minutes' => '5 minutes',
'15_minutes' => '15 minutes', '15_minutes' => '15 minutes',
'30_minutes' => '30 minutes', '30_minutes' => '30 minutes',
'1_hour' => '1 heure', '1_hour' => '1 heure',
'1_day' => '1 jour', '1_day' => '1 jour',
'round_tasks' => 'Arrondir les tâches', 'round_tasks' => 'Direction d\'arrondi des tâches',
'round_tasks_help' => 'Arrondir les intervales à la sauvegarde des tâches', 'round_tasks_help' => 'Arrondir les temps des tâches vers le haut ou vers le bas',
'direction' => 'Direction', 'direction' => 'Direction',
'round_up' => 'Arrondir à hausse', 'round_up' => 'Arrondir à hausse',
'round_down' => 'Arrondir à la baisse', 'round_down' => 'Arrondir à la baisse',
'task_round_to_nearest' => 'Arrondir au plus près', 'task_round_to_nearest' => 'Arrondir au plus près',
'task_round_to_nearest_help' => 'Intervalle d\'arrondi des tâches',
'bulk_updated' => 'Les données ont été mises à jour', 'bulk_updated' => 'Les données ont été mises à jour',
'bulk_update' => 'Mise à jour groupée', 'bulk_update' => 'Mise à jour groupée',
'calculate' => 'Calculer', 'calculate' => 'Calculer',
@ -5325,9 +5327,11 @@ Lorsque les montant apparaîtront sur votre relevé, veuillez revenir sur cette
'disconnected' => 'Déconnecté', 'disconnected' => 'Déconnecté',
'reconnect' => 'Reconnecté', 'reconnect' => 'Reconnecté',
'e_invoice_settings' => 'Paramètres E-Facture', 'e_invoice_settings' => 'Paramètres E-Facture',
'btcpay_refund_subject' => 'Remboursement de votre facture via BTCPay',
'btcpay_refund_body' => 'Un remboursement qui vous est destiné a été émis. Pour le réclamer via BTCPay, veuillez cliquer sur ce lien :',
'currency_mauritanian_ouguiya' => 'Ouguiya mauritanien', 'currency_mauritanian_ouguiya' => 'Ouguiya mauritanien',
'currency_bhutan_ngultrum' => 'Ngultrum Bhoutan', 'currency_bhutan_ngultrum' => 'Ngultrum Bhoutan',
'end_of_month' => 'Fin de mois'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Le logo a été supprimé avec succès', 'removed_logo' => 'Le logo a été supprimé avec succès',
'sent_message' => 'Le message a été envoyé avec succès', 'sent_message' => 'Le message a été envoyé avec succès',
'invoice_error' => 'Veuillez vous assurer de sélectionner un client et de corriger les erreurs', 'invoice_error' => 'Veuillez vous assurer de sélectionner un client et de corriger les erreurs',
'limit_clients' => 'Vous avez atteint la limite de clients :count sur les comptes gratuits. Félicitations pour votre succès !.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Il y a eu une erreur lors du traitement de votre paiement. Veuillez réessayer ultérieurement', 'payment_error' => 'Il y a eu une erreur lors du traitement de votre paiement. Veuillez réessayer ultérieurement',
'registration_required' => 'Inscription requise', 'registration_required' => 'Inscription requise',
'confirmation_required' => 'Veuillez confirmer votre adresse courriel, :link pour renvoyer le courriel de confirmation.', 'confirmation_required' => 'Veuillez confirmer votre adresse courriel, :link pour renvoyer le courriel de confirmation.',
@ -5144,7 +5144,7 @@ Lorsque les montant apparaîtront sur votre relevé, veuillez revenir sur cette
'payment_refund_receipt' => 'Reçu de remboursement de paiement # :number', 'payment_refund_receipt' => 'Reçu de remboursement de paiement # :number',
'payment_receipt' => 'Reçu de paiement # :number', 'payment_receipt' => 'Reçu de paiement # :number',
'load_template_description' => 'Le modèle sera appliqué aux éléments suivants :', 'load_template_description' => 'Le modèle sera appliqué aux éléments suivants :',
'run_template' => 'Exécuter le modèle', 'run_template' => 'Run Template',
'statement_design' => 'Modèle de relevé', 'statement_design' => 'Modèle de relevé',
'delivery_note_design' => 'Conception du bon de livraison', 'delivery_note_design' => 'Conception du bon de livraison',
'payment_receipt_design' => 'Modèle de reçu de paiement', 'payment_receipt_design' => 'Modèle de reçu de paiement',
@ -5297,6 +5297,41 @@ Lorsque les montant apparaîtront sur votre relevé, veuillez revenir sur cette
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -192,7 +192,7 @@ $lang = array(
'removed_logo' => 'לוגו הוסר בהצלחה', 'removed_logo' => 'לוגו הוסר בהצלחה',
'sent_message' => 'הודעה נשלחה בהצלחה', 'sent_message' => 'הודעה נשלחה בהצלחה',
'invoice_error' => 'בבקשה בחר לקוח ותקן כל שגיאה', 'invoice_error' => 'בבקשה בחר לקוח ותקן כל שגיאה',
'limit_clients' => 'הגעת למגבלת הלקוחות :count בחשבונות בחינם. ברכות על הצלחתך!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'אופס קרתה תקלה בביצוע התשלום, נא בבקשה לנסות שוב מאוחר יותר.', 'payment_error' => 'אופס קרתה תקלה בביצוע התשלום, נא בבקשה לנסות שוב מאוחר יותר.',
'registration_required' => 'נדרשת הרשמה', 'registration_required' => 'נדרשת הרשמה',
'confirmation_required' => 'בבקשה לאמת את הכתובת דואר אלקטרוני : קישור לשליחה מחדש הודעת אימות למייל', 'confirmation_required' => 'בבקשה לאמת את הכתובת דואר אלקטרוני : קישור לשליחה מחדש הודעת אימות למייל',
@ -5145,7 +5145,7 @@ $lang = array(
'payment_refund_receipt' => 'קבלה על החזר תשלום מס&#39; :number', 'payment_refund_receipt' => 'קבלה על החזר תשלום מס&#39; :number',
'payment_receipt' => 'קבלה על תשלום מס&#39; :number', 'payment_receipt' => 'קבלה על תשלום מס&#39; :number',
'load_template_description' => 'התבנית תיושם על הבאים:', 'load_template_description' => 'התבנית תיושם על הבאים:',
'run_template' => 'הפעל תבנית', 'run_template' => 'Run Template',
'statement_design' => 'עיצוב הצהרה', 'statement_design' => 'עיצוב הצהרה',
'delivery_note_design' => 'עיצוב תעודת משלוח', 'delivery_note_design' => 'עיצוב תעודת משלוח',
'payment_receipt_design' => 'עיצוב קבלה על תשלום', 'payment_receipt_design' => 'עיצוב קבלה על תשלום',
@ -5298,6 +5298,41 @@ $lang = array(
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -192,7 +192,7 @@ $lang = array(
'removed_logo' => 'Logó eltávolítva', 'removed_logo' => 'Logó eltávolítva',
'sent_message' => 'Üzenet elküldve', 'sent_message' => 'Üzenet elküldve',
'invoice_error' => 'Válasszon ki egy ügyfelet és javítson ki minden hibát', 'invoice_error' => 'Válasszon ki egy ügyfelet és javítson ki minden hibát',
'limit_clients' => 'Elérte az ingyenes fiókok :count ügyféllimitjét. Gratulálok a sikeredhez!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'A fizetés feldolgozásában hibát észleltünk, próbálja újra később', 'payment_error' => 'A fizetés feldolgozásában hibát észleltünk, próbálja újra később',
'registration_required' => 'Regisztráció szükséges', 'registration_required' => 'Regisztráció szükséges',
'confirmation_required' => 'Megerősítés szükséges', 'confirmation_required' => 'Megerősítés szükséges',
@ -5131,7 +5131,7 @@ adva :date',
'payment_refund_receipt' => 'Fizetési visszatérítési nyugta # :number', 'payment_refund_receipt' => 'Fizetési visszatérítési nyugta # :number',
'payment_receipt' => 'Fizetési nyugta # :number', 'payment_receipt' => 'Fizetési nyugta # :number',
'load_template_description' => 'A sablon a következőkre lesz alkalmazva:', 'load_template_description' => 'A sablon a következőkre lesz alkalmazva:',
'run_template' => 'Sablon futtatása', 'run_template' => 'Run Template',
'statement_design' => 'Nyilatkozat tervezése', 'statement_design' => 'Nyilatkozat tervezése',
'delivery_note_design' => 'Szállítólevél tervezése', 'delivery_note_design' => 'Szállítólevél tervezése',
'payment_receipt_design' => 'Fizetési nyugta tervezése', 'payment_receipt_design' => 'Fizetési nyugta tervezése',
@ -5284,6 +5284,41 @@ adva :date',
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Logo rimosso con successo', 'removed_logo' => 'Logo rimosso con successo',
'sent_message' => 'Messaggio inviato con successo', 'sent_message' => 'Messaggio inviato con successo',
'invoice_error' => 'Per favore, assicurati di aver selezionato un cliente e correggi tutti gli errori', 'invoice_error' => 'Per favore, assicurati di aver selezionato un cliente e correggi tutti gli errori',
'limit_clients' => 'Hai raggiunto il limite Cliente :count sugli account gratuiti. Congratulazioni per il tuo successo!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'C\'è stato un errore durante il pagamento. Riprova più tardi, per favore.', 'payment_error' => 'C\'è stato un errore durante il pagamento. Riprova più tardi, per favore.',
'registration_required' => 'Registrazione richiesta', 'registration_required' => 'Registrazione richiesta',
'confirmation_required' => 'Vogliate confermare il vostro indirizzo email, :link per rinviare una email di conferma', 'confirmation_required' => 'Vogliate confermare il vostro indirizzo email, :link per rinviare una email di conferma',
@ -5138,7 +5138,7 @@ $lang = array(
'payment_refund_receipt' => 'Ricevuta di rimborso Pagamento n. :number', 'payment_refund_receipt' => 'Ricevuta di rimborso Pagamento n. :number',
'payment_receipt' => 'Ricevuta Pagamento n. :number', 'payment_receipt' => 'Ricevuta Pagamento n. :number',
'load_template_description' => 'Il modello verrà applicato a quanto segue:', 'load_template_description' => 'Il modello verrà applicato a quanto segue:',
'run_template' => 'Esegui modello', 'run_template' => 'Run Template',
'statement_design' => 'Progettazione di dichiarazioni', 'statement_design' => 'Progettazione di dichiarazioni',
'delivery_note_design' => 'Progettazione Nota di consegna', 'delivery_note_design' => 'Progettazione Nota di consegna',
'payment_receipt_design' => 'Progettazione delle ricevute Pagamento', 'payment_receipt_design' => 'Progettazione delle ricevute Pagamento',
@ -5291,6 +5291,41 @@ $lang = array(
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -192,7 +192,7 @@ $lang = array(
'removed_logo' => 'បានលុបរូបសញ្ញាដោយជោគជ័យ', 'removed_logo' => 'បានលុបរូបសញ្ញាដោយជោគជ័យ',
'sent_message' => 'បានផ្ញើសារដោយជោគជ័យ', 'sent_message' => 'បានផ្ញើសារដោយជោគជ័យ',
'invoice_error' => 'សូមប្រាកដថាអ្នកជ្រើសរើសអតិថិជន និងកែកំហុសណាមួយ។', 'invoice_error' => 'សូមប្រាកដថាអ្នកជ្រើសរើសអតិថិជន និងកែកំហុសណាមួយ។',
'limit_clients' => 'អ្នកបានឈានដល់ដែនកំណត់អតិថិជន :count នៅលើគណនីឥតគិតថ្លៃ។ សូមអបអរសាទរចំពោះជោគជ័យរបស់អ្នក!', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'មានកំហុសក្នុងដំណើរការការបង់ប្រាក់របស់អ្នក។ សូម​ព្យាយាម​ម្តង​ទៀត​នៅ​ពេល​ក្រោយ។', 'payment_error' => 'មានកំហុសក្នុងដំណើរការការបង់ប្រាក់របស់អ្នក។ សូម​ព្យាយាម​ម្តង​ទៀត​នៅ​ពេល​ក្រោយ។',
'registration_required' => 'ការចុះឈ្មោះត្រូវបានទាមទារ', 'registration_required' => 'ការចុះឈ្មោះត្រូវបានទាមទារ',
'confirmation_required' => 'សូមបញ្ជាក់អាសយដ្ឋានអ៊ីមែលរបស់អ្នក :link ដើម្បីផ្ញើអ៊ីមែលបញ្ជាក់ឡើងវិញ។', 'confirmation_required' => 'សូមបញ្ជាក់អាសយដ្ឋានអ៊ីមែលរបស់អ្នក :link ដើម្បីផ្ញើអ៊ីមែលបញ្ជាក់ឡើងវិញ។',
@ -5127,7 +5127,7 @@ $lang = array(
'payment_refund_receipt' => 'បង្កាន់ដៃការសងប្រាក់វិញ # :number', 'payment_refund_receipt' => 'បង្កាន់ដៃការសងប្រាក់វិញ # :number',
'payment_receipt' => 'បង្កាន់ដៃបង់ប្រាក់ # :number', 'payment_receipt' => 'បង្កាន់ដៃបង់ប្រាក់ # :number',
'load_template_description' => 'គំរូនឹងត្រូវបានអនុវត្តចំពោះដូចខាងក្រោម៖', 'load_template_description' => 'គំរូនឹងត្រូវបានអនុវត្តចំពោះដូចខាងក្រោម៖',
'run_template' => 'ដំណើរការគំរូ', 'run_template' => 'Run Template',
'statement_design' => 'ការរចនាសេចក្តីថ្លែងការណ៍', 'statement_design' => 'ការរចនាសេចក្តីថ្លែងការណ៍',
'delivery_note_design' => 'ការរចនាកំណត់ចំណាំដឹកជញ្ជូន', 'delivery_note_design' => 'ការរចនាកំណត់ចំណាំដឹកជញ្ជូន',
'payment_receipt_design' => 'ការរចនាបង្កាន់ដៃបង់ប្រាក់', 'payment_receipt_design' => 'ការរចនាបង្កាន់ដៃបង់ប្រាក់',
@ -5280,6 +5280,41 @@ $lang = array(
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'ລຶບໂລໂກ້ສຳເລັດແລ້ວ', 'removed_logo' => 'ລຶບໂລໂກ້ສຳເລັດແລ້ວ',
'sent_message' => 'ສົ່ງຂໍ້ຄວາມສຳເລັດແລ້ວ', 'sent_message' => 'ສົ່ງຂໍ້ຄວາມສຳເລັດແລ້ວ',
'invoice_error' => 'ກະລຸນາໃຫ້ແນ່ໃຈວ່າເລືອກລູກຄ້າແລະແກ້ໄຂຂໍ້ຜິດພາດຕ່າງໆ', 'invoice_error' => 'ກະລຸນາໃຫ້ແນ່ໃຈວ່າເລືອກລູກຄ້າແລະແກ້ໄຂຂໍ້ຜິດພາດຕ່າງໆ',
'limit_clients' => 'ທ່ານໄດ້ເຖິງຂີດຈຳກັດລູກຄ້າ :count ໃນບັນຊີຟຣີ. ຂໍສະແດງຄວາມຍິນດີກັບຄວາມສໍາເລັດຂອງເຈົ້າ!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'ມີຄວາມຜິດພາດໃນການປະມວນຜົນການຈ່າຍເງິນຂອງທ່ານ. ກະລຸນາລອງໃໝ່ໃນພາຍຫຼັງ.', 'payment_error' => 'ມີຄວາມຜິດພາດໃນການປະມວນຜົນການຈ່າຍເງິນຂອງທ່ານ. ກະລຸນາລອງໃໝ່ໃນພາຍຫຼັງ.',
'registration_required' => 'ຕ້ອງລົງທະບຽນ', 'registration_required' => 'ຕ້ອງລົງທະບຽນ',
'confirmation_required' => 'ກະລຸນາຢືນຢັນທີ່ຢູ່ອີເມວຂອງເຈົ້າ, :ລິ້ງເພື່ອສົ່ງອີເມວຢືນຢັນຄືນໃໝ່.', 'confirmation_required' => 'ກະລຸນາຢືນຢັນທີ່ຢູ່ອີເມວຂອງເຈົ້າ, :ລິ້ງເພື່ອສົ່ງອີເມວຢືນຢັນຄືນໃໝ່.',
@ -5147,7 +5147,7 @@ $lang = array(
'payment_refund_receipt' => 'ໃບຮັບເງິນຄືນການຈ່າຍເງິນ # : ໝາຍເລກ', 'payment_refund_receipt' => 'ໃບຮັບເງິນຄືນການຈ່າຍເງິນ # : ໝາຍເລກ',
'payment_receipt' => 'ໃບຮັບເງິນ # : ໝາຍເລກ', 'payment_receipt' => 'ໃບຮັບເງິນ # : ໝາຍເລກ',
'load_template_description' => 'ແມ່ແບບຈະຖືກນໍາໃຊ້ກັບດັ່ງຕໍ່ໄປນີ້:', 'load_template_description' => 'ແມ່ແບບຈະຖືກນໍາໃຊ້ກັບດັ່ງຕໍ່ໄປນີ້:',
'run_template' => 'ແລ່ນແມ່ແບບ', 'run_template' => 'Run Template',
'statement_design' => 'ການອອກແບບຖະແຫຼງການ', 'statement_design' => 'ການອອກແບບຖະແຫຼງການ',
'delivery_note_design' => 'ການອອກແບບບັນທຶກການຈັດສົ່ງ', 'delivery_note_design' => 'ການອອກແບບບັນທຶກການຈັດສົ່ງ',
'payment_receipt_design' => 'ການອອກແບບໃບຮັບເງິນ', 'payment_receipt_design' => 'ການອອກແບບໃບຮັບເງິນ',
@ -5300,6 +5300,41 @@ $lang = array(
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Het logo is verwijderd', 'removed_logo' => 'Het logo is verwijderd',
'sent_message' => 'Het bericht is verzonden', 'sent_message' => 'Het bericht is verzonden',
'invoice_error' => 'Selecteer een klant en verbeter eventuele fouten', 'invoice_error' => 'Selecteer een klant en verbeter eventuele fouten',
'limit_clients' => 'U heeft de klantlimiet van :count voor gratis accounts bereikt. Gefeliciteerd met je succes!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Er was een fout bij het verwerken van de betaling. Probeer het later opnieuw.', 'payment_error' => 'Er was een fout bij het verwerken van de betaling. Probeer het later opnieuw.',
'registration_required' => 'Registratie verplicht', 'registration_required' => 'Registratie verplicht',
'confirmation_required' => 'Bevestig het e-mailadres, :link om de bevestigingsmail opnieuw te ontvangen.', 'confirmation_required' => 'Bevestig het e-mailadres, :link om de bevestigingsmail opnieuw te ontvangen.',
@ -5147,7 +5147,7 @@ Email: :email<b><br><b>',
'payment_refund_receipt' => 'Betalingsrestitutieontvangst # :number', 'payment_refund_receipt' => 'Betalingsrestitutieontvangst # :number',
'payment_receipt' => 'Betalingsbewijs # :number', 'payment_receipt' => 'Betalingsbewijs # :number',
'load_template_description' => 'De sjabloon wordt toegepast op het volgende:', 'load_template_description' => 'De sjabloon wordt toegepast op het volgende:',
'run_template' => 'Sjabloon uitvoeren', 'run_template' => 'Run Template',
'statement_design' => 'Verklaring ontwerp', 'statement_design' => 'Verklaring ontwerp',
'delivery_note_design' => 'Ontwerp van leveringsbon', 'delivery_note_design' => 'Ontwerp van leveringsbon',
'payment_receipt_design' => 'Ontwerp van betalingsontvangst', 'payment_receipt_design' => 'Ontwerp van betalingsontvangst',
@ -5300,6 +5300,41 @@ Email: :email<b><br><b>',
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Logotipo removido com sucesso', 'removed_logo' => 'Logotipo removido com sucesso',
'sent_message' => 'Mensagem enviada com sucesso', 'sent_message' => 'Mensagem enviada com sucesso',
'invoice_error' => 'Assegure-se de selecionar um cliente e corrigir quaisquer erros', 'invoice_error' => 'Assegure-se de selecionar um cliente e corrigir quaisquer erros',
'limit_clients' => 'Você atingiu o limite de clientes :count em contas gratuitas. Parabéns pelo seu sucesso!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Ocorreu um erro ao processar seu pagamento. Por favor tente novamente mais tarde.', 'payment_error' => 'Ocorreu um erro ao processar seu pagamento. Por favor tente novamente mais tarde.',
'registration_required' => 'Registro requerido', 'registration_required' => 'Registro requerido',
'confirmation_required' => 'Por favor confirme seu endereço de email, :link para re-enviar o email de confirmação.', 'confirmation_required' => 'Por favor confirme seu endereço de email, :link para re-enviar o email de confirmação.',
@ -5144,7 +5144,7 @@ Quando tiver as quantias, volte a esta página de formas de pagamento e clique "
'payment_refund_receipt' => 'Recibo de reembolso de pagamento # :number', 'payment_refund_receipt' => 'Recibo de reembolso de pagamento # :number',
'payment_receipt' => 'Recibo de pagamento # :number', 'payment_receipt' => 'Recibo de pagamento # :number',
'load_template_description' => 'O modelo será aplicado ao seguinte:', 'load_template_description' => 'O modelo será aplicado ao seguinte:',
'run_template' => 'Executar modelo', 'run_template' => 'Run Template',
'statement_design' => 'Design de declaração', 'statement_design' => 'Design de declaração',
'delivery_note_design' => 'Design de nota de entrega', 'delivery_note_design' => 'Design de nota de entrega',
'payment_receipt_design' => 'Design de recibo de pagamento', 'payment_receipt_design' => 'Design de recibo de pagamento',
@ -5297,6 +5297,41 @@ Quando tiver as quantias, volte a esta página de formas de pagamento e clique "
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Logótipo removido com sucesso', 'removed_logo' => 'Logótipo removido com sucesso',
'sent_message' => 'Mensagem enviada com sucesso', 'sent_message' => 'Mensagem enviada com sucesso',
'invoice_error' => 'Certifique-se de selecionar um cliente e corrigir quaisquer erros', 'invoice_error' => 'Certifique-se de selecionar um cliente e corrigir quaisquer erros',
'limit_clients' => 'Você atingiu o limite de clientes :count em contas gratuitas. Parabéns pelo seu sucesso!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Ocorreu um erro ao processar o pagamento. Por favor tente novamente mais tarde.', 'payment_error' => 'Ocorreu um erro ao processar o pagamento. Por favor tente novamente mais tarde.',
'registration_required' => 'Registro requerido', 'registration_required' => 'Registro requerido',
'confirmation_required' => 'Por favor confirme o seu e-mail, :link para reenviar o e-mail de confirmação.', 'confirmation_required' => 'Por favor confirme o seu e-mail, :link para reenviar o e-mail de confirmação.',
@ -5147,7 +5147,7 @@ O envio de E-mails foi suspenso. Será retomado às 23:00 UTC.',
'payment_refund_receipt' => 'Recibo de reembolso de pagamento # :number', 'payment_refund_receipt' => 'Recibo de reembolso de pagamento # :number',
'payment_receipt' => 'Recibo de pagamento # :number', 'payment_receipt' => 'Recibo de pagamento # :number',
'load_template_description' => 'O modelo será aplicado ao seguinte:', 'load_template_description' => 'O modelo será aplicado ao seguinte:',
'run_template' => 'Executar modelo', 'run_template' => 'Run Template',
'statement_design' => 'Design de declaração', 'statement_design' => 'Design de declaração',
'delivery_note_design' => 'Design de nota de entrega', 'delivery_note_design' => 'Design de nota de entrega',
'payment_receipt_design' => 'Design de recibo de pagamento', 'payment_receipt_design' => 'Design de recibo de pagamento',
@ -5300,6 +5300,41 @@ O envio de E-mails foi suspenso. Será retomado às 23:00 UTC.',
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Logo sters cu succes', 'removed_logo' => 'Logo sters cu succes',
'sent_message' => 'Mesaj trimis cu succes', 'sent_message' => 'Mesaj trimis cu succes',
'invoice_error' => 'Te rog alege un client si corecteaza erorile', 'invoice_error' => 'Te rog alege un client si corecteaza erorile',
'limit_clients' => 'Ați atins limita de clienți :count pentru conturile gratuite. Felicitări pentru succesul tău!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'A fost o eroare in procesarea platii. Te rog sa incerci mai tarizu.', 'payment_error' => 'A fost o eroare in procesarea platii. Te rog sa incerci mai tarizu.',
'registration_required' => 'Înregistrare necesară', 'registration_required' => 'Înregistrare necesară',
'confirmation_required' => 'Confirmați adresa dvs. de e-mail, :link pentru a retrimite e-mailul de confirmare.', 'confirmation_required' => 'Confirmați adresa dvs. de e-mail, :link pentru a retrimite e-mailul de confirmare.',
@ -5148,7 +5148,7 @@ Odată ce sumele au ajuns la dumneavoastră, reveniți la pagina cu metode de pl
'payment_refund_receipt' => 'Chitanța de rambursare a plății # :number', 'payment_refund_receipt' => 'Chitanța de rambursare a plății # :number',
'payment_receipt' => 'Chitanța de plată # :number', 'payment_receipt' => 'Chitanța de plată # :number',
'load_template_description' => 'Șablonul va fi aplicat la următoarele:', 'load_template_description' => 'Șablonul va fi aplicat la următoarele:',
'run_template' => 'Rulați șablonul', 'run_template' => 'Run Template',
'statement_design' => 'Design de declarație', 'statement_design' => 'Design de declarație',
'delivery_note_design' => 'Design bon de livrare', 'delivery_note_design' => 'Design bon de livrare',
'payment_receipt_design' => 'Design chitanță de plată', 'payment_receipt_design' => 'Design chitanță de plată',
@ -5301,6 +5301,41 @@ Odată ce sumele au ajuns la dumneavoastră, reveniți la pagina cu metode de pl
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Logo bolo úspešne odstánené', 'removed_logo' => 'Logo bolo úspešne odstánené',
'sent_message' => 'Správa úspešne odoslaná', 'sent_message' => 'Správa úspešne odoslaná',
'invoice_error' => 'Uistite sa, že máte zvoleného klienta a opravte prípadné chyby', 'invoice_error' => 'Uistite sa, že máte zvoleného klienta a opravte prípadné chyby',
'limit_clients' => 'Dosiahli ste limit klientov :count na bezplatných účtoch. Gratulujem k úspechu!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Nastala chyba počas spracovávania Vašej platby. Skúste to prosím zopakovať neskôr.', 'payment_error' => 'Nastala chyba počas spracovávania Vašej platby. Skúste to prosím zopakovať neskôr.',
'registration_required' => 'Vyžaduje sa registrácia', 'registration_required' => 'Vyžaduje sa registrácia',
'confirmation_required' => 'Prosím potvrďte vašu email adresu, <a href=\'/resend_confirmation\'>kliknutím sem</a> na preposlanie potvrdzujúceho emailu.', 'confirmation_required' => 'Prosím potvrďte vašu email adresu, <a href=\'/resend_confirmation\'>kliknutím sem</a> na preposlanie potvrdzujúceho emailu.',
@ -5134,7 +5134,7 @@ $lang = array(
'payment_refund_receipt' => 'Potvrdenie o vrátení platby # :number', 'payment_refund_receipt' => 'Potvrdenie o vrátení platby # :number',
'payment_receipt' => 'Potvrdenie o platbe # :number', 'payment_receipt' => 'Potvrdenie o platbe # :number',
'load_template_description' => 'Šablóna sa použije na nasledujúce:', 'load_template_description' => 'Šablóna sa použije na nasledujúce:',
'run_template' => 'Spustiť šablónu', 'run_template' => 'Run Template',
'statement_design' => 'Návrh vyhlásenia', 'statement_design' => 'Návrh vyhlásenia',
'delivery_note_design' => 'Dizajn dodacieho listu', 'delivery_note_design' => 'Dizajn dodacieho listu',
'payment_receipt_design' => 'Návrh potvrdenia o platbe', 'payment_receipt_design' => 'Návrh potvrdenia o platbe',
@ -5287,6 +5287,41 @@ $lang = array(
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => 'Logotyp borttagen', 'removed_logo' => 'Logotyp borttagen',
'sent_message' => 'Meddelandet skickat', 'sent_message' => 'Meddelandet skickat',
'invoice_error' => 'Välj kund och rätta till eventuella fel', 'invoice_error' => 'Välj kund och rätta till eventuella fel',
'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!.', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => 'Något blev fel när din betalning bearbetades. Var vänlig och försök igen lite senare.', 'payment_error' => 'Något blev fel när din betalning bearbetades. Var vänlig och försök igen lite senare.',
'registration_required' => 'Registering krävs', 'registration_required' => 'Registering krävs',
'confirmation_required' => 'Please confirm your email address, :link to resend the confirmation email.', 'confirmation_required' => 'Please confirm your email address, :link to resend the confirmation email.',
@ -5155,7 +5155,7 @@ Den här funktionen kräver att en produkt skapas och en betalningsgateway är k
'payment_refund_receipt' => 'Återbetalningskvitto # :number', 'payment_refund_receipt' => 'Återbetalningskvitto # :number',
'payment_receipt' => 'Betalningskvitto # :number', 'payment_receipt' => 'Betalningskvitto # :number',
'load_template_description' => 'Mallen kommer att tillämpas på följande:', 'load_template_description' => 'Mallen kommer att tillämpas på följande:',
'run_template' => 'Kör mall', 'run_template' => 'Run Template',
'statement_design' => 'Utlåtandedesign', 'statement_design' => 'Utlåtandedesign',
'delivery_note_design' => 'Leveranssedel design', 'delivery_note_design' => 'Leveranssedel design',
'payment_receipt_design' => 'Design av betalningskvitto', 'payment_receipt_design' => 'Design av betalningskvitto',
@ -5308,6 +5308,41 @@ Den här funktionen kräver att en produkt skapas och en betalningsgateway är k
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -199,7 +199,7 @@ $lang = array(
'removed_logo' => '移除標誌成功', 'removed_logo' => '移除標誌成功',
'sent_message' => '寄出訊息成功', 'sent_message' => '寄出訊息成功',
'invoice_error' => '請確認選取一個用戶並更正任何錯誤', 'invoice_error' => '請確認選取一個用戶並更正任何錯誤',
'limit_clients' => '您已達到免費帳戶的:count客戶限制。恭喜您成功', 'limit_clients' => 'You\'ve hit the :count client limit on Free accounts. Congrats on your success!',
'payment_error' => '您的付款處理過程有誤。請稍後重試。', 'payment_error' => '您的付款處理過程有誤。請稍後重試。',
'registration_required' => '需要註冊', 'registration_required' => '需要註冊',
'confirmation_required' => '請確認您的電子郵件地址 :link ,以重寄確認函。', 'confirmation_required' => '請確認您的電子郵件地址 :link ,以重寄確認函。',
@ -5147,7 +5147,7 @@ $lang = array(
'payment_refund_receipt' => '付款退款收據 # :number', 'payment_refund_receipt' => '付款退款收據 # :number',
'payment_receipt' => '付款收據 # :number', 'payment_receipt' => '付款收據 # :number',
'load_template_description' => '此模板將應用於以下領域:', 'load_template_description' => '此模板將應用於以下領域:',
'run_template' => '運行模板', 'run_template' => 'Run Template',
'statement_design' => '聲明設計', 'statement_design' => '聲明設計',
'delivery_note_design' => '送貨單設計', 'delivery_note_design' => '送貨單設計',
'payment_receipt_design' => '付款收據設計', 'payment_receipt_design' => '付款收據設計',
@ -5300,6 +5300,41 @@ $lang = array(
'local_domain_help' => 'EHLO domain (optional)', 'local_domain_help' => 'EHLO domain (optional)',
'port_help' => 'ie. 25,587,465', 'port_help' => 'ie. 25,587,465',
'host_help' => 'ie. smtp.gmail.com', 'host_help' => 'ie. smtp.gmail.com',
'always_show_required_fields' => 'Allows show required fields form',
'always_show_required_fields_help' => 'Displays the required fields form always at checkout',
'advanced_cards' => 'Advanced Cards',
'activity_140' => 'Statement sent to :client',
'invoice_net_amount' => 'Invoice Net Amount',
'round_to_minutes' => 'Round To Minutes',
'1_second' => '1 Second',
'1_minute' => '1 Minute',
'5_minutes' => '5 Minutes',
'15_minutes' => '15 Minutes',
'30_minutes' => '30 Minutes',
'1_hour' => '1 Hour',
'1_day' => '1 Day',
'round_tasks' => 'Task Rounding Direction',
'round_tasks_help' => 'Round task times up or down.',
'direction' => 'Direction',
'round_up' => 'Round Up',
'round_down' => 'Round Down',
'task_round_to_nearest' => 'Round To Nearest',
'task_round_to_nearest_help' => 'The interval to round the task to.',
'bulk_updated' => 'Successfully updated data',
'bulk_update' => 'Bulk Update',
'calculate' => 'Calculate',
'sum' => 'Sum',
'money' => 'Money',
'web_app' => 'Web App',
'desktop_app' => 'Desktop App',
'disconnected' => 'Disconnected',
'reconnect' => 'Reconnect',
'e_invoice_settings' => 'E-Invoice Settings',
'btcpay_refund_subject' => 'Refund of your invoice via BTCPay',
'btcpay_refund_body' => 'A refund intended for you has been issued. To claim it via BTCPay, please click on this link:',
'currency_mauritanian_ouguiya' => 'Mauritanian Ouguiya',
'currency_bhutan_ngultrum' => 'Bhutan Ngultrum',
'end_of_month' => 'End Of Month'
); );
return $lang; return $lang;

View File

@ -27,7 +27,7 @@
</div> </div>
@component('portal.ninja2020.components.general.card-element', ['title' => ctrans('texts.payment_details')]) @component('portal.ninja2020.components.general.card-element', ['title' => ctrans('texts.payment_details')])
<textarea name="notes" class="focus:shadow-soft-primary-outline min-h-unset text-sm leading-5.6 ease-soft block h-auto w-full appearance-none rounded-lg border border-solid border-gray-300 bg-white bg-clip-padding px-3 py-2 font-normal text-gray-700 outline-none transition-all placeholder:text-gray-500 focus:border-fuchsia-300 focus:outline-none"></textarea> <textarea name="notes" class="focus:shadow-soft-primary-outline min-h-unset text-sm leading-5.6 ease-soft block h-auto w-full appearance-none rounded-lg border border-solid border-gray-300 bg-white bg-clip-padding px-3 py-2 font-normal text-gray-700 outline-none transition-all placeholder:text-gray-500 focus:border-fuchsia-300 focus:outline-none">{{ $notes }}</textarea>
@if($errors->has('notes')) @if($errors->has('notes'))
<p class="mt-2 text-red-900 border-red-300 px-2 py-1 bg-gray-100">{{ $errors->first('notes') }}</p> <p class="mt-2 text-red-900 border-red-300 px-2 py-1 bg-gray-100">{{ $errors->first('notes') }}</p>
@ -41,6 +41,7 @@
type="text" type="text"
class="input mt-0 mr-4 relative" class="input mt-0 mr-4 relative"
name="amount" name="amount"
value="{{ $amount }}"
placeholder=""/> placeholder=""/>
@if($minimum > 0) @if($minimum > 0)
@ -54,9 +55,9 @@
@endcomponent @endcomponent
@if($allows_recurring) @if($allows_recurring)
<div x-data="{ show: false }"> <div x-data="{ show: {!! $show !!}, toggle() { this.show = ! this.show } }">
@component('portal.ninja2020.components.general.card-element', ['title' => ctrans('texts.enable_recurring')]) @component('portal.ninja2020.components.general.card-element', ['title' => ctrans('texts.enable_recurring')])
<input x-on:click="show = !show" id="is_recurring" aria-describedby="recurring-description" name="is_recurring" type="checkbox" class="h-4 w-4 rounded border-gray-300 text-indigo-600 focus:ring-indigo-600"> <input x-on:click="toggle()" id="is_recurring" aria-describedby="recurring-description" name="is_recurring" type="checkbox" class="h-4 w-4 rounded border-gray-300 text-indigo-600 focus:ring-indigo-600" @if($show == "true") checked @endif>
@endcomponent @endcomponent
<div x-cloak x-show="show"> <div x-cloak x-show="show">

View File

@ -117,10 +117,10 @@ class PeppolTest extends TestCase
$invoice->service()->markSent()->save(); $invoice->service()->markSent()->save();
$fat = new Peppol($invoice); $peppol = new Peppol($invoice);
$fat->run(); $peppol->run();
$fe = $fat->getInvoice(); $fe = $peppol->getInvoice();
$this->assertNotNull($fe); $this->assertNotNull($fe);
@ -149,6 +149,6 @@ class PeppolTest extends TestCase
$this->assertCount(0, $errors); $this->assertCount(0, $errors);
nlog(json_encode($fe, JSON_PRETTY_PRINT));
} }
} }

View File

@ -50,6 +50,20 @@ class TaskRoundingTest extends TestCase
Model::reguard(); Model::reguard();
} }
public function testRoundDownToMinute()
{
$start_time = 1718071646;
$end_time = 1718078906;
$this->task_round_to_nearest = 60;
$this->task_round_up = false;
$rounded = $start_time + 7260;
$this->assertEquals($rounded, $end_time);
$this->assertEquals($rounded, $this->roundTimeLog($start_time, $end_time));
}
public function testRoundUp() public function testRoundUp()
{ {
$start_time = 1714942800; $start_time = 1714942800;
@ -66,8 +80,6 @@ class TaskRoundingTest extends TestCase
public function testRoundUp2() public function testRoundUp2()
{ {
$start_time = 1715237056; $start_time = 1715237056;
$end_time = $start_time + 60*7; $end_time = $start_time + 60*7;
$this->task_round_to_nearest = 600; $this->task_round_to_nearest = 600;
@ -194,18 +206,36 @@ $this->assertEquals($rounded, $this->roundTimeLog($start_time, $end_time));
} }
// public function roundTimeLog(int $start_time, int $end_time): int
// {
// if($this->task_round_to_nearest == 1)
// return $end_time;
// $interval = $end_time - $start_time;
// if($this->task_round_up)
// return $start_time + (int)ceil($interval/$this->task_round_to_nearest)*$this->task_round_to_nearest;
// return $start_time - (int)floor($interval/$this->task_round_to_nearest) * $this->task_round_to_nearest;
// }
public function roundTimeLog(int $start_time, int $end_time): int public function roundTimeLog(int $start_time, int $end_time): int
{ {
if($this->task_round_to_nearest == 1) if($this->task_round_to_nearest == 1 || $end_time == 0)
return $end_time; return $end_time;
$interval = $end_time - $start_time; $interval = $end_time - $start_time;
if($this->task_round_up) if($this->task_round_up)
return $start_time + (int)ceil($interval/$this->task_round_to_nearest)*$this->task_round_to_nearest; return $start_time + (int)ceil($interval/$this->task_round_to_nearest)*$this->task_round_to_nearest;
return $start_time - (int)floor($interval/$this->task_round_to_nearest) * $this->task_round_to_nearest; if($interval <= $this->task_round_to_nearest)
return $start_time;
return $start_time + (int)floor($interval/$this->task_round_to_nearest) * $this->task_round_to_nearest;
} }
} }