diff --git a/app/DataMapper/CompanySettings.php b/app/DataMapper/CompanySettings.php index 76485942ea71..ce9b344e323e 100644 --- a/app/DataMapper/CompanySettings.php +++ b/app/DataMapper/CompanySettings.php @@ -108,6 +108,7 @@ class CompanySettings extends BaseSettings public $project_number_counter = 1; //@implemented public $shared_invoice_quote_counter = false; //@implemented + public $shared_invoice_credit_counter = false; //@implemented public $recurring_number_prefix = 'R'; //@implemented public $reset_counter_frequency_id = '0'; //@implemented public $reset_counter_date = ''; //@implemented @@ -262,6 +263,7 @@ class CompanySettings extends BaseSettings public $hide_empty_columns_on_pdf = false; public static $casts = [ + 'shared_invoice_credit_counter' => 'bool', 'reply_to_name' => 'string', 'hide_empty_columns_on_pdf' => 'bool', 'enable_reminder_endless' => 'bool', diff --git a/app/Models/Client.php b/app/Models/Client.php index ba10ae36b477..f2bca1a2012c 100644 --- a/app/Models/Client.php +++ b/app/Models/Client.php @@ -304,6 +304,10 @@ class Client extends BaseModel implements HasLocalePreference return $this->company->settings->{$setting}; } + elseif( property_exists(CompanySettings::defaults(), $setting) ) { + return CompanySettings::defaults()->{$setting}; + } + return ''; // throw new \Exception("Settings corrupted", 1); diff --git a/app/Services/BillingSubscription/BillingSubscriptionService.php b/app/Services/BillingSubscription/BillingSubscriptionService.php index e464f4d9ea6f..32848dd9c918 100644 --- a/app/Services/BillingSubscription/BillingSubscriptionService.php +++ b/app/Services/BillingSubscription/BillingSubscriptionService.php @@ -13,6 +13,7 @@ namespace App\Services\BillingSubscription; use App\DataMapper\InvoiceItem; use App\Factory\InvoiceFactory; +use App\Models\BillingSubscription; use App\Models\ClientSubscription; use App\Models\Product; use App\Repositories\InvoiceRepository; @@ -41,7 +42,7 @@ class BillingSubscriptionService // 'line_items' => [], // ]; - $invoice = $invoice_repo->save($data, InvoiceFactory::create($billing_subscription->company_id, $billing_subscription->user_id)); + $invoice = $invoice_repo->save($data, InvoiceFactory::create($this->billing_subscription->company_id, $this->billing_subscription->user_id)); /* If trial_enabled -> return early diff --git a/app/Utils/Traits/GeneratesCounter.php b/app/Utils/Traits/GeneratesCounter.php index 1225c0952198..036cebc21f92 100644 --- a/app/Utils/Traits/GeneratesCounter.php +++ b/app/Utils/Traits/GeneratesCounter.php @@ -313,7 +313,7 @@ trait GeneratesCounter */ public function hasSharedCounter(Client $client) : bool { - return (bool) $client->getSetting('shared_invoice_quote_counter'); + return (bool) $client->getSetting('shared_invoice_quote_counter') || (bool) $client->getSetting('shared_invoice_credit_counter'); } /**