public function indexAction() { $_request = new Request(); $title = MetaHelper::setPageTitle('Главная(admin)'); $login_form = new LoginForm($_request); $errors = array(); if ($_request->isPost()) { if ($login_form->validate()) { $user = new UserModel(); $login = $_request->post('login'); $hash_password = new Password($_request->post('password')); $res = $user->getUser($login, $hash_password); if (!$res) { $msg = "No such user"; } else { Session::set('user', $res); $msg = "You have successfully logged in!"; } Session::setFlash($msg); } else { $errors = $login_form->showErrors(); } } $model = new WeatherModel(); $data = $model->getSourcelist(); $args = ['errors' => $errors, 'data' => $data, 'page_title' => $title]; return $this->render('index.phtml', $args, 'admin'); }
public function indexAction() { $msg = ''; $title = MetaHelper::setPageTitle('Погода'); $request = new Request(); $model = new WeatherModel(); /* * Getting Yandex weather data xml file * Getting default values */ $yandex_xml = $model->getXmlYandexForecast(); $yandex_default_values = $model->getDefaultYandexValues(); if ($request->get('submit')) { $result = $model->searchByCityName($request->get('city_search')); if ($result) { $city_id = $result['city_id']; Cookie::set('city_id', $city_id); } else { $city_id = $yandex_default_values['default_value']; $msg = 'Город не найден в списке'; } } else { $city_id = Cookie::get('city_id') ? Cookie::get('city_id') : $yandex_default_values['default_value']; } /* * Yandex xml data parsing */ $weather = new Weather($yandex_xml['weather_source'], $city_id); $data = $weather->xmlProcessing(); $city_name = array_shift($data); /* * Getting Yandex cities data */ $yandex_cities_xml = $model->getXmlYandexCities(); $countries = simplexml_load_file($yandex_cities_xml['cities_source'] . '.xml'); /* * Getting Yandex data informer */ $informer = $model->getInformerData(); $args = ['page_title' => $title, 'data' => $data, 'countries' => $countries, 'city_name' => $city_name, 'informer' => $informer, 'msg' => $msg]; /* * Rendering starting page */ return $this->render("index.phtml", $args); }
public function saveCitiesFromXmlAction() { $title = MetaHelper::setPageTitle('Загрузить города'); $request = new Request(); $model = new WeatherModel(); $msg = ''; if ($request->isPost()) { if ($request->post('submit')) { $data = Weather::parseXmlCitiesList($request->post('cities_source')); ini_set('max_execution_time', 900); foreach ($data as $value) { $model->saveCitiesInDb($value['id'], $value, $value['country']); } if ($model == true) { $msg = 'Загружено'; } else { $msg = 'Ошибка загрузки'; } } } $args = ['page_title' => $title, 'msg' => $msg]; return $this->render('saveCitiesFromXml.phtml', $args, 'admin'); }