本文整理汇总了PHP中CFilterChain类的典型用法代码示例。如果您正苦于以下问题:PHP CFilterChain类的具体用法?PHP CFilterChain怎么用?PHP CFilterChain使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了CFilterChain类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: filterSuperAdminOnly
public function filterSuperAdminOnly(CFilterChain $filterChain)
{
if (!Yii::app()->user->is("SuperAdmin")) {
throw new CHttpException("You don't have super admin privileges to access this page");
}
$filterChain->run();
}
示例2: filterEnsureToken
/**
* @param \CFilterChain $filterChain
*/
public function filterEnsureToken(\CFilterChain $filterChain)
{
if (($token = \Yii::app()->request->getQuery('token')) === null) {
$this->accessDenied(Helper::t('errors', 'Invalid authentication token.'));
}
$filterChain->run();
}
示例3: filterValidateServe
/**
* Ensure that everything is prepared before we execute the serve action.
* @param CFilterChain $filterChain Instance of CFilterChain.
*/
public function filterValidateServe($filterChain)
{
header('X-Powered-By:');
header('Pragma:');
header('Expires:');
header('Cache-Control:');
header('Last-Modified:');
header('Etag:');
@ob_end_clean();
if (isset($_GET['g'])) {
$qs = 'g=' . $_GET['g'];
if (isset($_GET['lm'])) {
$lm = $_GET['lm'];
if (ctype_digit((string) $lm)) {
$qs .= '&' . $lm;
}
}
$_SERVER['QUERY_STRING'] = $qs;
}
if (isset(Yii::app()->log)) {
foreach (Yii::app()->log->routes as $route) {
if ($route instanceof CWebLogRoute) {
$route->enabled = false;
}
}
}
$filterChain->run();
}
示例4: filterNotGuestAndFriendIdExists
public function filterNotGuestAndFriendIdExists(CFilterChain $chain)
{
if (!isset($_POST['friend_id']) || Yii::app()->user->isGuest) {
$this->badRequest();
}
return $chain->run();
}
示例5: filterPreloadOrder
/**
* Filters requests that are not passing order_id as a parameter.
*
* @param CFilterChain $filterchain
*/
public function filterPreloadOrder($filterchain)
{
if ($this->order === null) {
throw new CHttpException(403, 'Invalid request!');
}
$filterchain->run();
}
示例6: filterGuestView
public function filterGuestView(CFilterChain $filterChain)
{
if (Yii::app()->user->is("guest")) {
$this->layout = '/layouts/guestLogin';
}
$filterChain->run();
}
示例7: filterCheckBackendCanStream
/**
* Displays a flash if the backend doesn't support streaming
* @param CFilterChain $filterChain the filter chain
*/
public function filterCheckBackendCanStream($filterChain)
{
// Check backend version and warn about incompatibilities
if (!Yii::app()->xbmc->meetsMinimumRequirements() && !Setting::getBoolean('disableFrodoWarning')) {
Yii::app()->user->setFlash('info', Yii::t('Misc', 'Streaming of video files is not possible from XBMC 12 "Frodo" backends'));
}
$filterChain->run();
}
示例8: filterCheckConfiguration
/**
* Checks that the application has been configured, and if not redirects
* to the "create backend" page
* @param CFilterChain $filterChain
*/
public function filterCheckConfiguration($filterChain)
{
if (Yii::app()->backendManager->getCurrent() === null) {
Yii::app()->user->setFlash('error', Yii::t('Backend', 'You must configure a backend before you can use the application'));
$this->redirect(array('backend/create'));
}
$filterChain->run();
}
示例9: filterCheckConfiguration
/**
* Override parent implementation so we don't get stuck in a redirect loop
* @param CFilterChain $filterChain
*/
public function filterCheckConfiguration($filterChain)
{
if ($this->route === 'backend/create') {
$filterChain->run();
} else {
parent::filterCheckConfiguration($filterChain);
}
}
示例10: filterAjaxOnlySilent
/**
* Фильтр аналогичен фильтру ajaxOnly, только по нему не происходит уведомлений об ошибках на e-mail
* The filter method for 'ajaxOnly' filter.
* This filter throws an exception (CHttpException with code 400) if the applied action is receiving a non-AJAX request.
* @param CFilterChain $filterChain the filter chain that the filter is on.
* @throws CHttpException if the current request is not an AJAX request.
*/
public function filterAjaxOnlySilent($filterChain)
{
if (Yii::app()->getRequest()->getIsAjaxRequest()) {
$filterChain->run();
} else {
throw new DaHttpException(400, Yii::t('yii', 'Your request is invalid.'));
}
}
示例11: filter
/**
* Performs the filtering.
* The default implementation simply calls {@link init()},
* {@link CFilterChain::run()} and {@link run()} in order
* Derived classes may want to override this method to change this behavior.
* @param CFilterChain $filterChain the filter chain that the filter is on.
*/
public function filter($filterChain)
{
$this->init();
if (!$this->stopAction) {
$filterChain->run();
$this->run();
}
}
示例12: filterAccessControl
/**
* User permissions filter.
*
* @param CFilterChain $filterChain
*/
public function filterAccessControl($filterChain)
{
$user = Yii::app()->user;
if ($user->isGuest) {
$this->redirect(array('profile/login'));
} else {
$filterChain->run();
}
}
示例13: filterAuthCheck
/**
* 进行权限检查的内联过滤器
* 当权限检查失败时抛出全局异常
*
* @param CFilterChain $filterChains
*/
public function filterAuthCheck($filterChains)
{
// 未登录用户直接调转到首页,强制重新登录
if (Yii::app()->user->isGuest) {
$this->redirect(Yii::app()->createAbsoluteUrl('adminlogin/index'));
}
KefuRbacTool::getInstance()->checkAccess();
$filterChains->run();
}
示例14: filterAuthCheck
/**
* 进行权限检查的内联过滤器
* 当权限检查失败时抛出全局异常
*
* @param CFilterChain $filterChains
*/
public function filterAuthCheck($filterChains)
{
if (empty(Yii::app()->session['info'])) {
$this->redirect(Yii::app()->createAbsoluteUrl('passport/index'));
} else {
if (Yii::app()->session['info']['logintime'] + 86400 < time()) {
$this->redirect(Yii::app()->createAbsoluteUrl('passport/index'));
}
}
$filterChains->run();
}
示例15: filterMaintananceModeAccessControl
/**
* Allow access to all upgrade actions only to Super Administrators.
* @param CFilterChain $filterChain
*/
public function filterMaintananceModeAccessControl($filterChain)
{
if (!Yii::app()->isApplicationInMaintenanceMode()) {
$message = Zurmo::t('InstallModule', 'Please set $maintenanceMode = true in perInstance.php config file.');
$messageView = new AccessFailureView($message);
$view = new AccessFailurePageView($messageView);
echo $view->render();
Yii::app()->end(0, false);
}
$filterChain->run();
}