...
|
...
|
@@ -2,7 +2,7 @@ |
|
|
|
|
|
/**
|
|
|
* 所有Controller控制器的基类
|
|
|
*
|
|
|
*
|
|
|
* @name AbstractAction
|
|
|
* @package library
|
|
|
* @copyright yoho.inc
|
...
|
...
|
@@ -25,8 +25,8 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* HTTP请求对象
|
|
|
*
|
|
|
* @var object
|
|
|
*
|
|
|
* @var object
|
|
|
*/
|
|
|
protected $_request;
|
|
|
|
...
|
...
|
@@ -41,8 +41,8 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 存放模板数据
|
|
|
*
|
|
|
* @var array
|
|
|
*
|
|
|
* @var array
|
|
|
*/
|
|
|
protected $_data;
|
|
|
|
...
|
...
|
@@ -70,14 +70,14 @@ class AbstractAction extends Controller_Abstract |
|
|
case 'develop': // 开发
|
|
|
default:
|
|
|
$this->_view->assign('devEnv', true);
|
|
|
$this->_useSession = false;
|
|
|
$this->_useSession = false;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 封装一下获取get参数
|
|
|
*
|
|
|
*
|
|
|
* @param String $key
|
|
|
* @param mixed $default
|
|
|
* @return mixed
|
...
|
...
|
@@ -92,7 +92,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 封装一下获取post参数
|
|
|
*
|
|
|
*
|
|
|
* @param String $key
|
|
|
* @param mixed $default
|
|
|
* @return mixed
|
...
|
...
|
@@ -107,7 +107,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 封装一下获取YAF内部的参数
|
|
|
*
|
|
|
*
|
|
|
* @param String $key
|
|
|
* @param mixed $default
|
|
|
* @return mixed
|
...
|
...
|
@@ -119,7 +119,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 封装一下获取服务器的参数
|
|
|
*
|
|
|
*
|
|
|
* @param String $key
|
|
|
* @param mixed $default
|
|
|
* @return mixed
|
...
|
...
|
@@ -131,7 +131,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 关闭模板自动渲染
|
|
|
*
|
|
|
*
|
|
|
* @return void
|
|
|
*/
|
|
|
protected function disableView()
|
...
|
...
|
@@ -141,7 +141,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 输出JSON数据到浏览器
|
|
|
*
|
|
|
*
|
|
|
* @return void
|
|
|
*/
|
|
|
protected function echoJson($json)
|
...
|
...
|
@@ -156,7 +156,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 返回JSON数据
|
|
|
*
|
|
|
*
|
|
|
* @param int $code 状态编码
|
|
|
* @param string $message 提示信息
|
|
|
* @param mixed $data 数据内容
|
...
|
...
|
@@ -171,7 +171,7 @@ class AbstractAction extends Controller_Abstract |
|
|
'data' => $data,
|
|
|
));
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* JSON输出
|
|
|
* @param $code
|
...
|
...
|
@@ -184,7 +184,7 @@ class AbstractAction extends Controller_Abstract |
|
|
echo json_encode(array('code' => $code, 'message' => $message, 'data' => $data));
|
|
|
exit();
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* JSONP Callback输出,用于远程调用
|
|
|
* @param $callbackString
|
...
|
...
|
@@ -200,11 +200,11 @@ class AbstractAction extends Controller_Abstract |
|
|
echo ")";
|
|
|
exit();
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 判断是不是AJAX请求
|
|
|
*
|
|
|
*
|
|
|
* @return bool
|
|
|
*/
|
|
|
protected function isAjax()
|
...
|
...
|
@@ -224,7 +224,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 跳转到指定的URL
|
|
|
*
|
|
|
*
|
|
|
* @param string $url 链接地址
|
|
|
* @return void
|
|
|
*/
|
...
|
...
|
@@ -237,7 +237,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 设置Cookie
|
|
|
*
|
|
|
*
|
|
|
* @param string $name cookie的名字
|
|
|
* @param string $value cookie的值
|
|
|
* @param integer $expire cookie过期时间
|
...
|
...
|
@@ -251,7 +251,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 返回Cookie变量
|
|
|
*
|
|
|
*
|
|
|
* @param string $name cookie名称
|
|
|
* @param string $default 未获取到返回的默认值
|
|
|
* @return string 获取到的cookie值
|
...
|
...
|
@@ -263,7 +263,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 设置缓存
|
|
|
*
|
|
|
*
|
|
|
* @param string $key 键名
|
|
|
* @param mixed $value 需要缓存的数据
|
|
|
* @param int $expire 缓存有效期(单位秒, 0表示永久)
|
...
|
...
|
@@ -276,7 +276,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 获取缓存
|
|
|
*
|
|
|
*
|
|
|
* @param string $key 键名
|
|
|
* @param bool $isMaster 控制是到主服务器取,还是到从服务器取缓存
|
|
|
* @return mixed
|
...
|
...
|
@@ -292,7 +292,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 设置Session
|
|
|
*
|
|
|
*
|
|
|
* @param string $name 名称
|
|
|
* @param mixed $value 值
|
|
|
* @return void
|
...
|
...
|
@@ -306,7 +306,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 获取Session
|
|
|
*
|
|
|
*
|
|
|
* @param string $name 名称
|
|
|
* @return mixed
|
|
|
*/
|
...
|
...
|
@@ -335,10 +335,10 @@ class AbstractAction extends Controller_Abstract |
|
|
$this->setSession('_LOGIN_UID', $uid);
|
|
|
$this->setCookie('_TOKEN', $token);
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 获取当前登录的用户ID
|
|
|
*
|
|
|
*
|
|
|
* @param bool $useSession (true:从服务端session中检查, false:从客户端cookie中检查)
|
|
|
* @return int
|
|
|
*/
|
...
|
...
|
@@ -371,7 +371,7 @@ class AbstractAction extends Controller_Abstract |
|
|
$this->_usession = $cookieList[3];
|
|
|
$this->_vip = $cookieList[2];
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
// 新的, 如果老站没有同步成功,再尝试从SESSION获取
|
|
|
elseif ($useSession) {
|
|
|
$uid = $this->getSession('_LOGIN_UID');
|
...
|
...
|
@@ -382,10 +382,10 @@ class AbstractAction extends Controller_Abstract |
|
|
}
|
|
|
return $this->_uid;
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 获取客户端唯一标识
|
|
|
*
|
|
|
*
|
|
|
* @return string
|
|
|
*/
|
|
|
protected function getUdid()
|
...
|
...
|
@@ -402,10 +402,10 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
return $udid;
|
|
|
}
|
|
|
|
|
|
|
|
|
/*
|
|
|
* 设置网站SEO的标题
|
|
|
*
|
|
|
*
|
|
|
* @param string $title 标题
|
|
|
* @param string $sign 连接的字符串
|
|
|
* @param bool $showMore 是否显示更多内容
|
...
|
...
|
@@ -420,7 +420,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 设置网站SEO的关键词
|
|
|
*
|
|
|
*
|
|
|
* @param string $keywords 关键词,多个之间用","逗号分隔
|
|
|
* @return void
|
|
|
*/
|
...
|
...
|
@@ -431,7 +431,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 设置网站SEO的描述内容
|
|
|
*
|
|
|
*
|
|
|
* @param string $description 描述内容
|
|
|
* @param bool $showMore 是否显示更多内容
|
|
|
* @param string $sign 连接的字符串
|
...
|
...
|
@@ -445,7 +445,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 设置网站导航头部信息
|
|
|
*
|
|
|
*
|
|
|
* @param string $title 头部标题
|
|
|
* @param mixed $backUrl 返回的链接
|
|
|
* @param boolean $navBtn 是否显示右上角导航
|
...
|
...
|
@@ -504,13 +504,13 @@ class AbstractAction extends Controller_Abstract |
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
$this->_view->assign('pageHeader', $header);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 设置网站导航底部信息
|
|
|
*
|
|
|
*
|
|
|
* @return void
|
|
|
*/
|
|
|
protected function setNavFooterTab()
|
...
|
...
|
@@ -526,7 +526,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 设置侧边栏信息
|
|
|
*
|
|
|
*
|
|
|
* @param string $guangChoosed 逛默认选中项 "all"表示全部,"boys":只看男生,"girls":只看女生
|
|
|
* @return void
|
|
|
*/
|
...
|
...
|
@@ -537,7 +537,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 设置最后修改时间
|
|
|
*
|
|
|
*
|
|
|
* @param string $modifiedTime 修改时间戳
|
|
|
* @param type $notModifiedExit 是否在没有修改时返回304状态
|
|
|
* @return void
|
...
|
...
|
@@ -554,7 +554,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
/**
|
|
|
* 设置浏览器的缓存
|
|
|
*
|
|
|
*
|
|
|
* @param int $seconds 单位是秒
|
|
|
* @return void
|
|
|
*/
|
...
|
...
|
@@ -564,7 +564,7 @@ class AbstractAction extends Controller_Abstract |
|
|
|
|
|
header('Expires: ' . $time);
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* JS 跳转并提示
|
|
|
*
|
...
|
...
|
@@ -575,7 +575,7 @@ class AbstractAction extends Controller_Abstract |
|
|
protected function helpJsRedirect($message = '', $expression = "history.back()")
|
|
|
{
|
|
|
header("content-type: text/html; charset=utf-8");
|
|
|
|
|
|
|
|
|
if ($message != '') {
|
|
|
$message = strtr(addslashes($message), array('\n' => '\\n'));
|
|
|
echo "<script language=\"javascript\">";
|
...
|
...
|
@@ -607,10 +607,12 @@ class AbstractAction extends Controller_Abstract |
|
|
/**
|
|
|
* 判断是不是APP
|
|
|
*
|
|
|
* @return bool
|
|
|
* @return bool false:不是app,true:是app
|
|
|
*/
|
|
|
public function isApp(){
|
|
|
$appVersion = $this->get('app_version');
|
|
|
$appVersion = $this->get('app_version', false);
|
|
|
//为空,从缓存中获取
|
|
|
$appVersion = empty($appVersion) ? $this->getSession('app_version') : $appVersion;
|
|
|
return !empty($appVersion);
|
|
|
}
|
|
|
|
...
|
...
|
|