gestione gare pubbliche
Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 
 
 

122 righe
4.5 KiB

<?
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php";
include_once($configPath);
$error = true;
if (!empty($_POST) && !empty($_SESSION["utente"]) && $_SESSION["utente"]->permission($radice) && tokenVerify()) {
$error = false;
if (empty($_POST["codice"])) { $_POST["timestamp_creazione"] = date('Y-m-d H:i:s'); }
$createDomain = false;
if (!empty($_POST["dominio"]) && $config["protocollo"] == "https://" && preg_match('/^(?:[-A-Za-z0-9\.]+\.)+[A-Za-z]{2,6}$/', $_POST["dominio"])) {
$pieces = explode(".",$_POST["dominio"]);
if (count($pieces) == 3 && $pieces[1] == "tuttogare" && $pieces[2] == "it" && !$config["demoEnv"] && !$config["developEnv"]) {
$_POST["alias"] = "S";
} else {
$ris_check = $pdo->go("SELECT alias FROM b_enti WHERE dominio = :dominio ",[":dominio"=>$_POST["dominio"]]);
if ($ris_check->rowCount() == 0) {
$createDomain = true;
}
}
}
if (!empty($_POST["codice"])) {
$existingEnte = Ente::getInfoFromID($_POST["codice"]);
if (!empty($existingEnte)) {
$existingEnte = reset($existingEnte);
if (!empty($existingEnte["dominio"]) && empty($existingEnte["db"])) {
$_POST["db"] = "W";
}
}
}
if (!empty($_POST["dominio"]) && empty($_POST["codice"])) {
$_POST["db"] = "W";
}
if ($createDomain) {
$_POST["alias"] = "W";
}
$salva = new salva();
$salva->debug = false;
$salva->nome_tabella = "b_enti";
$salva->operazione = empty($_POST["codice"]) ? "INSERT" : "UPDATE";
$salva->oggetto = $_POST;
$salva->ignore = ["token","logo"];
$codice = $salva->save();
if ($codice !== false) {
if (!empty($_SESSION["ente-new-img"])) {
$image = new \claviska\SimpleImage();
$image->fromString($_SESSION["ente-new-img"]);
$ext = $image->getMimeType();
$ext = explode("/",$ext);
$ext = end($ext);
$logo = "logo-{$codice}-".time().".{$ext}";
$riferimento = hash("md5",$_SESSION["ente-new-img"]);
$salt = substr(str_shuffle($riferimento),0,5);
$riferimento .= $salt;
} else if ($_POST["elimina_foto"] == "S") {
$logo = "";
$riferimento = "";
}
if (isset($logo)) {
$salva->operazione = "UPDATE";
$salva->ignore = [];
$salva->oggetto = ["codice"=>$codice,"logo"=>$logo,"riferimento"=>$riferimento];
$salva->save();
}
if (isset($image)) {
$path = $config["mediaFolder"] . "/enti/";
if (!is_dir($path)) { mkdir($path,0750,true); }
$image->toFile($path."/".$riferimento);
}
$validation = array();
if (empty($_POST["cf"])) { $validation[] = __("codice fiscale") . " " . __("obbligatorio"); }
if (empty($_POST["denominazione"])) { $validation[] = __("Denominazione") . " " . __("obbligatorio"); }
$bind = array();
$bind[":codice"] = $codice;
$strsql = "DELETE FROM r_contributi_sua WHERE codice_ente = :codice";
$risultato = $pdo->go($strsql,$bind);
if (isset($_POST["contributi_sua"])) {
foreach($_POST["contributi_sua"] as $contributo) {
$contributo["codice_ente"] = $codice;
$salva = new salva();
$salva->debug = false;
$salva->nome_tabella = "r_contributi_sua";
$salva->operazione = "INSERT";
$salva->oggetto = $contributo;
$codice_contributo = $salva->save();
}
}
if (empty($validation)) {
if (empty($_POST["codice"]) && !empty($_POST["dominio"])) {
?>
swal({title:js_dict["success-msg"],type:"success"}).then(function(){ showModalWithURL("/backend/enti/permessi/edit.php?codice=<?= $codice ?>"); });
<?
} else {
?>
swal({title:js_dict["success-msg"],type:"success"}).then(function(){ window.location.href="/backend/enti/edit.php?codice=<?= $codice ?>"; });
<?
}
} else {
$errori = "";
foreach ($validation as $value) {
$errori .= $value . "<br>";
}
?>
swal({title:js_dict.attenzione,html:"<?= $errori ?>",type:"warning"}).then(function(){ window.location.href="/backend/enti/edit.php?codice=<?= $codice ?>"; });
<?
}
} else {
?>
swal({title:js_dict.error,text:js_dict["error-generic"],html:true,type:"error"});
<?
}
}
if ($error) {
header('HTTP/1.0 403 Forbidden');
die();
}
?>