function edit($s) { $_SESSION['last_land_id'] = (isset($_SESSION['last_land_id'])) ? $_SESSION['last_land_id'] : -1; $id = intval($_REQUEST['id']); $land = new Land(); $land->getFull($id); //загрузка дома if (empty($_POST) && $land->id>0) { if (isset($_SESSION["admin"])) $_SESSION['last_land_id'] = $id; if ($id!=$_SESSION['last_land_id'] && !$_SESSION['user_id'] && !$_SESSION["admin"]) { header("Location: /index.html"); exit(); } if (isset($_SESSION['user_id']) && $land->user_id != $_SESSION['user_id'] && !$_SESSION["admin"] && $id!=$_SESSION['last_land_id']) { header("Location: /index.html"); exit(); } $block_html = Html::pageLandEdit($land); $s->assign("YANDEX_KEY",YANDEX_KEY); $s->assign("city_id",$land->city_id); $s->assign("city",$land->city); if (isset($_SESSION['admin'])) $s->assign("is_admin",$_SESSION['admin']); $s->assign("block_html",$block_html); $s->display("land_edit.tpl"); } //обновление elseif (isset($_POST) && $_REQUEST['id']>0) { $land = new Land(); $errors = $land->checkForm($_REQUEST); $id = intval($_REQUEST['id']); if ($id!=$_SESSION['last_land_id'] && !$_SESSION['user_id'] && !$_SESSION["admin"]) { header("Location: /index.html"); exit(); } if (!isset($_SESSION['user_id'])) { $land->getFull($id); } else { $land->getFull($id,"h.user_id='{$_SESSION['user_id']}'"); if ($land->user_id != $_SESSION['user_id'] && !$_SESSION["admin"] && $id!=$_SESSION['last_land_id']) { header("Location: /index.html"); exit(); } } if (!isset($errors['is_error']) && $land->id > 0) { $land->update($_POST); $photo_land_path = $land->getPhotoPath(); if (!is_dir($photo_land_path)) { mkdir($photo_land_path,0777); chmod($photo_land_path,0777); } //добавляем новые фото if (isset($_POST['photo_land']) && is_array($_POST['photo_land'])) { foreach ($_POST['photo_land'] as $fname) { $fname = clearTextData($fname); if ($fname!='') $land->addPhoto($fname,$_POST); } } //редактируем существующие фото if (isset($_POST['photo_land_exist']) && is_array($_POST['photo_land_exist'])) { foreach ($_POST['photo_land_exist'] as $fname) { $fname = clearTextData($fname); if ($fname!='') $land->editPhoto($fname,$_POST); } } header("Location: /land.html?action=view&id=".$land->id); exit(); } else { echo "error"; $id = intval($_REQUEST['id']); $land->getFull($id); $block_html = Html::pageLandEdit($land,$errors); $s->assign("YANDEX_KEY",YANDEX_KEY); $s->assign("is_admin",$_SESSION['admin']); $s->assign("block_html",$block_html); $s->display("land_edit.tpl"); } } else { echo "error"; } }