public function SaveAction() { $request_user_id = (int) Project::getUser()->getShowedUser()->id; $user_id = (int) Project::getUser()->getDbUser()->id; $login = Project::getUser()->getDbUser()->login; $request = Project::getRequest(); $album = USER_UPLOAD_DIR . DIRECTORY_SEPARATOR . $login . DIRECTORY_SEPARATOR . 'album' . DIRECTORY_SEPARATOR; $thumbs = $album . 'thumbs' . DIRECTORY_SEPARATOR; $images = $album . 'images' . DIRECTORY_SEPARATOR; clearstatcache(); $album_id = 0; if (is_array($request->photo_id)) { foreach ($request->photo_id as $photo_id) { $photo_id = (int) $photo_id; $photo_model = new PhotoModel(); $photo_model->load($photo_id); // Проверка, является ли пользователем владельцем альбома if ((int) $photo_model->id > 0 && (int) $photo_model->user_id === $user_id) { if (isset($request->photo_del[$photo_id])) { // Delete album $f = $thumbs . $photo_model->path; if (file_exists($f) && is_file($f)) { unlink($f); } $f = $images . $photo_model->thumbnail; if (file_exists($f) && is_file($f)) { unlink($f); } $photo_model->delete($photo_id); } else { $photo_model->is_rating = isset($request->is_rating[$photo_id]) ? 1 : 0; $photo_model->is_onmain = isset($request->is_onmain[$photo_id]) ? 1 : 0; $photo_model->access = (int) $request->photo_access[$photo_id]; $photo_model->name = isset($request->photo_name[$photo_id]) ? $request->photo_name[$photo_id] : $photo_model->name; $photo_model->save(); if ($album_id == 0) { $album_id = (int) $photo_model->album_id; } } } } } if ($album_id > 0) { $album_model = new AlbumModel(); $album_model->load($album_id); $album_model->thumbnail_id = (int) $request->thumb_photo; $album_model->save(); } Project::getResponse()->redirect($this->getAlbumUrl($album_id, $login)); }