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.
 
 
 
 
 

190 righe
12 KiB

<?
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php";
include_once($configPath);
$error = true;
if (!empty($_SESSION["utente"]) && $_SESSION["utente"]->permission($radice) && !empty($_GET["codice"])) {
$codice = intval($_GET["codice"]);
$ente = Ente::getInfoFromID($_GET["codice"])[0] ?? null;
if (!empty($ente)) {
$error = false;
$integrazioni = [];
$integrazioni["guue"] = ["header"=>"GUUE","fields"=>["id_guue"=>"Identificativo GUUE"]];
$integrazioni["cup"] = ["header"=>"CUP","fields"=>["codice_soggetto_cup"=>"Codice Soggetto CUP"]];
// $integrazioni["ga"] = ["header"=>"Google Analytics","fields"=>["gtag_id"=>"Analytics GTAG ID"]];
$integrazioni["nso"] = ["header"=>"NSO","fields"=>["codice_nso"=>"Codice NSO"]];
$integrazioni["cpn"] = ["header"=>"Servizio Contratti Pubblici Nazionali","fields"=>["cpnClientId"=>"ID Cliente","cpnClientKey"=>"Chiave Cliente"]];
$integrazioni["docExplorer"] = ["header"=>"DocExplorer - Guida Monaci","fields"=>["pathGM"=>"Path","userGM"=>"Username","passGM"=>"Password"]];
$integrazioni["tuttoverifiche"] = ["header"=>"Verifiche Fornitori Ex Art.80","fields"=>[]];
$integrazioni["conservazione"] = ["header" => "Conservazione Sostitutiva"];
?>
<h1><?= __("Gestione parametri integrazione") ?></h1>
<?php if (!empty($ente["codice_ipa"])) : ?>
<div class="row mb-2">
<div class="col-12 col-lg-6">
<?php if ($ente["spid"] == "N") : ?>
<button class="btn btn-block btn-lg btn-danger" onClick="confirmBeforeSubmit(<?= $ente["codice"] ?>,'/backend/enti/integrazioni/spid/enable.php','token=<?= tokenGen() ?>')"><span class="fa fa-times"></span> SPID <?= __("Disattivo") ?></button>
<?php elseif ($ente["spid"] == "W") : ?>
<button class="btn btn-block btn-lg btn-info" disabled><span class="fa fa-spinner fa-spin"></span> SPID <?= __("In attivazione") ?></button>
<?php else: ?>
<button class="btn btn-block btn-lg btn-success" onClick="elimina(<?= $ente["codice"] ?>,'/backend/enti/integrazioni/spid/delete.php','token=<?= tokenGen() ?>')"><span class="fa fa-check"></span> SPID <?= __("Attivo") ?></button>
<?php endif ?>
</div>
<? if (!empty($config["oidc"])) { ?>
<div class="col-12 col-lg-6">
<?php if ($ente["oidc"] == "N") : ?>
<button class="btn btn-block btn-lg btn-danger" onClick="confirmBeforeSubmit(<?= $ente["codice"] ?>,'/backend/enti/integrazioni/oidc/enable.php','token=<?= tokenGen() ?>')"><span class="fa fa-times"></span> CIE <?= __("Disattiva") ?></button>
<?php elseif ($ente["oidc"] == "W") : ?>
<button class="btn btn-block btn-lg btn-info" disabled><span class="fa fa-spinner fa-spin"></span> CIE <?= __("In attivazione") ?></button>
<?php else: ?>
<button class="btn btn-block btn-lg btn-success" onClick="elimina(<?= $ente["codice"] ?>,'/backend/enti/integrazioni/oidc/delete.php','token=<?= tokenGen() ?>')"><span class="fa fa-check"></span> CIE <?= __("Attiva") ?></button>
<?php endif ?>
</div>
<? } ?>
</div>
<?php elseif (!empty($ente["cf"]) && $ente["spidPrivato"] == "S") : ?>
<div class="col-12 col-lg-6">
<?php if ($ente["spid"] == "N") : ?>
<button class="btn btn-block btn-lg btn-danger" onClick="confirmBeforeSubmit(<?= $ente["codice"] ?>,'/backend/enti/integrazioni/spid/enable.php','token=<?= tokenGen() ?>')"><span class="fa fa-times"></span> SPID <?= __("Disattivo") ?></button>
<?php elseif ($ente["spid"] == "W") : ?>
<button class="btn btn-block btn-lg btn-info" disabled><span class="fa fa-spinner fa-spin"></span> SPID <?= __("In attivazione") ?></button>
<?php else: ?>
<button class="btn btn-block btn-lg btn-success" onClick="elimina(<?= $ente["codice"] ?>,'/backend/enti/integrazioni/spid/delete.php','token=<?= tokenGen() ?>')"><span class="fa fa-check"></span> SPID <?= __("Attivo") ?></button>
<?php endif ?>
</div>
<?php else: ?>
<? alertManager::printInfoCompact(__("SPID e CIE non attivabili per assenza codice IPA o richiesta di SPID privato")); ?>
<?php endif; ?>
<form rel="validate" method="post" action="/backend/enti/integrazioni/save.php" id="edit-form">
<input id="token" type="hidden" name="token" value="<?= tokenGen() ?>">
<input id="codice" type="hidden" name="codice" value="<?= $ente["codice"] ?>">
<?
foreach($integrazioni AS $idIntegrazione => $infoIntegrazione) {
?>
<div class="card mb-2">
<div class="card-header">
<h3 class="card-title m-0 font-weight-bold" data-target="#div-<?= $idIntegrazione ?>">
<?= __($infoIntegrazione["header"]) ?>
</h3>
</div>
<div class="card-body collapse" id="div-<?= $idIntegrazione ?>">
<div class="row">
<?
$col = 12;
if(! empty($infoIntegrazione["fields"])) { $col = ceil(12 / count($infoIntegrazione["fields"])); }
if($idIntegrazione == "tuttoverifiche") {
?>
<div class="col-12 col-xl-<?= $col ?> form-group">
<label for="providerArt80"><?= __("Provider") ?>:</label>
<?
$providers = $pdo->go("SELECT `codice`, `titolo` FROM b_configurazione_articolo_80 WHERE soft_delete = 'N'")->fetchAll(PDO::FETCH_ASSOC);
if(! empty($providers)) {
?>
<select name="providerArt80" id="providerArt80" rel="N;0;0;N">
<option value=""><?= __("Seleziona..") ?></option>
<?
foreach ($providers as $provider) {
?><option value="<?= $provider["codice"] ?>" <?= $ente["providerArt80"] == $provider["codice"] ? 'selected="selected"' : null ?>><?= $provider["titolo"] ?></option><?
}
?>
</select>
<?
} else {
?>
<div class="alert alert-danger" role="alert">
<strong><?= __("Attenzione") ?>!</strong> <?= __("Non sono configurati provider per questo servizio...") ?>
</div>
<?
}
?>
</div>
<div class="col-12 col-xl-<?= $col ?> form-group">
<label for="providerArt80"><?= __("Tipologia richieste") ?>:</label>
<select name="tipoRichiesteArt80" id="tipoRichiesteArt80" rel="N;1;0;A" title="<?= __("Tipologia richieste") ?>">
<option value=""><?= __("Seleziona..") ?></option>
<option <?= $ente["tipoRichiesteArt80"] == "spot" ? 'selected="selected"' : null ?> value="spot"><?= __("Spot") ?></option>
<option <?= $ente["tipoRichiesteArt80"] == "monitoring" ? 'selected="selected"' : null ?> value="monitoring"><?= __("Monitoraggio") ?></option>
<option <?= $ente["tipoRichiesteArt80"] == "all" ? 'selected="selected"' : null ?> value="all"><?= __("Spot e Monitoraggio") ?></option>
</select>
</div>
<?
} else if ($idIntegrazione == "conservazione") {
$connettore = json_decode($ente["conservazione"], true)["connettore"] ?? "";
$tipologia = json_decode($ente["conservazione"], true)["tipologia"] ?? "";
?>
<div class="col-12 col-xl-<?= $col ?> form-group">
<label for="connettore_conservazione"><?= __("Connettore") ?>:</label>
<select name="connettore_conservazione" id="connettore_conservazione" rel="N;1;0;A" title="<?= __("Connettore conservazione sostitutiva") ?>">
<option value=""><?= __("Seleziona..") ?></option>
<option <?= $connettore == "ifin" ? 'selected="selected"' : null ?> value="ifin"><?= __("IFIN CONSERVAZIONE") ?></option>
<option <?= $connettore == "custom" ? 'selected="selected"' : null ?> value="custom"><?= __("CUSTOM") ?></option>
</select>
<div id="preservation-settings" class="my-3 collapse <?= ! empty($connettore) ? "show" : "" ?>">
<a href="javascript:void(0)" onclick="showModalWithURL('integrazioni/conservazione/edit.php?codice_ente=<?= $ente['codice'] ?>')" class="btn btn-primary btn-block" role="button"><i class="fas fa-cogs mr-2"></i><?= __("Parametri di configurazione") ?></a>
</div>
<small id="connettore_conservazione_help_block" class="form-text text-muted">
<?= __("Lasciando vuoto questo campo l'ente potrà solo generare dei PdA per la conservazione autonoma.") ?>
</small>
</div>
<div class="form-group col">
<label for="tipologia">Tipo conservazione: (*)</label>
<select class="custom-select" name="connettore_tipologia" id="tipologia">
<option <?= empty($tipologia) || $tipologia == "all" ? 'selected="selected"' : null ?> value="all"><?= __("Conserva tutte le procedure di gara.") ?></option>
<option <?= ! empty($tipologia) && $tipologia == "only" ? 'selected="selected"' : null ?> value="only"><?= __("Conserva solo le procedure di gara il cui ente beneficiario è questo ente.") ?></option>
</select>
</div>
<script type="text/javascript">
$("#connettore_conservazione").change(function(event) {
$("#preservation-settings").removeClass('show').addClass("hide");
if($(this).val().length > 0) {
$("#preservation-settings").removeClass('hide').addClass("show");
}
});
</script>
<?
} else {
foreach($infoIntegrazione["fields"] AS $nomeInput => $labelInput) {
?><div class="col-12 col-xl-<?= $col ?>"><?
if (array_key_exists($nomeInput,$ente)) { ?>
<div class="form-group">
<label for="<?= $nomeInput ?>"><?= __($labelInput) ?></label>
<input name="<?= $nomeInput ?>" type="text" class="input-lg form-control" id="<?= $nomeInput ?>" value="<?= $ente[$nomeInput] ?>" title="<?= __($labelInput) ?>" rel="N;1;255;A">
</div>
<? } else { ?>
<div id="error-message" class="alert alert-danger text-center rounded-0 py-5">
<span class="fa fa-exclamation-triangle fa-3x"></span><br>
<?= __("Database non allineato") ?>
</div>
<? } ?>
</div>
<?
}
}
?>
</div>
</div>
</div>
<?
}
?>
<button onclick="showModalWithURL('/backend/elenchi_api/manage.php?modulo_riferimento=enti&codice_ente=<?= $codice ?>'); event.preventDefault(); return false;" class="btn btn-block btn-light text-left btn-lg px-3">
<h3 class="m-0 font-weight-bold">
<?= __("Configurazione elenchi remoti") ?>
<i class="fa fa-link float-right"></i>
</h3>
</button>
<button onclick="showModalWithURL('/backend/enti/integrazioni/advanced/edit.php?codice_ente=<?= $codice ?>'); event.preventDefault(); return false;" class="btn btn-block btn-light text-left btn-lg mb-4 px-3">
<h3 class="m-0 font-weight-bold">
<?= __("Impostazioni aggiuntive specifiche") ?>
<i class="fa fa-link float-right"></i>
</h3>
</button>
<button type="submit" class="btn btn-block btn-success"><em class="fa fa-save mr-2"></em><?= __("Salva") ?></button>
</form>
<?
}
}
if ($error) {
header('HTTP/1.0 403 Forbidden');
die();
}
?>