Merge pull request #6722 from turbo124/v5-develop

v5.3.17
This commit is contained in:
David Bomba 2021-09-26 13:30:01 +10:00 committed by GitHub
commit f5dd1ae613
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 46 additions and 14 deletions

View File

@ -1 +1 @@
5.3.16 5.3.17

View File

@ -14,6 +14,7 @@ namespace App\Factory;
use App\Models\Client; use App\Models\Client;
use App\Models\Invoice; use App\Models\Invoice;
use App\Models\RecurringInvoice; use App\Models\RecurringInvoice;
use App\Utils\Helpers;
class RecurringInvoiceToInvoiceFactory class RecurringInvoiceToInvoiceFactory
{ {
@ -24,14 +25,15 @@ class RecurringInvoiceToInvoiceFactory
$invoice->discount = $recurring_invoice->discount; $invoice->discount = $recurring_invoice->discount;
$invoice->is_amount_discount = $recurring_invoice->is_amount_discount; $invoice->is_amount_discount = $recurring_invoice->is_amount_discount;
$invoice->po_number = $recurring_invoice->po_number; $invoice->po_number = $recurring_invoice->po_number;
$invoice->footer = $recurring_invoice->footer; $invoice->footer = self::tranformObject($recurring_invoice->footer, $client);
$invoice->terms = $recurring_invoice->terms; $invoice->terms = self::tranformObject($recurring_invoice->terms, $client);
$invoice->public_notes = $recurring_invoice->public_notes; $invoice->public_notes = self::tranformObject($recurring_invoice->public_notes, $client);
$invoice->private_notes = $recurring_invoice->private_notes; $invoice->private_notes = $recurring_invoice->private_notes;
//$invoice->date = now()->format($client->date_format()); //$invoice->date = now()->format($client->date_format());
//$invoice->due_date = $recurring_invoice->calculateDueDate(now()); //$invoice->due_date = $recurring_invoice->calculateDueDate(now());
$invoice->is_deleted = $recurring_invoice->is_deleted; $invoice->is_deleted = $recurring_invoice->is_deleted;
$invoice->line_items = $recurring_invoice->line_items; // $invoice->line_items = $recurring_invoice->line_items;
$invoice->line_items = self::transformItems($recurring_invoice, $client);
$invoice->tax_name1 = $recurring_invoice->tax_name1; $invoice->tax_name1 = $recurring_invoice->tax_name1;
$invoice->tax_rate1 = $recurring_invoice->tax_rate1; $invoice->tax_rate1 = $recurring_invoice->tax_rate1;
$invoice->tax_name2 = $recurring_invoice->tax_name2; $invoice->tax_name2 = $recurring_invoice->tax_name2;
@ -45,6 +47,7 @@ class RecurringInvoiceToInvoiceFactory
$invoice->custom_value3 = $recurring_invoice->custom_value3; $invoice->custom_value3 = $recurring_invoice->custom_value3;
$invoice->custom_value4 = $recurring_invoice->custom_value4; $invoice->custom_value4 = $recurring_invoice->custom_value4;
$invoice->amount = $recurring_invoice->amount; $invoice->amount = $recurring_invoice->amount;
$invoice->uses_inclusive_taxes = $recurring_invoice->uses_inclusive_taxes;
// $invoice->balance = $recurring_invoice->balance; // $invoice->balance = $recurring_invoice->balance;
$invoice->user_id = $recurring_invoice->user_id; $invoice->user_id = $recurring_invoice->user_id;
$invoice->assigned_user_id = $recurring_invoice->assigned_user_id; $invoice->assigned_user_id = $recurring_invoice->assigned_user_id;
@ -57,4 +60,25 @@ class RecurringInvoiceToInvoiceFactory
return $invoice; return $invoice;
} }
private static function transformItems($recurring_invoice, $client)
{
$line_items = $recurring_invoice->line_items;
foreach($line_items as $key => $item){
if(property_exists($line_items[$key], 'notes'))
$line_items[$key]->notes = Helpers::processReservedKeywords($item->notes, $client);
}
return $line_items;
}
private static function tranformObject($object, $client)
{
return Helpers::processReservedKeywords($object, $client);
}
} }

View File

@ -115,8 +115,8 @@ class EmailController extends BaseController
{ {
$entity = $request->input('entity'); $entity = $request->input('entity');
$entity_obj = $entity::find($request->input('entity_id')); $entity_obj = $entity::find($request->input('entity_id'));
$subject = $request->input('subject'); $subject = $request->has('subject') ? $request->input('subject') : '';
$body = $request->input('body'); $body = $request->has('body') ? $request->input('body') : '';
$entity_string = strtolower(class_basename($entity_obj)); $entity_string = strtolower(class_basename($entity_obj));
$template = str_replace("email_template_", "", $request->input('template')); $template = str_replace("email_template_", "", $request->input('template'));

View File

@ -39,8 +39,8 @@ class SendEmailRequest extends Request
'template' => 'required', 'template' => 'required',
'entity' => 'required', 'entity' => 'required',
'entity_id' => 'required', 'entity_id' => 'required',
'subject' => 'required', // 'subject' => 'required',
'body' => 'required', // 'body' => 'required',
]; ];
} }

View File

@ -19,19 +19,20 @@ use App\Models\Invoice;
use App\Models\RecurringInvoice; use App\Models\RecurringInvoice;
use App\Utils\Ninja; use App\Utils\Ninja;
use App\Utils\Traits\GeneratesCounter; use App\Utils\Traits\GeneratesCounter;
use App\Utils\Traits\MakesInvoiceValues;
use Carbon\Carbon;
use Illuminate\Bus\Queueable; use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable; use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue; use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels; use Illuminate\Queue\SerializesModels;
use Turbo124\Beacon\Facades\LightLogs; use Turbo124\Beacon\Facades\LightLogs;
use Carbon\Carbon;
class SendRecurring implements ShouldQueue class SendRecurring implements ShouldQueue
{ {
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels; use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
use GeneratesCounter; use GeneratesCounter;
public $recurring_invoice; public $recurring_invoice;
protected $db; protected $db;

View File

@ -18,7 +18,9 @@ use App\Models\InvoiceInvitation;
use App\Models\QuoteInvitation; use App\Models\QuoteInvitation;
use App\Models\RecurringInvoiceInvitation; use App\Models\RecurringInvoiceInvitation;
use App\Services\PdfMaker\Designs\Utilities\DesignHelpers; use App\Services\PdfMaker\Designs\Utilities\DesignHelpers;
use App\Utils\Ninja;
use App\Utils\Traits\MakesDates; use App\Utils\Traits\MakesDates;
use App\Utils\transformTranslations;
use Exception; use Exception;
use Illuminate\Support\Facades\App; use Illuminate\Support\Facades\App;
@ -96,6 +98,11 @@ class HtmlEngine
exit; exit;
} }
App::forgetInstance('translator');
$t = app('translator');
App::setLocale($this->contact->preferredLocale());
$t->replace(Ninja::transformTranslations($this->settings));
$data = []; $data = [];
$data['$global_margin'] = ['value' => '6.35mm', 'label' => '']; $data['$global_margin'] = ['value' => '6.35mm', 'label' => ''];
$data['$tax'] = ['value' => '', 'label' => ctrans('texts.tax')]; $data['$tax'] = ['value' => '', 'label' => ctrans('texts.tax')];

View File

@ -14,8 +14,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' => '5.3.16', 'app_version' => '5.3.17',
'app_tag' => '5.3.16', 'app_tag' => '5.3.17',
'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', ''), 'api_secret' => env('API_SECRET', ''),
@ -37,7 +37,7 @@ return [
'trusted_proxies' => env('TRUSTED_PROXIES', false), 'trusted_proxies' => env('TRUSTED_PROXIES', false),
'is_docker' => env('IS_DOCKER', false), 'is_docker' => env('IS_DOCKER', false),
'local_download' => env('LOCAL_DOWNLOAD', false), 'local_download' => env('LOCAL_DOWNLOAD', false),
'sentry_dsn' => env('SENTRY_LARAVEL_DSN', 'https://9b4e15e575214354a7d666489783904a@sentry.invoicing.co/6'), 'sentry_dsn' => env('SENTRY_LARAVEL_DSN', 'https://32f01ea994744fa08a0f688769cef78a@sentry.invoicing.co/9'),
'environment' => env('NINJA_ENVIRONMENT', 'selfhost'), // 'hosted', 'development', 'selfhost', 'reseller' 'environment' => env('NINJA_ENVIRONMENT', 'selfhost'), // 'hosted', 'development', 'selfhost', 'reseller'
'preconfigured_install' => env('PRECONFIGURED_INSTALL',false), 'preconfigured_install' => env('PRECONFIGURED_INSTALL',false),
'update_secret' => env('UPDATE_SECRET', ''), 'update_secret' => env('UPDATE_SECRET', ''),