1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-11 13:42:49 +01:00
invoiceninja/app/Models/Presenters/InvoicePresenter.php

83 lines
1.6 KiB
PHP
Raw Normal View History

2019-08-29 06:07:04 +02:00
<?php
/**
* Invoice Ninja (https://invoiceninja.com)
*
* @link https://github.com/invoiceninja/invoiceninja source repository
*
* @copyright Copyright (c) 2019. Invoice Ninja LLC (https://invoiceninja.com)
*
* @license https://opensource.org/licenses/AAL
*/
namespace App\Models\Presenters;
2019-09-05 07:04:52 +02:00
use App\Utils\Number;
use App\Utils\Traits\MakesDates;
2019-08-29 06:07:04 +02:00
/**
* Class InvoicePresenter
*
* For convenience and to allow users to easiliy
2019-08-29 06:07:04 +02:00
* customise their invoices, we provide all possible
* invoice variables to be available from this presenter.
*
* Shortcuts to other presenters are here to facilitate
2019-08-29 06:07:04 +02:00
* a clean UI / UX
*
2019-08-29 06:07:04 +02:00
* @package App\Models\Presenters
*/
class InvoicePresenter extends EntityPresenter
{
use MakesDates;
public function amount()
{
return Number::formatMoney($this->balance, $this->client);
}
public function invoice_number()
{
if ($this->number != '') {
return $this->number;
} else {
return '';
}
}
public function clientName()
{
return $this->client->present()->name();
}
public function address()
{
return $this->client->present()->address();
}
public function shippingAddress()
{
return $this->client->present()->shipping_address();
}
public function companyLogo()
{
return $this->company->logo;
}
public function clientLogo()
{
return $this->client->logo;
}
public function companyName()
{
return $this->company->present()->name();
}
public function companyAddress()
{
return $this->company->present()->address();
}
2019-08-29 06:07:04 +02:00
}