if (!empty($elabora_coda) && (!empty($_SESSION["ente"]))) {
alertManager::printCliInfo("Scadenze in Form");
if (empty(getQueueLog($_SESSION["ente"]->codice,"scadenzeForm"))) {
$current_time = (int) date('H');
if($current_time >= 8) {
$elenchi = [];
$elenchi["b_bandi_albo"] = ["partecipanti"=>"r_partecipanti_albo","folder"=>"albo_fornitori","modulo"=>"albo_fornitori","relazione"=>"r_albo_fornitori_form"];
$limiti = array();
$limiti["30"] = date('Y-m-d',strtotime("+30 days"));
$limiti["7"] = date('Y-m-d',strtotime("+7 day"));
$limiti["1"] = date('Y-m-d',strtotime("+1 day"));
$limiti["0"] = date('Y-m-d');
$limite_ultimo = date('Y-m-d');
$inputInfo = $pdo->prepare("SELECT * FROM b_form_input WHERE codice = :codice_input");
$groupQS = $pdo->prepare("SELECT * FROM b_form_data WHERE codice_gruppo = :gruppo AND gruppo_compilazione = :gc AND type = :type AND id = :id AND soft_delete = 'N'");
$deadlineIds = $pdo->prepare("SELECT b_form_input.codice FROM b_form_input JOIN b_form_group ON b_form_input.codice_gruppo = b_form_group.codice WHERE b_form_group.codice_form = :form AND b_form_input.tipo = 'deadline'");
$deadlineValues = $pdo->prepare("SELECT * FROM b_form_data WHERE type = :type AND codice_input = :input AND id = :id");
foreach ($elenchi AS $tabella => $infoElenco) {
$scadenze = [];
$folder = $infoElenco["folder"];
$modulo = $infoElenco["modulo"];
$sql_bandi = "SELECT * FROM {$tabella} WHERE (scadenza > now() OR scadenza IS NULL) AND pubblica > 0 AND stato NOT IN (80)";
$ris_bandi = $pdo->query($sql_bandi);
$checkForm = $pdo->prepare("SELECT codice_form FROM {$infoElenco["relazione"]} WHERE codice_elenco = :elenco");
$groupQS->bindValue(":type","{$modulo}-{$_SESSION["ente"]->codice}");
$deadlineValues->bindValue(":type","{$modulo}-{$_SESSION["ente"]->codice}");
$risPartecipanti = $pdo->prepare("SELECT ".$infoElenco["partecipanti"].".* FROM " . $infoElenco["partecipanti"] . " WHERE ammesso = 'S' AND codice_elenco = :elenco");
if ($ris_bandi->rowCount() > 0) {
while($bando = $ris_bandi->fetch(PDO::FETCH_ASSOC)) {
$logID = "scadenzeRevisioni-{$tabella}-{$bando["codice"]}";
if (empty(getQueueLog($_SESSION["ente"]->codice,$logID))) {
$risPartecipanti->bindValue(":elenco",$bando["codice"]);
$risPartecipanti->execute();
if ($risPartecipanti->rowCount() > 0) {
$partecipanti = $risPartecipanti->fetchAll(PDO::FETCH_ASSOC);
$checkForm->bindValue(":elenco",$bando["codice"]);
$checkForm->execute();
if ($checkForm->rowCount() > 0) {
while($idForm = $checkForm->fetch(PDO::FETCH_COLUMN)) {
$deadlineIds->bindValue(":form",$idForm);
$deadlineIds->execute();
if (!empty($deadlineIds->rowCount())) {
while($deadlineID = $deadlineIds->fetch(PDO::FETCH_COLUMN)) {
$deadlineValues->bindValue(":input",$deadlineID);
foreach($partecipanti AS $partecipante) {
if ($partecipante["valutato"]=="S") {
$deadlineValues->bindValue(":id",$partecipante["codice"]);
$deadlineValues->execute();
if ($deadlineValues->rowCount() > 0) {
while($formData = $deadlineValues->fetch(PDO::FETCH_ASSOC)) {
$scadenza = date2mysql($formData["valore"]);
if (!empty($scadenza)) {
foreach($limiti AS $gg => $limite) {
if ($limite == $scadenza) {
if (!isset($scadenze[$partecipante["codice_operatore"]][$bando["codice"]])) {
$scadenze[$partecipante["codice_operatore"]][$bando["codice"]] = ["bando" => $bando, "msg" => "", "scaduta" => null];
}
$scadenza_string = $gg . " giorni";
if ($gg=="30") { $scadenza_string = "1 mese"; }
if ($gg=="1") { $scadenza_string = "1 giorno"; }
if (empty($gg)) {
$scadenza_string = "SCADUTA";
$scadenze[$partecipante["codice_operatore"]][$bando["codice"]]["scaduta"] = $partecipante["codice"];
}
$groupQS->bindValue(":gruppo",$formData["codice_gruppo"]);
$groupQS->bindValue(":gc",$formData["gruppo_compilazione"]);
$groupQS->bindValue(":id",$formData["id"]);
$groupQS->execute();
if ($groupQS->rowCount() > 0) {
$corpo = "";
while($groupData = $groupQS->fetch(PDO::FETCH_ASSOC)) {
$inputInfo->bindValue(":codice_input",$groupData["codice_input"]);
$inputInfo->execute();
if ($inputInfo->rowCount() > 0) {
$info = $inputInfo->fetch(PDO::FETCH_ASSOC);
if ($info["tipo"] != "file") {
$titolo = json_decode($info["titolo"],true)["IT"];
$corpo .= $titolo . ": " . $groupData["valore"];
if ($info["codice"] == $formData["codice_input"]) {
$corpo .= " - {$scadenza_string}";
}
$corpo .= "
";
}
}
}
$corpo .= "