Improved service display

This commit is contained in:
Deon George
2011-07-14 19:09:03 +10:00
parent 46c3b9a075
commit 27cdab1fe4
37 changed files with 1319 additions and 1042 deletions

View File

@@ -75,23 +75,20 @@ class Model_Account extends Model_Auth_UserDefault {
* Get a list of all invoices for this account
*/
public function invoices() {
$return = array();
foreach ($this->invoice->distinct('id')->find_all() as $invoice)
$return[$invoice->id] = $invoice;
return $return;
return $this->invoice->distinct('id')->find_all();
}
/**
* Get a list of due invoices for this account
*
* @param int Date (in secs) to only retrieve invoices prior to this date
*/
public function invoices_due() {
public function invoices_due($date=NULL) {
$return = array();
foreach ($this->invoices() as $invoice)
if ($invoice->due())
$return[$invoice->id] = $invoice;
foreach ($this->invoices() as $io)
if ((is_null($date) OR $io->date_orig < $date) AND $io->due())
$return[$io->id] = $io;
return $return;
}
@@ -99,16 +96,13 @@ class Model_Account extends Model_Auth_UserDefault {
/**
* Calculate the total of invoices due for this account
*/
public function invoices_due_total($format=FALSE) {
public function invoices_due_total($date=NULL,$format=FALSE) {
$result = 0;
foreach ($this->invoices_due() as $invoice)
$result += $invoice->due();
foreach ($this->invoices_due($date) as $io)
$result += $io->due();
if ($format)
return Currency::display($result);
else
return $result;
return $format ? Currency::display($result) : $result;
}
}
?>