php defined TRAM_NTAGIL or die Invalid URL route empty _PAGES _PAGES f

  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
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
<?php
defined('TRAM_NTAGIL') or die('Invalid URL');
$route = (!empty($_PAGES[2])) ? $_PAGES[2] : false;
$type = (!empty($_PAGES[3])) ? $_PAGES[3] : false;
$dir = (!empty($_PAGES[4])) ? $_PAGES[4] : false;
$schedule_types = array(
'wd' => array('title' => 'будни', 'url' => 'working'),
'wd1' => array('title' => 'пн — чт', 'url' => 'mon-thu'),
'wd2' => array('title' => 'пятница', 'url' => 'fri'),
'do' => array('title' => 'выходные', 'url' => 'day-off'),
);
$routes_list = array(
'1-8' => array(
'title' => 'Маршруты <strong>1</strong> и <strong>8</strong>',
'types' => array('wd', 'do'),
'dirs' => array('from-uvz' => 'УВЗ — Островского/Приречный р-н', 'to-uvz' => 'Островского/Приречный р-н — УВЗ'),
'parser' => '1-8'),
'3' => array(
'title' => 'Маршрут <strong>3</strong>',
'types' => array('wd', 'do'),
'dirs' => array('inner' => 'Островского — Кр. Камень — Выя — Островского', 'outer' => 'Островского — Выя — Кр. Камень — Островского'),
'parser' => '3'),
'4a' => array(
'title' => 'Маршрут <strong>4А</strong>',
'types' => array('wd', 'do'),
'dirs' => array('from-ts' => 'Тагилстрой — Приречный р-н', 'to-ts' => 'Приречный р-н — Тагилстрой'),
'parser' => 'common'),
'5' => array(
'title' => 'Маршрут <strong>5</strong>',
'types' => array('wd1', 'wd2'),
'dirs' => array('to-ts' => 'ГГМ — Тагилстрой', 'from-ts' => 'Тагилстрой — ГГМ'),
'parser' => 'common'),
'6' => array(
'title' => 'Маршрут <strong>6</strong>',
'types' => array('wd', 'do'),
'dirs' => array('from-uvz' => 'УВЗ — Пос. Северный', 'to-uvz' => 'Пос. Северный — УВЗ'),
'parser' => 'common'),
'10' => array(
'title' => 'Маршрут <strong>10</strong>',
'types' => array('wd', 'do'),
'dirs' => array('from-uvz' => 'УВЗ — Пихтовые Горы', 'to-uvz' => 'Пихтовые Горы — УВЗ'),
'parser' => 'common'),
'11' => array(
'title' => 'Маршрут <strong>11</strong>',
'types' => array('wd'),
'dirs' => array('to-sev' => 'Пихтовые Горы — Пос. Северный', 'from-sev' => 'Пос. Северный — Пихтовые Горы'),
'parser' => 'common'),
'12' => array(
'title' => 'Маршрут <strong>12</strong>',
'types' => array('wd', 'do'),
'dirs' => array('from-ostr' => 'Островского — Пихтовые Горы', 'to-ostr' => 'Пихтовые Горы — Островского'),
'parser' => 'common'),
'15' => array(
'title' => 'Маршрут <strong>15</strong>',
'types' => array('wd', 'do'),
'dirs' => array('to-ggm' => 'Н. Кушва — ГГМ', 'from-ggm' => 'ГГМ — Н. Кушва'),
'parser' => 'common'),
'17' => array('title' => 'Маршрут <strong>17</strong>',
'types' => array('wd'),
'dirs' => array('from-uvz' => 'УВЗ — ГГМ', 'to-uvz' => 'ГГМ — УВЗ'),
'parser' => 'common'),
);
$schedule_types_by_url = array();
foreach ($schedule_types as $k => $v)
{
$schedule_types_by_url[$v['url']] = $k;
}
if ($route)
{
if (array_key_exists($route, $routes_list))
{
if (!$type && count($routes_list[$route]['types']) > 1)
{
$routes_list = array($route => $routes_list[$route]);
$page->assign('show_all_list', true);
$page->assign('error_msg', 'У выбранного маршрута несколько расписаний в зависимости от дня недели. Выберите нужное расписание.');
}
else if ($type && !in_array($schedule_types_by_url[$type], $routes_list[$route]['types']))
{
$routes_list = array($route => $routes_list[$route]);
$page->assign('show_all_list', true);
$page->assign('error_msg', 'Неверно указан день недели для выбранного маршрута. Выберите нужный день из списка.');
}
else
{
if (!$type)
{
$type = $routes_list[$route]['types'][0];
}
else
{
$type = $schedule_types_by_url[$type];
}
$csv_file = 'schedule-csv/' . $route . $type . '.csv';
$parser_file = 'pages/schedule-parsers/' . $routes_list[$route]['parser'] . '.php';
if (!file_exists($csv_file))
{
$page->assign('text', 'Для выбранного маршрута не найдено файла с данными расписания. Пожалуйста, <a href="./questions/">сообщите нам об этом</a>, указав номер маршрута, направление и выбранный день недели.');
$page->assign('page_file', 'text');
$page->display_tpl();
return;
}
if (!file_exists($parser_file))
{
$page->assign('text', 'Для выбранного маршрута не найдено обработчика CSV-файла с расписанием. Пожалуйста, <a href="./questions/">сообщите нам об этом</a>, указав номер маршрута.');
$page->assign('page_file', 'text');
$page->display_tpl();
return;
}
require $parser_file;
return;
}
}
else
{
$page->assign('error_msg', 'Указан неверный маршрут. Выберите маршрут, направление и день из списка.');
}
}
$page->add_css_files('schedule');
$page->assign('routes_list', $routes_list);
$page->assign('schedule_types', $schedule_types);
$page->assign('page_file', 'schedule-list');
$page->display_tpl();
/*
$page->assign('page_file', 'text');
$page->assign('text', '<p>В данный момент ведутся работы по обработке расписания</p>');
$page->display_tpl();
*/
?>