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.
103 righe
3.6 KiB
103 righe
3.6 KiB
<? |
|
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php"; |
|
include_once($configPath); |
|
$id_modulo = "contratti.documentale"; |
|
|
|
if (!empty($_SESSION["utente"]) && $_SESSION["utente"]->permission($id_modulo) && $_SESSION["utente"]->gerarchia <= 10 && !empty($_GET['soggetto'])) { |
|
$return = array(); |
|
$return["draw"] = (int)$_GET["draw"]; |
|
$return["recordsTotal"] = (int)0; |
|
$return["recordsFiltered"] = (int)0; |
|
|
|
$soggetto = $_GET['soggetto']; |
|
$codice_ente = $_SESSION['ente']->codice; |
|
|
|
$bind = [ |
|
':codice_ente' => $codice_ente, |
|
":soggetto" => $soggetto |
|
]; |
|
|
|
$sql = "SELECT * |
|
FROM b_ruoli_documentale |
|
WHERE codice_ente = :codice_ente |
|
AND soggetto = :soggetto |
|
AND soft_delete = 'N' "; |
|
|
|
$risultati = $pdo->go($sql, $bind); |
|
|
|
|
|
if ($risultati->rowCount() > 0) { |
|
$return["recordsTotal"] = (int)$risultati->rowCount(); |
|
$filterApplied = false; |
|
if (!empty($_GET["search"]["value"])) { |
|
|
|
$filterApplied = true; |
|
$sql .= " AND ( "; |
|
|
|
$suddivisione = suddivisione_pdo($_GET["search"]["value"],"ruolo"); |
|
$sql .= "(" . $suddivisione["sql"] . ") "; |
|
$bind = array_merge($bind,$suddivisione["bind"]); |
|
|
|
$sql .= ") "; |
|
} |
|
|
|
$order = "b_ruoli_documentale.timestamp "; |
|
switch($_GET["order"][0]["column"]) { |
|
case "0": $order = "b_ruoli_documentale.ruolo"; break; |
|
case "2": $order = "b_ruoli_documentale.timestamp "; break; |
|
} |
|
|
|
if ($_GET["order"][0]["dir"] == "desc") { |
|
$order.= "DESC "; |
|
} else { |
|
$order.= "ASC "; |
|
} |
|
|
|
$sql .= " ORDER BY " . $order . " "; |
|
|
|
$risultatiBeforLimit = $pdo->go($sql,$bind); |
|
if ($_GET["length"] !== "-1") { $sql.= "LIMIT ". (int)$_GET["start"] .", " . (int)$_GET["length"]; } |
|
|
|
$risultati = $pdo->go($sql,$bind); |
|
if ($risultati->rowCount() > 0) { |
|
if ($filterApplied) { |
|
$return["recordsFiltered"] = (int)$risultatiBeforLimit->rowCount(); |
|
} else { |
|
$return["recordsFiltered"] = $return["recordsTotal"]; |
|
} |
|
$return["data"] = array(); |
|
|
|
$ruoliAttivi = $pdo->prepare("SELECT codice_ruolo FROM r_contratto_b_soggetto_oe_ruolo GROUP BY codice_ruolo"); |
|
$ruoliAttivi->execute(); |
|
$ruoliAttivi = $ruoliAttivi->fetchAll(PDO::FETCH_COLUMN); |
|
|
|
while ($ruolo = $risultati->fetch(PDO::FETCH_ASSOC)) { |
|
|
|
$row = array(); |
|
$row[] = "<strong> {$ruolo['ruolo']} </strong>"; |
|
$row[] = "<strong>". ContrattoDocumentale::getSoggetti($ruolo['soggetto']) ."</strong>"; |
|
$row[] = "<strong>" . mysql2datetime($ruolo["timestamp"]) . "</strong>"; |
|
|
|
$row[] = "<button onclick='showModalWithURL(\"/backend/contratti/admin-documentale/ruoli/editRuolo.php?codice={$ruolo['codice']}\")' title='".__("Modifica")."' class='btn btn-primary btn-sm'><span class='fa fa-edit'></span></button>"; |
|
|
|
if (in_array($ruolo['codice'], $ruoliAttivi)) { |
|
$row[] = "<button class='btn btn-danger btn-sm disabled' title='".__('Ruolo attualmente in uso, Eliminazione non disponibile')."'><span class='fa fa-times'></span></button>"; |
|
}else{ |
|
$row[] = "<button onclick='elimina({$ruolo["codice"]},\"contratti/admin-documentale/ruoli\")' title='".__("Elimina")."' class='btn btn-danger btn-sm'><span class='fa fa-times'></span></button>"; |
|
} |
|
|
|
|
|
|
|
$return["data"][] = $row; |
|
} |
|
}else{ |
|
$return["data"] = array(); |
|
} |
|
}else { |
|
$return["data"] = array(); |
|
} |
|
|
|
echo json_encode($return); |
|
} |
|
|
|
?>
|