示例#1
0
文件: Error.php 项目: jinghm318/ko
 public static function VHandleShutdown()
 {
     static $s_aFatalErrors = array(E_ERROR, E_CORE_ERROR, E_COMPILE_ERROR);
     $error = error_get_last();
     if (null !== $error && in_array($error['type'], $s_aFatalErrors)) {
         Ko_Web_Event::Trigger('ko.error', 'error', $error['type'], $error['message'], $error['file'], $error['line'], array());
         Ko_Web_Event::Trigger('ko.error', '500', $error['type'], $error['message'], $error['file'], $error['line'], array());
     }
     Ko_Web_Event::Trigger('ko.error', 'shutdown');
 }
示例#2
0
            $loginuid = $loginApi->iGetLoginUid();
            if (empty($loginuid)) {
                Ko_Web_Response::VSetRedirect('http://' . PASSPORT_DOMAIN . '/user/login');
                Ko_Web_Response::VSend();
                exit;
            }
        }
    }
    $hooks = COMMON_CLASS_PATH . 'hooks/' . $appname . '.php';
    if (is_file($hooks)) {
        require_once $hooks;
    }
});
Ko_Web_Event::On('ko.error', '500', function ($errno, $errstr, $errfile, $errline, $errcontext) {
    Ko_Web_Error::V500($errno, $errstr, $errfile, $errline, $errcontext);
    exit;
});
Ko_Web_Event::On('ko.dispatch', 'before', function () {
    Ko_Tool_Adapter::VOn('user_baseinfo', array('KUser_baseinfoApi', 'AAdapter'));
    Ko_Tool_Adapter::VOn('image_baseinfo', array('KStorage_Api', 'AAdapter'));
    $uri = Ko_Web_Request::SRequestUri();
    $appname = Ko_Web_Config::SGetAppName();
    if ('zc' === $appname) {
        $_GET['uid'] = 20;
    }
});
Ko_Web_Event::On('ko.dispatch', '404', function () {
    Ko_Web_Route::V404();
    exit;
});
require_once KO_DIR . 'web/Bootstrap.php';
示例#3
0
<?php

/**
 * Created by JetBrains PhpStorm.
 * User: Jichen Zhou
 * Date: 2015年12月22日
 * Time: 下午5:31
 */
Ko_Web_Event::On('ko.dispatch', 'before', function () {
    $uri = Ko_Web_Request::SRequestUri();
    $script = Ko_Web_Request::SScriptName();
    $userApi = new KUser_userApi();
    if ($uri == '/user/login/index') {
        echo "hook logout" . chr(10);
        //		$userApi->logoutAdminAuth();
    } elseif ($uri == '/rest/user/login/') {
    } else {
        if (!$userApi->checkLogin()) {
            $url = 'http://' . WWW_DOMAIN . '/user/login/index';
            header('Location:' . $url);
            exit;
        }
    }
});
示例#4
0
文件: Bootstrap.php 项目: AllenLyu/ko
<?php

/**
 * Bootstrap
 *
 * @package ko/Web
 * @author zhangchu
 */
if (!defined('KO_WEB_BOOTSTRAP')) {
    define('KO_WEB_BOOTSTRAP', 1);
    Ko_Tool_Xhprof::VStart();
    Ko_Web_Event::Trigger('ko.bootstrap', 'before');
    Ko_Web_Config::VLoad();
    Ko_Web_Event::Trigger('ko.config', 'after');
    Ko_Web_Error::VHandle();
    Ko_Web_Rewrite::VHandle();
    Ko_Web_Event::Trigger('ko.dispatch', 'before');
    if (Ko_Web_Route::IDispatch($phpFilename)) {
        Ko_Web_Event::Trigger('ko.dispatch', '404');
    } else {
        if ('' !== $phpFilename) {
            $cwd = getcwd();
            chdir(dirname($phpFilename));
            require_once $phpFilename;
            chdir($cwd);
        }
    }
}
示例#5
0
文件: DB.php 项目: AllenLyu/ko
 private function _iDelete($vHintId, $aKey, $oOption, $bNoCache)
 {
     $oOption = $this->_vBuildOption($oOption, $vHintId, $aKey);
     $iRet = $this->_oGetSqlAgent()->iDelete($this->_sTable, $this->_iGetHintId($vHintId), $oOption);
     if (0 != $iRet && !$bNoCache) {
         $this->_vDelCache($vHintId, $aKey);
         $aKey[$this->_sSplitField] = $vHintId;
         $indexData = $this->aGetIndexValue($aKey);
         Ko_Web_Event::Trigger('ko.db', 'delete', $this->_sTable, $indexData);
     }
     return $iRet;
 }