This repository has been archived by the owner on Dec 4, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 15
/
index.php
83 lines (68 loc) · 3.31 KB
/
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<?php
/******************************************************************************/
// //
// InstantCMS v1.10.7 //
// http://www.instantcms.ru/ //
// //
// written by InstantCMS Team, 2007-2017 //
// produced by InstantSoft, (www.instantsoft.ru) //
// //
// LICENSED BY GNU/GPL v2 //
// //
/******************************************************************************/
Error_Reporting(E_ALL & ~E_NOTICE & ~E_WARNING);
header('Content-Type: text/html; charset=utf-8');
header('X-Powered-By: InstantCMS');
define('PATH', $_SERVER['DOCUMENT_ROOT']);
define('VALID_CMS', 1);
// Проверяем, что система установлена
if (!file_exists(PATH.'/includes/config.inc.php')){
header('location:/install/');
die();
}
session_start();
require(PATH.'/core/cms.php');
$inCore = cmsCore::getInstance();
// Загружаем нужные классы
cmsCore::loadClass('page');
cmsCore::loadClass('user');
cmsCore::loadClass('actions');
// Проверяем что директории установки и миграции удалены
if(is_dir(PATH.'/install') || is_dir(PATH.'/migrate')) {
cmsPage::includeTemplateFile('special/installation.php');
cmsCore::halt();
}
cmsCore::callEvent('GET_INDEX', '');
$inPage = cmsPage::getInstance();
$inConf = cmsConfig::getInstance();
$inUser = cmsUser::getInstance();
// автоматически авторизуем пользователя, если найден кукис
$inUser->autoLogin();
// проверяем что пользователь не удален и не забанен и загружаем его данные
if (!$inUser->update() && !$_SERVER['REQUEST_URI']!=='/logout') { cmsCore::halt(); }
//Если сайт выключен и пользователь не администратор,
//то показываем шаблон сообщения о том что сайт отключен
if ($inConf->siteoff &&
!$inUser->is_admin &&
$_SERVER['REQUEST_URI']!='/login' &&
$_SERVER['REQUEST_URI']!='/logout'
){
cmsPage::includeTemplateFile('special/siteoff.php');
cmsCore::halt();
}
// Мониторинг пользователей
$inUser->onlineStats();
//Проверяем доступ пользователя
//При положительном результате
//Строим тело страницы (запускаем текущий компонент)
if ($inCore->checkMenuAccess()) {
$inCore->proceedBody();
}
//Проверяем нужно ли показать входную страницу (splash)
if(cmsPage::isSplash()){
//Показываем входную страницу
cmsPage::showSplash();
} else {
//показываем шаблон сайта
$inPage->showTemplate();
}