permission($radice) || (!empty($_POST["modulo"]) && $_SESSION["utente"]->permission($_POST["modulo"])))) { if (isset($_POST["draw"])) { if (!empty($endpoint)) { $body = []; // Alleghiamo l'ordine if (isset($_POST["order"])) { $orderKey = null; switch ($_POST["order"][0]["column"]) { case "1": $orderKey = "codice_fiscale_impresa"; break; case "2": $orderKey = "ragione_sociale"; break; case "3": $orderKey = "pec"; break; } $orderDir = $_POST["order"][0]["dir"] ?? "asc"; if ($orderKey) $body["order"] = ["dir" => $orderDir, "column" => $orderKey]; } // Alleghiamo il limit if (isset($_POST["start"]) && isset($_POST["length"])) { $body["limit"] = ["start" => $_POST["start"], "limit" => $_POST["length"]]; } // Alleghiamo i filtri if (!empty($_POST["filters"])) { parse_str(str_replace("&","&",$_POST["filters"]), $body["filters"]); } // Alleghiamo la ricerca se presente if (!empty($_POST["search"]["value"])) { $body["filters"]["search"] = $_POST["search"]["value"]; } // Appendiamo un body se serve if (!empty($body)) { $body = json_encode($body); } else { $body = ""; } $data = json_decode(tuttogare_api_call("{$endpoint["endpoint"]}/getPartecipantiAlbo?codice={$key}", $endpoint["token"], "POST", $body), true) ?? []; if (isset($data["data"])) { $data["recordsFiltered"] = $data["recordsTotal"]; $data["draw"] = $_POST["draw"]; if ($modulo_riferimento === "gare") { // Otteniamo tutti gli invitati $invitati = $gara->getDestinatari(); // Otteniamo quelli formato OE $invitati_oe = array_filter($invitati, "is_numeric"); // Filtriamo quelli formato PEC $invitati_pec = array_diff($invitati, $invitati_oe); // Convertiamo gli OE in PEC se ci sono $invitati_oe = empty($invitati_oe) ? [] : oeManager::getOE($invitati_oe); // Se abbiamo un valore di ritorno, prendiamo solo la pec dagli oe $invitati_oe = empty($invitati_oe) ? [] : array_column($invitati_oe, "pec"); // Riuniamo tutto $invitati = array_merge($invitati_pec, $invitati_oe); foreach ($data["data"] as &$entry) { if (in_array(strtolower($entry[3]), $invitati)) { $entry[] = << Invitato HTM; } else { $entry[] = << Invita HTM; } } } $return = $data; } } } } echo (json_encode($return, JSON_PRETTY_PRINT));