diff --git a/app/controllers/admin/AccessoriesController.php b/app/controllers/admin/AccessoriesController.php
index 3693e05a4a..1052ae607d 100755
--- a/app/controllers/admin/AccessoriesController.php
+++ b/app/controllers/admin/AccessoriesController.php
@@ -389,5 +389,22 @@ class AccessoriesController extends AdminController
->make();
}
+ public function getDataView($accessoryID)
+ {
+ $accessory = Accessory::find($accessoryID);
+ $accessory_users = $accessory->users;
+
+ $actions = new \Chumper\Datatable\Columns\FunctionColumn('actions',function($accessory_users){
+ return 'Checkin';
+ });
+
+ return Datatable::collection($accessory_users)
+ ->addColumn('name',function($accessory_users)
+ {
+ return link_to('/admin/users/'.$accessory_users->id.'/view', $accessory_users->fullName());
+ })
+ ->addColumn($actions)
+ ->make();
+ }
}
diff --git a/app/controllers/admin/AssetsController.php b/app/controllers/admin/AssetsController.php
index a77c0ffd9a..ae4cc5b8f1 100755
--- a/app/controllers/admin/AssetsController.php
+++ b/app/controllers/admin/AssetsController.php
@@ -1030,13 +1030,4 @@ class AssetsController extends AdminController
->make();
}
-
- public function checkModel($id = null) {
- if(Input::get('id')) {
- $id = e(Input::get('id'));
- }
- $model = DB::table('models')->select('id','show_mac_address')->where('id','=',$id)->whereNull('deleted_at')->first();
- return $model->show_mac_address;
- }
-
}
diff --git a/app/controllers/admin/CategoriesController.php b/app/controllers/admin/CategoriesController.php
index d46c18365c..476331ba84 100755
--- a/app/controllers/admin/CategoriesController.php
+++ b/app/controllers/admin/CategoriesController.php
@@ -11,6 +11,7 @@ use Sentry;
use Str;
use Validator;
use View;
+use Datatable;
class CategoriesController extends AdminController
{
@@ -22,11 +23,8 @@ class CategoriesController extends AdminController
public function getIndex()
{
- // Grab all the categories
- $categories = Category::orderBy('created_at', 'DESC')->get();
-
// Show the page
- return View::make('backend/categories/index', compact('categories'));
+ return View::make('backend/categories/index');
}
@@ -215,7 +213,65 @@ class CategoriesController extends AdminController
}
+ public function getDatatable()
+ {
+ // Grab all the categories
+ $categories = Category::orderBy('created_at', 'DESC')->get();
+ $actions = new \Chumper\Datatable\Columns\FunctionColumn('actions', function($categories) {
+ return '';
+ });
+
+ return Datatable::collection($categories)
+ ->showColumns('name')
+ ->addColumn('category_type', function($categories) {
+ return ucwords($categories->category_type);
+ })
+ ->addColumn('count', function($categories) {
+ return ($categories->category_type=='asset') ? link_to('/admin/settings/categories/'.$categories->id.'/view', $categories->assetscount()) : $categories->accessoriescount();
+ })
+ ->addColumn('acceptance', function($categories) {
+ return ($categories->require_acceptance=='1') ? '' : '';
+ })
+ ->addColumn('eula', function($categories) {
+ return ($categories->getEula()) ? '' : '';
+ })
+ ->addColumn($actions)
+ ->searchColumns('name','category_type','count','acceptance','eula','actions')
+ ->orderColumns('name','category_type','count','acceptance','eula','actions')
+ ->make();
+ }
+
+ public function getDataView($categoryID) {
+ $category = Category::find($categoryID);
+ $categoryassets = $category->assets;
+
+ $actions = new \Chumper\Datatable\Columns\FunctionColumn('actions', function ($categoryassets)
+ {
+ if (($categoryassets->assigned_to !='') && ($categoryassets->assigned_to > 0)) {
+ return ''.Lang::get('general.checkin').'';
+ } else {
+ return ''.Lang::get('general.checkout').'';
+ }
+ });
+
+ return Datatable::collection($categoryassets)
+ ->addColumn('name', function ($categoryassets) {
+ return link_to('/hardware/'.$categoryassets->id.'/view', $categoryassets->name);
+ })
+ ->addColumn('asset_tag', function ($categoryassets) {
+ return link_to('/hardware/'.$categoryassets->id.'/view', $categoryassets->asset_tag);
+ })
+ ->addColumn('assigned_to', function ($categoryassets) {
+ if ($categoryassets->assigned_to) {
+ return link_to('/admin/users/'.$categoryassets->assigned_to.'/view', $categoryassets->assigneduser->fullName());
+ }
+ })
+ ->addColumn($actions)
+ ->searchColumns('name','asset_tag','assigned_to','actions')
+ ->orderColumns('name','asset_tag','assigned_to','actions')
+ ->make();
+ }
}
diff --git a/app/controllers/admin/ModelsController.php b/app/controllers/admin/ModelsController.php
index 1e548e3ce0..29ef9e400d 100755
--- a/app/controllers/admin/ModelsController.php
+++ b/app/controllers/admin/ModelsController.php
@@ -14,6 +14,7 @@ use Manufacturer;
use Str;
use Validator;
use View;
+use Datatable;
class ModelsController extends AdminController
{
@@ -24,16 +25,8 @@ class ModelsController extends AdminController
*/
public function getIndex()
{
- // Grab all the models
- $models = Model::orderBy('created_at', 'DESC');
- if (Input::get('Deleted')) {
- $models->withTrashed()->Deleted();
- }
-
- $models = $models->with('category','assets','depreciation')->get();
-
// Show the page
- return View::make('backend/models/index', compact('models'));
+ return View::make('backend/models/index');
}
/**
@@ -315,6 +308,80 @@ class ModelsController extends AdminController
return $view;
}
+
+ public function getDatatable($status = null)
+ {
+ $models = Model::orderBy('created_at', 'DESC')->with('category','assets','depreciation');
+ ($status != 'Deleted') ?: $models->withTrashed()->Deleted();;
+ $models = $models->get();
+ $actions = new \Chumper\Datatable\Columns\FunctionColumn('actions', function($models) {
+ if($models->deleted_at=='') {
+ return '';
+ } else {
+ return '';
+ }
+ });
+
+ return Datatable::collection($models)
+ ->addColumn('name', function ($models) {
+ return link_to('/hardware/models/'.$models->id.'/view', $models->name);
+ })
+ ->showColumns('modelno')
+ ->addColumn('asset_count', function($models) {
+ return $models->assets->count();
+ })
+ ->addColumn('depreciation', function($models) {
+ return (($models->depreciation)&&($models->depreciation->id > 0)) ? $models->depreciation->name.' ('.$models->depreciation->months.')' : Lang::get('general.no_depreciation');
+ })
+ ->addColumn('category', function($models) {
+ return ($models->category) ? $models->category->name : '';
+ })
+ ->addColumn('eol', function($models) {
+ return ($models->eol) ? $models->eol.' '.Lang::get('general.months') : '';
+ })
+ ->addColumn($actions)
+ ->searchColumns('name','modelno','asset_count','depreciation','category','eol','actions')
+ ->orderColumns('name','modelno','asset_count','depreciation','category','eol','actions')
+ ->make();
+ }
+
+ public function checkModel($modelId) {
+ $model = Model::find($modelId);
+ return $model->show_mac_address;
+ }
+
+ public function getDataView($modelID)
+ {
+ $model = Model::withTrashed()->find($modelID);
+ $modelassets = $model->assets;
+
+ $actions = new \Chumper\Datatable\Columns\FunctionColumn('actions', function ($modelassets)
+ {
+ if (($modelassets->assigned_to !='') && ($modelassets->assigned_to > 0)) {
+ return ''.Lang::get('general.checkin').'';
+ } else {
+ return ''.Lang::get('general.checkout').'';
+ }
+ });
+
+ return Datatable::collection($modelassets)
+ ->addColumn('name', function ($modelassets) {
+ return link_to('/hardware/'.$modelassets->id.'/view', $modelassets->name);
+ })
+ ->addColumn('asset_tag', function ($modelassets) {
+ return link_to('/hardware/'.$modelassets->id.'/view', $modelassets->asset_tag);
+ })
+ ->showColumns('serial')
+ ->addColumn('assigned_to', function ($modelassets) {
+ if ($modelassets->assigned_to) {
+ return link_to('/admin/users/'.$modelassets->assigned_to.'/view', $modelassets->assigneduser->fullName());
+ }
+ })
+ ->addColumn($actions)
+ ->searchColumns('name','asset_tag','serial','assigned_to','actions')
+ ->orderColumns('name','asset_tag','serial','assigned_to','actions')
+ ->make();
+ }
}
diff --git a/app/routes.php b/app/routes.php
index 691faf1924..14dbd4c96b 100755
--- a/app/routes.php
+++ b/app/routes.php
@@ -14,6 +14,7 @@ Route::group(array('prefix' => 'api', 'namespace' => 'Controllers\Admin', 'befor
Route::group(array('prefix'=>'accessories'), function () {
Route::resource('/', 'AccessoriesController');
Route::get('list', array('as'=>'api.accessories.list', 'uses'=>'AccessoriesController@getDatatable'));
+ Route::get('{accessoryID}/view', array('as'=>'api.accessories.view', 'uses'=>'AccessoriesController@getDataView'));
});
/*---Users API---*/
Route::group(array('prefix'=>'users'), function() {
@@ -25,6 +26,19 @@ Route::group(array('prefix' => 'api', 'namespace' => 'Controllers\Admin', 'befor
Route::resource('/', 'LicensesController');
Route::get('list', array('as'=>'api.licenses.list', 'uses'=>'LicensesController@getDatatable'));
});
+ /*---Models API---*/
+ Route::group(array('prefix'=>'models'), function() {
+ Route::resource('/', 'ModelsController');
+ Route::get('list/{status?}', array('as'=>'api.models.list', 'uses'=>'ModelsController@getDatatable'));
+ Route::get('{modelId}/check', array('as' => 'api.models.check', 'uses' => 'ModelsController@checkModel'));
+ Route::get('{modelID}/view', array('as'=>'api.models.view', 'uses'=>'ModelsController@getDataView'));
+ });
+ /*--- Categories API---*/
+ Route::group(array('prefix'=>'categories'), function() {
+ Route::resource('/', 'CategoriesController');
+ Route::get('list', array('as'=>'api.categories.list', 'uses'=>'CategoriesController@getDatatable'));
+ Route::get('{categoryID}/view', array('as'=>'api.categories.view', 'uses'=>'CategoriesController@getDataView'));
+ });
});
/*
@@ -74,7 +88,6 @@ Route::group(array('prefix' => 'hardware', 'namespace' => 'Controllers\Admin', '
Route::get('{assetId}/deletefile/{fileId}', array('as' => 'delete/assetfile', 'uses' => 'AssetsController@getDeleteFile'));
Route::get('{assetId}/showfile/{fileId}', array('as' => 'show/assetfile', 'uses' => 'AssetsController@displayFile'));
Route::post('{assetId}/edit', 'AssetsController@postEdit');
- Route::get('check/model', array('as' => 'check.model', 'uses' => 'AssetsController@checkModel'));
Route::post('bulkedit',
array('as' => 'hardware/bulkedit',
diff --git a/app/views/backend/accessories/index.blade.php b/app/views/backend/accessories/index.blade.php
index 0dc3f735c0..f9213dfa50 100755
--- a/app/views/backend/accessories/index.blade.php
+++ b/app/views/backend/accessories/index.blade.php
@@ -24,9 +24,9 @@
Lang::get('admin/accessories/general.total'),
Lang::get('admin/accessories/general.remaining'),
Lang::get('table.actions'))
- ->setUrl(route('api.accessories.list')) // this is the route where data will be retrieved
->setOptions(
array(
+ 'sAjaxSource'=>route('api.accessories.list'),
'deferRender'=> true,
'stateSave'=> true,
'stateDuration'=> -1,
@@ -35,36 +35,49 @@
'sSwfPath'=> Config::get('app.url').'/assets/swf/copy_csv_xls_pdf.swf',
'aButtons'=>array(
array(
- 'sExtends'=>'copy',
- 'mColumns'=> array(0,1,2),
- ),
- 'print',
+ 'sExtends'=>'copy',
+ 'sButtonText'=>'Copy',
+ 'mColumns'=>array(0,1,2),
+ 'bFooter'=>false,
+ ),
+ array(
+ 'sExtends'=>'print',
+ 'sButtonText'=>'Print',
+ 'mColumns'=>array(0,1,2),
+ 'bShowAll'=>true,
+ 'bFooter'=>true,
+ ),
array(
'sExtends'=>'collection',
'sButtonText'=>'Export',
'aButtons'=>array(
array(
- 'sExtends'=>'csv',
- 'mColumns'=> array(0,1,2),
- ),
+ 'sExtends'=>'csv',
+ 'sButtonText'=>'csv',
+ 'mColumns'=>array(0,1,2),
+ 'bFooter'=>false,
+ ),
array(
- 'sExtends'=>'xls',
- 'mColumns'=> array(0,1,2),
- ),
+ 'sExtends'=>'xls',
+ 'sButtonText'=>'XLS',
+ 'mColumns'=>array(0,1,2),
+ 'bFooter'=>false,
+ ),
array(
- 'sExtends'=>'pdf',
- 'mColumns'=> array(0,1,2),
- ),
- ),
+ 'sExtends'=>'pdf',
+ 'sButtonText'=>'PDF',
+ 'mColumns'=>array(0,1,2),
+ 'bFooter'=>false,
+ )
+ )
),
)
),
'columnDefs'=> array(
array('bSortable'=>false,'targets'=>array(3)),
- array('width'=>'20%','targets'=>array(3)),
),
'order'=>array(array(0,'asc')),
- 'bProcessing'=>true,
+ 'processing'=>true,
'oLanguage'=>array(
'sProcessing'=>' Loading...',
),
diff --git a/app/views/backend/accessories/view.blade.php b/app/views/backend/accessories/view.blade.php
index fb295a878e..07f6fd12b2 100644
--- a/app/views/backend/accessories/view.blade.php
+++ b/app/views/backend/accessories/view.blade.php
@@ -31,35 +31,52 @@
@if ($accessory->users->count() > 0)
-
+ {{ Datatable::table()
+ ->addColumn(Lang::get('general.user'),
+ Lang::get('table.actions'))
+ ->setOptions(
+ array(
+ 'sAjaxSource'=>route('api.accessories.view', $accessory->id),
+ 'deferRender'=> true,
+ 'stateSave'=> true,
+ 'stateDuration'=> -1,
+ 'dom' =>'T<"clear">lfrtip',
+ 'tableTools' => array(
+ 'sSwfPath'=> Config::get('app.url').'/assets/swf/copy_csv_xls_pdf.swf',
+ 'aButtons'=>array(
+ array(
+ 'sExtends'=>'copy',
+ ),
+ 'print',
+ array(
+ 'sExtends'=>'collection',
+ 'sButtonText'=>'Export',
+ 'aButtons'=>array(
+ array(
+ 'sExtends'=>'csv',
+ ),
+ array(
+ 'sExtends'=>'xls',
+ ),
+ array(
+ 'sExtends'=>'pdf',
+ ),
+ ),
+ ),
+ )
+ ),
+ 'columnDefs'=> array(
+ array('bSortable'=>false,'targets'=>array(1)),
+ array('width'=>'auto','targets'=>array(1)),
+ ),
+ 'order'=>array(array(0,'asc')),
+ 'processing'=>true,
+ 'oLanguage'=>array(
+ 'sProcessing'=>' Loading...',
+ ),
+ )
+ )
+ ->render() }}
@else
diff --git a/app/views/backend/categories/index.blade.php b/app/views/backend/categories/index.blade.php
index f14f64dfa8..ae966a3617 100755
--- a/app/views/backend/categories/index.blade.php
+++ b/app/views/backend/categories/index.blade.php
@@ -17,59 +17,57 @@
-
-
-
-
-
-
-
- | @lang('admin/categories/table.title') |
- @lang('general.type') |
- @lang('general.assets') |
- @lang('admin/categories/table.require_acceptance') |
- @lang('admin/categories/table.eula_text') |
- @lang('table.actions') |
-
-
-
- @foreach ($categories as $category)
-
- | {{{ $category->name }}} |
- {{{ ucwords($category->category_type) }}} |
-
- @if ($category->category_type=='asset')
- {{ $category->assetscount() }}
- @elseif ($category->category_type=='accessory')
- {{ $category->accessoriescount() }}
- @endif
- |
- {{ ($category->require_acceptance=='1') ? '' : ''}} |
- {{ ($category->getEula()) ? '' : ''}} |
-
-
-name) }}}?" onClick="return false;">
-
- |
-
- @endforeach
-
-
+
+
+ {{ Datatable::table()
+ ->addColumn(Lang::get('admin/categories/table.title'),
+ Lang::get('general.type'),
+ Lang::get('general.assets'),
+ Lang::get('admin/categories/table.require_acceptance'),
+ Lang::get('admin/categories/table.eula_text'),
+ Lang::get('table.actions'))
+ ->setOptions(
+ array(
+ 'sAjaxSource'=> route('api.categories.list'),
+ 'deferRender'=> true,
+ 'stateSave'=> true,
+ 'stateDuration'=> -1,
+ 'dom' =>'CT<"clear">lfrtip',
+ 'tableTools' => array(
+ 'sSwfPath'=> Config::get('app.url').'/assets/swf/copy_csv_xls_pdf.swf',
+ 'aButtons'=>array(
+ 'copy',
+ 'print',
+ array(
+ 'sExtends'=>'collection',
+ 'sButtonText'=>'Export',
+ 'aButtons'=>array(
+ 'csv',
+ 'xls',
+ 'pdf'
+ )
+ )
+ )
+ ),
+ 'colVis'=> array('showAll'=>'Show All','restore'=>'Restore','exclude'=>array(5),'activate'=>'mouseover'),
+ 'columnDefs'=> array(array('bSortable'=>false,'targets'=>array(5))),
+ 'order'=>array(array(0,'asc')),
+ 'processing'=>true,
+ 'oLanguage'=>array(
+ 'sProcessing'=>' Loading...',
+ ),
+ )
+ )
+ ->render() }}
+
-
-
-
-
-
-
-
-
@lang('admin/categories/general.about_asset_categories')
-
@lang('admin/categories/general.about_categories')
-
-
-
+
+
+
+
@lang('admin/categories/general.about_asset_categories')
+
@lang('admin/categories/general.about_categories')
+
+
@stop
diff --git a/app/views/backend/categories/view.blade.php b/app/views/backend/categories/view.blade.php
index 845a2e7f44..d5a0a49ea8 100644
--- a/app/views/backend/categories/view.blade.php
+++ b/app/views/backend/categories/view.blade.php
@@ -39,43 +39,54 @@
@if (count($category->assets) > 0)
-
-
+ {{ Datatable::table()
+ ->addColumn(Lang::get('general.name'),
+ Lang::get('general.asset_tag'),
+ Lang::get('general.user'),
+ Lang::get('table.actions'))
+ ->setOptions(
+ array(
+ 'sAjaxSource'=>route('api.categories.view', $category->id),
+ 'deferRender'=> true,
+ 'stateSave'=> true,
+ 'stateDuration'=> -1,
+ 'dom' =>'T<"clear">lfrtip',
+ 'tableTools' => array(
+ 'sSwfPath'=> Config::get('app.url').'/assets/swf/copy_csv_xls_pdf.swf',
+ 'aButtons'=>array(
+ array(
+ 'sExtends'=>'copy',
+ ),
+ 'print',
+ array(
+ 'sExtends'=>'collection',
+ 'sButtonText'=>'Export',
+ 'aButtons'=>array(
+ array(
+ 'sExtends'=>'csv',
+ ),
+ array(
+ 'sExtends'=>'xls',
+ ),
+ array(
+ 'sExtends'=>'pdf',
+ ),
+ ),
+ ),
+ )
+ ),
+ 'columnDefs'=> array(
+ array('bSortable'=>false,'targets'=>array(3)),
+ array('width'=>'auto','targets'=>array(3)),
+ ),
+ 'order'=>array(array(0,'asc')),
+ 'processing'=>true,
+ 'oLanguage'=>array(
+ 'sProcessing'=>' Loading...',
+ ),
+ )
+ )
+ ->render() }}
@else
diff --git a/app/views/backend/hardware/edit.blade.php b/app/views/backend/hardware/edit.blade.php
index 7bf6a804c1..dee143bb86 100755
--- a/app/views/backend/hardware/edit.blade.php
+++ b/app/views/backend/hardware/edit.blade.php
@@ -220,12 +220,14 @@
var $eventSelect = $(".model");
$eventSelect.on("change", function () { mac_add($eventSelect.val()); });
$(function() {
- mac_add($(".model option:selected").val());
+ var mac = $(".model option:selected").val();
+ if(mac!=''){
+ mac_add(mac);
+ }
});
function mac_add(id) {
$.ajax({
- url: '{{ route('check.model') }}',
- data: 'id=' + id,
+ url: "{{Config::get('app.url')}}/api/models/"+id+"/check",
success: function(data) {
if(data == true){
$("#mac_address").css("display", "block");
diff --git a/app/views/backend/licenses/index.blade.php b/app/views/backend/licenses/index.blade.php
index f9f42b695d..7c291288ef 100755
--- a/app/views/backend/licenses/index.blade.php
+++ b/app/views/backend/licenses/index.blade.php
@@ -24,9 +24,9 @@
Lang::get('admin/licenses/form.remaining_seats'),
Lang::get('admin/licenses/table.purchase_date'),
Lang::get('table.actions'))
- ->setUrl(route('api.licenses.list')) // this is the route where data will be retrieved
->setOptions(
array(
+ 'sAjaxSource'=>route('api.licenses.list'),
'deferRender'=> true,
'stateSave'=> true,
'stateDuration'=> -1,
@@ -53,7 +53,7 @@
array('width'=>'20%','targets'=>array(5)),
),
'order'=>array(array(0,'asc')),
- 'bProcessing'=>true,
+ 'processing'=>true,
'oLanguage'=>array(
'sProcessing'=>'
Loading...',
),
diff --git a/app/views/backend/models/index.blade.php b/app/views/backend/models/index.blade.php
index d7f78631da..80b1cf3145 100755
--- a/app/views/backend/models/index.blade.php
+++ b/app/views/backend/models/index.blade.php
@@ -12,73 +12,56 @@
-
-
-
- | @lang('admin/models/table.title') |
- @lang('admin/models/table.modelnumber') |
- @lang('admin/models/table.numassets') |
- @lang('general.depreciation') |
- @lang('general.category') |
- @lang('general.eol') |
- @lang('table.actions') |
-
-
-
- @foreach ($models as $model)
-
- | {{{ $model->name }}} |
- {{{ $model->modelno }}} |
- {{ ($model->assets->count()) }} |
-
-
- @if (($model->depreciation) && ($model->depreciation->id > 0)) {{{ $model->depreciation->name }}}
- ({{{ $model->depreciation->months }}}
- @lang('general.months')
- )
- @else
- @lang('general.no_depreciation')
- @endif
-
- |
-
- @if ($model->category) {{{ $model->category->name }}}
- @endif
- |
-
-
-
- @if ($model->eol) {{{ $model->eol }}}
- @lang('general.months')
- @else
- --
- @endif
-
- |
-
-
- @if($model->deleted_at=="")
-
-
- @else
-
- @endif
- |
-
- @endforeach
-
-
+ {{ Datatable::table()
+ ->addColumn(Lang::get('admin/models/table.title'),
+ Lang::get('admin/models/table.modelnumber'),
+ Lang::get('admin/models/table.numassets'),
+ Lang::get('general.depreciation'),
+ Lang::get('general.category'),
+ Lang::get('general.eol'),
+ Lang::get('table.actions'))
+ ->setOptions(
+ array(
+ 'sAjaxSource'=> route('api.models.list', Input::get('status')),
+ 'deferRender'=> true,
+ 'stateSave'=> true,
+ 'stateDuration'=> -1,
+ 'dom' =>'CT<"clear">lfrtip',
+ 'tableTools' => array(
+ 'sSwfPath'=> Config::get('app.url').'/assets/swf/copy_csv_xls_pdf.swf',
+ 'aButtons'=>array(
+ 'copy',
+ 'print',
+ array(
+ 'sExtends'=>'collection',
+ 'sButtonText'=>'Export',
+ 'aButtons'=>array(
+ 'csv',
+ 'xls',
+ 'pdf'
+ )
+ )
+ )
+ ),
+ 'colVis'=> array('showAll'=>'Show All','restore'=>'Restore','exclude'=>array(6),'activate'=>'mouseover'),
+ 'columnDefs'=> array(array('bSortable'=>false,'targets'=>array(6))),
+ 'order'=>array(array(0,'asc')),
+ 'processing'=>true,
+ 'oLanguage'=>array(
+ 'sProcessing'=>'
Loading...',
+ ),
+ )
+ )
+ ->render() }}
@stop
diff --git a/app/views/backend/models/view.blade.php b/app/views/backend/models/view.blade.php
index 9e639bb29a..daa742d2ea 100755
--- a/app/views/backend/models/view.blade.php
+++ b/app/views/backend/models/view.blade.php
@@ -52,51 +52,56 @@
@if (count($model->assets) > 0)
-
-
+ {{ Datatable::table()
+ ->addColumn(Lang::get('general.name'),
+ Lang::get('general.asset_tag'),
+ Lang::get('admin/hardware/table.serial'),
+ Lang::get('general.user'),
+ Lang::get('table.actions'))
+ ->setOptions(
+ array(
+ 'sAjaxSource'=>route('api.models.view', $model->id),
+ 'deferRender'=> true,
+ 'stateSave'=> true,
+ 'stateDuration'=> -1,
+ 'dom' =>'CT<"clear">lfrtip',
+ 'tableTools' => array(
+ 'sSwfPath'=> Config::get('app.url').'/assets/swf/copy_csv_xls_pdf.swf',
+ 'aButtons'=>array(
+ array(
+ 'sExtends'=>'copy',
+ ),
+ 'print',
+ array(
+ 'sExtends'=>'collection',
+ 'sButtonText'=>'Export',
+ 'aButtons'=>array(
+ array(
+ 'sExtends'=>'csv',
+ ),
+ array(
+ 'sExtends'=>'xls',
+ ),
+ array(
+ 'sExtends'=>'pdf',
+ ),
+ ),
+ ),
+ )
+ ),
+ 'colVis'=> array('showAll'=>'Show All','restore'=>'Restore','exclude'=>array(4),'activate'=>'mouseover'),
+ 'columnDefs'=> array(
+ array('bSortable'=>false,'targets'=>array(4)),
+ array('width'=>'auto','targets'=>array(4)),
+ ),
+ 'order'=>array(array(0,'asc')),
+ 'processing'=>true,
+ 'oLanguage'=>array(
+ 'sProcessing'=>'
Loading...',
+ ),
+ )
+ )
+ ->render() }}
@else