Example #1
0
 /**
  * Make link fix product
  *
  * @author MinhNV
  * Date 2010/07/07
  */
 private function makeLinkProduct()
 {
     $link_depart = '';
     $link_section = '';
     $link_product = '';
     $link_url = '';
     $depart_id = Url::get('depart_id', 0);
     $cat_id = Url::get('cat_id', 0);
     $cat_name = Url::get('cat_name', '');
     $url_filter = Url::get('url_filter');
     $arySerialize = array();
     $url_serialize = '';
     $url_product = Url::get('url_product');
     $aryParamFilter = array();
     $is_same_cat = Url::get('is_same_cat', 0);
     $is_same_depart = Url::get('is_same_depart', 0);
     $is_new = Url::get('is_new', 0);
     $is_discount_new = Url::get('is_discount_new', 0);
     $is_discount = Url::get('is_discount', 0);
     $is_attention = Url::get('is_attention', 0);
     $type_special = 0;
     if ($is_new == 1) {
         $type_special = IS_NEW;
     }
     if ($is_discount_new == 1) {
         $type_special = IS_DISCOUNT_NEW;
     }
     if ($is_discount == 1) {
         $type_special = IS_DISCOUNT;
     }
     if ($is_attention == 1) {
         $type_special = NUM_CLASSIFIED;
     }
     $city_id = Url::get('city_id', 0);
     $district_id = Url::get('district_id', 0);
     if ($url_filter) {
         $aryParamFilter = $this->buildArrayFromURL($url_filter);
     }
     if ($url_product) {
         $aryProduct = explode(',', $url_product);
         if (is_array($aryProduct) && count($aryProduct) == 1) {
             $page = '';
             $aryProduct = Product::getProduct($url_product);
             $link_product = Product::buildLinkProductDetail(0, $aryProduct['category_id'], $aryProduct['id'], $aryProduct['name']);
             $arySerialize = array('page' => $page, 'params' => array('id' => $url_product, 'title' => EClassApi::safe_title($aryProduct['name'])));
         } else {
             if ($is_same_cat == 1) {
                 $page = CGlobal::$aryDepartName[$depart_id] . '_section';
                 $link_product = Url::build($page, array('cat_product_id' => $cat_id, 'title' => EClassApi::safe_title($cat_name), 'product_id' => $url_product));
                 $arySerialize = array('page' => $page, 'params' => array('cat_product_id' => $cat_id, 'title' => EClassApi::safe_title($cat_name), 'product_id' => $url_product));
             } else {
                 $page = 'list_product';
                 $link_product = Url::build($page, array('product_id' => $url_product));
                 $arySerialize = array('page' => $page, 'params' => array('product_id' => $url_product));
             }
         }
     } else {
         if ($depart_id) {
             $page = CGlobal::$aryDepartName[$depart_id];
             //Neu co tinh thanh
             if ($city_id > 0) {
                 $aryCity = SoLib::getListOptionCity();
                 if ($district_id > 0) {
                     //Get quan huyen
                     $aryDistrict = EClassApi::getDistrict($city_id);
                     //$districtName = $this->getDistrictName ( $district_id );
                     $aryParams = array('city_id' => $city_id, 'district_id' => $district_id, 'title' => safe_title($aryDistrict['name']));
                     $arySerialize = array('page' => $page, 'params' => $aryParams);
                     $link_depart = Url::build($page, $aryParams);
                 } else {
                     $aryParams = array('city_id' => $city_id, 'title' => safe_title($aryCity[$city_id]));
                     $arySerialize = array('page' => $page, 'params' => $aryParams);
                     $link_depart = Url::build($page, $aryParams);
                 }
             } else {
                 if ($url_filter) {
                     if ($depart_id == CGlobal::THOI_TRANG || $depart_id == CGlobal::SACH) {
                         $page = CGlobal::$aryDepartName[$depart_id] . '_section';
                         $aryParams = array('cat_product_id' => $depart_id, 'title' => safe_title(CGlobal::$aryDepart[$depart_id]));
                         $aryParams = array_merge($aryParams, $aryParamFilter);
                     } else {
                         $aryParams = $aryParamFilter;
                     }
                     $arySerialize = array('page' => $page, 'params' => $aryParams);
                     $link_depart = Url::build($page, $aryParams);
                 } else {
                     $arySerialize = array('page' => $page, 'params' => array());
                     $link_depart = Url::build($page, array());
                 }
             }
             if ($cat_id) {
                 $page = CGlobal::$aryDepartName[$depart_id] . '_section';
                 if ($city_id > 0) {
                     $aryCity = SoLib::getListOptionCity();
                     if ($district_id > 0) {
                         //Get quan huyen
                         $aryDistrict = EClassApi::getDistrict($city_id);
                         //$aryDistrict = EClassApi::getDistrict($city_id);
                         $aryParams = array('cat_product_id' => $cat_id, 'city_id' => $city_id, 'district_id' => $district_id, 'title' => safe_title($aryDistrict['name']));
                     } else {
                         $aryParams = array('cat_product_id' => $cat_id, 'city_id' => $city_id, 'title' => safe_title($aryCity[$city_id]));
                     }
                     $arySerialize = array('page' => $page, 'params' => $aryParams);
                     $link_depart = Url::build($page, $aryParams);
                 } else {
                     if ($type_special > 0) {
                         $page = 'list_special';
                         $aryParams = array('cat_product_id' => $cat_id, 'type' => $type_special, 'title' => safe_title($cat_name));
                     } else {
                         $aryParams = array('cat_product_id' => $cat_id, 'title' => safe_title($cat_name));
                     }
                     if ($url_filter) {
                         $aryParams = array_merge($aryParams, $aryParamFilter);
                     }
                     $arySerialize = array('page' => $page, 'params' => $aryParams);
                     $link_depart = Url::build($page, $aryParams);
                 }
             }
         }
     }
     if ($link_product) {
         $link_url = $link_product;
     } else {
         if ($link_depart) {
             $link_url = $link_depart;
         }
     }
     if (is_array($arySerialize) && count($arySerialize) > 0) {
         $url_serialize = serialize($arySerialize);
     }
     $aryData = array();
     $aryData['link_product_fix'] = $link_url;
     $aryData['url_serialize'] = $url_serialize;
     $aryData['intIsOK'] = 1;
     echo json_encode($aryData);
     exit;
 }