function actionRealAnalyze()
 {
     header('Content-type: application/json');
     if (!IjoyPlusServiceUtils::validateAPPKey()) {
         IjoyPlusServiceUtils::exportServiceError(Constants::APP_KEY_INVALID);
         return;
     }
     $url = Yii::app()->request->getParam("url");
     if (!(isset($url) && !is_null($url) && strlen($url) > 0)) {
         IjoyPlusServiceUtils::exportServiceError(Constants::KEYWORD_IS_NULL);
         return;
     }
     try {
         $vodtype = $this->getVodtype($url);
         if ($vodtype !== "" && $vodtype != "joyplus") {
             $content = $this->getContent("http://localhost/" . $vodtype . '/?url=' . $url, "utf-8");
             $content = json_decode($content);
         }
         if (isset($content)) {
             IjoyPlusServiceUtils::exportEntity(array('results' => $content));
         } else {
             IjoyPlusServiceUtils::exportEntity(array('results' => array()));
         }
     } catch (Exception $e) {
         //			var_dump($e);
         IjoyPlusServiceUtils::exportServiceError(Constants::SYSTEM_ERROR);
     }
 }
 public function actionOpenApiConfig()
 {
     header('Content-type: application/json');
     if (!Yii::app()->request->isPostRequest) {
         IjoyPlusServiceUtils::exportServiceError(Constants::METHOD_NOT_SUPPORT);
         return;
     }
     if (!IjoyPlusServiceUtils::validateAPPKey()) {
         IjoyPlusServiceUtils::exportServiceError(Constants::APP_KEY_INVALID);
         return;
     }
     try {
         $device_name = Yii::app()->request->getParam("device_name");
         if (!(isset($device_name) && !is_null($device_name) && strlen($device_name) > 0)) {
             IjoyPlusServiceUtils::exportServiceError(Constants::PARAM_IS_INVALID);
             return;
         }
         $apiConfig = ApiConfig::model()->find(array("condition" => "device_name like '%" . $device_name . ",%' "));
         if ($apiConfig == null) {
             IjoyPlusServiceUtils::exportEntity(array());
         } else {
             IjoyPlusServiceUtils::exportEntity(array('api_url' => $apiConfig['api_url'], 'logo_url' => $apiConfig['logo_url'], 'app_key' => $apiConfig['app_key']));
         }
     } catch (Exception $e) {
         IjoyPlusServiceUtils::exportServiceError(Constants::SYSTEM_ERROR);
     }
 }
 public function actionReplies()
 {
     header('Content-type: application/json');
     if (!IjoyPlusServiceUtils::validateAPPKey()) {
         IjoyPlusServiceUtils::exportServiceError(Constants::APP_KEY_INVALID);
         return;
     }
     $thread_id = Yii::app()->request->getParam("thread_id");
     if (!isset($thread_id) || is_null($thread_id)) {
         IjoyPlusServiceUtils::exportServiceError(Constants::PARAM_IS_INVALID);
         return;
     }
     $page_size = Yii::app()->request->getParam("page_size");
     $page_num = Yii::app()->request->getParam("page_num");
     if (!(isset($page_size) && is_numeric($page_size))) {
         $page_size = 10;
         $page_num = 1;
     } else {
         if (!(isset($page_num) && is_numeric($page_num))) {
             $page_num = 1;
         }
     }
     $comments = Comment::model()->getCommentReplies($thread_id, $page_size, $page_size * ($page_num - 1));
     if (isset($comments) && is_array($comments)) {
         $commentTemps = array();
         $count = 0;
         foreach ($comments as $comment) {
             $commentTemps[$count] = IjoyPlusServiceUtils::transferComments($comment);
             $count++;
         }
         IjoyPlusServiceUtils::exportEntity(array('replies' => $commentTemps));
     } else {
         IjoyPlusServiceUtils::exportEntity(array('replies' => array()));
     }
 }
 public function actionViewRecommend()
 {
     header('Content-type: application/json');
     if (!IjoyPlusServiceUtils::validateAPPKey()) {
         IjoyPlusServiceUtils::exportServiceError(Constants::APP_KEY_INVALID);
         return;
     }
     if (IjoyPlusServiceUtils::validateUserID()) {
         IjoyPlusServiceUtils::exportServiceError(Constants::USER_ID_INVALID);
         return;
     }
     $prod_id = Yii::app()->request->getParam("prod_id");
     if (!isset($prod_id) || is_null($prod_id)) {
         IjoyPlusServiceUtils::exportServiceError(Constants::PARAM_IS_INVALID);
         return;
     }
     $program = Program::model()->findByPk($prod_id);
     if ($program === null) {
         IjoyPlusServiceUtils::exportServiceError(Constants::OBJECT_NOT_FOUND);
         return;
     }
     $userid = Yii::app()->request->getParam("user_id");
     if (!isset($userid) || is_null($userid)) {
         $userid = Yii::app()->user->id;
     }
     $prod = ProgramUtil::exportProgramEntity($program);
     $reCom = Dynamic::model()->getDynamicByProd($userid, $prod_id, Constants::DYNAMIC_TYPE_RECOMMEND);
     if (isset($reCom) && !is_null($reCom)) {
         $prod['reason'] = $reCom->content_desc;
     }
     $comments = Comment::model()->getCommentsByProgram($prod_id, 10, 0);
     if (isset($comments) && is_array($comments)) {
         $commentTemps = array();
         foreach ($comments as $comment) {
             $commentTemps[] = IjoyPlusServiceUtils::transferComments($comment);
         }
         $prod['comments'] = $commentTemps;
     } else {
         $prod['comments'] = array();
     }
     $dynamic = Dynamic::model()->friendDynamicForProgram(Yii::app()->user->id, $prod_id, 10, 0);
     if (isset($dynamic) && is_array($dynamic)) {
         $prod['dynamics'] = $this->transferDynamics($dynamic);
     } else {
         $prod['dynamics'] = array();
     }
     $topics = Topic::model()->getRelatedTops($prod_id);
     if (isset($topics) && is_array($topics)) {
         $prod['topics'] = $topics;
     } else {
         $prod['topics'] = array();
     }
     IjoyPlusServiceUtils::exportEntity($prod);
 }
 function actionValidateThirdParty()
 {
     header('Content-type: application/json');
     if (!Yii::app()->request->isPostRequest) {
         IjoyPlusServiceUtils::exportServiceError(Constants::METHOD_NOT_SUPPORT);
         return;
     }
     if (!IjoyPlusServiceUtils::validateAPPKey()) {
         IjoyPlusServiceUtils::exportServiceError(Constants::APP_KEY_INVALID);
         return;
     }
     $sourceid = Yii::app()->request->getParam("source_id");
     $source_type = Yii::app()->request->getParam("source_type");
     $pre_user_id = Yii::app()->request->getParam("pre_user_id");
     if (!isset($sourceid) || is_null($sourceid)) {
         IjoyPlusServiceUtils::exportServiceError(Constants::PARAM_IS_INVALID);
         return;
     }
     if (IjoyPlusServiceUtils::validateThirdPartSource($source_type)) {
         try {
             $user = User::model()->searchUserByThirdParty($source_type, $sourceid);
             if (isset($user) && !is_null($user)) {
                 //Delete previous user related information
                 if (isset($pre_user_id) && !is_null($pre_user_id) && $pre_user_id !== $user->id) {
                     User::model()->deleteUserInfo($pre_user_id);
                 }
                 $identity = new IjoyPlusUserIdentity($user->username, '');
                 $identity->setId($user->id);
                 $identity->setState('nickname', $user->nickname);
                 $identity->setState('pic_url', $user->user_photo_url);
                 Yii::app()->user->login($identity);
                 IjoyPlusServiceUtils::exportEntity(array("user_id" => $user->id));
             } else {
                 IjoyPlusServiceUtils::exportServiceError(Constants::USER_NOT_EXIST);
             }
         } catch (Exception $e) {
             IjoyPlusServiceUtils::exportServiceError(Constants::SYSTEM_ERROR);
         }
     } else {
         IjoyPlusServiceUtils::exportServiceError(Constants::THIRD_PART_SOURCE_TYPE_INVALID);
     }
 }
 function actionPopShow()
 {
     header('Content-type: application/json');
     //	   if(Yii::app()->user->isGuest){
     //			IjoyPlusServiceUtils::exportServiceError(Constants::SEESION_IS_EXPIRED);
     //			return ;
     //		}
     if (!IjoyPlusServiceUtils::validateAPPKey()) {
         IjoyPlusServiceUtils::exportServiceError(Constants::APP_KEY_INVALID);
         return;
     }
     $page_size = Yii::app()->request->getParam("page_size");
     $page_num = Yii::app()->request->getParam("page_num");
     if (!(isset($page_size) && is_numeric($page_size))) {
         $page_size = 10;
         $page_num = 1;
     } else {
         if (!(isset($page_num) && is_numeric($page_num))) {
             $page_num = 1;
         }
     }
     try {
         $prods = SearchManager::popularProgram(SearchManager::POPULAR_TV_SHOW_SPECIAL_ID, $page_size, $page_size * ($page_num - 1));
         if (isset($prods) && is_array($prods)) {
             IjoyPlusServiceUtils::exportEntity(array('show' => $prods));
         } else {
             IjoyPlusServiceUtils::exportEntity(array('show' => array()));
         }
     } catch (Exception $e) {
         IjoyPlusServiceUtils::exportServiceError(Constants::SYSTEM_ERROR);
     }
 }
 function actionSohuProduce()
 {
     header('Content-type: application/json');
     if (!IjoyPlusServiceUtils::validateAPPKey()) {
         IjoyPlusServiceUtils::exportServiceError(Constants::APP_KEY_INVALID);
         return;
     }
     $page_size = Yii::app()->request->getParam("page_size");
     $page_num = Yii::app()->request->getParam("page_num");
     if (!(isset($page_size) && is_numeric($page_size))) {
         $page_size = 10;
         $page_num = 1;
     } else {
         if (!(isset($page_num) && is_numeric($page_num))) {
             $page_num = 1;
         }
     }
     $top_id = 12192;
     try {
         $lists = SearchManager::listSohuProduce($top_id, $page_size, $page_size * ($page_num - 1));
         if (isset($lists) && is_array($lists)) {
             IjoyPlusServiceUtils::exportEntity(array('results' => $lists));
         } else {
             IjoyPlusServiceUtils::exportEntity(array('results' => array()));
         }
     } catch (Exception $e) {
         Yii::log(CJSON::encode($e), "error");
         IjoyPlusServiceUtils::exportServiceError(Constants::SYSTEM_ERROR);
     }
 }
 public function actionRecommends()
 {
     header('Content-type: application/json');
     if (!IjoyPlusServiceUtils::validateAPPKey()) {
         IjoyPlusServiceUtils::exportServiceError(Constants::APP_KEY_INVALID);
         return;
     }
     if (IjoyPlusServiceUtils::validateUserID()) {
         IjoyPlusServiceUtils::exportServiceError(Constants::USER_ID_INVALID);
         return;
     }
     $page_size = Yii::app()->request->getParam("page_size");
     $page_num = Yii::app()->request->getParam("page_num");
     if (!(isset($page_size) && is_numeric($page_size))) {
         $page_size = 10;
         $page_num = 1;
     } else {
         if (!(isset($page_num) && is_numeric($page_num))) {
             $page_num = 1;
         }
     }
     try {
         $recommends = Dynamic::model()->friendRecommends(Yii::app()->user->id, $page_size, $page_size * ($page_num - 1));
         if (isset($recommends) && !is_null($recommends) && is_array($recommends)) {
             IjoyPlusServiceUtils::exportEntity(array('recommends' => $recommends));
         } else {
             IjoyPlusServiceUtils::exportEntity(array('recommends' => array()));
         }
     } catch (Exception $e) {
         IjoyPlusServiceUtils::exportServiceError(Constants::SYSTEM_ERROR);
     }
 }