/**
  * Returns the data model based on the primary key given in the GET variable.
  * If the data model is not found, an HTTP exception will be raised.
  * @param integer $id the ID of the model to be loaded
  * @return ExchangeRate the loaded model
  * @throws CHttpException
  */
 public function loadModel($id)
 {
     $model = ExchangeRate::model()->findByPk($id);
     if ($model === null) {
         throw new CHttpException(404, 'The requested page does not exist.');
     }
     return $model;
 }
예제 #2
0
 /**
  * 房源详情
  */
 public function actionView($id)
 {
     Yii::app()->clientScript->registerCssFile(Yii::app()->theme->baseUrl . '/css/house.css');
     Yii::app()->clientScript->registerScriptFile(Yii::app()->theme->baseUrl . '/js/flowplayer-3.2.11.min.js');
     $cookies = Yii::app()->request->getCookies();
     if (!empty($cookies['fzd_house'])) {
         $house_ids = explode(',', $cookies['fzd_house']->value);
         array_push($house_ids, $id);
         $house_ids = array_unique($house_ids);
         $cookie_str = implode(',', $house_ids);
         $cookie = new CHttpCookie('fzd_house', $cookie_str);
         $cookie->expire = time() + 60 * 60 * 24 * 30;
         //有限期30天
         Yii::app()->request->cookies['fzd_house'] = $cookie;
     } else {
         $cookie = new CHttpCookie('fzd_house', $id);
         $cookie->expire = time() + 60 * 60 * 24 * 30;
         //有限期30天
         Yii::app()->request->cookies['fzd_house'] = $cookie;
     }
     $criteria = new CDbCriteria();
     $criteria->addCondition('t.id="' . $id . '"');
     $criteria->with = array('mname', 'propertyType');
     //$house = House::model()->find('id=:id',array(':id'=>$id));
     $house = House::model()->find($criteria);
     $layouts = Layout::model()->findAll('house_id=:house_id', array(':house_id' => $id));
     $matches = Match::model()->findAll();
     $collection_list = array();
     if ($this->_account['userId']) {
         $collect_model = Collect::model()->find('user_id=:user_id', array(':user_id' => $this->_account['userId']));
         if (!empty($collect_model)) {
             $collection_list = explode(',', $collect_model->collection);
         }
     }
     //附件房源
     $criteria = new CDbCriteria();
     $criteria->select = 'id,addr,lp_dol,house_image';
     $criteria->condition = 'zip=:zip AND id<>:id';
     $criteria->params = array(':zip' => $house->zip, ':id' => $id);
     $criteria->order = 'id DESC';
     $nearby_houses = House::model()->findAll($criteria);
     //浏览记录
     $cookies = Yii::app()->request->getCookies();
     $house_ids = explode(',', $cookies['addr']->value);
     $criteria = new CDbCriteria();
     $criteria->select = 'id,addr,lp_dol,house_image';
     $criteria->addInCondition('id', $house_ids);
     $view_history = House::model()->findAll($criteria);
     $exchangeRate = 0;
     $exchangeRateList = ExchangeRate::model()->findAll();
     if (!empty($exchangeRateList)) {
         $exchangeRate = $exchangeRateList[0]->rate;
     }
     $data = array('house' => $house, 'layouts' => $layouts, 'matches' => $matches, 'collection_list' => $collection_list, 'nearby_houses' => $nearby_houses, 'view_history' => $view_history, 'exchangeRate' => $exchangeRate);
     $this->render('view', $data);
 }
예제 #3
0
 public function actionGetHouseDetail()
 {
     $_POST = (array) json_decode(file_get_contents('php://input'), true);
     $postParms = !empty($_POST['parms']) ? $_POST['parms'] : array();
     $id = $postParms['id'];
     $username = $postParms['username'];
     error_log("id=" . $id);
     //$id='W3589143';
     $criteria = new CDbCriteria();
     //$criteria->addCondition('t.id="'.$id.'"');
     $criteria->addCondition('t.ml_num="' . $id . '"');
     $criteria->with = array('mname', 'propertyType');
     //$house = House::model()->find('id=:id',array(':id'=>$id));
     $house = House::model()->find($criteria);
     //$house = House::model()->find($criteria)->asArray()->all();
     //error_log(print_r($house));
     $exchangeRate = 0;
     $exchangeRateList = ExchangeRate::model()->findAll();
     if (!empty($exchangeRateList)) {
         $exchangeRate = $exchangeRateList[0]->rate;
     }
     $county = $house->county;
     $county = preg_replace('/\\s+/', '', $county);
     $county = str_replace("&", "", $county);
     //$dir="mlspic/crea/creamid/".$county."/Photo".$house->ml_num."/";
     $rdir = $county . "/Photo" . $house->ml_num . "/";
     $dir = "mlspic/crea/" . $rdir;
     $num_files = 0;
     $photos = array();
     if (is_dir($dir)) {
         $picfiles = scandir($dir);
         $num_files = count(scandir($dir)) - 2;
     }
     if ($num_files > 0) {
         for ($x = 2; $x <= $num_files + 1; $x++) {
             $photos[] = $rdir . $picfiles[$x];
         }
     }
     $isFav = 0;
     if ($username != 'NO') {
         if ($this->isValidIdToken()) {
             //error_log("Token is valid:".$username);
             $isFav = $this->checkfav($username, $id);
         }
     }
     $data = array('house' => $house->getAttributes(), 'house_mname' => $house->mname->getAttributes(), 'house_propertyType' => $house->propertyType->getAttributes(), 'exchangeRate' => $exchangeRate, 'photos' => $photos, 'isFav' => $isFav);
     echo json_encode($data);
 }