1: <?php defined('_JOOS_CORE') or exit();
2:
3: /**
4: * Библиотека работы со страницами системных сообщений
5: *
6: * @version 1.0
7: * @package Core\Libraries
8: * @subpackage Pages
9: * @category Libraries
10: * @author Joostina Team <info@joostina.ru>
11: * @copyright (C) 2007-2012 Joostina Team
12: * @license MIT License http://www.opensource.org/licenses/mit-license.php
13: * Информация об авторах и лицензиях стороннего кода в составе Joostina CMS: docs/copyrights
14: *
15: * */
16: class joosPages
17: {
18: /**
19: * Инициализация задачи
20: *
21: * @static
22: * @param $code
23: */
24: private static function init($code)
25: {
26: joosRequest::send_headers_by_code($code);
27: if (ob_get_level()) {
28: ob_end_clean();
29: }
30: }
31:
32: /**
33: * Подключение шаблона страницы и завершение работы системы
34: *
35: * @static
36: * @param $message
37: * @param $page
38: */
39: public static function render($message, $page)
40: {
41: include JPATH_BASE . '/app/templates/system/' . $page . '.php';
42: die();
43: }
44:
45: /**
46: * 404 страница - не найдено
47: *
48: * @static
49: * @param string $message тест сообщения
50: */
51: public static function page404($message = 'Не найдено')
52: {
53: self::init(404);
54: self::render($message, 'page_404');
55: }
56:
57: /**
58: * 403 страница - в доступе отказано
59: *
60: * @static
61: * @param string $message тест сообщения
62: */
63: public static function page403($message = 'В доступе отказано')
64: {
65: self::init(403);
66: self::render($message, 'page_403');
67: }
68:
69: /**
70: * 502 страница - ошибка работы сервера / приложения
71: *
72: * @static
73: * @param string $message тест сообщения
74: */
75: public static function page502($message = 'Ошибка системы')
76: {
77: self::init(502);
78: self::render($message, 'page_502');
79: }
80:
81: /**
82: * Ошибка работы с базой данных
83: *
84: * @static
85: * @param string $message тест сообщения
86: */
87: public static function error_database($message = 'Ошибка базы данных')
88: {
89: self::init(503);
90: self::render($message, 'error_database');
91: }
92:
93: /**
94: * Страница ошибки доступная пользователю
95: *
96: * @static
97: * @param string $message тест сообщения
98: */
99: public static function error_user($message = 'Ошибка')
100: {
101: self::init(503);
102: self::render($message, 'error_user');
103: }
104:
105: /**
106: * Ошибка внутри php кода
107: *
108: * @static
109: * @param string $message тест сообщения
110: */
111: public static function error_code($message = 'Ой, у нас ошибочка')
112: {
113: self::init(503);
114: self::render($message, 'error_code');
115: }
116:
117: /**
118: * Технические работы на сайте / сервере
119: *
120: * @static
121: * @param string $message тест сообщения
122: */
123: public static function maintenance($message = 'Технические работы')
124: {
125: self::init(503);
126: self::render($message, 'maintenance');
127: }
128:
129: /**
130: * Сайт выключен
131: *
132: * @static
133: * @param string $message тест сообщения
134: */
135: public static function offline($message = 'Сайт отключен')
136: {
137: self::init(503);
138: self::render($message, 'offline');
139: }
140:
141: }
142: