diff --git a/app/Http/Controllers/Api/AssetModelsController.php b/app/Http/Controllers/Api/AssetModelsController.php index f38118ba6f..060946d9d5 100644 --- a/app/Http/Controllers/Api/AssetModelsController.php +++ b/app/Http/Controllers/Api/AssetModelsController.php @@ -188,17 +188,19 @@ class AssetModelsController extends Controller 'models.name', 'models.image', 'models.model_number', - ])->with('manufacturer'); + 'models.manufacturer_id', + 'models.category_id', + ])->with('manufacturer','category'); if ($request->has('search')) { - $assetmodels = $assetmodels->where('models.name', 'LIKE', '%'.$request->get('search').'%') - ->orWhere('models.model_number', 'LIKE', '%'.$request->get('search').'%'); + $assetmodels = $assetmodels->SearchByManufacturerOrCat($request->input('search')); } - $assetmodels = $assetmodels->orderby('models.name', 'asc')->orderby('models.model_number', 'asc')->paginate(50); + + $assetmodels = $assetmodels->OrderCategory('ASC')->OrderManufacturer('ASC')->orderby('models.name', 'asc')->orderby('models.model_number', 'asc')->paginate(50); foreach ($assetmodels as $assetmodel) { - $assetmodel->use_text = $assetmodel->present()->modelName; + $assetmodel->use_text = (($assetmodel->category) ? e($assetmodel->category->name) : '').': '.(($assetmodel->manufacturer) ? e($assetmodel->manufacturer->name) : '').' '.$assetmodel->present()->modelName; $assetmodel->use_image = ($assetmodel->image) ? url('/').'/uploads/models/'.$assetmodel->image : null; } diff --git a/app/Models/Asset.php b/app/Models/Asset.php index 148b97c010..9924d83eee 100644 --- a/app/Models/Asset.php +++ b/app/Models/Asset.php @@ -817,6 +817,8 @@ class Asset extends Depreciable ->orWhere('assets.asset_tag', 'LIKE', '%'.$search.'%') ->orWhere('assets.serial', 'LIKE', '%'.$search.'%') ->orWhere('assets.order_number', 'LIKE', '%'.$search.'%') + ->orWhere('assets.purchase_date', 'LIKE', '%'.$search.'%') + ->orWhere('assets.purchase_cost', 'LIKE', '%'.$search.'%') ->orWhere('assets.notes', 'LIKE', '%'.$search.'%'); } foreach (CustomField::all() as $field) { diff --git a/app/Models/AssetModel.php b/app/Models/AssetModel.php index aa485399d8..71af09422e 100755 --- a/app/Models/AssetModel.php +++ b/app/Models/AssetModel.php @@ -169,6 +169,32 @@ class AssetModel extends SnipeModel } + /** + * Query builder scope to search on text, including catgeory and manufacturer name + * + * @param Illuminate\Database\Query\Builder $query Query builder instance + * @param text $search Search term + * + * @return Illuminate\Database\Query\Builder Modified query builder + */ + public function scopeSearchByManufacturerOrCat($query, $search) + { + + return $query->where('models.name', 'LIKE', "%$search%") + ->orWhere('model_number', 'LIKE', "%$search%") + ->orWhere(function ($query) use ($search) { + $query->whereHas('category', function ($query) use ($search) { + $query->where('categories.name', 'LIKE', '%'.$search.'%'); + }); + }) + ->orWhere(function ($query) use ($search) { + $query->whereHas('manufacturer', function ($query) use ($search) { + $query->where('manufacturers.name', 'LIKE', '%'.$search.'%'); + }); + }); + + } + /** * Query builder scope to order on manufacturer * @@ -182,5 +208,18 @@ class AssetModel extends SnipeModel return $query->leftJoin('manufacturers', 'models.manufacturer_id', '=', 'manufacturers.id')->orderBy('manufacturers.name', $order); } + /** + * Query builder scope to order on category name + * + * @param \Illuminate\Database\Query\Builder $query Query builder instance + * @param text $order Order + * + * @return \Illuminate\Database\Query\Builder Modified query builder + */ + public function scopeOrderCategory($query, $order) + { + return $query->leftJoin('categories', 'models.category_id', '=', 'categories.id')->orderBy('categories.name', $order); + } + } diff --git a/public/css/build/all.css b/public/css/build/all.css index 1ae49d8efa..0d816efc57 100644 Binary files a/public/css/build/all.css and b/public/css/build/all.css differ diff --git a/public/css/dist/all.css b/public/css/dist/all.css index 1ae49d8efa..0d816efc57 100644 Binary files a/public/css/dist/all.css and b/public/css/dist/all.css differ diff --git a/public/css/overrides.css b/public/css/overrides.css index 36cdb81376..7ba454db7f 100644 Binary files a/public/css/overrides.css and b/public/css/overrides.css differ diff --git a/public/js/build/all.js b/public/js/build/all.js index b35517b1c6..1a69e18fa9 100644 Binary files a/public/js/build/all.js and b/public/js/build/all.js differ diff --git a/public/js/dist/all.js b/public/js/dist/all.js index b35517b1c6..1a69e18fa9 100644 Binary files a/public/js/dist/all.js and b/public/js/dist/all.js differ diff --git a/public/mix-manifest.json b/public/mix-manifest.json index d0530f5098..a4e607fcec 100644 --- a/public/mix-manifest.json +++ b/public/mix-manifest.json @@ -2,13 +2,13 @@ "/js/build/vue.js": "/js/build/vue.js?id=e6804371942215bd1d7d", "/css/AdminLTE.css": "/css/AdminLTE.css?id=b8be19a285eaf44eec37", "/css/app.css": "/css/app.css?id=407edb63cc6b6dc62405", - "/css/overrides.css": "/css/overrides.css?id=a4994a56ec31f2099730", + "/css/overrides.css": "/css/overrides.css?id=ca0621c2a909d165534d", "/js/build/vue.js.map": "/js/build/vue.js.map?id=3b3d417664a61dcce3e9", "/css/AdminLTE.css.map": "/css/AdminLTE.css.map?id=99f5a5a03c4155cf69f6", "/css/app.css.map": "/css/app.css.map?id=bdbe05e6ecd70ccfac72", "/css/overrides.css.map": "/css/overrides.css.map?id=898c91d4a425b01b589b", - "/css/dist/all.css": "/css/dist/all.css?id=277aaa6291c83cc8204f", - "/js/dist/all.js": "/js/dist/all.js?id=7b52ead3a55086ea1f8d", - "/css/build/all.css": "/css/build/all.css?id=277aaa6291c83cc8204f", - "/js/build/all.js": "/js/build/all.js?id=7b52ead3a55086ea1f8d" + "/css/dist/all.css": "/css/dist/all.css?id=51e5995cec7ce583f5dd", + "/js/dist/all.js": "/js/dist/all.js?id=88f08e0103b14f7949b3", + "/css/build/all.css": "/css/build/all.css?id=51e5995cec7ce583f5dd", + "/js/build/all.js": "/js/build/all.js?id=88f08e0103b14f7949b3" } \ No newline at end of file diff --git a/resources/assets/js/snipeit.js b/resources/assets/js/snipeit.js index d58d7a704e..f826be9827 100755 --- a/resources/assets/js/snipeit.js +++ b/resources/assets/js/snipeit.js @@ -241,9 +241,9 @@ $(document).ready(function () { var markup = "
" ; markup +="
"; if (datalist.image) { - markup += ""; + markup += "
"; } else { - markup += "
"; + markup += "
"; } markup += "
" + datalist.text + "
"; diff --git a/resources/assets/less/overrides.less b/resources/assets/less/overrides.less index 226f388477..f3e816a439 100644 --- a/resources/assets/less/overrides.less +++ b/resources/assets/less/overrides.less @@ -318,3 +318,7 @@ img.navbar-brand-img, .navbar-brand>img { .input-daterange { border-radius: 0px; } + +.btn.bg-maroon, .btn.bg-purple{ + min-width:90px; +} diff --git a/resources/views/account/profile.blade.php b/resources/views/account/profile.blade.php index 3b8cddba0f..cf57a72746 100755 --- a/resources/views/account/profile.blade.php +++ b/resources/views/account/profile.blade.php @@ -38,7 +38,7 @@ - @include ('partials.forms.edit.location-select', ['translated_name' => trans('general.location'), 'fieldname' => 'location_id']) + @include ('partials.forms.edit.location-profile-select', ['translated_name' => trans('general.location')])
diff --git a/resources/views/partials/forms/edit/location-profile-select.blade.php b/resources/views/partials/forms/edit/location-profile-select.blade.php new file mode 100644 index 0000000000..f51c751e46 --- /dev/null +++ b/resources/views/partials/forms/edit/location-profile-select.blade.php @@ -0,0 +1,22 @@ + +
+ + {{ Form::label('location_id', $translated_name, array('class' => 'col-md-3 control-label')) }} +
+ +
+ + {!! $errors->first('location_id', '
:message
') !!} + +
+ + +