#0 | Phalcon\Cache\Backend\File->save(341e44d1766e62810b66ed26e5e3f3aea0841712e180, Object(Phalcon\Mvc\Model\Resultset\Simple)) /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/Model/Model.php (159) <?php /** * Model * * @copyright Copyright (c) 2011 - 2014 Aleksandr Torosh (http://wezoom.com.ua) * @author Aleksandr Torosh <webtorua@gmail.com> */ namespace Application\Mvc\Model; use Application\Mvc\Helper\ArrayHelper; use Application\Mvc\Helper\Draft; use Cms\Model\Language; class Model extends \Phalcon\Mvc\Model { const CACHE_LIFETIME = 172800; const TEMPLATE_DEFAULT_NAME = 'default'; public static $lang = 'vi'; // Translation array public static $custom_lang = ''; private static $translateCache = true; public $translations = []; // Language default public $fields = []; // Used to create a sitemap protected $translations_array = []; // Translation cache usage flag /** * Translate. In order to implement a multilingual scheme, you need to copy your model of the following methods: * Start Copy: */ protected $translateModel; // translate //The name of the class associated with the translations, for example = 'Page\Model\Translate\PageTranslate' /** * Installing another language sitemap */ public static function setCustomLang($lang) { self::$custom_lang = $lang; } //End Copy /** * Setting the cache usage of the flag. * It should be set up to call other method's model. * Example: * * ModelName::setTranslateCache(false); // We set the flag. Disabling the cache is necessary when working with models * in the admin * $entries = ModelName::find(); // Retrieve data */ public static function setTranslateCache($value) { self::$translateCache = (bool)$value; } /** * List template from folder views of this module * * @return array */ public static function dropdownTemplate() { $view = \Phalcon\DI::getDefault()->get('view'); $viewDir = $view->getViewsDir(); $templateDir = $viewDir . 'index/_templates' . DIRECTORY_SEPARATOR; $result = []; if (file_exists($templateDir)) { $templates = scandir($templateDir, SCANDIR_SORT_ASCENDING); if (sizeof($templates)) { foreach ($templates as $key => $value) { if (!in_array($value, [".", ".."]) && (!is_dir($viewDir . DIRECTORY_SEPARATOR . $value))) { $result[basename($value, '.volt')] = ucwords(preg_replace('/[^a-zA-Z0-9]/', ' ', basename($value, '.volt'))); } } } } return $result; } /** * @param null $model * * @return bool */ public static function canDelete($model = null) { return true; $auth = \Phalcon\Di::getDefault()->getSession()->get('auth'); return (APPLICATION_ENV == "development" || $auth->login == 'dev'); } /** * @return bool */ public static function canAdd() { return true; $auth = \Phalcon\Di::getDefault()->getSession()->get('auth'); return (APPLICATION_ENV == "development" || $auth->login == 'dev'); } public function initialize() { $this->hasMany("id", $this->translateModel, "foreign_id"); // translate } /** * This method is invoked after removal of all the fields in the Model */ public function afterFetch() { if ($this->translateModel && defined('LANG')) { // If there is an array of translation and is set constant active language or other language if (self::$custom_lang) { self::setLang(self::$custom_lang); } else { self::setLang(LANG); // Set the current language } $this->initTranslationsArray(); // Extract translated from the associated translation table $this->initTranslations(); } } /** * Setting the language */ public static function setLang($lang) { self::$lang = $lang; } /** * Removing the transfer array */ private function initTranslationsArray($lang = null) { $cacheKey = $this->translateCacheKey($lang); if (!$lang) { $lang = self::$lang; } if (!$this->getId()) { return false; } $model = new $this->translateModel(); $query = 'foreign_id = ' . $this->getId() . ' AND lang = "' . $lang . '"'; $params = ['conditions' => $query]; if (self::$translateCache) { $cache = $this->getDi()->get('modelsCache'); $data = $cache->get($cacheKey); if (!$data) { $data = $model->find($params); if ($data) { $r = $cache->save($cacheKey, $data); } } } else { $data = $model->find($params); } $this->translations_array = $data; } public function translateCacheKey($lang = null) { if (!$lang) { $lang = self::$lang; } if (!$this->getId()) { return false; } $query = 'foreign_id = ' . $this->getId() . ' AND lang = "' . $lang . '"'; $key = HOST_HASH . md5($this->getSource() . '_translate ' . $query); return $key; } public function initTranslations() { if (!empty($this->translations_array)) { foreach ($this->translations_array as $translation) { $this->translations[$translation->getKey()] = $translation->getValue(); } } } /** * Cleansing translation cache * The method is called after updating values in the model */ public function afterUpdate() { $this->deleteTranslateCache(); } public function deleteTranslateCache() { if (!$this->getId()) { return false; } $cache = $this->getDi()->get('cache'); $cache->delete($this->translateCacheKey()); } /** * Extracting money transfers on behalf of a variable */ public function getMLVariable($key) { $action = $this->getDI()->get('view')->getActionName(); if (in_array($action, ['edit', 'add']) && isset($_POST[$key])) { return $_POST[$key]; } if (array_key_exists($key, $this->translations)) { $r = $this->translations[$key]; } elseif ($key == 'slug') { if ($this->getId()) { $defaultLang = Language::findFirstByPrimary(1); $modelTranslate = new $this->translateModel(); $query = 'foreign_id = ' . $this->getId() . ' AND lang = "' . $defaultLang->iso . '"'; $params = ['conditions' => $query]; $translates = ArrayHelper::index($modelTranslate->find($params)->toArray(), 'key'); $r = $translates['slug']['value']; } } return $r; } public function setMLVariable($key, $value, $lang = null) { if (!$this->getId()) { return false; } $model = new $this->translateModel(); if (!$lang) { $lang = self::$lang; } $conditions = "foreign_id = :foreign_id: AND lang = :lang: AND key = :key:"; $parameters = [ 'foreign_id' => $this->getId(), 'lang' => $lang, 'key' => $key, ]; $entity = $model->findFirst([ $conditions, 'bind' => $parameters]); if (!$entity) { $entity = new $this->translateModel(); $entity->setForeignId($this->getId()); $entity->setLang($lang); $entity->setKey($key); } $entity->setValue($value); $entity->save(); } /** * @return string */ public function getNameOfClass() { return get_called_class(); } public function indexBy($arrData, $column = 'id') { $result = []; foreach ($arrData as $item) { $result[$item[$column]] = $item; } return $result; } /** * @return bool */ public function canEdit() { return true; } public function saveDraft($data = [], $category = '') { $draftFileName = $this->getDraftFileName($data, $category); Draft::getInstance()->save($draftFileName, $data); return $data; } /** * @param $data * @param $category * * @return array */ private function getDraftFileName($data, $category) { $auth = \Phalcon\Di::getDefault()->getSession()->get('auth'); $isNew = !isset($data['id']); if ($isNew) { $draftFileName = "draft_new_{$auth->login}_{$this->getSource()}"; if ($category != '') { $draftFileName .= "_{$category}"; } $draftFileName .= '_' . LANG; } else { $draftFileName = "draft_edit_{$auth->login}_{$this->getSource()}_{$data['id']}_" . LANG; } return $draftFileName; } public function getDraft($category = '') { $draftFileName = $this->getDraftFileName([], $category); if ($this->getId()) { // is Editing } return $data = Draft::getInstance()->get($draftFileName); } /** * @return mixed */ public function getMetaImage() { $image = $this->getDI()->get('helper')->image([ 'id' => $this->getId(), 'type' => $this->getImgFolder("thumbnail_photo"), 'width' => 722, 'height' => 361, 'strategy' => 'a', 'stretch' => 'false', 'widthHeight' => 'false', 'hash' => true, ]); if ($image->isExists()) { return $imgPath = $image->cachedRelPath(); } return ''; } public function getImgFolder($attr = null) { if ($attr) { return $this->getSource() . '_' . $attr; } return $this->getSource(); } } |
#1 | Application\Mvc\Model\Model->initTranslationsArray() /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/Model/Model.php (122) <?php /** * Model * * @copyright Copyright (c) 2011 - 2014 Aleksandr Torosh (http://wezoom.com.ua) * @author Aleksandr Torosh <webtorua@gmail.com> */ namespace Application\Mvc\Model; use Application\Mvc\Helper\ArrayHelper; use Application\Mvc\Helper\Draft; use Cms\Model\Language; class Model extends \Phalcon\Mvc\Model { const CACHE_LIFETIME = 172800; const TEMPLATE_DEFAULT_NAME = 'default'; public static $lang = 'vi'; // Translation array public static $custom_lang = ''; private static $translateCache = true; public $translations = []; // Language default public $fields = []; // Used to create a sitemap protected $translations_array = []; // Translation cache usage flag /** * Translate. In order to implement a multilingual scheme, you need to copy your model of the following methods: * Start Copy: */ protected $translateModel; // translate //The name of the class associated with the translations, for example = 'Page\Model\Translate\PageTranslate' /** * Installing another language sitemap */ public static function setCustomLang($lang) { self::$custom_lang = $lang; } //End Copy /** * Setting the cache usage of the flag. * It should be set up to call other method's model. * Example: * * ModelName::setTranslateCache(false); // We set the flag. Disabling the cache is necessary when working with models * in the admin * $entries = ModelName::find(); // Retrieve data */ public static function setTranslateCache($value) { self::$translateCache = (bool)$value; } /** * List template from folder views of this module * * @return array */ public static function dropdownTemplate() { $view = \Phalcon\DI::getDefault()->get('view'); $viewDir = $view->getViewsDir(); $templateDir = $viewDir . 'index/_templates' . DIRECTORY_SEPARATOR; $result = []; if (file_exists($templateDir)) { $templates = scandir($templateDir, SCANDIR_SORT_ASCENDING); if (sizeof($templates)) { foreach ($templates as $key => $value) { if (!in_array($value, [".", ".."]) && (!is_dir($viewDir . DIRECTORY_SEPARATOR . $value))) { $result[basename($value, '.volt')] = ucwords(preg_replace('/[^a-zA-Z0-9]/', ' ', basename($value, '.volt'))); } } } } return $result; } /** * @param null $model * * @return bool */ public static function canDelete($model = null) { return true; $auth = \Phalcon\Di::getDefault()->getSession()->get('auth'); return (APPLICATION_ENV == "development" || $auth->login == 'dev'); } /** * @return bool */ public static function canAdd() { return true; $auth = \Phalcon\Di::getDefault()->getSession()->get('auth'); return (APPLICATION_ENV == "development" || $auth->login == 'dev'); } public function initialize() { $this->hasMany("id", $this->translateModel, "foreign_id"); // translate } /** * This method is invoked after removal of all the fields in the Model */ public function afterFetch() { if ($this->translateModel && defined('LANG')) { // If there is an array of translation and is set constant active language or other language if (self::$custom_lang) { self::setLang(self::$custom_lang); } else { self::setLang(LANG); // Set the current language } $this->initTranslationsArray(); // Extract translated from the associated translation table $this->initTranslations(); } } /** * Setting the language */ public static function setLang($lang) { self::$lang = $lang; } /** * Removing the transfer array */ private function initTranslationsArray($lang = null) { $cacheKey = $this->translateCacheKey($lang); if (!$lang) { $lang = self::$lang; } if (!$this->getId()) { return false; } $model = new $this->translateModel(); $query = 'foreign_id = ' . $this->getId() . ' AND lang = "' . $lang . '"'; $params = ['conditions' => $query]; if (self::$translateCache) { $cache = $this->getDi()->get('modelsCache'); $data = $cache->get($cacheKey); if (!$data) { $data = $model->find($params); if ($data) { $r = $cache->save($cacheKey, $data); } } } else { $data = $model->find($params); } $this->translations_array = $data; } public function translateCacheKey($lang = null) { if (!$lang) { $lang = self::$lang; } if (!$this->getId()) { return false; } $query = 'foreign_id = ' . $this->getId() . ' AND lang = "' . $lang . '"'; $key = HOST_HASH . md5($this->getSource() . '_translate ' . $query); return $key; } public function initTranslations() { if (!empty($this->translations_array)) { foreach ($this->translations_array as $translation) { $this->translations[$translation->getKey()] = $translation->getValue(); } } } /** * Cleansing translation cache * The method is called after updating values in the model */ public function afterUpdate() { $this->deleteTranslateCache(); } public function deleteTranslateCache() { if (!$this->getId()) { return false; } $cache = $this->getDi()->get('cache'); $cache->delete($this->translateCacheKey()); } /** * Extracting money transfers on behalf of a variable */ public function getMLVariable($key) { $action = $this->getDI()->get('view')->getActionName(); if (in_array($action, ['edit', 'add']) && isset($_POST[$key])) { return $_POST[$key]; } if (array_key_exists($key, $this->translations)) { $r = $this->translations[$key]; } elseif ($key == 'slug') { if ($this->getId()) { $defaultLang = Language::findFirstByPrimary(1); $modelTranslate = new $this->translateModel(); $query = 'foreign_id = ' . $this->getId() . ' AND lang = "' . $defaultLang->iso . '"'; $params = ['conditions' => $query]; $translates = ArrayHelper::index($modelTranslate->find($params)->toArray(), 'key'); $r = $translates['slug']['value']; } } return $r; } public function setMLVariable($key, $value, $lang = null) { if (!$this->getId()) { return false; } $model = new $this->translateModel(); if (!$lang) { $lang = self::$lang; } $conditions = "foreign_id = :foreign_id: AND lang = :lang: AND key = :key:"; $parameters = [ 'foreign_id' => $this->getId(), 'lang' => $lang, 'key' => $key, ]; $entity = $model->findFirst([ $conditions, 'bind' => $parameters]); if (!$entity) { $entity = new $this->translateModel(); $entity->setForeignId($this->getId()); $entity->setLang($lang); $entity->setKey($key); } $entity->setValue($value); $entity->save(); } /** * @return string */ public function getNameOfClass() { return get_called_class(); } public function indexBy($arrData, $column = 'id') { $result = []; foreach ($arrData as $item) { $result[$item[$column]] = $item; } return $result; } /** * @return bool */ public function canEdit() { return true; } public function saveDraft($data = [], $category = '') { $draftFileName = $this->getDraftFileName($data, $category); Draft::getInstance()->save($draftFileName, $data); return $data; } /** * @param $data * @param $category * * @return array */ private function getDraftFileName($data, $category) { $auth = \Phalcon\Di::getDefault()->getSession()->get('auth'); $isNew = !isset($data['id']); if ($isNew) { $draftFileName = "draft_new_{$auth->login}_{$this->getSource()}"; if ($category != '') { $draftFileName .= "_{$category}"; } $draftFileName .= '_' . LANG; } else { $draftFileName = "draft_edit_{$auth->login}_{$this->getSource()}_{$data['id']}_" . LANG; } return $draftFileName; } public function getDraft($category = '') { $draftFileName = $this->getDraftFileName([], $category); if ($this->getId()) { // is Editing } return $data = Draft::getInstance()->get($draftFileName); } /** * @return mixed */ public function getMetaImage() { $image = $this->getDI()->get('helper')->image([ 'id' => $this->getId(), 'type' => $this->getImgFolder("thumbnail_photo"), 'width' => 722, 'height' => 361, 'strategy' => 'a', 'stretch' => 'false', 'widthHeight' => 'false', 'hash' => true, ]); if ($image->isExists()) { return $imgPath = $image->cachedRelPath(); } return ''; } public function getImgFolder($attr = null) { if ($attr) { return $this->getSource() . '_' . $attr; } return $this->getSource(); } } |
#2 | Application\Mvc\Model\Model->afterFetch() |
#3 | Phalcon\Mvc\Model::cloneResultMap(Object(Publication\Model\Publication: [translateModel] => Publication\Model\Translate\PublicationTranslate, [translations] => Array(), [fields] => Array()), Array(31), null, 0, false) |
#4 | Phalcon\Mvc\Model\Resultset\Simple->current() |
#5 | Phalcon\Paginator\Adapter\Model->getPaginate() /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Publication/Controller/IndexController.php (63) <?php namespace Publication\Controller; use Application\Mvc\Controller; use Cms\Model\Language; use Phalcon\Text; use Publication\Model\Publication; use Publication\Model\Type; use Publication\Utils\Utils; class IndexController extends Controller { protected $category; protected $category_name; protected $categories; // array string of current category in full path Ex: ['event', 'nightlife'] => /event/nightlife public function initialize() { $this->view->locale = Language::findCachedByIso(LANG); $type = $this->dispatcher->getParam('type', 'string', false); $this->categories = Utils::parseType($type); $this->category_name = $this->categories[0]; $this->category = Type::findCachedBySlug($this->category_name); $type = end(Utils::parseType($type)); $typeModel = \Publication\Model\Type::findCachedBySlug($type); if (!$typeModel) { throw new \Exception("Publication hasn't type = '$type'"); } $format = $typeModel->getFormat() == Publication::TEMPLATE_DEFAULT_NAME ? $this->category->getFormat() : $typeModel->getFormat(); $typeModel->setFormat($format); // Force set template of sub-category to parent's template $this->view->type = $typeModel; // This is the current category, can be a category or a sub-category $this->view->active_menu = $typeModel->getSlug(); $this->helper->activeMenu()->setActive($typeModel->getSlug()); } public function indexAction() { $typeLimit = ($this->view->type->getLimit()) ? $this->view->type->getLimit() : $this->registry['cms']['PAGE_LIMIT']; $limit = $this->request->getQuery('limit', 'string', $typeLimit); if ($limit != 'all') { $paginatorLimit = (int)$limit; } else { $paginatorLimit = 9999; } $page_num = $this->request->getQuery('page', 'int', 1); $publications = Publication::find([ "type_id = {$this->view->type->getId()}", "order" => "date DESC", ]); $paginator = new \Phalcon\Paginator\Adapter\Model([ "data" => $publications, "limit" => $paginatorLimit, "page" => $page_num, ]); $this->view->paginate = $paginator->getPaginate(); $this->helper->title()->append($this->view->type->getHeadTitle()); $this->setPageMeta($this->view->type, 'article'); } public function publicationAction() { $this->initDetailLayouts(); $slug = $this->dispatcher->getParam('slug', 'string'); $type = ucwords($this->getDI()->get('dispatcher')->getParam('type', 'string', false)); $type = Text::camelize(Utils::parseType($type)[0]); $model = "Publication\Model\\$type"; if (!class_exists($model)) { $model = "Publication\Model\Publication"; } $publication = $model::findCachedBySlug($slug, $type); if (!$publication) { throw new Exception("Publication '$slug.html' not found"); } $this->view->category = $this->category; $this->view->publication = $publication; $this->view->slider = $publication->getPSlider(); $this->helper->title()->append($publication->getMetaTitle()); $this->setPageMeta($publication); $this->setPageMeta($publication, 'article'); $publication->setRead($publication->getRead() + 1); // Increase read 1 $publication->save(); } private function initDetailLayouts() { switch ($this->category_name) { case Publication::TYPE_EVENT: case Publication::TYPE_NEWS: case Publication::TYPE_COURSE: $this->view->setLayout('article-2'); break; default: $this->view->setLayout('article'); break; } $view_file = $this->view->getViewsDir() . "index/$this->category_name/index.volt"; if (file_exists($view_file)) { $view = "index/$this->category_name/index"; $this->view->pick($view); } return; } } |
#6 | Publication\Controller\IndexController->indexAction(tin-tuc) |
#7 | Phalcon\Dispatcher->dispatch() /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/Bootstrap.php (400) <?php namespace YonaCMS; use Admin\Model\AdminUser; /** * Bootstrap * * @copyright Copyright (c) 2011 - 2014 Aleksandr Torosh (http://wezoom.com.ua) * @author Aleksandr Torosh <webtorua@gmail.com> */ class Bootstrap { public function run() { $di = new \Phalcon\DI\FactoryDefault(); // Config require_once APPLICATION_PATH . '/modules/Cms/Config.php'; $config = \Cms\Config::get(); $di->set('config', $config); // Registry $registry = new \Phalcon\Registry(); $di->set('registry', $registry); // Loader $loader = new \Phalcon\Loader(); $loader->registerNamespaces($config->loader->namespaces->toArray()); $loader->registerDirs([APPLICATION_PATH . "/plugins/"]); $loader->register(); // Database $db = new \Phalcon\Db\Adapter\Pdo\Mysql([ "host" => $config->database->host, "username" => $config->database->username, "password" => $config->database->password, "dbname" => $config->database->dbname, "charset" => $config->database->charset, ]); $di->set('db', $db); // View $this->initView($di); // URL $url = new \Phalcon\Mvc\Url(); $url->setBasePath($config->base_path); $url->setBaseUri($config->base_path); $di->set('url', $url); // Cache $this->initCache($di); // CMS $cmsModel = new \Cms\Model\Configuration(); $registry->cms = $cmsModel->getConfig(); // Отправляем в Registry // Application $application = new \Phalcon\Mvc\Application(); $application->registerModules($config->modules->toArray()); // Events Manager, Dispatcher $this->initEventManager($di); // Session $session = new \Phalcon\Session\Adapter\Files(); $session->start(); $di->set('session', $session); $acl = new \Application\Acl\DefaultAcl(); $di->set('acl', $acl); // JS Assets $this->initAssetsManager($di); // Flash helper $flash = new \Phalcon\Flash\Session([ 'error' => 'alert alert-danger', 'success' => 'alert alert-success', 'notice' => 'alert alert-info', 'warning' => 'alert alert-warning', ]); $di->set('flash', $flash); $di->set('helper', new \Application\Mvc\Helper()); /** * Custom DI */ $di->set('email', function () use ($config) { $sendgrid_config = $config['sendgrid']; $key = $sendgrid_config['key']; $settings = $sendgrid_config['settings']; return new \Application\Mvc\EmailHelper($key, $settings); }); /** * Guzzle */ $di->set('guzzle', function () use ($config) { return new \GuzzleHttp\Client(); }); // FB $di->set('fb', function () use ($config, $registry) { return new \Facebook\Facebook([ 'app_id' => $registry->cms['FB_APP_ID'], 'app_secret' => $registry->cms['FB_APP_SECRET'], 'default_graph_version' => 'v2.11', 'default_access_token' => $registry->cms['FB_APP_ACCESS_TOKEN'], // optional ]); }); // Routing $this->initRouting($application, $di); $application->setDI($di); // Main dispatching process $this->dispatch($di); } private function initRouting($application, $di) { $router = new \Application\Mvc\Router\DefaultRouter(); $router->setDi($di); foreach ($application->getModules() as $module) { $routesClassName = str_replace('Module', 'Routes', $module['className']); if (class_exists($routesClassName)) { $routesClass = new $routesClassName(); $router = $routesClass->init($router); } $initClassName = str_replace('Module', 'Init', $module['className']); if (class_exists($initClassName)) { new $initClassName(); } } $di->set('router', $router); } private function initAssetsManager($di) { $config = $di->get('config'); $isProductionEnv = APPLICATION_ENV == "production"; $locator = $isProductionEnv ? ROOT . '/' : '/'; $jsMin = $isProductionEnv ? new \Phalcon\Assets\Filters\Jsmin() : new \Phalcon\Assets\Filters\None(); $cssMin = $isProductionEnv ? new \Phalcon\Assets\Filters\Cssmin() : new \Phalcon\Assets\Filters\None(); $assetsManager = new \Application\Assets\Manager(); if ($isProductionEnv) { $js_collection = $assetsManager->collection('js') ->setLocal(true) ->addFilter($jsMin) ->setTargetPath(ROOT . '/assets/main.js') ->setTargetUri('assets/main.js') ->join(true); } else { $js_collection = $assetsManager->collection('js')->setLocal(true); } if ($config->assets->js) { foreach ($config->assets->js as $js) { $js_collection->addJs($locator . $js); } } if ($isProductionEnv) { $css_collection = $assetsManager->collection('css') ->setLocal(true) ->addFilter($cssMin) ->setTargetPath(ROOT . '/assets/main.min.css') ->setTargetUri('/assets/main.min.css') ->join(true); } else { $css_collection = $assetsManager->collection('css')->setLocal(true); } if ($config->assets->css) { foreach ($config->assets->css as $css) { $css_collection->addCss($locator . $css); } } // Admin JS Assets $assetsManager->collection('modules-admin-js') ->setLocal(true) ->addFilter(new \Phalcon\Assets\Filters\Jsmin()) ->setTargetPath(ROOT . '/assets/modules-admin.js') ->setTargetUri('assets/modules-admin.js') ->join(true); // Admin LESS Assets $assetsManager->collection('modules-admin-less') ->setLocal(true) ->addFilter(new \Application\Assets\Filter\Less()) ->setTargetPath(ROOT . '/assets/modules-admin.less') ->setTargetUri('assets/modules-admin.less') ->join(true) ->addCss(APPLICATION_PATH . '/modules/Admin/assets/admin.less'); $di->set('assets', $assetsManager); $admin_js_first_load_collection = $assetsManager->collection('first_load_js')->join($isProductionEnv); if ($config->assets->first_load_js) { foreach ($config->assets->first_load_js as $js) { $admin_js_first_load_collection->addJs('/' . $js); } } $admin_js_collection = $assetsManager->collection('admin_js')->join($isProductionEnv); if ($config->assets->admin_js) { foreach ($config->assets->admin_js as $js) { $admin_js_collection->addJs('/' . $js); } } $admin_css_collection = $assetsManager->collection('admin_css')->setLocal(true); if ($config->assets->admin_css) { foreach ($config->assets->admin_css as $css) { $admin_css_collection->addCss('/' . $css); } } } private function initEventManager($di) { $eventsManager = new \Phalcon\Events\Manager(); $dispatcher = new \Phalcon\Mvc\Dispatcher(); $eventsManager->attach("dispatch:beforeDispatchLoop", function ($event, $dispatcher) use ($di) { new \YonaCMS\Plugin\CheckPoint($di->get('request')); new \YonaCMS\Plugin\Localization($dispatcher); new \YonaCMS\Plugin\AdminLocalization($di->get('config')); new \YonaCMS\Plugin\Acl($di->get('acl'), $dispatcher, $di->get('view')); new \YonaCMS\Plugin\MobileDetect($di->get('session'), $di->get('view'), $di->get('request')); $auth = $di->get('session')->get('auth'); if ($auth) { $role = AdminUser::getRoleById($auth->id); $di->get('view')->user_role = $role; } }); $eventsManager->attach("dispatch:afterDispatchLoop", function ($event, $dispatcher) use ($di) { new \Seo\Plugin\SeoManager($dispatcher, $di->get('request'), $di->get('router'), $di->get('view')); new \YonaCMS\Plugin\Title($di); }); // Profiler $registry = $di->get('registry'); if ($registry->cms['PROFILER']) { $profiler = new \Phalcon\Db\Profiler(); $di->set('profiler', $profiler); $eventsManager->attach('db', function ($event, $db) use ($profiler) { if ($event->getType() == 'beforeQuery') { $profiler->startProfile($db->getSQLStatement()); } if ($event->getType() == 'afterQuery') { $profiler->stopProfile(); } }); } $db = $di->get('db'); $db->setEventsManager($eventsManager); $dispatcher->setEventsManager($eventsManager); $di->set('dispatcher', $dispatcher); } private function initView($di) { $view = new \Phalcon\Mvc\View(); $theme = $di->get('config')['theme']; if ($theme) { $themePath = __DIR__ . '/themes/' . $di->get('config')['theme'] . '/'; if (file_exists($themePath)) { define('MAIN_VIEW_PATH', '../../../themes/' . $theme . '/'); } } else { define('MAIN_VIEW_PATH', '../../../views/'); } $view->setMainView(MAIN_VIEW_PATH . 'main'); $view->setLayoutsDir(MAIN_VIEW_PATH . '/layouts/'); $view->setLayout('main'); $view->setPartialsDir(MAIN_VIEW_PATH . '/partials/'); // Volt $volt = new \Application\Mvc\View\Engine\Volt($view, $di); $volt->setOptions(['compiledPath' => APPLICATION_PATH . '/../data/cache/volt/']); $volt->initCompiler(); $phtml = new \Phalcon\Mvc\View\Engine\Php($view, $di); $viewEngines = [ ".volt" => $volt, ".phtml" => $phtml, ]; $view->registerEngines($viewEngines); $eventsManager = new \Phalcon\Events\Manager(); $eventsManager->attach( "view:afterRender", new \Application\Mvc\View\Event\ShortCodeParser($view) ); $view->setEventsManager($eventsManager); $ajax = $di->get('request')->getQuery('_ajax'); if ($ajax) { $view->setRenderLevel(\Phalcon\Mvc\View::LEVEL_LAYOUT); } $di->set('view', $view); return $view; } private function initCache($di) { $config = $di->get('config'); $cacheFrontend = new \Phalcon\Cache\Frontend\Data([ "lifetime" => 172800, "prefix" => HOST_HASH, ]); $cache = null; switch ($config->cache) { case 'file': $cache = new \Phalcon\Cache\Backend\File($cacheFrontend, [ "cacheDir" => APPLICATION_PATH . "/../data/cache/backend/", ]); break; case 'memcache': $cache = new \Phalcon\Cache\Backend\Memcache( $cacheFrontend, [ "host" => $config->memcache->host, "port" => $config->memcache->port, ]); break; } $di->set('cache', $cache, true); $di->set('modelsCache', $cache, true); \Application\Widget\Proxy::$cache = $cache; // Modules Widget System $modelsMetadata = new \Phalcon\Mvc\Model\Metadata\Memory(); $di->set('modelsMetadata', $modelsMetadata); } private function dispatch($di) { $router = $di['router']; $router->handle(); $view = $di['view']; $dispatcher = $di['dispatcher']; //var_dump($router->getModuleName()); //var_dump($router->getControllerName()); //var_dump($router->getActionName()); //die; $response = $di['response']; $dispatcher->setModuleName($router->getModuleName()); $dispatcher->setControllerName($router->getControllerName()); $dispatcher->setActionName($router->getActionName()); $dispatcher->setParams($router->getParams()); $moduleName = \Application\Utils\ModuleName::camelize($router->getModuleName()); $ModuleClassName = $moduleName . '\Module'; if (class_exists($ModuleClassName)) { $module = new $ModuleClassName; $module->registerAutoloaders(); $module->registerServices($di); $theme = $di->get('config')['theme']; if ($theme) { $themePath = '/themes/' . $di->get('config')['theme'] . '/' . $moduleName . '/'; if (file_exists(__DIR__ . $themePath)) { $view->setViewsDir(__DIR__ . $themePath); } } } //echo(time());die; $view->start(); $registry = $di['registry']; if ($registry->cms['DEBUG_MODE']) { $debug = new \Phalcon\Debug(); $debug->listen(); $dispatcher->dispatch(); } else { try { $dispatcher->dispatch(); } catch (\Phalcon\Exception $e) { // Errors catching $view->setViewsDir(__DIR__ . '/modules/Index/views/'); $view->setPartialsDir(''); $view->e = $e; if ($e instanceof \Phalcon\Mvc\Dispatcher\Exception) { $response->setHeader(404, 'Not Found'); $view->partial('error/error404'); } else { $response->setHeader(503, 'Service Unavailable'); $view->partial('error/error503'); } $response->sendHeaders(); echo $response->getContent(); return; } } //die; $view->render( $dispatcher->getControllerName(), $dispatcher->getActionName(), $dispatcher->getParams() ); $view->finish(); $response = $di['response']; // AJAX $request = $di['request']; $_ajax = $request->getQuery('_ajax'); if ($_ajax) { $contents = $view->getContent(); $return = new \stdClass(); $return->html = $contents; $return->title = $di->get('helper')->title()->get(); $return->success = true; if ($view->bodyClass) { $return->bodyClass = $view->bodyClass; } $headers = $response->getHeaders()->toArray(); if (isset($headers[404]) || isset($headers[503])) { $return->success = false; } $response->setContentType('application/json', 'UTF-8'); $response->setContent(json_encode($return)); } else { $response->setContent($view->getContent()); } $response->sendHeaders(); echo $response->getContent(); } } |
#8 | YonaCMS\Bootstrap->dispatch(Object(Phalcon\Di\FactoryDefault)) /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/Bootstrap.php (124) <?php namespace YonaCMS; use Admin\Model\AdminUser; /** * Bootstrap * * @copyright Copyright (c) 2011 - 2014 Aleksandr Torosh (http://wezoom.com.ua) * @author Aleksandr Torosh <webtorua@gmail.com> */ class Bootstrap { public function run() { $di = new \Phalcon\DI\FactoryDefault(); // Config require_once APPLICATION_PATH . '/modules/Cms/Config.php'; $config = \Cms\Config::get(); $di->set('config', $config); // Registry $registry = new \Phalcon\Registry(); $di->set('registry', $registry); // Loader $loader = new \Phalcon\Loader(); $loader->registerNamespaces($config->loader->namespaces->toArray()); $loader->registerDirs([APPLICATION_PATH . "/plugins/"]); $loader->register(); // Database $db = new \Phalcon\Db\Adapter\Pdo\Mysql([ "host" => $config->database->host, "username" => $config->database->username, "password" => $config->database->password, "dbname" => $config->database->dbname, "charset" => $config->database->charset, ]); $di->set('db', $db); // View $this->initView($di); // URL $url = new \Phalcon\Mvc\Url(); $url->setBasePath($config->base_path); $url->setBaseUri($config->base_path); $di->set('url', $url); // Cache $this->initCache($di); // CMS $cmsModel = new \Cms\Model\Configuration(); $registry->cms = $cmsModel->getConfig(); // Отправляем в Registry // Application $application = new \Phalcon\Mvc\Application(); $application->registerModules($config->modules->toArray()); // Events Manager, Dispatcher $this->initEventManager($di); // Session $session = new \Phalcon\Session\Adapter\Files(); $session->start(); $di->set('session', $session); $acl = new \Application\Acl\DefaultAcl(); $di->set('acl', $acl); // JS Assets $this->initAssetsManager($di); // Flash helper $flash = new \Phalcon\Flash\Session([ 'error' => 'alert alert-danger', 'success' => 'alert alert-success', 'notice' => 'alert alert-info', 'warning' => 'alert alert-warning', ]); $di->set('flash', $flash); $di->set('helper', new \Application\Mvc\Helper()); /** * Custom DI */ $di->set('email', function () use ($config) { $sendgrid_config = $config['sendgrid']; $key = $sendgrid_config['key']; $settings = $sendgrid_config['settings']; return new \Application\Mvc\EmailHelper($key, $settings); }); /** * Guzzle */ $di->set('guzzle', function () use ($config) { return new \GuzzleHttp\Client(); }); // FB $di->set('fb', function () use ($config, $registry) { return new \Facebook\Facebook([ 'app_id' => $registry->cms['FB_APP_ID'], 'app_secret' => $registry->cms['FB_APP_SECRET'], 'default_graph_version' => 'v2.11', 'default_access_token' => $registry->cms['FB_APP_ACCESS_TOKEN'], // optional ]); }); // Routing $this->initRouting($application, $di); $application->setDI($di); // Main dispatching process $this->dispatch($di); } private function initRouting($application, $di) { $router = new \Application\Mvc\Router\DefaultRouter(); $router->setDi($di); foreach ($application->getModules() as $module) { $routesClassName = str_replace('Module', 'Routes', $module['className']); if (class_exists($routesClassName)) { $routesClass = new $routesClassName(); $router = $routesClass->init($router); } $initClassName = str_replace('Module', 'Init', $module['className']); if (class_exists($initClassName)) { new $initClassName(); } } $di->set('router', $router); } private function initAssetsManager($di) { $config = $di->get('config'); $isProductionEnv = APPLICATION_ENV == "production"; $locator = $isProductionEnv ? ROOT . '/' : '/'; $jsMin = $isProductionEnv ? new \Phalcon\Assets\Filters\Jsmin() : new \Phalcon\Assets\Filters\None(); $cssMin = $isProductionEnv ? new \Phalcon\Assets\Filters\Cssmin() : new \Phalcon\Assets\Filters\None(); $assetsManager = new \Application\Assets\Manager(); if ($isProductionEnv) { $js_collection = $assetsManager->collection('js') ->setLocal(true) ->addFilter($jsMin) ->setTargetPath(ROOT . '/assets/main.js') ->setTargetUri('assets/main.js') ->join(true); } else { $js_collection = $assetsManager->collection('js')->setLocal(true); } if ($config->assets->js) { foreach ($config->assets->js as $js) { $js_collection->addJs($locator . $js); } } if ($isProductionEnv) { $css_collection = $assetsManager->collection('css') ->setLocal(true) ->addFilter($cssMin) ->setTargetPath(ROOT . '/assets/main.min.css') ->setTargetUri('/assets/main.min.css') ->join(true); } else { $css_collection = $assetsManager->collection('css')->setLocal(true); } if ($config->assets->css) { foreach ($config->assets->css as $css) { $css_collection->addCss($locator . $css); } } // Admin JS Assets $assetsManager->collection('modules-admin-js') ->setLocal(true) ->addFilter(new \Phalcon\Assets\Filters\Jsmin()) ->setTargetPath(ROOT . '/assets/modules-admin.js') ->setTargetUri('assets/modules-admin.js') ->join(true); // Admin LESS Assets $assetsManager->collection('modules-admin-less') ->setLocal(true) ->addFilter(new \Application\Assets\Filter\Less()) ->setTargetPath(ROOT . '/assets/modules-admin.less') ->setTargetUri('assets/modules-admin.less') ->join(true) ->addCss(APPLICATION_PATH . '/modules/Admin/assets/admin.less'); $di->set('assets', $assetsManager); $admin_js_first_load_collection = $assetsManager->collection('first_load_js')->join($isProductionEnv); if ($config->assets->first_load_js) { foreach ($config->assets->first_load_js as $js) { $admin_js_first_load_collection->addJs('/' . $js); } } $admin_js_collection = $assetsManager->collection('admin_js')->join($isProductionEnv); if ($config->assets->admin_js) { foreach ($config->assets->admin_js as $js) { $admin_js_collection->addJs('/' . $js); } } $admin_css_collection = $assetsManager->collection('admin_css')->setLocal(true); if ($config->assets->admin_css) { foreach ($config->assets->admin_css as $css) { $admin_css_collection->addCss('/' . $css); } } } private function initEventManager($di) { $eventsManager = new \Phalcon\Events\Manager(); $dispatcher = new \Phalcon\Mvc\Dispatcher(); $eventsManager->attach("dispatch:beforeDispatchLoop", function ($event, $dispatcher) use ($di) { new \YonaCMS\Plugin\CheckPoint($di->get('request')); new \YonaCMS\Plugin\Localization($dispatcher); new \YonaCMS\Plugin\AdminLocalization($di->get('config')); new \YonaCMS\Plugin\Acl($di->get('acl'), $dispatcher, $di->get('view')); new \YonaCMS\Plugin\MobileDetect($di->get('session'), $di->get('view'), $di->get('request')); $auth = $di->get('session')->get('auth'); if ($auth) { $role = AdminUser::getRoleById($auth->id); $di->get('view')->user_role = $role; } }); $eventsManager->attach("dispatch:afterDispatchLoop", function ($event, $dispatcher) use ($di) { new \Seo\Plugin\SeoManager($dispatcher, $di->get('request'), $di->get('router'), $di->get('view')); new \YonaCMS\Plugin\Title($di); }); // Profiler $registry = $di->get('registry'); if ($registry->cms['PROFILER']) { $profiler = new \Phalcon\Db\Profiler(); $di->set('profiler', $profiler); $eventsManager->attach('db', function ($event, $db) use ($profiler) { if ($event->getType() == 'beforeQuery') { $profiler->startProfile($db->getSQLStatement()); } if ($event->getType() == 'afterQuery') { $profiler->stopProfile(); } }); } $db = $di->get('db'); $db->setEventsManager($eventsManager); $dispatcher->setEventsManager($eventsManager); $di->set('dispatcher', $dispatcher); } private function initView($di) { $view = new \Phalcon\Mvc\View(); $theme = $di->get('config')['theme']; if ($theme) { $themePath = __DIR__ . '/themes/' . $di->get('config')['theme'] . '/'; if (file_exists($themePath)) { define('MAIN_VIEW_PATH', '../../../themes/' . $theme . '/'); } } else { define('MAIN_VIEW_PATH', '../../../views/'); } $view->setMainView(MAIN_VIEW_PATH . 'main'); $view->setLayoutsDir(MAIN_VIEW_PATH . '/layouts/'); $view->setLayout('main'); $view->setPartialsDir(MAIN_VIEW_PATH . '/partials/'); // Volt $volt = new \Application\Mvc\View\Engine\Volt($view, $di); $volt->setOptions(['compiledPath' => APPLICATION_PATH . '/../data/cache/volt/']); $volt->initCompiler(); $phtml = new \Phalcon\Mvc\View\Engine\Php($view, $di); $viewEngines = [ ".volt" => $volt, ".phtml" => $phtml, ]; $view->registerEngines($viewEngines); $eventsManager = new \Phalcon\Events\Manager(); $eventsManager->attach( "view:afterRender", new \Application\Mvc\View\Event\ShortCodeParser($view) ); $view->setEventsManager($eventsManager); $ajax = $di->get('request')->getQuery('_ajax'); if ($ajax) { $view->setRenderLevel(\Phalcon\Mvc\View::LEVEL_LAYOUT); } $di->set('view', $view); return $view; } private function initCache($di) { $config = $di->get('config'); $cacheFrontend = new \Phalcon\Cache\Frontend\Data([ "lifetime" => 172800, "prefix" => HOST_HASH, ]); $cache = null; switch ($config->cache) { case 'file': $cache = new \Phalcon\Cache\Backend\File($cacheFrontend, [ "cacheDir" => APPLICATION_PATH . "/../data/cache/backend/", ]); break; case 'memcache': $cache = new \Phalcon\Cache\Backend\Memcache( $cacheFrontend, [ "host" => $config->memcache->host, "port" => $config->memcache->port, ]); break; } $di->set('cache', $cache, true); $di->set('modelsCache', $cache, true); \Application\Widget\Proxy::$cache = $cache; // Modules Widget System $modelsMetadata = new \Phalcon\Mvc\Model\Metadata\Memory(); $di->set('modelsMetadata', $modelsMetadata); } private function dispatch($di) { $router = $di['router']; $router->handle(); $view = $di['view']; $dispatcher = $di['dispatcher']; //var_dump($router->getModuleName()); //var_dump($router->getControllerName()); //var_dump($router->getActionName()); //die; $response = $di['response']; $dispatcher->setModuleName($router->getModuleName()); $dispatcher->setControllerName($router->getControllerName()); $dispatcher->setActionName($router->getActionName()); $dispatcher->setParams($router->getParams()); $moduleName = \Application\Utils\ModuleName::camelize($router->getModuleName()); $ModuleClassName = $moduleName . '\Module'; if (class_exists($ModuleClassName)) { $module = new $ModuleClassName; $module->registerAutoloaders(); $module->registerServices($di); $theme = $di->get('config')['theme']; if ($theme) { $themePath = '/themes/' . $di->get('config')['theme'] . '/' . $moduleName . '/'; if (file_exists(__DIR__ . $themePath)) { $view->setViewsDir(__DIR__ . $themePath); } } } //echo(time());die; $view->start(); $registry = $di['registry']; if ($registry->cms['DEBUG_MODE']) { $debug = new \Phalcon\Debug(); $debug->listen(); $dispatcher->dispatch(); } else { try { $dispatcher->dispatch(); } catch (\Phalcon\Exception $e) { // Errors catching $view->setViewsDir(__DIR__ . '/modules/Index/views/'); $view->setPartialsDir(''); $view->e = $e; if ($e instanceof \Phalcon\Mvc\Dispatcher\Exception) { $response->setHeader(404, 'Not Found'); $view->partial('error/error404'); } else { $response->setHeader(503, 'Service Unavailable'); $view->partial('error/error503'); } $response->sendHeaders(); echo $response->getContent(); return; } } //die; $view->render( $dispatcher->getControllerName(), $dispatcher->getActionName(), $dispatcher->getParams() ); $view->finish(); $response = $di['response']; // AJAX $request = $di['request']; $_ajax = $request->getQuery('_ajax'); if ($_ajax) { $contents = $view->getContent(); $return = new \stdClass(); $return->html = $contents; $return->title = $di->get('helper')->title()->get(); $return->success = true; if ($view->bodyClass) { $return->bodyClass = $view->bodyClass; } $headers = $response->getHeaders()->toArray(); if (isset($headers[404]) || isset($headers[503])) { $return->success = false; } $response->setContentType('application/json', 'UTF-8'); $response->setContent(json_encode($return)); } else { $response->setContent($view->getContent()); } $response->sendHeaders(); echo $response->getContent(); } } |
#9 | YonaCMS\Bootstrap->run() /var/www/html/ciss/aesvietnam.edu.vn/web/src/web/index.php (24) <?php chdir(dirname(__DIR__)); define('ROOT', __DIR__); define('HOST_HASH', substr(md5($_SERVER['HTTP_HOST']), 0, 12)); defined('APPLICATION_ENV') || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production')); if (APPLICATION_ENV === 'development' || APPLICATION_ENV === 'staging') { //@TODO: fixed me by update docker to allow config php.ini error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT); ini_set('display_errors', 1); ini_set('display_startup_errors', 1); ini_set('log_errors', 0); } define('APPLICATION_PATH', __DIR__ . '/../app'); require_once APPLICATION_PATH . '/../vendor/autoload.php'; require_once APPLICATION_PATH . '/Bootstrap.php'; $bootstrap = new YonaCMS\Bootstrap(); $bootstrap->run(); |
Key | Value |
---|---|
_url | /tin-tuc |
page | 4 |
amp;amp;amp;amp;PageSpeed | noscript |
amp;amp;amp;PageSpeed | noscript |
amp;amp;PageSpeed | noscript |
amp;PageSpeed | noscript |
Key | Value |
---|---|
REDIRECT_APPLICATION_ENV | production |
REDIRECT_downgrade-1_0 | |
REDIRECT_STATUS | 200 |
APPLICATION_ENV | production |
downgrade-1_0 | |
HTTP_USER_AGENT | CCBot/2.0 (https://commoncrawl.org/faq/) |
HTTP_ACCEPT | text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 |
HTTP_ACCEPT_LANGUAGE | en-US,en;q=0.5 |
HTTP_IF_MODIFIED_SINCE | Sat, 28 Nov 2020 20:33:39 GMT |
HTTP_ACCEPT_ENCODING | br,gzip |
HTTP_HOST | www.aesvietnam.edu.vn |
HTTP_CONNECTION | Keep-Alive |
PATH | /sbin:/usr/sbin:/bin:/usr/bin |
SERVER_SIGNATURE | <address>Apache/2.2.15 (CentOS) Server at www.aesvietnam.edu.vn Port 80</address>\n |
SERVER_SOFTWARE | Apache/2.2.15 (CentOS) |
SERVER_NAME | www.aesvietnam.edu.vn |
SERVER_ADDR | 172.16.254.4 |
SERVER_PORT | 80 |
REMOTE_ADDR | 3.232.129.123 |
DOCUMENT_ROOT | /var/www/html/ciss/aesvietnam.edu.vn/web/src/web |
SERVER_ADMIN | dinhhoaibao@gmail.com |
SCRIPT_FILENAME | /var/www/html/ciss/aesvietnam.edu.vn/web/src/web/index.php |
REMOTE_PORT | 58274 |
REDIRECT_QUERY_STRING | _url=/tin-tuc&page=4&amp;amp;amp;PageSpeed=noscript&amp;amp;PageSpeed=noscript&amp;PageSpeed=noscript&PageSpeed=noscript |
REDIRECT_URL | /tin-tuc |
GATEWAY_INTERFACE | CGI/1.1 |
SERVER_PROTOCOL | HTTP/1.1 |
REQUEST_METHOD | GET |
QUERY_STRING | _url=/tin-tuc&page=4&amp;amp;amp;PageSpeed=noscript&amp;amp;PageSpeed=noscript&amp;PageSpeed=noscript&PageSpeed=noscript |
REQUEST_URI | /tin-tuc?page=4&amp;amp;amp;PageSpeed=noscript&amp;amp;PageSpeed=noscript&amp;PageSpeed=noscript&PageSpeed=noscript |
SCRIPT_NAME | /index.php |
PHP_SELF | /index.php |
REQUEST_TIME_FLOAT | 1614378180.082 |
REQUEST_TIME | 1614378180 |
# | Path |
---|---|
0 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/web/index.php |
1 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/autoload.php |
2 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/composer/autoload_real.php |
3 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/composer/ClassLoader.php |
4 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/composer/autoload_static.php |
5 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/symfony/polyfill-ctype/bootstrap.php |
6 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/symfony/polyfill-mbstring/bootstrap.php |
7 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/cakephp/core/functions.php |
8 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/guzzlehttp/psr7/src/functions_include.php |
9 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/guzzlehttp/psr7/src/functions.php |
10 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/guzzlehttp/promises/src/functions_include.php |
11 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/guzzlehttp/promises/src/functions.php |
12 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/guzzlehttp/guzzle/src/functions_include.php |
13 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/guzzlehttp/guzzle/src/functions.php |
14 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/symfony/polyfill-php72/bootstrap.php |
15 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/symfony/polyfill-php72/Php72.php |
16 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/symfony/var-dumper/Resources/functions/dump.php |
17 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/cakephp/utility/bootstrap.php |
18 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/cakephp/utility/Inflector.php |
19 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/cakephp/collection/functions.php |
20 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/psy/psysh/src/functions.php |
21 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/facebook/graph-sdk/src/Facebook/polyfills.php |
22 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/sendgrid/sendgrid/lib/SendGrid.php |
23 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/sendgrid/sendgrid/lib/helpers/mail/Mail.php |
24 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/sendgrid/sendgrid/lib/helpers/contacts/Recipients.php |
25 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/sendgrid/sendgrid/lib/helpers/stats/Stats.php |
26 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/donatj/phpuseragentparser/Source/UserAgentParser.php |
27 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/Bootstrap.php |
28 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Cms/Config.php |
29 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/config/environment/production.php |
30 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/config/global.php |
31 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/themes/default/config/assets/assets.php |
32 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/themes/default/config/assets/_admin.php |
33 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/themes/default/config/assets/_front_page.php |
34 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/config/modules.php |
35 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Loader/Modules.php |
36 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/View/Engine/Volt.php |
37 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/View/Event/ShortCodeParser.php |
38 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Widget/Proxy.php |
39 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Cms/Model/Configuration.php |
40 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Acl/DefaultAcl.php |
41 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/config/acl.php |
42 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Assets/Manager.php |
43 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Assets/Filter/Less.php |
44 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/Helper.php |
45 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Menu/Helper/Menu.php |
46 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/Router/DefaultRouter.php |
47 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Index/Routes.php |
48 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/Helper/CmsCache.php |
49 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Admin/Routes.php |
50 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Widget/Routes.php |
51 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Page/Routes.php |
52 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Page/Model/Page.php |
53 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/Model/Model.php |
54 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Utils/Tree/Node/NodeTrait.php |
55 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Utils/Tree/Builder/TreeBuilderTrait.php |
56 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Publication/Routes.php |
57 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Publication/Model/Type.php |
58 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Slider/Routes.php |
59 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Seo/Routes.php |
60 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Menu/Routes.php |
61 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Menu/Model/Type.php |
62 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Tree/Routes.php |
63 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Tree/Init.php |
64 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Tree/Mvc/Helper.php |
65 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Sitemap/Routes.php |
66 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/User/Routes.php |
67 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Popup/Routes.php |
68 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Subscribe/Routes.php |
69 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Utils/ModuleName.php |
70 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Publication/Module.php |
71 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/plugins/CheckPoint.php |
72 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/plugins/Localization.php |
73 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Cms/Model/Translate.php |
74 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/plugins/AdminLocalization.php |
75 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/data/translations/admin/en.php |
76 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/plugins/Acl.php |
77 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/plugins/MobileDetect.php |
78 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/vendor/mobiledetect/mobiledetectlib/Mobile_Detect.php |
79 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Publication/Controller/IndexController.php |
80 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/Controller.php |
81 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Cms/Model/Language.php |
82 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Publication/Utils/Utils.php |
83 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Publication/Model/Translate/TypeTranslate.php |
84 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/Model/Translate.php |
85 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Publication/Model/Publication.php |
86 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Publication/Model/GetSet/Publication.php |
87 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Application/Mvc/Helper/ActiveMenu.php |
88 | /var/www/html/ciss/aesvietnam.edu.vn/web/src/app/modules/Publication/Model/Translate/PublicationTranslate.php |
Memory | |
---|---|
Usage | 2621440 |