diff --git a/app/Models/Client.php b/app/Models/Client.php
index 2259a449adfb..9f1906a6f123 100644
--- a/app/Models/Client.php
+++ b/app/Models/Client.php
@@ -474,7 +474,7 @@ class Client extends BaseModel implements HasLocalePreference
* of settings which have been merged from
* Client > Group > Company levels.
*
- * @return stdClass stdClass object of settings
+ * @return \stdClass stdClass object of settings
*/
public function getMergedSettings() :object
{
@@ -483,7 +483,7 @@ class Client extends BaseModel implements HasLocalePreference
return ClientSettings::buildClientSettings($this->company->settings, $group_settings);
}
-
+nlog(CompanySettings::setProperties(ClientSettings::buildClientSettings($this->company->settings, $this->settings)));
return CompanySettings::setProperties(ClientSettings::buildClientSettings($this->company->settings, $this->settings));
}
diff --git a/app/Services/Pdf/PdfBuilder.php b/app/Services/Pdf/PdfBuilder.php
index eb2feebc3bf7..ffe2ea2b0c7b 100644
--- a/app/Services/Pdf/PdfBuilder.php
+++ b/app/Services/Pdf/PdfBuilder.php
@@ -445,6 +445,14 @@ class PdfBuilder
return $elements;
}
+ $_type = Str::startsWith($type, '$') ? ltrim($type, '$') : $type;
+ $table_type = "{$_type}_columns";
+
+ if ($_type == 'product' && $this->service->config->entity instanceof Quote && !$this->service->config->settings?->sync_invoice_quote_columns) {
+ $table_type = "product_quote_columns";
+ }
+
+
foreach ($items as $row) {
$element = ['element' => 'tr', 'elements' => []];
@@ -645,7 +653,13 @@ class PdfBuilder
'$task.rate' => '$task.cost',
];
- foreach ($this->service->config->pdf_variables["{$type}_columns"] as $column) {
+ $table_type = "{$type}_columns";
+
+ if ($type == 'product' && $this->service->config->entity instanceof Quote && !$this->service->config->settings_object?->sync_invoice_quote_columns) {
+ $table_type = "product_quote_columns";
+ }
+
+ foreach ($this->service->config->pdf_variables[$table_type] as $column) {
if (array_key_exists($column, $aliases)) {
$elements[] = ['element' => 'th', 'content' => $aliases[$column] . '_label', 'properties' => ['data-ref' => "{$type}_table-" . substr($aliases[$column], 1) . '-th', 'hidden' => $this->service->config->settings->hide_empty_columns_on_pdf]];
} elseif ($column == '$product.discount' && !$this->service->company->enable_product_discount) {
diff --git a/app/Services/Pdf/PdfMock.php b/app/Services/Pdf/PdfMock.php
index 161d74c53c99..bd26cb6ac5a4 100644
--- a/app/Services/Pdf/PdfMock.php
+++ b/app/Services/Pdf/PdfMock.php
@@ -11,26 +11,23 @@
namespace App\Services\Pdf;
-use App\Models\Quote;
+use App\DataMapper\ClientSettings;
+use App\DataMapper\CompanySettings;
use App\Models\Client;
-use App\Models\Credit;
-use App\Models\Design;
-use App\Models\Vendor;
use App\Models\Company;
use App\Models\Country;
-use App\Models\Invoice;
-use App\Models\Currency;
-use App\Models\PurchaseOrder;
-use App\Models\QuoteInvitation;
-use App\Utils\Traits\MakesHash;
+use App\Models\Credit;
use App\Models\CreditInvitation;
-use App\Services\Pdf\PdfBuilder;
-use App\Services\Pdf\PdfService;
+use App\Models\Currency;
+use App\Models\Design;
+use App\Models\Invoice;
use App\Models\InvoiceInvitation;
-use App\Services\Pdf\PdfDesigner;
-use App\DataMapper\ClientSettings;
-use App\Services\Pdf\PdfConfiguration;
+use App\Models\PurchaseOrder;
use App\Models\PurchaseOrderInvitation;
+use App\Models\Quote;
+use App\Models\QuoteInvitation;
+use App\Models\Vendor;
+use App\Utils\Traits\MakesHash;
class PdfMock
{
@@ -40,17 +37,23 @@ class PdfMock
public object $settings;
+ private string $entity_string = 'invoice';
+
public function __construct(public array $request, public Company $company)
{
}
public function getPdf(): mixed
{
- $pdf_service = new PdfService($this->mock->invitation);
+ //need to resolve the pdf type here, ie product / purchase order
+ $document_type = $this->request['entity_type'] == 'purchase_order' ? 'purchase_order' : 'product';
+
+ $pdf_service = new PdfService($this->mock->invitation, $document_type);
$pdf_config = (new PdfConfiguration($pdf_service));
$pdf_config->entity = $this->mock;
$pdf_config->entity_string = $this->request['entity_type'];
+ $this->entity_string = $this->request['entity_type'];
$pdf_config->setTaxMap($this->mock->tax_map);
$pdf_config->setTotalTaxMap($this->mock->total_tax_map);
$pdf_config->client = $this->mock->client;
@@ -69,7 +72,7 @@ class PdfMock
$pdf_designer = (new PdfDesigner($pdf_service))->build();
$pdf_service->designer = $pdf_designer;
- $pdf_service->html_variables = $this->getStubVariables();
+ $pdf_service->html_variables = $document_type == 'purchase_order' ? $this->getVendorStubVariables() : $this->getStubVariables();
$pdf_builder = (new PdfBuilder($pdf_service))->build();
$pdf_service->builder = $pdf_builder;
@@ -147,6 +150,8 @@ class PdfMock
default => $settings = $this->company->settings,
};
+ $settings = CompanySettings::setProperties($settings);
+
return $settings;
}
@@ -384,38 +389,7 @@ class PdfMock
'$invoiceDate' => '25/Feb/2023',
'$view_button' => 'View Invoice',
'$client.city' => 'Aufderharchester',
- '$spc_qr_code' => 'SPC
-0200
-1
-
-K
-434343
-
-
-
-
-CH
-
-
-
-
-
-
-
-0.000000
-USD
-
-
-
-
-
-
-
-NON
-
-0029
-EPD
-',
+ '$spc_qr_code' => '',
'$client_name' => 'A Client Called Bob',
'$client.name' => 'A Client Called Bob',
'$paymentLink' => 'http://ninja.test:8000/client/pay/UAUY8vIPuno72igmXbbpldwo5BDDKIqs',
@@ -508,301 +482,301 @@ EPD
'$show_shipping_address_block' => $this->settings->show_shipping_address ? 'block' : 'none',
'$show_shipping_address_visibility' => $this->settings->show_shipping_address ? 'visible' : 'hidden',
],
- 'labels' =>
- [
- '$client.shipping_postal_code_label' => 'Shipping Postal Code',
- '$client.billing_postal_code_label' => 'Postal Code',
- '$company.city_state_postal_label' => 'City/State/Postal',
- '$company.postal_city_state_label' => 'Postal/City/State',
- '$company.postal_city_label' => 'Postal/City',
- '$product.gross_line_total_label' => 'Gross line total',
- '$client.postal_city_state_label' => 'Postal/City/State',
- '$client.postal_city_label' => 'Postal/City',
- '$client.shipping_address1_label' => 'Shipping Street',
- '$client.shipping_address2_label' => 'Shipping Apt/Suite',
- '$client.city_state_postal_label' => 'City/State/Postal',
- '$client.shipping_address_label' => 'Shipping Address',
- '$client.billing_address2_label' => 'Apt/Suite',
- '$client.billing_address1_label' => 'Street',
- '$client.shipping_country_label' => 'Shipping Country',
- '$invoiceninja.whitelabel_label' => '',
- '$client.billing_address_label' => 'Address',
- '$client.billing_country_label' => 'Country',
- '$task.gross_line_total_label' => 'Gross line total',
- '$contact.portal_button_label' => 'view_client_portal',
- '$client.shipping_state_label' => 'Shipping State/Province',
- '$invoice.public_notes_label' => 'Public Notes',
- '$client.shipping_city_label' => 'Shipping City',
- '$client.billing_state_label' => 'State/Province',
- '$product.description_label' => 'Description',
- '$product.product_key_label' => 'Product',
- '$entity.public_notes_label' => 'Public Notes',
- '$invoice.balance_due_label' => 'Balance Due',
- '$client.public_notes_label' => 'Notes',
- '$company.postal_code_label' => 'Postal Code',
- '$client.billing_city_label' => 'City',
- '$secondary_font_name_label' => '',
- '$product.line_total_label' => 'Line Total',
- '$product.tax_amount_label' => 'Tax',
- '$company.vat_number_label' => 'VAT Number',
- '$invoice.invoice_no_label' => 'Invoice Number',
- '$quote.quote_number_label' => 'Quote Number',
- '$client.postal_code_label' => 'Postal Code',
- '$contact.first_name_label' => 'First Name',
- '$secondary_font_url_label' => '',
- '$contact.signature_label' => '',
- '$company_logo_size_label' => '',
- '$product.tax_name1_label' => 'Tax',
- '$product.tax_name2_label' => 'Tax',
- '$product.tax_name3_label' => 'Tax',
- '$product.unit_cost_label' => 'Unit Cost',
- '$quote.valid_until_label' => 'Valid Until',
- '$custom_surcharge1_label' => '',
- '$custom_surcharge2_label' => '',
- '$custom_surcharge3_label' => '',
- '$custom_surcharge4_label' => '',
- '$quote.balance_due_label' => 'Balance Due',
- '$company.id_number_label' => 'ID Number',
- '$invoice.po_number_label' => 'PO Number',
- '$invoice_total_raw_label' => 'Invoice Total',
- '$postal_city_state_label' => 'Postal/City/State',
- '$client.vat_number_label' => 'VAT Number',
- '$city_state_postal_label' => 'City/State/Postal',
- '$contact.full_name_label' => 'Name',
- '$contact.last_name_label' => 'Last Name',
- '$company.country_2_label' => 'Country',
- '$product.product1_label' => '',
- '$product.product2_label' => '',
- '$product.product3_label' => '',
- '$product.product4_label' => '',
- '$statement_amount_label' => 'Amount',
- '$task.description_label' => 'Description',
- '$product.discount_label' => 'Discount',
- '$entity_issued_to_label' => 'Invoice issued to',
- '$assigned_to_user_label' => 'Name',
- '$product.quantity_label' => 'Quantity',
- '$total_tax_labels_label' => 'Taxes',
- '$total_tax_values_label' => 'Taxes',
- '$invoice.discount_label' => 'Discount',
- '$invoice.subtotal_label' => 'Subtotal',
- '$company.address2_label' => 'Apt/Suite',
- '$partial_due_date_label' => 'Due Date',
- '$invoice.due_date_label' => 'Due Date',
- '$client.id_number_label' => 'ID Number',
- '$credit.po_number_label' => 'PO Number',
- '$company.address1_label' => 'Street',
- '$credit.credit_no_label' => 'Invoice Number',
- '$invoice.datetime_label' => 'Date',
- '$contact.custom1_label' => '',
- '$contact.custom2_label' => '',
- '$contact.custom3_label' => '',
- '$contact.custom4_label' => '',
- '$task.line_total_label' => 'Line Total',
- '$line_tax_labels_label' => 'Taxes',
- '$line_tax_values_label' => 'Taxes',
- '$secondary_color_label' => '',
- '$invoice.balance_label' => 'Balance',
- '$invoice.custom1_label' => '',
- '$invoice.custom2_label' => '',
- '$invoice.custom3_label' => '',
- '$invoice.custom4_label' => '',
- '$company.custom1_label' => '',
- '$company.custom2_label' => '',
- '$company.custom3_label' => '',
- '$company.custom4_label' => '',
- '$quote.po_number_label' => 'PO Number',
- '$company.website_label' => 'Website',
- '$balance_due_raw_label' => 'Balance Due',
- '$entity.datetime_label' => 'Date',
- '$credit.datetime_label' => 'Date',
- '$client.address2_label' => 'Apt/Suite',
- '$client.address1_label' => 'Street',
- '$user.first_name_label' => 'First Name',
- '$created_by_user_label' => 'Name',
- '$client.currency_label' => '',
- '$company.country_label' => 'Country',
- '$company.address_label' => 'Address',
- '$tech_hero_image_label' => '',
- '$task.tax_name1_label' => 'Tax',
- '$task.tax_name2_label' => 'Tax',
- '$task.tax_name3_label' => 'Tax',
- '$client.balance_label' => 'Account balance',
- '$client_balance_label' => 'Account balance',
- '$credit.balance_label' => 'Balance',
- '$credit_balance_label' => 'Credit Balance',
- '$gross_subtotal_label' => 'Subtotal',
- '$invoice.amount_label' => 'Total',
- '$client.custom1_label' => '',
- '$client.custom2_label' => '',
- '$client.custom3_label' => '',
- '$client.custom4_label' => '',
- '$emailSignature_label' => '',
- '$invoice.number_label' => 'Invoice Number',
- '$quote.quote_no_label' => 'Quote Number',
- '$quote.datetime_label' => 'Date',
- '$client_address_label' => 'Address',
- '$client.address_label' => 'Address',
- '$payment_button_label' => 'Pay Now',
- '$payment_qrcode_label' => 'Pay Now',
- '$client.country_label' => 'Country',
- '$user.last_name_label' => 'Last Name',
- '$client.website_label' => 'Website',
- '$dir_text_align_label' => '',
- '$entity_images_label' => '',
- '$task.discount_label' => 'Discount',
- '$contact.email_label' => 'Email',
- '$primary_color_label' => '',
- '$credit_amount_label' => 'Credit Amount',
- '$invoice.total_label' => 'Invoice Total',
- '$invoice.taxes_label' => 'Taxes',
- '$quote.custom1_label' => '',
- '$quote.custom2_label' => '',
- '$quote.custom3_label' => '',
- '$quote.custom4_label' => '',
- '$company.email_label' => 'Email',
- '$client.number_label' => 'Number',
- '$company.phone_label' => 'Phone',
- '$company.state_label' => 'State/Province',
- '$credit.number_label' => 'Credit Number',
- '$entity_number_label' => 'Invoice Number',
- '$credit_number_label' => 'Invoice Number',
- '$global_margin_label' => '',
- '$contact.phone_label' => 'Phone',
- '$portal_button_label' => 'view_client_portal',
- '$paymentButton_label' => 'Pay Now',
- '$entity_footer_label' => '',
- '$client.lang_2_label' => '',
- '$product.date_label' => 'Date',
- '$client.email_label' => 'Email',
- '$product.item_label' => 'Item',
- '$public_notes_label' => 'Public Notes',
- '$task.service_label' => 'Service',
- '$credit.total_label' => 'Credit Total',
- '$net_subtotal_label' => 'Net',
- '$paid_to_date_label' => 'Paid to Date',
- '$quote.amount_label' => 'Quote Total',
- '$company.city_label' => 'City',
- '$payment.date_label' => 'Payment Date',
- '$client.phone_label' => 'Phone',
- '$number_short_label' => 'Invoice #',
- '$quote.number_label' => 'Quote Number',
- '$invoice.date_label' => 'Invoice Date',
- '$company.name_label' => 'Company Name',
- '$portalButton_label' => 'view_client_portal',
- '$contact.name_label' => 'Contact Name',
- '$entity.terms_label' => 'Invoice Terms',
- '$client.state_label' => 'State/Province',
- '$company.logo_label' => 'Logo',
- '$company_logo_label' => 'Logo',
- '$payment_link_label' => 'Pay Now',
- '$status_logo_label' => '',
- '$description_label' => 'Description',
- '$product.tax_label' => 'Tax',
- '$valid_until_label' => 'Valid Until',
- '$your_entity_label' => 'Your Invoice',
- '$shipping_label' => 'Shipping',
- '$balance_due_label' => 'Balance Due',
- '$outstanding_label' => 'Balance Due',
- '$partial_due_label' => 'Partial Due',
- '$quote.total_label' => 'Total',
- '$payment_due_label' => 'Payment due',
- '$credit.date_label' => 'Credit Date',
- '$invoiceDate_label' => 'Invoice Date',
- '$view_button_label' => 'View Invoice',
- '$client.city_label' => 'City',
- '$spc_qr_code_label' => '',
- '$client_name_label' => 'Client Name',
- '$client.name_label' => 'Client Name',
- '$paymentLink_label' => 'Pay Now',
- '$payment_url_label' => 'Pay Now',
- '$page_layout_label' => '',
- '$task.task1_label' => '',
- '$task.task2_label' => '',
- '$task.task3_label' => '',
- '$task.task4_label' => '',
- '$task.hours_label' => 'Hours',
- '$amount_due_label' => 'Amount due',
- '$amount_raw_label' => 'Amount',
- '$invoice_no_label' => 'Invoice Number',
- '$quote.date_label' => 'Quote Date',
- '$vat_number_label' => 'VAT Number',
- '$viewButton_label' => 'View Invoice',
- '$portal_url_label' => '',
- '$task.date_label' => 'Date',
- '$task.rate_label' => 'Rate',
- '$task.cost_label' => 'Rate',
- '$statement_label' => 'Statement',
- '$user_iban_label' => '',
- '$signature_label' => '',
- '$id_number_label' => 'ID Number',
- '$credit_no_label' => 'Invoice Number',
- '$font_size_label' => '',
- '$view_link_label' => 'View Invoice',
- '$page_size_label' => '',
- '$country_2_label' => 'Country',
- '$firstName_label' => 'First Name',
- '$user.name_label' => 'Name',
- '$font_name_label' => '',
- '$auto_bill_label' => '',
- '$payments_label' => 'Payments',
- '$task.tax_label' => 'Tax',
- '$discount_label' => 'Discount',
- '$subtotal_label' => 'Subtotal',
- '$company1_label' => '',
- '$company2_label' => '',
- '$company3_label' => '',
- '$company4_label' => '',
- '$due_date_label' => 'Due Date',
- '$poNumber_label' => 'PO Number',
- '$quote_no_label' => 'Quote Number',
- '$address2_label' => 'Apt/Suite',
- '$address1_label' => 'Street',
- '$viewLink_label' => 'View Invoice',
- '$autoBill_label' => '',
- '$view_url_label' => 'View Invoice',
- '$font_url_label' => '',
- '$details_label' => 'Details',
- '$balance_label' => 'Balance',
- '$partial_label' => 'Partial Due',
- '$client1_label' => '',
- '$client2_label' => '',
- '$client3_label' => '',
- '$client4_label' => '',
- '$dueDate_label' => 'Due Date',
- '$invoice_label' => 'Invoice Number',
- '$account_label' => 'Company Name',
- '$country_label' => 'Country',
- '$contact_label' => 'Name',
- '$app_url_label' => '',
- '$website_label' => 'Website',
- '$entity_label' => 'Invoice',
- '$thanks_label' => 'Thanks',
- '$amount_label' => 'Total',
- '$method_label' => 'Method',
- '$number_label' => 'Invoice Number',
- '$footer_label' => '',
- '$client_label' => 'Client Name',
- '$email_label' => 'Email',
- '$notes_label' => 'Public Notes',
- '_rate1_label' => 'Tax',
- '_rate2_label' => 'Tax',
- '_rate3_label' => 'Tax',
- '$taxes_label' => 'Taxes',
- '$total_label' => 'Total',
- '$phone_label' => 'Phone',
- '$terms_label' => 'Invoice Terms',
- '$from_label' => 'From',
- '$item_label' => 'Item',
- '$date_label' => 'Invoice Date',
- '$tax_label' => 'Tax',
- '$dir_label' => '',
- '$to_label' => 'To',
- '$show_paid_stamp_label' => '',
- '$status_logo_label' => '',
- '$show_shipping_address_label' => '',
- '$show_shipping_address_block_label' => '',
- '$show_shipping_address_visibility_label' => '',
- ],
+ 'labels' => $this->mockTranslatedLabels()
+// [
+// '$client.shipping_postal_code_label' => 'Shipping Postal Code',
+// '$client.billing_postal_code_label' => 'Postal Code',
+// '$company.city_state_postal_label' => 'City/State/Postal',
+// '$company.postal_city_state_label' => 'Postal/City/State',
+// '$company.postal_city_label' => 'Postal/City',
+// '$product.gross_line_total_label' => 'Gross line total',
+// '$client.postal_city_state_label' => 'Postal/City/State',
+// '$client.postal_city_label' => 'Postal/City',
+// '$client.shipping_address1_label' => 'Shipping Street',
+// '$client.shipping_address2_label' => 'Shipping Apt/Suite',
+// '$client.city_state_postal_label' => 'City/State/Postal',
+// '$client.shipping_address_label' => 'Shipping Address',
+// '$client.billing_address2_label' => 'Apt/Suite',
+// '$client.billing_address1_label' => 'Street',
+// '$client.shipping_country_label' => 'Shipping Country',
+// '$invoiceninja.whitelabel_label' => '',
+// '$client.billing_address_label' => 'Address',
+// '$client.billing_country_label' => 'Country',
+// '$task.gross_line_total_label' => 'Gross line total',
+// '$contact.portal_button_label' => 'view_client_portal',
+// '$client.shipping_state_label' => 'Shipping State/Province',
+// '$invoice.public_notes_label' => 'Public Notes',
+// '$client.shipping_city_label' => 'Shipping City',
+// '$client.billing_state_label' => 'State/Province',
+// '$product.description_label' => 'Description',
+// '$product.product_key_label' => 'Product',
+// '$entity.public_notes_label' => 'Public Notes',
+// '$invoice.balance_due_label' => 'Balance Due',
+// '$client.public_notes_label' => 'Notes',
+// '$company.postal_code_label' => 'Postal Code',
+// '$client.billing_city_label' => 'City',
+// '$secondary_font_name_label' => '',
+// '$product.line_total_label' => 'Line Total',
+// '$product.tax_amount_label' => 'Tax',
+// '$company.vat_number_label' => 'VAT Number',
+// '$invoice.invoice_no_label' => 'Invoice Number',
+// '$quote.quote_number_label' => 'Quote Number',
+// '$client.postal_code_label' => 'Postal Code',
+// '$contact.first_name_label' => 'First Name',
+// '$secondary_font_url_label' => '',
+// '$contact.signature_label' => '',
+// '$company_logo_size_label' => '',
+// '$product.tax_name1_label' => 'Tax',
+// '$product.tax_name2_label' => 'Tax',
+// '$product.tax_name3_label' => 'Tax',
+// '$product.unit_cost_label' => 'Unit Cost',
+// '$quote.valid_until_label' => 'Valid Until',
+// '$custom_surcharge1_label' => '',
+// '$custom_surcharge2_label' => '',
+// '$custom_surcharge3_label' => '',
+// '$custom_surcharge4_label' => '',
+// '$quote.balance_due_label' => 'Balance Due',
+// '$company.id_number_label' => 'ID Number',
+// '$invoice.po_number_label' => 'PO Number',
+// '$invoice_total_raw_label' => 'Invoice Total',
+// '$postal_city_state_label' => 'Postal/City/State',
+// '$client.vat_number_label' => 'VAT Number',
+// '$city_state_postal_label' => 'City/State/Postal',
+// '$contact.full_name_label' => 'Name',
+// '$contact.last_name_label' => 'Last Name',
+// '$company.country_2_label' => 'Country',
+// '$product.product1_label' => '',
+// '$product.product2_label' => '',
+// '$product.product3_label' => '',
+// '$product.product4_label' => '',
+// '$statement_amount_label' => 'Amount',
+// '$task.description_label' => 'Description',
+// '$product.discount_label' => 'Discount',
+// '$entity_issued_to_label' => 'Invoice issued to',
+// '$assigned_to_user_label' => 'Name',
+// '$product.quantity_label' => 'Quantity',
+// '$total_tax_labels_label' => 'Taxes',
+// '$total_tax_values_label' => 'Taxes',
+// '$invoice.discount_label' => 'Discount',
+// '$invoice.subtotal_label' => 'Subtotal',
+// '$company.address2_label' => 'Apt/Suite',
+// '$partial_due_date_label' => 'Due Date',
+// '$invoice.due_date_label' => 'Due Date',
+// '$client.id_number_label' => 'ID Number',
+// '$credit.po_number_label' => 'PO Number',
+// '$company.address1_label' => 'Street',
+// '$credit.credit_no_label' => 'Invoice Number',
+// '$invoice.datetime_label' => 'Date',
+// '$contact.custom1_label' => '',
+// '$contact.custom2_label' => '',
+// '$contact.custom3_label' => '',
+// '$contact.custom4_label' => '',
+// '$task.line_total_label' => 'Line Total',
+// '$line_tax_labels_label' => 'Taxes',
+// '$line_tax_values_label' => 'Taxes',
+// '$secondary_color_label' => '',
+// '$invoice.balance_label' => 'Balance',
+// '$invoice.custom1_label' => '',
+// '$invoice.custom2_label' => '',
+// '$invoice.custom3_label' => '',
+// '$invoice.custom4_label' => '',
+// '$company.custom1_label' => '',
+// '$company.custom2_label' => '',
+// '$company.custom3_label' => '',
+// '$company.custom4_label' => '',
+// '$quote.po_number_label' => 'PO Number',
+// '$company.website_label' => 'Website',
+// '$balance_due_raw_label' => 'Balance Due',
+// '$entity.datetime_label' => 'Date',
+// '$credit.datetime_label' => 'Date',
+// '$client.address2_label' => 'Apt/Suite',
+// '$client.address1_label' => 'Street',
+// '$user.first_name_label' => 'First Name',
+// '$created_by_user_label' => 'Name',
+// '$client.currency_label' => '',
+// '$company.country_label' => 'Country',
+// '$company.address_label' => 'Address',
+// '$tech_hero_image_label' => '',
+// '$task.tax_name1_label' => 'Tax',
+// '$task.tax_name2_label' => 'Tax',
+// '$task.tax_name3_label' => 'Tax',
+// '$client.balance_label' => 'Account balance',
+// '$client_balance_label' => 'Account balance',
+// '$credit.balance_label' => 'Balance',
+// '$credit_balance_label' => 'Credit Balance',
+// '$gross_subtotal_label' => 'Subtotal',
+// '$invoice.amount_label' => 'Total',
+// '$client.custom1_label' => '',
+// '$client.custom2_label' => '',
+// '$client.custom3_label' => '',
+// '$client.custom4_label' => '',
+// '$emailSignature_label' => '',
+// '$invoice.number_label' => 'Invoice Number',
+// '$quote.quote_no_label' => 'Quote Number',
+// '$quote.datetime_label' => 'Date',
+// '$client_address_label' => 'Address',
+// '$client.address_label' => 'Address',
+// '$payment_button_label' => 'Pay Now',
+// '$payment_qrcode_label' => 'Pay Now',
+// '$client.country_label' => 'Country',
+// '$user.last_name_label' => 'Last Name',
+// '$client.website_label' => 'Website',
+// '$dir_text_align_label' => '',
+// '$entity_images_label' => '',
+// '$task.discount_label' => 'Discount',
+// '$contact.email_label' => 'Email',
+// '$primary_color_label' => '',
+// '$credit_amount_label' => 'Credit Amount',
+// '$invoice.total_label' => 'Invoice Total',
+// '$invoice.taxes_label' => 'Taxes',
+// '$quote.custom1_label' => '',
+// '$quote.custom2_label' => '',
+// '$quote.custom3_label' => '',
+// '$quote.custom4_label' => '',
+// '$company.email_label' => 'Email',
+// '$client.number_label' => 'Number',
+// '$company.phone_label' => 'Phone',
+// '$company.state_label' => 'State/Province',
+// '$credit.number_label' => 'Credit Number',
+// '$entity_number_label' => 'Invoice Number',
+// '$credit_number_label' => 'Invoice Number',
+// '$global_margin_label' => '',
+// '$contact.phone_label' => 'Phone',
+// '$portal_button_label' => 'view_client_portal',
+// '$paymentButton_label' => 'Pay Now',
+// '$entity_footer_label' => '',
+// '$client.lang_2_label' => '',
+// '$product.date_label' => 'Date',
+// '$client.email_label' => 'Email',
+// '$product.item_label' => 'Item',
+// '$public_notes_label' => 'Public Notes',
+// '$task.service_label' => 'Service',
+// '$credit.total_label' => 'Credit Total',
+// '$net_subtotal_label' => 'Net',
+// '$paid_to_date_label' => 'Paid to Date',
+// '$quote.amount_label' => 'Quote Total',
+// '$company.city_label' => 'City',
+// '$payment.date_label' => 'Payment Date',
+// '$client.phone_label' => 'Phone',
+// '$number_short_label' => 'Invoice #',
+// '$quote.number_label' => 'Quote Number',
+// '$invoice.date_label' => 'Invoice Date',
+// '$company.name_label' => 'Company Name',
+// '$portalButton_label' => 'view_client_portal',
+// '$contact.name_label' => 'Contact Name',
+// '$entity.terms_label' => 'Invoice Terms',
+// '$client.state_label' => 'State/Province',
+// '$company.logo_label' => 'Logo',
+// '$company_logo_label' => 'Logo',
+// '$payment_link_label' => 'Pay Now',
+// '$status_logo_label' => '',
+// '$description_label' => 'Description',
+// '$product.tax_label' => 'Tax',
+// '$valid_until_label' => 'Valid Until',
+// '$your_entity_label' => 'Your Invoice',
+// '$shipping_label' => 'Shipping',
+// '$balance_due_label' => 'Balance Due',
+// '$outstanding_label' => 'Balance Due',
+// '$partial_due_label' => 'Partial Due',
+// '$quote.total_label' => 'Total',
+// '$payment_due_label' => 'Payment due',
+// '$credit.date_label' => 'Credit Date',
+// '$invoiceDate_label' => 'Invoice Date',
+// '$view_button_label' => 'View Invoice',
+// '$client.city_label' => 'City',
+// '$spc_qr_code_label' => '',
+// '$client_name_label' => 'Client Name',
+// '$client.name_label' => 'Client Name',
+// '$paymentLink_label' => 'Pay Now',
+// '$payment_url_label' => 'Pay Now',
+// '$page_layout_label' => '',
+// '$task.task1_label' => '',
+// '$task.task2_label' => '',
+// '$task.task3_label' => '',
+// '$task.task4_label' => '',
+// '$task.hours_label' => 'Hours',
+// '$amount_due_label' => 'Amount due',
+// '$amount_raw_label' => 'Amount',
+// '$invoice_no_label' => 'Invoice Number',
+// '$quote.date_label' => 'Quote Date',
+// '$vat_number_label' => 'VAT Number',
+// '$viewButton_label' => 'View Invoice',
+// '$portal_url_label' => '',
+// '$task.date_label' => 'Date',
+// '$task.rate_label' => 'Rate',
+// '$task.cost_label' => 'Rate',
+// '$statement_label' => 'Statement',
+// '$user_iban_label' => '',
+// '$signature_label' => '',
+// '$id_number_label' => 'ID Number',
+// '$credit_no_label' => 'Invoice Number',
+// '$font_size_label' => '',
+// '$view_link_label' => 'View Invoice',
+// '$page_size_label' => '',
+// '$country_2_label' => 'Country',
+// '$firstName_label' => 'First Name',
+// '$user.name_label' => 'Name',
+// '$font_name_label' => '',
+// '$auto_bill_label' => '',
+// '$payments_label' => 'Payments',
+// '$task.tax_label' => 'Tax',
+// '$discount_label' => 'Discount',
+// '$subtotal_label' => 'Subtotal',
+// '$company1_label' => '',
+// '$company2_label' => '',
+// '$company3_label' => '',
+// '$company4_label' => '',
+// '$due_date_label' => 'Due Date',
+// '$poNumber_label' => 'PO Number',
+// '$quote_no_label' => 'Quote Number',
+// '$address2_label' => 'Apt/Suite',
+// '$address1_label' => 'Street',
+// '$viewLink_label' => 'View Invoice',
+// '$autoBill_label' => '',
+// '$view_url_label' => 'View Invoice',
+// '$font_url_label' => '',
+// '$details_label' => 'Details',
+// '$balance_label' => 'Balance',
+// '$partial_label' => 'Partial Due',
+// '$client1_label' => '',
+// '$client2_label' => '',
+// '$client3_label' => '',
+// '$client4_label' => '',
+// '$dueDate_label' => 'Due Date',
+// '$invoice_label' => 'Invoice Number',
+// '$account_label' => 'Company Name',
+// '$country_label' => 'Country',
+// '$contact_label' => 'Name',
+// '$app_url_label' => '',
+// '$website_label' => 'Website',
+// '$entity_label' => 'Invoice',
+// '$thanks_label' => 'Thanks',
+// '$amount_label' => 'Total',
+// '$method_label' => 'Method',
+// '$number_label' => 'Invoice Number',
+// '$footer_label' => '',
+// '$client_label' => 'Client Name',
+// '$email_label' => 'Email',
+// '$notes_label' => 'Public Notes',
+// '_rate1_label' => 'Tax',
+// '_rate2_label' => 'Tax',
+// '_rate3_label' => 'Tax',
+// '$taxes_label' => 'Taxes',
+// '$total_label' => 'Total',
+// '$phone_label' => 'Phone',
+// '$terms_label' => 'Invoice Terms',
+// '$from_label' => 'From',
+// '$item_label' => 'Item',
+// '$date_label' => 'Invoice Date',
+// '$tax_label' => 'Tax',
+// '$dir_label' => '',
+// '$to_label' => 'To',
+// '$show_paid_stamp_label' => '',
+// '$status_logo_label' => '',
+// '$show_shipping_address_label' => '',
+// '$show_shipping_address_block_label' => '',
+// '$show_shipping_address_visibility_label' => '',
+// ],
];
}
@@ -1006,7 +980,7 @@ EPD
'$quote.amount_label' => ctrans('texts.amount'),
'$description_label' => ctrans('texts.description'),
'$product.tax_label' => ctrans('texts.tax'),
- '$your_entity_label' => ctrans('texts.your_quote'),
+ '$your_entity_label' => ctrans("texts.your_{$this->entity_string}"),
'$view_button_label' => ctrans('texts.view'),
'$status_logo_label' => ctrans('texts.logo'),
'$credit.date_label' => ctrans('texts.date'),
@@ -1090,7 +1064,7 @@ EPD
'$balance_label' => ctrans('texts.balance'),
'$partial_label' => ctrans('texts.partial'),
'$footer_label' => ctrans('texts.footer'),
- '$entity_label' => ctrans('texts.quote'),
+ '$entity_label' => ctrans("texts.{$this->entity_string}"),
'$thanks_label' => ctrans('texts.thanks'),
'$method_label' => ctrans('texts.method'),
'$client_label' => ctrans('texts.client'),
@@ -1112,7 +1086,533 @@ EPD
'$dir_label' => '',
'$to_label' => ctrans('texts.to'),
];
-
}
+ private function getVendorStubVariables()
+ {
+ return ['values' => [
+ '$vendor.billing_postal_code' => '06270-5526',
+ '$company.postal_city_state' => '29359 New Loy, Delaware',
+ '$company.city_state_postal' => 'New Loy, Delaware 29359',
+ '$product.gross_line_total' => '',
+ '$purchase_order.po_number' => 'PO12345',
+ '$vendor.postal_city_state' => '06270-5526 Jameyhaven, West Virginia',
+ '$vendor.city_state_postal' => 'Jameyhaven, West Virginia 06270-5526',
+ '$purchase_order.due_date' => '02-12-2021',
+ '$vendor.billing_address1' => '589',
+ '$vendor.billing_address2' => '761 Odessa Centers Suite 673',
+ '$invoiceninja.whitelabel' => 'https://raw.githubusercontent.com/invoiceninja/invoiceninja/v5-develop/public/images/new_logo.png',
+ '$purchase_order.custom1' => 'Custom 1',
+ '$purchase_order.custom2' => 'Custom 2',
+ '$purchase_order.custom3' => 'Custom 3',
+ '$purchase_order.custom4' => 'Custom 4',
+ '$vendor.billing_address' => '589
761 Odessa Centers Suite 673
New Loy, Delaware 29359
Afghanistan
',
+ '$vendor.billing_country' => 'Afghanistan',
+ '$purchase_order.number' => 'Live Preview #790',
+ '$purchase_order.total' => '$10,256.40',
+ '$vendor.billing_state' => 'West Virginia',
+ '$product.description' => '',
+ '$product.product_key' => '',
+ '$entity.public_notes' => 'These are public notes for the Vendor',
+ '$purchase_order.date' => '14/Mar/2023',
+ '$company.postal_code' => '29359',
+ '$company.postal_city' => '29359 New Loy',
+ '$vendor.billing_city' => 'Jameyhaven',
+ '$vendor.public_notes' => 'Public notes',
+ '$product.line_total' => '',
+ '$product.tax_amount' => '',
+ '$vendor.postal_code' => '06270-5526',
+ '$vendor.postal_city' => '06270-5526 Jameyhaven',
+ '$contact.first_name' => 'Geo',
+ '$company.vat_number' => 'vat number',
+ '$contact.signature' => '',
+ '$product.tax_name1' => '',
+ '$product.tax_name2' => '',
+ '$product.tax_name3' => '',
+ '$product.unit_cost' => '',
+ '$custom_surcharge1' => '$0.00',
+ '$custom_surcharge2' => '$0.00',
+ '$custom_surcharge3' => '$0.00',
+ '$custom_surcharge4' => '$0.00',
+ '$postal_city_state' => '06270-5526 Jameyhaven, West Virginia',
+ '$company_logo_size' => '65%',
+ '$vendor.vat_number' => 'At qui autem iusto et.',
+ '$contact.full_name' => 'Geo Maggio',
+ '$city_state_postal' => 'Jameyhaven, West Virginia 06270-5526',
+ '$contact.last_name' => 'Maggio',
+ '$company.country_2' => 'US',
+ '$company.id_number' => 'id number',
+ '$product.product1' => '',
+ '$product.product2' => '',
+ '$product.product3' => '',
+ '$product.product4' => '',
+ '$statement_amount' => '',
+ '$product.discount' => '',
+ '$assigned_to_user' => '',
+ '$entity_issued_to' => '',
+ '$product.quantity' => '',
+ '$total_tax_labels' => '',
+ '$total_tax_values' => '',
+ '$partial_due_date' => ' ',
+ '$company.address2' => '70218 Lori Station Suite 529',
+ '$company.address1' => 'Christiansen Garden',
+ '$vendor.id_number' => 'Libero debitis.',
+ '$contact.custom1' => null,
+ '$contact.custom2' => null,
+ '$contact.custom3' => null,
+ '$contact.custom4' => null,
+ '$secondary_color' => '#7081e0',
+ '$company.custom1' => ' ',
+ '$company.custom2' => ' ',
+ '$company.custom3' => ' ',
+ '$company.custom4' => ' ',
+ '$balance_due_raw' => '10256.40',
+ '$entity.datetime' => '14/Mar/2023 10:43 pm',
+ '$vendor.address1' => '589',
+ '$vendor.address2' => '761 Odessa Centers Suite 673',
+ '$line_tax_values' => '$488.40',
+ '$line_tax_labels' => 'Sales Tax 5%',
+ '$company.address' => 'Christiansen Garden
70218 Lori Station Suite 529
New Loy, Delaware 29359
United States
Phone: 1-240-886-2233
Email: immanuel53@example.net
',
+ '$user.first_name' => 'Mr. Louvenia Armstrong',
+ '$created_by_user' => 'Mr. Louvenia Armstrong Prof. Reyes Anderson',
+ '$vendor.currency' => 'USD',
+ '$company.country' => 'United States',
+ '$tech_hero_image' => 'http://ninja.test:8000/images/pdf-designs/tech-hero-image.jpg',
+ '$company.website' => 'http://www.dare.com/vero-consequatur-eveniet-dolorum-exercitationem-alias-repellat.html',
+ '$gross_subtotal' => '$10,256.40',
+ '$emailSignature' => ' ',
+ '$vendor_address' => '589
761 Odessa Centers Suite 673
New Loy, Delaware 29359
Afghanistan
',
+ '$vendor.address' => '589
761 Odessa Centers Suite 673
New Loy, Delaware 29359
Afghanistan
',
+ '$vendor.country' => 'Afghanistan',
+ '$vendor.custom3' => 'Ea quia tempore.',
+ '$vendor.custom1' => 'Necessitatibus aut.',
+ '$vendor.custom4' => 'Nobis aut harum.',
+ '$user.last_name' => 'Prof. Reyes Anderson',
+ '$vendor.custom2' => 'Sit fuga quas sint.',
+ '$vendor.website' => 'http://abernathy.com/consequatur-at-beatae-nesciunt',
+ '$dir_text_align' => 'left',
+ '$entity_footer' => '',
+ '$entity_images' => '',
+ '$contact.email' => '',
+ '$primary_color' => '#298AAB',
+ '$contact.phone' => '+1 (920) 735-1990',
+ '$vendor.number' => '0001',
+ '$company.phone' => '1-240-886-2233',
+ '$global_margin' => '6.35mm',
+ '$company.state' => 'Delaware',
+ '$entity_number' => 'Live Preview #790',
+ '$company.email' => 'immanuel53@example.net',
+ '$product.date' => '',
+ '$vendor.email' => '',
+ '$entity.terms' => '',
+ '$product.item' => '',
+ '$public_notes' => null,
+ '$paid_to_date' => '$0.00',
+ '$net_subtotal' => '$9,768.00',
+ '$payment.date' => ' ',
+ '$vendor.phone' => ' ',
+ '$contact.name' => 'Geo Maggio',
+ '$number_short' => 'Live Preview #790',
+ '$company.name' => 'Mrs. Kristina Powlowski',
+ '$company.city' => 'New Loy',
+ '$vendor.state' => 'West Virginia',
+ '$company.logo' => 'data:image/png;base64, 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',
+ '$company_logo' => 'data:image/png;base64, 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',
+ '$description' => '',
+ '$product.tax' => '',
+ '$view_button' => '
+
+ ',
+ '$status_logo' => ' ',
+ '$partial_due' => '$0.00',
+ '$balance_due' => '$10,256.40',
+ '$outstanding' => '$10,256.40',
+ '$payment_due' => ' ',
+ '$postal_city' => '06270-5526 Jameyhaven',
+ '$vendor_name' => 'Claudie Nikolaus MD',
+ '$vendor.name' => 'Claudie Nikolaus MD',
+ '$vendor.city' => 'Jameyhaven',
+ '$page_layout' => 'portrait',
+ '$viewButton' => '
+
+ ',
+ '$amount_due' => '$10,256.40',
+ '$amount_raw' => '10256.40',
+ '$vat_number' => 'At qui autem iusto et.',
+ '$portal_url' => 'http://ninja.test:8000/vendor/',
+ '$po_number' => null,
+ '$statement' => '',
+ '$view_link' => '
+
+ ',
+ '$signature' => ' ',
+ '$font_size' => '16px',
+ '$page_size' => 'A4',
+ '$country_2' => 'AF',
+ '$firstName' => 'Geo',
+ '$id_number' => 'Libero debitis.',
+ '$user.name' => 'Mr. Louvenia Armstrong Prof. Reyes Anderson',
+ '$font_name' => 'Roboto',
+ '$auto_bill' => 'This invoice will automatically be billed to your credit card on file on the due date.',
+ '$poNumber' => null,
+ '$payments' => '',
+ '$viewLink' => '
+
+ ',
+ '$subtotal' => '$9,768.00',
+ '$company1' => ' ',
+ '$company2' => ' ',
+ '$company3' => ' ',
+ '$company4' => ' ',
+ '$due_date' => ' ',
+ '$discount' => 0.0,
+ '$address1' => '589',
+ '$address2' => '761 Odessa Centers Suite 673',
+ '$autoBill' => 'This invoice will automatically be billed to your credit card on file on the due date.',
+ '$view_url' => 'http://ninja.test:8000/vendor/purchase_order/OwH1Bkl0AP3EBQxJpGvEsU7YbTk5durD',
+ '$font_url' => 'https://fonts.googleapis.com/css2?family=Roboto&display=swap',
+ '$details' => '',
+ '$balance' => '$0.00',
+ '$partial' => '$0.00',
+ '$custom1' => ' ',
+ '$custom2' => ' ',
+ '$custom3' => ' ',
+ '$custom4' => ' ',
+ '$dueDate' => ' ',
+ '$country' => 'Afghanistan',
+ '$vendor3' => 'Ea quia tempore.',
+ '$contact' => 'Geo Maggio',
+ '$account' => 'Mrs. Kristina Powlowski',
+ '$vendor1' => 'Necessitatibus aut.',
+ '$vendor4' => 'Nobis aut harum.',
+ '$vendor2' => 'Sit fuga quas sint.',
+ '$website' => 'http://abernathy.com/consequatur-at-beatae-nesciunt',
+ '$app_url' => 'http://ninja.test:8000',
+ '$footer' => '',
+ '$entity' => '',
+ '$thanks' => '',
+ '$amount' => '$10,256.40',
+ '$method' => ' ',
+ '$vendor' => 'Claudie Nikolaus MD',
+ '$number' => 'Live Preview #790',
+ '$email' => '',
+ '$terms' => '',
+ '$notes' => null,
+ '_rate1' => '',
+ '_rate2' => '',
+ '_rate3' => '',
+ '$total' => '$10,256.40',
+ '$taxes' => '$488.40',
+ '$phone' => ' ',
+ '$from' => '',
+ '$item' => '',
+ '$date' => '14/Mar/2023',
+ '$tax' => '',
+ '$dir' => 'ltr',
+ '$to' => '',
+ ],
+ 'labels' => $this->vendorLabels(),
+];
+ }
+
+ private function vendorLabels()
+ {
+ return [
+ '$vendor.billing_postal_code_label' => ctrans('texts.billing_postal_code'),
+ '$company.postal_city_state_label' => ctrans('texts.postal_city_state'),
+ '$company.city_state_postal_label' => ctrans('texts.city_state_postal'),
+ '$product.gross_line_total_label' => ctrans('texts.gross_line_total'),
+ '$purchase_order.po_number_label' => ctrans('texts.po_number'),
+ '$vendor.postal_city_state_label' => ctrans('texts.postal_city_state'),
+ '$vendor.city_state_postal_label' => ctrans('texts.city_state_postal'),
+ '$purchase_order.due_date_label' => ctrans('texts.due_date'),
+ '$vendor.billing_address1_label' => ctrans('texts.billing_address1'),
+ '$vendor.billing_address2_label' => ctrans('texts.billing_address2'),
+ '$invoiceninja.whitelabel_label' => ctrans('texts.white_label'),
+ '$purchase_order.custom1_label' => ctrans('texts.custom1'),
+ '$purchase_order.custom2_label' => ctrans('texts.custom2'),
+ '$purchase_order.custom3_label' => ctrans('texts.custom3'),
+ '$purchase_order.custom4_label' => ctrans('texts.custom4'),
+ '$vendor.billing_address_label' => ctrans('texts.billing_address'),
+ '$vendor.billing_country_label' => ctrans('texts.billing_country'),
+ '$purchase_order.number_label' => ctrans('texts.number'),
+ '$purchase_order.total_label' => ctrans('texts.total'),
+ '$vendor.billing_state_label' => ctrans('texts.billing_state'),
+ '$product.description_label' => ctrans('texts.description'),
+ '$product.product_key_label' => ctrans('texts.product_key'),
+ '$entity.public_notes_label' => ctrans('texts.public_notes'),
+ '$purchase_order.date_label' => ctrans('texts.date'),
+ '$company.postal_code_label' => ctrans('texts.postal_code'),
+ '$company.postal_city_label' => ctrans('texts.postal_city'),
+ '$vendor.billing_city_label' => ctrans('texts.billing_city'),
+ '$vendor.public_notes_label' => ctrans('texts.public_notes'),
+ '$product.line_total_label' => ctrans('texts.line_total'),
+ '$product.tax_amount_label' => ctrans('texts.tax_amount'),
+ '$vendor.postal_code_label' => ctrans('texts.postal_code'),
+ '$vendor.postal_city_label' => ctrans('texts.postal_city'),
+ '$contact.first_name_label' => ctrans('texts.first_name'),
+ '$company.vat_number_label' => ctrans('texts.vat_number'),
+ '$contact.signature_label' => ctrans('texts.signature'),
+ '$product.tax_name1_label' => ctrans('texts.tax_name1'),
+ '$product.tax_name2_label' => ctrans('texts.tax_name2'),
+ '$product.tax_name3_label' => ctrans('texts.tax_name3'),
+ '$product.unit_cost_label' => ctrans('texts.unit_cost'),
+ '$custom_surcharge1_label' => ctrans('texts.custom_surcharge1'),
+ '$custom_surcharge2_label' => ctrans('texts.custom_surcharge2'),
+ '$custom_surcharge3_label' => ctrans('texts.custom_surcharge3'),
+ '$custom_surcharge4_label' => ctrans('texts.custom_surcharge4'),
+ '$postal_city_state_label' => ctrans('texts.postal_city_state'),
+ '$company_logo_size_label' => ctrans('texts.logo'),
+ '$vendor.vat_number_label' => ctrans('texts.vat_number'),
+ '$contact.full_name_label' => ctrans('texts.full_name'),
+ '$city_state_postal_label' => ctrans('texts.city_state_postal'),
+ '$contact.last_name_label' => ctrans('texts.last_name'),
+ '$company.country_2_label' => ctrans('texts.country'),
+ '$company.id_number_label' => ctrans('texts.id_number'),
+ '$product.product1_label' => ctrans('texts.product1'),
+ '$product.product2_label' => ctrans('texts.product2'),
+ '$product.product3_label' => ctrans('texts.product3'),
+ '$product.product4_label' => ctrans('texts.product4'),
+ '$statement_amount_label' => ctrans('texts.amount'),
+ '$product.discount_label' => ctrans('texts.discount'),
+ '$assigned_to_user_label' => ctrans('texts.assigned_to'),
+ '$entity_issued_to_label' => ctrans('texts.purchase_order_issued_to'),
+ '$product.quantity_label' => ctrans('texts.quantity'),
+ '$total_tax_labels_label' => ctrans('texts.total_taxes'),
+ '$total_tax_label' => ctrans('texts.total_taxes'),
+ '$partial_due_date_label' => ctrans('texts.partial_due_date'),
+ '$company.address2_label' => ctrans('texts.address2'),
+ '$company.address1_label' => ctrans('texts.address1'),
+ '$vendor.id_number_label' => ctrans('texts.id_number'),
+ '$contact.custom1_label' => ctrans('texts.custom1'),
+ '$contact.custom2_label' => ctrans('texts.custom2'),
+ '$contact.custom3_label' => ctrans('texts.custom3'),
+ '$contact.custom4_label' => ctrans('texts.custom4'),
+ '$secondary_color_label' => ctrans('texts.secondary_color'),
+ '$company.custom1_label' => ctrans('texts.custom1'),
+ '$company.custom2_label' => ctrans('texts.custom2'),
+ '$company.custom3_label' => ctrans('texts.custom3'),
+ '$company.custom4_label' => ctrans('texts.custom4'),
+ '$balance_due_raw_label' => ctrans('texts.balance_due'),
+ '$entity.datetime_label' => ctrans('texts.datetime_format_id'),
+ '$vendor.address1_label' => ctrans('texts.address1'),
+ '$vendor.address2_label' => ctrans('texts.address2'),
+ '$line_tax_label' => ctrans('texts.line_taxes'),
+ '$line_tax_labels_label' => ctrans('texts.line_taxes'),
+ '$company.address_label' => ctrans('texts.address'),
+ '$user.first_name_label' => ctrans('texts.first_name'),
+ '$created_by_user_label' => ctrans('texts.created_by', ['name' => 'Manuel']),
+ '$vendor.currency_label' => ctrans('texts.currency'),
+ '$company.country_label' => ctrans('texts.country'),
+ '$tech_hero_image_label' => ctrans('texts.logo'),
+ '$company.website_label' => ctrans('texts.website'),
+ '$gross_subtotal_label' => ctrans('texts.subtotal'),
+ '$emailSignature_label' => ctrans('texts.email_signature'),
+ '$vendor_address_label' => ctrans('texts.address'),
+ '$vendor.address_label' => ctrans('texts.address'),
+ '$vendor.country_label' => ctrans('texts.country'),
+ '$vendor.custom3_label' => ctrans('texts.custom3'),
+ '$vendor.custom1_label' => ctrans('texts.custom1'),
+ '$vendor.custom4_label' => ctrans('texts.custom4'),
+ '$user.last_name_label' => ctrans('texts.last_name'),
+ '$vendor.custom2_label' => ctrans('texts.custom2'),
+ '$vendor.website_label' => ctrans('texts.website'),
+ '$dir_text_align_label' => '',
+ '$entity_footer_label' => ctrans('texts.footer'),
+ '$entity_images_label' => ctrans('texts.logo'),
+ '$contact.email_label' => ctrans('texts.email'),
+ '$primary_color_label' => ctrans('texts.primary_color'),
+ '$contact.phone_label' => ctrans('texts.phone'),
+ '$vendor.number_label' => ctrans('texts.number'),
+ '$company.phone_label' => ctrans('texts.phone'),
+ '$global_margin_label' => '',
+ '$company.state_label' => ctrans('texts.state'),
+ '$entity_number_label' => ctrans('texts.purchase_order_number'),
+ '$company.email_label' => ctrans('texts.email'),
+ '$product.date_label' => ctrans('texts.date'),
+ '$vendor.email_label' => ctrans('texts.email'),
+ '$entity.terms_label' => ctrans('texts.terms'),
+ '$product.item_label' => ctrans('texts.item'),
+ '$public_notes_label' => ctrans('texts.public_notes'),
+ '$paid_to_date_label' => ctrans('texts.paid_to_date'),
+ '$net_subtotal_label' => ctrans('texts.net_subtotal'),
+ '$payment.date_label' => ctrans('texts.date'),
+ '$vendor.phone_label' => ctrans('texts.phone'),
+ '$contact.name_label' => ctrans('texts.name'),
+ '$number_short_label' => ctrans('texts.purchase_order_number_short'),
+ '$company.name_label' => ctrans('texts.name'),
+ '$company.city_label' => ctrans('texts.city'),
+ '$vendor.state_label' => ctrans('texts.state'),
+ '$company.logo_label' => ctrans('texts.logo'),
+ '$company_logo_label' => ctrans('texts.logo'),
+ '$description_label' => ctrans('texts.description'),
+ '$product.tax_label' => ctrans('texts.tax'),
+ '$view_button_label' => ctrans('texts.link'),
+ '$status_logo_label' => ctrans('texts.logo'),
+ '$partial_due_label' => ctrans('texts.partial_due'),
+ '$balance_due_label' => ctrans('texts.balance_due'),
+ '$outstanding_label' => ctrans('texts.outstanding'),
+ '$payment_due_label' => ctrans('texts.payment_due'),
+ '$postal_city_label' => ctrans('texts.postal_city'),
+ '$vendor_name_label' => ctrans('texts.vendor_name'),
+ '$vendor.name_label' => ctrans('texts.name'),
+ '$vendor.city_label' => ctrans('texts.city'),
+ '$page_layout_label' => ctrans('texts.page_layout'),
+ '$viewButton_label' => ctrans('texts.view'),
+ '$amount_due_label' => ctrans('texts.amount_due'),
+ '$amount_raw_label' => ctrans('texts.amount'),
+ '$vat_number_label' => ctrans('texts.vat_number'),
+ '$portal_url_label' => ctrans('texts.link'),
+ '$po_number_label' => ctrans('texts.po_number'),
+ '$statement_label' => ctrans('texts.statement'),
+ '$view_link_label' => ctrans('texts.link'),
+ '$signature_label' => ctrans('texts.signature'),
+ '$font_size_label' => ctrans('texts.font_size'),
+ '$page_size_label' => ctrans('texts.page_size'),
+ '$country_2_label' => ctrans('texts.country'),
+ '$firstName_label' => ctrans('texts.name'),
+ '$id_number_label' => ctrans('texts.id_number'),
+ '$user.name_label' => ctrans('texts.name'),
+ '$font_name_label' => ctrans('texts.name'),
+ '$auto_bill_label' => ctrans('texts.auto_bill'),
+ '$poNumber_label' => ctrans('texts.po_number'),
+ '$payments_label' => ctrans('texts.payments'),
+ '$viewLink_label' => ctrans('texts.link'),
+ '$subtotal_label' => ctrans('texts.subtotal'),
+ '$company1_label' => ctrans('texts.company1'),
+ '$company2_label' => ctrans('texts.company2'),
+ '$company3_label' => ctrans('texts.company3'),
+ '$company4_label' => ctrans('texts.company4'),
+ '$due_date_label' => ctrans('texts.due_date'),
+ '$discount_label' => ctrans('texts.discount'),
+ '$address1_label' => ctrans('texts.address1'),
+ '$address2_label' => ctrans('texts.address2'),
+ '$autoBill_label' => ctrans('texts.auto_bill'),
+ '$view_url_label' => ctrans('texts.url'),
+ '$font_url_label' => ctrans('texts.url'),
+ '$details_label' => ctrans('texts.details'),
+ '$balance_label' => ctrans('texts.balance'),
+ '$partial_label' => ctrans('texts.partial'),
+ '$custom1_label' => ctrans('texts.custom1'),
+ '$custom2_label' => ctrans('texts.custom2'),
+ '$custom3_label' => ctrans('texts.custom3'),
+ '$custom4_label' => ctrans('texts.custom4'),
+ '$dueDate_label' => ctrans('texts.due_date'),
+ '$country_label' => ctrans('texts.country'),
+ '$vendor3_label' => ctrans('texts.vendor3'),
+ '$contact_label' => ctrans('texts.contact'),
+ '$account_label' => ctrans('texts.company'),
+ '$vendor1_label' => ctrans('texts.vendor1'),
+ '$vendor4_label' => ctrans('texts.vendor4'),
+ '$vendor2_label' => ctrans('texts.vendor2'),
+ '$website_label' => ctrans('texts.website'),
+ '$app_url_label' => ctrans('texts.url'),
+ '$footer_label' => ctrans('texts.footer'),
+ '$entity_label' => ctrans('texts.purchase_order'),
+ '$thanks_label' => ctrans('texts.thanks'),
+ '$amount_label' => ctrans('texts.amount'),
+ '$method_label' => ctrans('texts.method'),
+ '$vendor_label' => ctrans('texts.vendor'),
+ '$number_label' => ctrans('texts.number'),
+ '$email_label' => ctrans('texts.email'),
+ '$terms_label' => ctrans('texts.terms'),
+ '$notes_label' => ctrans('texts.notes'),
+ 'tax_rate1_label' => ctrans('texts.tax_rate1'),
+ 'tax_rate2_label' => ctrans('texts.tax_rate2'),
+ 'tax_rate3_label' => ctrans('texts.tax_rate3'),
+ '$total_label' => ctrans('texts.total'),
+ '$taxes_label' => ctrans('texts.taxes'),
+ '$phone_label' => ctrans('texts.phone'),
+ '$from_label' => ctrans('texts.from'),
+ '$item_label' => ctrans('texts.item'),
+ '$date_label' => ctrans('texts.date'),
+ '$tax_label' => ctrans('texts.tax'),
+ '$dir_label' => '',
+ '$to_label' => ctrans('texts.to'),
+ ];
+ }
}
diff --git a/app/Services/PdfMaker/Design.php b/app/Services/PdfMaker/Design.php
index 2dba44efc7cb..eccdb0d4dfc3 100644
--- a/app/Services/PdfMaker/Design.php
+++ b/app/Services/PdfMaker/Design.php
@@ -681,8 +681,6 @@ class Design extends BaseDesign
$table_type = "{$type}_columns";
- nlog($table_type);
-
if($type == 'product' && $this->entity instanceof Quote && !$this->settings_object->getSetting('sync_invoice_quote_columns'))
$table_type = "product_quote_columns";
diff --git a/app/Utils/VendorHtmlEngine.php b/app/Utils/VendorHtmlEngine.php
index aab9b9fb3302..4eac57ac59bc 100644
--- a/app/Utils/VendorHtmlEngine.php
+++ b/app/Utils/VendorHtmlEngine.php
@@ -511,7 +511,7 @@ class VendorHtmlEngine
$data['values'][$key] = $value['value'];
$data['labels'][$key.'_label'] = $value['label'];
}
-
+nlog($data);
return $data;
}