Merge pull request #649 from sakalauskas/dev-api

Add ability to include invoice invitations via API
This commit is contained in:
Hillel Coren 2016-01-25 09:38:13 +02:00
commit c0531a8a06
2 changed files with 31 additions and 0 deletions

View File

@ -0,0 +1,21 @@
<?php namespace App\Ninja\Transformers;
use App\Models\Account;
use App\Models\Contact;
use App\Models\Invitation;
use League\Fractal;
class InvitationTransformer extends EntityTransformer
{
public function transform(Invitation $invitation)
{
return [
'id' => (int) $invitation->public_id,
'key' => $invitation->getName(),
'status' => $invitation->getStatus(),
'link' => $invitation->getLink(),
'sent_date' => $invitation->sent_date,
'viewed_date' => $invitation->sent_date,
];
}
}

View File

@ -25,12 +25,22 @@ class InvoiceTransformer extends EntityTransformer
'payments'
];
protected $availableIncludes = [
'invitations',
];
public function includeInvoiceItems(Invoice $invoice)
{
$transformer = new InvoiceItemTransformer($this->account, $this->serializer);
return $this->includeCollection($invoice->invoice_items, $transformer, ENTITY_INVOICE_ITEMS);
}
public function includeInvitations(Invoice $invoice)
{
$transformer = new InvitationTransformer($this->account, $this->serializer);
return $this->includeCollection($invoice->invitations, $transformer, ENTITY_INVITATION);
}
public function includePayments(Invoice $invoice)
{
$transformer = new PaymentTransformer($this->account, $this->serializer);