diff --git a/app/Http/Controllers/teamstore/TeamStoreController.php b/app/Http/Controllers/teamstore/TeamStoreController.php index 12f7626..d18e8bd 100644 --- a/app/Http/Controllers/teamstore/TeamStoreController.php +++ b/app/Http/Controllers/teamstore/TeamStoreController.php @@ -78,7 +78,7 @@ class TeamStoreController extends Controller { ->with('thumbnails', $thumbnails); } - public function storelist() + public function storelist(Request $request) { // $analyticsData = Analytics::getMostVisitedPages(14, 50); @@ -100,10 +100,47 @@ class TeamStoreController extends Controller { // var_dump(array_unique($arr_teamstore)); $m = new TeamStoreModel; - $stores_array = $m->selectAllTeamStore(); + $q = null; + $sort = null; + + $q = $request->input('q'); + $sort = $request->input('s'); + + if(isset($q) && isset($sort)){ + + if($sort == "al-asc"){ + $field = "StoreName"; + $sort_value = "ASC"; + }elseif($sort == "al-desc"){ + $field = "StoreName"; + $sort_value = "DESC"; + }elseif($sort == "oldest"){ + $field = "Id"; + $sort_value = "ASC"; + }else{ + $field = "Id"; + $sort_value = "DESC"; + } + if($q != ""){ + // keyword and sort + $stores_array = $m->selectTeamstoreSearch($field, $sort_value, $q); + }else{ + // sort only + $stores_array = $m->selectTeamstoreFilter($field, $sort_value); + } + + }else{ + // first load + $stores_array = $m->selectAllTeamStore(); + } + // $stores_array = $m->selectAllTeamStore(); + + // var_dump($stores_array); return view('teamstore-sublayouts.stores') - ->with('stores_array', $stores_array); + ->with('stores_array', $stores_array) + ->with('keyword', $q) + ->with('filter', $sort); @@ -467,17 +504,18 @@ class TeamStoreController extends Controller { $item_thumbs = $m->selectDisplayCartThumb(); $store_array = $m->selectTeamStore('Id', $defId); - // var_dump($$grouped_item[0]->StoreId); - $voucherIds = array(); - foreach($items as $item){ - if($item->VoucherId != null){ - $voucherIds[] = $item->VoucherId; - } - } - $vouchers = $m->selectVoucherWhereIn($voucherIds); - + if($items){ + $voucherIds = array(); + foreach($items as $item){ + if($item->VoucherId != null){ + $voucherIds[] = $item->VoucherId; + } + } + $vouchers = $m->selectVoucherWhereIn($voucherIds); + } + $totalValue = 0; if(!empty($vouchers)){ foreach($vouchers as $voucher){ diff --git a/app/Models/teamstore/TeamStoreModel.php b/app/Models/teamstore/TeamStoreModel.php index b2a8370..1587e49 100644 --- a/app/Models/teamstore/TeamStoreModel.php +++ b/app/Models/teamstore/TeamStoreModel.php @@ -9,7 +9,8 @@ class TeamStoreModel extends Model { { $i = DB::table('teamstores') ->where("IsActive", "true") - ->get(); + ->orderBy('Id', 'DESC') + ->paginate(16); return $i; } @@ -190,5 +191,24 @@ class TeamStoreModel extends Model { ->update($data); return $i; } + + function selectTeamstoreSearch($field, $value, $keyword){ + + $i = DB::table('teamstores') + ->where("StoreName", "LIKE","%$keyword%") + ->where("IsActive", "true") + ->orderby($field, $value) + ->paginate(16); + return $i; + } + + function selectTeamstoreFilter($field, $value){ + + $i = DB::table('teamstores') + ->where("IsActive", "true") + ->orderby($field, $value) + ->paginate(16); + return $i; + } } diff --git a/resources/views/app.blade.php b/resources/views/app.blade.php index 84dbb3c..79bca55 100644 --- a/resources/views/app.blade.php +++ b/resources/views/app.blade.php @@ -143,6 +143,12 @@ }); + $(document).on('change', '#select_sort_stores', function(event) { + event.preventDefault(); + $('#frm_search_store').submit(); + }); + + }); // end document ready function submitLoginForm (){ diff --git a/resources/views/teamstore-sublayouts/stores.blade.php b/resources/views/teamstore-sublayouts/stores.blade.php index 3564c52..4378644 100644 --- a/resources/views/teamstore-sublayouts/stores.blade.php +++ b/resources/views/teamstore-sublayouts/stores.blade.php @@ -35,8 +35,45 @@