2017-01-30 20:40:43 +01:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace App\Ninja\Presenters;
|
2016-08-10 16:04:17 +02:00
|
|
|
|
2017-11-03 10:25:14 +01:00
|
|
|
use DropdownButton;
|
2016-08-10 16:04:17 +02:00
|
|
|
use App\Libraries\Skype\HeroCard;
|
|
|
|
|
|
|
|
class ProductPresenter extends EntityPresenter
|
|
|
|
{
|
2016-12-15 14:28:24 +01:00
|
|
|
public function user()
|
|
|
|
{
|
|
|
|
return $this->entity->user->getDisplayName();
|
|
|
|
}
|
2016-08-10 16:04:17 +02:00
|
|
|
|
|
|
|
public function skypeBot($account)
|
|
|
|
{
|
|
|
|
$product = $this->entity;
|
|
|
|
|
|
|
|
$card = new HeroCard();
|
|
|
|
$card->setTitle($product->product_key);
|
|
|
|
$card->setSubitle($account->formatMoney($product->cost));
|
|
|
|
$card->setText($product->notes);
|
|
|
|
|
|
|
|
return $card;
|
|
|
|
}
|
2017-11-03 10:25:14 +01:00
|
|
|
|
|
|
|
public function moreActions()
|
|
|
|
{
|
|
|
|
$product = $this->entity;
|
|
|
|
|
|
|
|
if (! $product->trashed()) {
|
|
|
|
if (auth()->user()->can('create', ENTITY_INVOICE)) {
|
|
|
|
$actions[] = ['url' => 'javascript:submitAction("invoice")', 'label' => trans('texts.invoice_product')];
|
|
|
|
$actions[] = DropdownButton::DIVIDER;
|
|
|
|
}
|
|
|
|
$actions[] = ['url' => 'javascript:submitAction("archive")', 'label' => trans("texts.archive_product")];
|
|
|
|
} else {
|
|
|
|
$actions[] = ['url' => 'javascript:submitAction("restore")', 'label' => trans("texts.restore_product")];
|
|
|
|
}
|
|
|
|
if (! $product->is_deleted) {
|
|
|
|
$actions[] = ['url' => 'javascript:onDeleteClick()', 'label' => trans("texts.delete_product")];
|
|
|
|
}
|
|
|
|
|
|
|
|
return $actions;
|
|
|
|
}
|
|
|
|
|
2016-08-10 16:04:17 +02:00
|
|
|
}
|