Пример #1
0
    $objAnnounce = new $_GET['getAnnounceData']();
    if (empty($_SESSION['sd_user']['data']['id'])) {
        die('{"result":"error", "error":"' . ERROR_DATA . '"}');
        // ошибка: объявление не существует
    } elseif (!$objAnnounce->getAnnounceByUnikey($_POST['unikey'], "id_user IN (" . secure::escQuoteData($_SESSION['sd_user']['data']['id']) . ") AND token IN ('active')")) {
        die('{"result":"error", "error":"' . ERROR_ANNOUNCE_NOT_EXISTS . '"}');
        // ошибка: объявление не существует
    } else {
        $chpu = new chpu();
        $smarty->assignByRef('chpu', $chpu);
        $return_data = $objAnnounce->retAnnSubj();
        $sections = new sections();
        $arrDataSections = $sections->retCategorys();
        $smarty->assignByRef('sections', $arrDataSections);
        $professions = new professions();
        $arrDataProfession = $professions->retCategorysByIds($return_data['id_profession']);
        $smarty->assignByRef('professions', $arrDataProfession);
        $regions = new regions();
        $arrDataRegions = $regions->retCategorys();
        $smarty->assignByRef('regions', $arrDataRegions);
        $citys = new citys();
        $arrDataCity = $citys->retCategorysByIds($return_data['id_city']);
        $smarty->assignByRef('citys', $arrDataCity);
        $smarty->assignByRef('return_data', $return_data);
        echo $smarty->fetch($_GET['getAnnounceData'] . '.responce.tpl');
    }
} elseif (isset($_POST['addComment']) && isset($_POST['newsId'])) {
    if (!empty($_POST['addComment']) && !empty($_POST['newsId'])) {
        $news = new news();
        $newsComments = new newsComments();
        $_POST['addComment'] = strings::htmlEncode($_POST['addComment']);
    $sections = new sections();
    // инициализация списка регионов
    $regions = new regions();
    // передаем массив селекта "Раздел"
    $smarty->assign('sections', $sections->retCategorys());
    // передаем массив селекта "Регион"
    $smarty->assign('regions', $regions->retCategorys());
    // если массив подписок не пустой
    // формируем списки для вывода городов и профессий
    if ($arrSubscr) {
        $arrProfId = array();
        $arrCitysId = array();
        foreach ($arrSubscr as $value) {
            $value['id_profession'] ? $arrProfId[] = $value['id_profession'] : null;
            $value['id_city'] ? $arrCitysId[] = $value['id_city'] : null;
        }
        // формируем и передаем массив необходимых профессий
        $professions = new professions();
        $smarty->assign('professions', $professions->retCategorysByIds($arrProfId));
        // формируем и передаем массив необходимых городов
        $citys = new citys();
        $smarty->assign('citys', $citys->retCategorysByIds($arrCitysId));
    }
    $smarty->assign('return_data', $return_data);
    // значения, возвращаемые в форму
}
// передаем массив селекта "Периодичность рассылки"
// он нужен нам часто, поэтому передаем его без условий
//$smarty -> assignByRef('arrSubscriptionPeriod', $arrSysDict['SubscriptionPeriod']['values']);
$smarty->assignByRef('errors', $arrErrors);
$smarty->assignByRef('action', $arrActions);