mirror of
				https://github.com/invoiceninja/invoiceninja.git
				synced 2025-10-31 07:27:32 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			83 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| namespace App\Ninja\Datatables;
 | |
| 
 | |
| use Auth;
 | |
| use URL;
 | |
| use Utils;
 | |
| 
 | |
| class VendorDatatable extends EntityDatatable
 | |
| {
 | |
|     public $entityType = ENTITY_VENDOR;
 | |
|     public $sortCol = 4;
 | |
| 
 | |
|     public function columns()
 | |
|     {
 | |
|         return [
 | |
|             [
 | |
|                 'name',
 | |
|                 function ($model) {
 | |
|                     return link_to("vendors/{$model->public_id}", $model->name ?: '')->toHtml();
 | |
|                 },
 | |
|             ],
 | |
|             [
 | |
|                 'city',
 | |
|                 function ($model) {
 | |
|                     return $model->city;
 | |
|                 },
 | |
|             ],
 | |
|             [
 | |
|                 'work_phone',
 | |
|                 function ($model) {
 | |
|                     return $model->work_phone;
 | |
|                 },
 | |
|             ],
 | |
|             [
 | |
|                 'email',
 | |
|                 function ($model) {
 | |
|                     return link_to("vendors/{$model->public_id}", $model->email ?: '')->toHtml();
 | |
|                 },
 | |
|             ],
 | |
|             [
 | |
|                 'client_created_at',
 | |
|                 function ($model) {
 | |
|                     return Utils::timestampToDateString(strtotime($model->created_at));
 | |
|                 },
 | |
|             ],
 | |
|         ];
 | |
|     }
 | |
| 
 | |
|     public function actions()
 | |
|     {
 | |
|         return [
 | |
|             [
 | |
|                 trans('texts.edit_vendor'),
 | |
|                 function ($model) {
 | |
|                     return URL::to("vendors/{$model->public_id}/edit");
 | |
|                 },
 | |
|                 function ($model) {
 | |
|                     return Auth::user()->can('editByOwner', [ENTITY_VENDOR, $model->user_id]);
 | |
|                 },
 | |
|             ],
 | |
|             [
 | |
|                 '--divider--', function () {
 | |
|                     return false;
 | |
|                 },
 | |
|                 function ($model) {
 | |
|                     return Auth::user()->can('editByOwner', [ENTITY_VENDOR, $model->user_id]) && Auth::user()->can('create', ENTITY_EXPENSE);
 | |
|                 },
 | |
| 
 | |
|             ],
 | |
|             [
 | |
|                 trans('texts.enter_expense'),
 | |
|                 function ($model) {
 | |
|                     return URL::to("expenses/create/{$model->public_id}");
 | |
|                 },
 | |
|                 function ($model) {
 | |
|                     return Auth::user()->can('create', ENTITY_EXPENSE);
 | |
|                 },
 | |
|             ],
 | |
|         ];
 | |
|     }
 | |
| }
 |