Skip to content

Commit 10f893a

Browse files
committed
update logo, update Mobile Detect && other
1 parent 701006a commit 10f893a

File tree

14 files changed

+224
-160
lines changed

14 files changed

+224
-160
lines changed

bootstrap.php

+77-71
Original file line numberDiff line numberDiff line change
@@ -1,106 +1,112 @@
11
<?php
22

3-
// Определяем корень
4-
define('PATH', dirname(__FILE__));
3+
/**
4+
* @file
5+
* Файл первоначальной инициализации окружения InstantCMS
6+
*
7+
*/
58

6-
// оставлено для совместимости, если кто-то использовал эту константу
7-
// в CMS не используется нигде
8-
define('ROOT', rtrim($_SERVER['DOCUMENT_ROOT'], DIRECTORY_SEPARATOR));
9+
// Определяем корень
10+
define('PATH', dirname(__FILE__));
911

10-
// Устанавливаем кодировку
11-
mb_internal_encoding('UTF-8');
12+
// оставлено для совместимости, если кто-то использовал эту константу
13+
// в CMS не используется нигде
14+
define('ROOT', rtrim($_SERVER['DOCUMENT_ROOT'], DIRECTORY_SEPARATOR));
1215

13-
// Подключаем автозагрузчик пакетов Composer
14-
if (file_exists(PATH . '/vendor/autoload.php')) {
15-
require_once PATH.'/vendor/autoload.php';
16-
}
16+
// Устанавливаем кодировку
17+
mb_internal_encoding('UTF-8');
1718

18-
// Подключаем автозагрузчик классов
19-
require_once PATH . '/system/config/autoload.php';
19+
// Подключаем автозагрузчик пакетов Composer
20+
if (file_exists(PATH . '/vendor/autoload.php')) {
21+
require_once PATH.'/vendor/autoload.php';
22+
}
2023

21-
// Устанавливаем обработчик автозагрузки классов
22-
spl_autoload_register('autoLoadCoreClass');
24+
// Подключаем автозагрузчик классов
25+
require_once PATH . '/system/config/autoload.php';
2326

24-
// Инициализируем конфиг
25-
$config = cmsConfig::getInstance();
27+
// Устанавливаем обработчик автозагрузки классов
28+
spl_autoload_register('autoLoadCoreClass');
2629

27-
// дебаг отключен - скрываем все сообщения об ошибках
28-
if(!$config->debug){
30+
// Инициализируем конфиг
31+
$config = cmsConfig::getInstance();
2932

30-
error_reporting(0);
33+
// дебаг отключен - скрываем все сообщения об ошибках
34+
if(!$config->debug){
3135

32-
} else {
36+
error_reporting(0);
3337

34-
@ini_set('display_errors', 1);
35-
@ini_set('display_startup_errors', 1);
36-
error_reporting(E_ALL);
38+
} else {
3739

38-
// включаем отладку
39-
cmsDebugging::enable();
40+
@ini_set('display_errors', 1);
41+
@ini_set('display_startup_errors', 1);
42+
error_reporting(E_ALL);
4043

41-
}
44+
// включаем отладку
45+
cmsDebugging::enable();
4246

43-
// Проверяем, что система установлена
44-
if (!$config->isReady()){
45-
$root = str_replace(str_replace(DIRECTORY_SEPARATOR, '/', realpath($_SERVER['DOCUMENT_ROOT'])), '', str_replace(DIRECTORY_SEPARATOR, '/', PATH));
46-
header('location:'.$root.'/install/');
47-
die();
48-
}
47+
}
4948

50-
// Стартуем сессию если константа SESSION_START объявлена
51-
if(defined('SESSION_START')){
49+
// Проверяем, что система установлена
50+
if (!$config->isReady()){
51+
$root = str_replace(str_replace(DIRECTORY_SEPARATOR, '/', realpath($_SERVER['DOCUMENT_ROOT'])), '', str_replace(DIRECTORY_SEPARATOR, '/', PATH));
52+
header('location:'.$root.'/install/');
53+
die();
54+
}
5255

53-
// Устанавливаем директорию сессий
54-
cmsUser::setSessionSavePath($config->session_save_handler, $config->session_save_path);
56+
// Стартуем сессию если константа SESSION_START объявлена
57+
if(defined('SESSION_START')){
5558

56-
cmsUser::sessionStart($config->cookie_domain);
59+
// Устанавливаем директорию сессий
60+
cmsUser::setSessionSavePath($config->session_save_handler, $config->session_save_path);
5761

58-
// таймзона сессии
59-
$session_time_zone = cmsUser::sessionGet('user:time_zone');
62+
cmsUser::sessionStart($config->cookie_domain);
6063

61-
// если таймзона в сессии отличается от дефолтной
62-
if($session_time_zone && $session_time_zone != $config->time_zone){
63-
$config->set('time_zone', $session_time_zone);
64-
}
64+
// таймзона сессии
65+
$session_time_zone = cmsUser::sessionGet('user:time_zone');
6566

67+
// если таймзона в сессии отличается от дефолтной
68+
if($session_time_zone && $session_time_zone != $config->time_zone){
69+
$config->set('time_zone', $session_time_zone);
6670
}
6771

68-
// Устанавливаем часовую зону
69-
date_default_timezone_set($config->time_zone);
72+
}
7073

71-
// Подключаем все необходимые классы и библиотеки
72-
cmsCore::loadLib('html.helper');
73-
cmsCore::loadLib('strings.helper');
74-
cmsCore::loadLib('files.helper');
75-
cmsCore::loadLib('spyc.class');
74+
// Устанавливаем часовую зону
75+
date_default_timezone_set($config->time_zone);
7676

77-
// Инициализируем ядро
78-
$core = cmsCore::getInstance();
77+
// Подключаем все необходимые классы и библиотеки
78+
cmsCore::loadLib('html.helper');
79+
cmsCore::loadLib('strings.helper');
80+
cmsCore::loadLib('files.helper');
81+
cmsCore::loadLib('spyc.class');
7982

80-
// Подключаем базу
81-
$core->connectDB();
83+
// Инициализируем ядро
84+
$core = cmsCore::getInstance();
8285

83-
// соединение не установлено? Показываем ошибку
84-
if(!$core->db->ready()){
86+
// Подключаем базу
87+
$core->connectDB();
8588

86-
cmsCore::loadLanguage();
89+
// соединение не установлено? Показываем ошибку
90+
if(!$core->db->ready()){
8791

88-
return cmsCore::error($core->db->connectError());
92+
cmsCore::loadLanguage();
8993

90-
}
94+
return cmsCore::error($core->db->connectError());
9195

92-
// Запускаем кеш
93-
cmsCache::getInstance()->start();
96+
}
9497

95-
cmsEventsManager::hook('core_start');
98+
// Запускаем кеш
99+
cmsCache::getInstance()->start();
96100

97-
// Загружаем локализацию
98-
cmsCore::loadLanguage();
101+
cmsEventsManager::hook('core_start');
99102

100-
// устанавливаем локаль языка
101-
if(function_exists('lang_setlocale')){
102-
lang_setlocale();
103-
}
103+
// Загружаем локализацию
104+
cmsCore::loadLanguage();
105+
106+
// устанавливаем локаль языка
107+
if(function_exists('lang_setlocale')){
108+
lang_setlocale();
109+
}
104110

105-
// устанавливаем локаль MySQL
106-
$core->db->setLcMessages();
111+
// устанавливаем локаль MySQL
112+
$core->db->setLcMessages();

cron.php

+74-68
Original file line numberDiff line numberDiff line change
@@ -1,105 +1,111 @@
11
<?php
22

3-
// некоторые задачи требуют безлимитного времени выполнения, в cli это по умолчанию
4-
// задача для CRON выглядит примерно так: php -f /path_to_site/cron.php
5-
// Если планируете запускать задачи CRON через curl или иные http запросы, закомментируйте строку ниже
6-
if(PHP_SAPI != 'cli') { die('Access denied'); }
3+
/**
4+
* @file
5+
* Файл, который должен вызываться из командной строки, а не по HTTP
6+
* Некоторые задачи требуют безлимитного времени выполнения, в cli это по умолчанию
7+
* Задача для CRON выглядит примерно так: /usr/bin/php -f /path_to_site/cron.php
8+
*
9+
*/
710

8-
// Инициализация
9-
require_once 'bootstrap.php';
11+
// Если всё же планируете запускать задачи CRON через curl или иные http запросы, закомментируйте строку ниже
12+
if(PHP_SAPI != 'cli') { die('Access denied'); }
1013

11-
// Подключаем шаблонизатор, чтобы был подключен хелпер с функциями
12-
cmsTemplate::getInstance();
14+
// Инициализация
15+
require_once 'bootstrap.php';
1316

14-
// Подключение модели
15-
$model = cmsCore::getModel('admin');
17+
// Подключаем шаблонизатор, чтобы был подключен хелпер с функциями
18+
cmsTemplate::getInstance();
1619

17-
// id задачи
18-
// id передаётся вторым параметром, первым передаётся имя домена
19-
$task_id = isset($argv[2]) ? (int)$argv[2] : 0;
20+
// Подключение модели
21+
$model = cmsCore::getModel('admin');
2022

21-
// если id задачи передано, запускаем только её
22-
if($task_id){
23+
// id задачи
24+
// id передаётся вторым параметром, первым передаётся имя домена
25+
$task_id = isset($argv[2]) ? (int)$argv[2] : 0;
2326

24-
$task = $model->getSchedulerTask($task_id);
27+
// если id задачи передано, запускаем только её
28+
if($task_id){
2529

26-
if($task){
27-
$tasks = array($task['id'] => $task);
28-
}
29-
30-
} else {
31-
32-
// Иначе получаем весь список задач для выполнения
33-
$tasks = $model->getPendingSchedulerTasks();
30+
$task = $model->getSchedulerTask($task_id);
3431

32+
if($task){
33+
$tasks = array($task['id'] => $task);
3534
}
3635

37-
// Если задач нет, выходим
38-
if (empty($tasks)) { exit; }
36+
} else {
37+
38+
// Иначе получаем весь список задач для выполнения
39+
$tasks = $model->getPendingSchedulerTasks();
3940

40-
// Коллекция контроллеров
41-
$controllers = array();
41+
}
4242

43-
//
44-
// Выполняем задачи по списку
45-
//
46-
foreach($tasks as $task){
43+
// Если задач нет, выходим
44+
if (empty($tasks)) { exit; }
4745

48-
// Проверяем существование контроллера
49-
if (!cmsCore::isControllerExists($task['controller'])){ continue; }
46+
// Коллекция контроллеров
47+
$controllers = array();
5048

51-
// если включено последовательное выполнение,
52-
// параллельные запуски запретить
53-
if(!empty($task['consistent_run'])){
49+
//
50+
// Выполняем задачи по списку
51+
//
52+
foreach($tasks as $task){
5453

55-
$lock_file = $config->cache_path.'cron_lock_'.$task['id'];
56-
$lockfp = fopen($lock_file, 'w');
54+
// Проверяем существование контроллера
55+
if (!cmsCore::isControllerExists($task['controller'])){ continue; }
5756

58-
// Если блокировку получить не удалось, значит скрипт еще работает
59-
// и запуск нужно запретить
60-
if (!flock($lockfp, LOCK_EX | LOCK_NB)) {
61-
continue;
62-
}
57+
// если включено последовательное выполнение,
58+
// параллельные запуски запретить
59+
if(!empty($task['consistent_run'])){
6360

64-
// По окончании работы необходимо снять блокировку и удалить файл
65-
register_shutdown_function(function($lockfp, $lock_file) {
66-
flock($lockfp, LOCK_UN);
67-
@unlink($lock_file);
68-
}, $lockfp, $lock_file);
61+
$lock_file = $config->cache_path.'cron_lock_'.$task['id'];
62+
$lockfp = fopen($lock_file, 'w');
6963

64+
// Если блокировку получить не удалось, значит скрипт еще работает
65+
// и запуск нужно запретить
66+
if (!flock($lockfp, LOCK_EX | LOCK_NB)) {
67+
continue;
7068
}
7169

72-
// Получаем контроллер из коллекции либо загружаем
73-
// и сохраняем в коллекцию
74-
if (isset($controllers[$task['controller']])){
70+
// По окончании работы необходимо снять блокировку и удалить файл
71+
register_shutdown_function(function($lockfp, $lock_file) {
72+
flock($lockfp, LOCK_UN);
73+
@unlink($lock_file);
74+
}, $lockfp, $lock_file);
7575

76-
$controller = $controllers[$task['controller']];
76+
}
7777

78-
} else {
78+
// Получаем контроллер из коллекции либо загружаем
79+
// и сохраняем в коллекцию
80+
if (isset($controllers[$task['controller']])){
7981

80-
$controller = cmsCore::getController($task['controller']);
82+
$controller = $controllers[$task['controller']];
8183

82-
if(!$controller->isEnabled()){
83-
unset($controller); continue;
84-
}
84+
} else {
8585

86-
$controllers[$task['controller']] = $controller;
86+
$controller = cmsCore::getController($task['controller']);
8787

88+
if(!$controller->isEnabled()){
89+
unset($controller); continue;
8890
}
8991

90-
try {
92+
$controllers[$task['controller']] = $controller;
9193

92-
// Выполняем хук
93-
$controller->runHook("cron_{$task['hook']}");
94+
}
9495

95-
// Обновляем время последнего запуска задачи
96-
$model->updateSchedulerTaskDate($task);
96+
try {
9797

98-
} catch (Exception $e) {
98+
// Выполняем хук
99+
$controller->runHook("cron_{$task['hook']}");
99100

100-
// выключаем ошибочное задание
101-
$model->toggleSchedulerPublication($task['id'], 0);
101+
// Обновляем время последнего запуска задачи
102+
$model->updateSchedulerTaskDate($task);
102103

103-
}
104+
} catch (Exception $e) {
105+
106+
// выключаем ошибочное задание
107+
$model->toggleSchedulerPublication($task['id'], 0);
104108

105109
}
110+
111+
}

index.php

+2
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,14 @@
1616

1717
/**
1818
* Константа, наличие которой говорит о том, что нам нужны сессии
19+
* и bootstrap.php их включит
1920
*/
2021
define('SESSION_START', true);
2122

2223
header('Content-type:text/html; charset=utf-8');
2324
header('X-Powered-By: InstantCMS');
2425

26+
// Подключаем файл первоначальной инициализации окружения InstantCMS
2527
require_once 'bootstrap.php';
2628

2729
if ($config->emulate_lag) { usleep(350000); }

install/css/styles.css

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ body {
4646

4747
#layout #header .logo {
4848
padding-left: 220px;
49-
background: url("../images/logo.png") no-repeat left center;
49+
background: url("../images/logo.svg") no-repeat left center;
5050
}
5151

5252
#layout #header .logo span {

install/images/logo.png

-6.11 KB
Binary file not shown.

0 commit comments

Comments
 (0)