hasRole(AdminModel::ADMIN_TYPE_EDITORE_SUPERVISOR) && !AdminLoginManager::getLogged()->hasRole(AdminModel::ADMIN_TYPE_EDITORE)){ GUIHandler::redirect("admin/index.php"); } try{ $error = ""; $notiziaId = PostHandler::get("id"); $numInput = 1; // $optArr = "no chiave action in post"; $notizia = new NotiziaModel(); // $ansa = false; // var_dump($notizia); if(!is_null($notiziaId) && strcmp($notiziaId, "")!=0){ // $optArr = "è presente la chiave action in post"; $notizia = GlobalVariables::get("dao")->getFirst("NotiziaModel",array("id"=>$notiziaId)); /* Controllo non vi siano votanti per il sondaggio, se ci sono impedisce di editarlo */ if($notizia->hasProperty("sondaggio") && is_array($notizia->sondaggio->votanti)){ if(sizeof($notizia->sondaggio->votanti)>0){ GUIHandler::redirectPost("admin/homeNotizie.php",array("id"=>$notiziaId)); } } // echo "pene"; if(is_null($notizia)){ GUIHandler::redirect("admin/myNotizie.php"); } if (!AdminLoginManager::getLogged()->hasRole(AdminModel::ADMIN_TYPE_EDITORE_SUPERVISOR) && AdminLoginManager::getLogged()->hasRole(AdminModel::ADMIN_TYPE_EDITORE)){ if(strcmp($notizia->about->owner, AdminLoginManager::getLogged()->id) != 0){ GUIHandler::redirect("admin/myNotizie.php"); } } if(array_key_exists("action", $_POST)){ if(strcmp(PostHandler::get("action"),"save")==0){ $notizia->sondaggio->titolo = PostHandler::get("sondaggioTitolo"); $opzioni = PostHandler::get("opzioniSondaggio"); $optArr = explode("~",$opzioni); $notizia->sondaggio->voci = array(); if(sizeof($optArr)>0){ foreach ($optArr as $opzione){ $notizia->sondaggio->voci[] = array("nome"=>$opzione,"voti"=>0); } } $notizia->sondaggio->votanti = array(); GlobalVariables::get("dao")->save($notizia); GUIHandler::redirectPost("admin/homeNotizie.php",array("id"=>$notiziaId)); } } } else{ GUIHandler::redirect("admin/listNotizie.php"); } MenuGenerator::generateMenu(); HTMLHelper::generateAdminHead(); }catch(GUIException $ex){ $error = $ex->getMessage(); }catch (Exception $exec){ LoggingFacilityManager::getLogger("gui")->log(LoggingFacility::$LEVEL_ERROR, $exec->getMessage()); $error = "Si è verificato un errore inaspettato durante l'esecuzione della pagina. Se l'errore persiste contattare il supporto tecnico."; } ?>