public function indexAction() { $searchWords = ''; $business = array(); if (isset($_GET["page"])) { $currentPage = (int) $_GET["page"]; } else { $currentPage = 1; } if ($this->request->isPost()) { $businessName = $this->request->getPost('name'); $businessAddress = $this->request->getPost('address'); $businessCategoryId = $this->request->getPost('business_category_id'); $businessCategory = BusinessCategories::findFirst($businessCategoryId); $country = Countries::findFirst(array('columns' => '*', 'conditions' => 'country LIKE :country:', 'bind' => array('country' => $businessAddress))); $countryId = ''; if ($country) { $countryId = $country->id; } $conditions = ''; $bind = array(); if (!empty($businessName)) { $conditions .= ' OR name LIKE :name:'; $bind['name'] = '%' . $businessName . '%'; $searchWords .= ', ' . $businessName; } if (!empty($businessAddress)) { $conditions .= ' OR street LIKE :street:'; $bind['street'] = '%' . $businessAddress . '%'; $conditions .= ' OR city LIKE :city:'; $bind['city'] = '%' . $businessAddress . '%'; $searchWords .= ', ' . $businessAddress; } if (!empty($countryId)) { $conditions .= ' OR country_id LIKE :country_id:'; $bind['country_id'] = $countryId; $searchWords .= ', ' . $country->country; } if (!empty($businessCategoryId)) { $conditions .= ' OR business_category_id = :business_category_id:'; $bind['business_category_id'] = $businessCategoryId; $searchWords .= ', ' . $businessCategory->name; } $business = Business::find(array('columns' => '*', 'conditions' => substr($conditions, 3), 'bind' => $bind)); } else { $realties = Realties::find(); } // Create a Model paginator, show 10 rows by page starting from $currentPage $paginator = new \Phalcon\Paginator\Adapter\Model(array("data" => $realties, "limit" => 10, "page" => $currentPage)); $page = $paginator->getPaginate(); $this->view->setVar('searchWords', $searchWords); $this->view->setVar('realties', $page); $realtyCategories = RealtyCategories::find(); $this->view->setVar('realtyCategories', $realtyCategories); }
public function listAction($q = null) { $this->view->disable(); $q = $_GET['q']; //$businessSubCategories = BusinessSubCategories::findByBusinessCategoryId($id); $businessCategories = BusinessCategories::find(array('columns' => '*', 'conditions' => 'main_title LIKE :main_title: OR title LIKE :title: OR sub_title LIKE :sub_title:', 'bind' => array('main_title' => '%' . $q . '%', 'title' => '%' . $q . '%', 'sub_title' => '%' . $q . '%'))); $data = array(); foreach ($businessCategories as $key => $businessCategory) { $data[] = array('id' => $businessCategory->id, 'main_title' => $businessCategory->main_title, 'title' => $businessCategory->title, 'sub_title' => $businessCategory->sub_title); } echo json_encode(array('result' => 'OK', 'items' => $data)); }
public function business_searchAction() { $searchWords = ''; $business = array(); if (isset($_GET["page"])) { $currentPage = (int) $_GET["page"]; } else { $currentPage = 1; } if ($this->request->isPost()) { $businessName = $this->request->getPost('name'); $businessAddress = $this->request->getPost('address'); $businessCategoryId = $this->request->getPost('business_category_id'); $country = Countries::findFirst(array('columns' => '*', 'conditions' => 'country LIKE :country:', 'bind' => array('country' => $businessAddress))); $countryId = ''; if ($country) { $countryId = $country->id; } $businessCategoryLists = BusinessCategoryLists::find(array('columns' => '*', 'conditions' => 'business_category_id = :business_category_id:', 'bind' => array('business_category_id' => $businessCategoryId))); $conditions = ''; if (!empty($businessCategoryLists)) { foreach ($businessCategoryLists as $key => $businessCategoryList) { $conditions .= ' OR id = :' . $key . ':'; $bind[$key] = $businessCategoryList->business_id; } //$searchWords .= ', '.$businessName; } if (!empty($businessName)) { $conditions .= ' OR name LIKE :name:'; $bind['name'] = '%' . $businessName . '%'; $searchWords .= ', ' . $businessName; } if (!empty($businessAddress)) { $conditions .= ' OR street LIKE :street: OR city LIKE :city:'; $bind['street'] = '%' . $businessAddress . '%'; $bind['city'] = '%' . $businessAddress . '%'; $searchWords .= ', ' . $businessAddress; } if (!empty($countryId)) { $conditions .= ' OR country_id = :country_id:'; $bind['country_id'] = $countryId; $searchWords .= ', ' . $country->country; } $searchWords = substr($searchWords, 2); $business = Business::find(array('columns' => '*', 'conditions' => substr($conditions, 3), 'bind' => $bind)); $this->view->setVar('business', $business); } else { $business = Business::find(array('order' => 'id DESC')); } $paginator = new \Phalcon\Paginator\Adapter\Model(array("data" => $business, "limit" => 12, "page" => $currentPage)); $page = $paginator->getPaginate(); $this->view->setVar('business', $page); //$this->view->setVar('business', $business); $businessCategories = BusinessCategories::find(); $this->view->setVar('businessCategories', $businessCategories); }
public function suggested_changesAction($id = null) { $business = Business::findFirstById($id); if (!$business) { return $this->response->redirect('review/search_business'); } $businessUpdates = BusinessUpdates::find(array('business_id = "' . $id . '"', "order" => "id DESC")); // Create a Model paginator, show 10 rows by page starting from $currentPage $paginator = new \Phalcon\Paginator\Adapter\Model(array("data" => $businessUpdates, "limit" => 10, "page" => $currentPage)); $page = $paginator->getPaginate(); $this->view->setVar('searchWords', $searchWords); $this->view->setVar('business', $page); $businessCategories = BusinessCategories::find(); $this->view->setVar('businessCategories', $businessCategories); }
public function new_businessAction() { if ($this->request->isPost()) { $countryId = $this->request->getPost('country_id'); $country = Countries::findFirst(array('columns' => '*', 'conditions' => 'id LIKE :id:', 'bind' => array('id' => $countryId))); $countryName = ''; if ($country) { $countryName = $country->country; } $address = str_replace(' ', '+', $this->request->getPost('street') . '+' . $this->request->getPost('city') . '+' . $countryName); $userSession = $this->session->get("userSession"); $content = file_get_contents('https://maps.googleapis.com/maps/api/geocode/json?address=' . $address . '&key=AIzaSyAbpLPfBH8sNdVSzMULD_BZN9qrAqbL3V8'); $json = json_decode($content, true); $lat = $json['results'][0]['geometry']['location']['lat']; $lng = $json['results'][0]['geometry']['location']['lng']; //error_log('LAT : '.$lat.' LONG : '.$lng); $business = new Business(); $business->created = date('Y-m-d H:i:s'); $business->modified = date('Y-m-d H:i:s'); $business->member_id = $userSession['id']; $business->name = $this->request->getPost('name'); $business->website = $this->request->getPost('website'); $business->telephone = $this->request->getPost('telephone'); $business->street = $this->request->getPost('street'); $business->city = $this->request->getPost('city'); $business->country_id = $this->request->getPost('country_id'); $business->lat = $lat; $business->lng = $lng; $business->average_rate = $this->request->getPost('rate'); if (!empty($this->request->getPost('review'))) { $business->total_review = 1; } $opened = ''; if (!empty($this->request->getPost('opened'))) { $opened = 'Opened'; } if (empty($this->request->getPost('opened'))) { $opened = 'Opening Soon'; } $business->opened = $opened; //$business->business_category_id = $this->request->getPost('business_category_id'); // $business->business_sub_category_id = $this->request->getPost('business_sub_category_id'); // $business->business_asub_category_id = $this->request->getPost('business_asub_category_id'); if ($business->create()) { $id = $business->id; if (!empty($this->request->getPost('business_category_ids'))) { $bCtegories = $this->request->getPost('business_category_ids'); $bCtegoryIds = explode(',', $bCtegories); foreach ($bCtegoryIds as $key => $bCtegoryId) { $businessCategoryLists = new BusinessCategoryLists(); $businessCategoryLists->created = date('Y-m-d H:i:s'); $businessCategoryLists->business_id = $id; $businessCategoryLists->business_category_id = $bCtegoryId; $businessCategoryLists->create(); } } $this->flash->success('<button type="button" class="close" data-dismiss="alert">×</button>New business has been created'); if (!empty($this->request->getPost('review'))) { $review = new Reviews(); $review->created = date('Y-m-d H:i:s'); $review->modified = date('Y-m-d H:i:s'); $review->member_id = $userSession['id']; $review->business_id = $business->id; $review->content = $this->request->getPost('review'); $review->rate = $this->request->getPost('rate'); if ($review->create()) { $this->flash->success('<button type="button" class="close" data-dismiss="alert">×</button>You\'re review has been submitted.'); } } return $this->response->redirect('business/view/' . $id); } } $countries = Countries::find(); $this->view->setVar('countries', $countries); $businessCategories = BusinessCategories::find(); $this->view->setVar('businessCategories', $businessCategories); }