/** * Display all referral * * 1. Check filter * 2. Check page * 3. Get data from API * 4. Generate paginator * 5. Generate breadcrumb * 6. Generate view * @param page, q * @return Object View */ public function index() { //1. Check filter $filters = null; if (Input::has('q')) { $filters = ['name' => Input::get('q')]; $this->page_attributes->search = Input::get('q'); } else { $searchResult = null; } //2. Check page if (is_null(Input::get('page'))) { $page = 1; } else { $page = Input::get('page'); } //3. Get data from API $APICustomer = new APICustomer(); $customer = $APICustomer->getIndex(['search' => ['name' => Input::get('q')], 'sort' => ['name' => 'asc'], 'take' => $this->take, 'skip' => ($page - 1) * $this->take]); $this->page_attributes->data = ['customer' => $customer]; //4. Generate paginator $this->paginate(route('customer.referral.index'), $customer['data']['count'], $page); //5. Generate breadcrumb $breadcrumb = []; $this->page_attributes->breadcrumb = array_merge($this->page_attributes->breadcrumb, $breadcrumb); //6. Generate View $this->page_attributes->source = $this->page_attributes->source . 'index'; return $this->generateView(); }
public function FindCustomerByName($name = null) { //get input $input = Input::get('name'); //get data $APICustomer = new APICustomer(); $customer = $APICustomer->getIndex(['search' => ['name' => $input]]); //check if success if ($customer['status'] != 'success') { return abort(404); } //formating data $datas = []; foreach ($customer['data']['data'] as $key => $data) { $datas[$key]['id'] = $data['id']; $datas[$key]['name'] = $data['name']; } //return return $datas; }
/** * Display all customer * * 1. Check filter * 2. Check page * 3. Get data from API * 4. Generate paginator * 5. Generate breadcrumb * 6. Generate view * @param page, q * @return Object View */ public function index() { //1. Check filter $filters = null; if (Input::has('q')) { $filters = ['name' => Input::get('q')]; $this->page_attributes->search = Input::get('q'); } else { $searchResult = null; } //2. Check page if (is_null(Input::get('page'))) { $page = 1; } else { $page = Input::get('page'); } //3. sorting if (Input::has('sort')) { $sort_item = explode('-', Input::get('sort')); $sort = [$sort_item[0] => $sort_item[1]]; } else { $sort = ['name' => 'asc']; } $SortList = new SortList(); $this->page_attributes->sorts = ['titles' => ['nama', 'kode_referral', 'total_reference', 'total_poin'], 'nama' => $SortList->getSortingList('nama'), 'kode_referral' => $SortList->getSortingList('referralcode'), 'total_reference' => $SortList->getSortingList('totalreference'), 'total_poin' => $SortList->getSortingList('totalpoint')]; //3. Get data from API $APICustomer = new APICustomer(); $customer = $APICustomer->getIndex(['search' => ['name' => Input::get('q')], 'sort' => $sort, 'take' => $this->take, 'skip' => ($page - 1) * $this->take]); $this->page_attributes->data = ['customer' => $customer]; //4. Generate paginator $this->paginate(route('customer.customer.index'), $customer['data']['count'], $page); //5. Generate breadcrumb $breadcrumb = []; $this->page_attributes->breadcrumb = array_merge($this->page_attributes->breadcrumb, $breadcrumb); //6. Generate view $this->page_attributes->source = $this->page_attributes->source . '.index'; return $this->generateView(); }