protected function getDatatableActions($entityType) { return [[trans('texts.edit_invoice'), function ($model) { return URL::to("invoices/{$model->public_id}/edit"); }, function ($model) { return Invoice::canEditItem($model); }]]; }
protected function getDatatableActions($entityType) { return [[trans("texts.edit_{$entityType}"), function ($model) use($entityType) { return URL::to("{$entityType}s/{$model->public_id}/edit"); }, function ($model) { return Invoice::canEditItem($model); }], [trans("texts.clone_{$entityType}"), function ($model) use($entityType) { return URL::to("{$entityType}s/{$model->public_id}/clone"); }, function ($model) { return Invoice::canCreate(); }], [trans("texts.view_history"), function ($model) use($entityType) { return URL::to("{$entityType}s/{$entityType}_history/{$model->public_id}"); }], ['--divider--', function () { return false; }, function ($model) { return Invoice::canEditItem($model) || Payment::canCreate(); }], [trans("texts.mark_sent"), function ($model) { return "javascript:markEntity({$model->public_id})"; }, function ($model) { return $model->invoice_status_id < INVOICE_STATUS_SENT && Invoice::canEditItem($model); }], [trans('texts.enter_payment'), function ($model) { return URL::to("payments/create/{$model->client_public_id}/{$model->public_id}"); }, function ($model) use($entityType) { return $entityType == ENTITY_INVOICE && $model->balance > 0 && Payment::canCreate(); }], [trans("texts.view_quote"), function ($model) { return URL::to("quotes/{$model->quote_id}/edit"); }, function ($model) use($entityType) { return $entityType == ENTITY_INVOICE && $model->quote_id && Invoice::canEditItem($model); }], [trans("texts.view_invoice"), function ($model) { return URL::to("invoices/{$model->quote_invoice_id}/edit"); }, function ($model) use($entityType) { return $entityType == ENTITY_QUOTE && $model->quote_invoice_id && Invoice::canEditItem($model); }], [trans("texts.convert_to_invoice"), function ($model) { return "javascript:convertEntity({$model->public_id})"; }, function ($model) use($entityType) { return $entityType == ENTITY_QUOTE && !$model->quote_invoice_id && Invoice::canEditItem($model); }]]; }