Fix catch matching in typeahead, dont bill services past their end date
This commit is contained in:
parent
1242dffa20
commit
4718bf3057
@ -1171,11 +1171,14 @@ class Service extends Model
|
||||
* @return Collection
|
||||
* @throws Exception
|
||||
*/
|
||||
public function next_invoice_items(bool $future): Collection
|
||||
public function next_invoice_items(bool $future,Carbon $billdate=NULL): Collection
|
||||
{
|
||||
if ($this->wasCancelled() OR $this->suspend_billing OR $this->external_billing OR (! $future AND ! $this->active))
|
||||
return collect();
|
||||
|
||||
if (is_null($billdate))
|
||||
$billdate = Carbon::now()->addDays(30);
|
||||
|
||||
// If pending, add any connection charges
|
||||
// Connection charges are only charged once
|
||||
if ((! $this->invoice_items->filter(function($item) { return $item->item_type==4; })->sum('total'))
|
||||
@ -1203,8 +1206,8 @@ class Service extends Model
|
||||
if ((! $this->invoice_items->filter(function($item) { return $item->item_type==0 AND ! $item->exists; })->count())
|
||||
AND ($this->active OR $this->isPending())
|
||||
AND (
|
||||
($future == TRUE AND $this->invoice_next < $this->invoice_next_end) OR
|
||||
($future == FALSE AND ($this->invoice_to < ($this->date_end ?: Carbon::now()->addDays(30))))
|
||||
(($future == TRUE) AND $this->invoice_next < $this->invoice_next_end) OR
|
||||
(($future == FALSE) AND ($this->invoice_to < ($this->date_end ?: $billdate)))
|
||||
))
|
||||
{
|
||||
do {
|
||||
@ -1224,11 +1227,11 @@ class Service extends Model
|
||||
|
||||
$o->addTaxes($this->account->country->taxes);
|
||||
$this->invoice_items->push($o);
|
||||
} while ($future == FALSE AND ($this->invoice_to < ($this->date_end ?: Carbon::now()->addDays(30))));
|
||||
} while ($future == FALSE AND ($this->invoice_to < ($this->date_end ?: $billdate)));
|
||||
}
|
||||
|
||||
// Add additional charges
|
||||
if (($future == TRUE OR ($future == FALSE AND ($this->invoice_to >= Carbon::now()->addDays(30))))
|
||||
if ((($future == TRUE) OR (($future == FALSE) AND ($this->invoice_to >= $billdate)))
|
||||
AND ! $this->invoice_items->filter(function($item) { return $item->module_id == 30 AND ! $item->exists; })->count())
|
||||
{
|
||||
foreach ($this->charges->filter(function($item) { return ! $item->processed; }) as $oo) {
|
||||
|
2
resources/js/bootstrap3-typeahead.js
vendored
2
resources/js/bootstrap3-typeahead.js
vendored
@ -313,7 +313,7 @@
|
||||
text = text.replace((/[\(\)\/\.\*\+\?\[\]]/g), function (mat) {
|
||||
return '\\' + mat;
|
||||
});
|
||||
var reg = new RegExp(text, 'g');
|
||||
var reg = new RegExp(text, 'ig');
|
||||
var m;
|
||||
for (i = 0; i < first.length; ++i) {
|
||||
m = first[i].match(reg);
|
||||
|
Loading…
Reference in New Issue
Block a user