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);
     }]];
 }