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.
 
 
 
 
 

196 righe
11 KiB

<?php if (! empty($npa) && ! empty($_SESSION["utente"]) && $_SESSION["utente"]->permission("npa") && ! $_SESSION["utente"]->readOnly) : ?>
<?= $alertManager->printAlertModalButton() ?>
<?php
$canDoRequest = $npa->cardCanDoRequest($canDoRequestResponseError);
if(!$canDoRequest && !$_SESSION["utente"]->isSupportoOrRoot()) {
$infoScheda = new stdClass();
if(!empty($npa->scheda["info"])) { $infoScheda = unserialize($npa->scheda["info"]); }
$infoScheda->lastCantDoRequest = $canDoRequestResponseError;
$npa->updateScheda(["info" => serialize($infoScheda)]);
}
if(!$canDoRequest) { $alertManager->addDangerAlert($canDoRequestResponseError["msg"]); }
?>
<?php
$dictionary = $npa->getErrorsDictionary();
if($npa->scheda["stato"] < 40) {
if ($npa->check["espd"]["required"] ?? false) {
if(!$npa->check["espd"]["ready"] ?? false) {
$alertManager->addDangerAlert(__("Attenzione, per procedere è necessario configurare il documento XML di richiesta DGUE"));
$canDoRequest = false;
}
}
if ($npa->check["eform"]["required"] ?? false ) {
if(!$npa->check["eform"]["ready"] ?? false) {
$alertManager->addDangerAlert(__("Attenzione, per procedere è necessario configurare il documento XML per la pubblicazione GUUE"));
$canDoRequest = false;
}
}
if(!$npa->checkSoglia()) {
$alertManager->addDangerAlert(__("Attenzione, questa scheda è utilizzabile solo per gare sottosoglia, mentre la gara è ora soprasoglia."));
$canDoRequest = false;
$lock = true;
}
}
?>
<?php if($_SESSION["utente"]->isSupportoOrRoot()): ?>
<button title="<?= __guue("Mostra il pannello di debug.") ?>" class="ml-3 btn btn-info ignore-lock" type="button" onclick="showModalWithURL(`/backend/npa/ajax/debug_panel.php?codice=<?= $codice ?>`)">
<i class="fas fa-wrench "></i>
<span class="nav-text ml-2">DBG: <?= __guue("Debug") ?></span>
</button>
<?php endif; ?>
<?php
$deletable = $npa->isCardDeletable($elimina_text, $deletableServerSide);
$pendingCancellazione = ($npa->scheda["pending_cancellazione"] ?? "N") == "S";
if($deletable && !$deletableServerSide && !$pendingCancellazione): ?>
<button title="<?= __guue("Elimina la scheda perdendo tutti i dati.") ?>" class="ml-3 btn btn-danger ignore-lock" type="button" onclick="npa.eliminaScheda(event, <?= $codice ?>)">
<i class="fas fa-trash "></i>
<span class="nav-text ml-2"><?= __guue($elimina_text) ?></span>
</button>
<?php endif; ?>
<?php if($canDoRequest): ?>
<?php if($npa->isCardRectifiable()): ?>
<button title="<?= __guue("Crea una revisione di una scheda pubblicata.") ?>" class="ml-3 btn btn-warning ignore-lock" type="button" onclick="npa.creaRevisione(event, 'rettifica')">
<i class="fas fa-plus-square "></i>
<span class="nav-text ml-2"><?= __guue("Crea rettifica") ?></span>
</button>
<?php endif; ?>
<?php if($npa->canSyncScheda()): ?>
<button title="<?= __guue("Sincronizza il contenuto della scheda con i server ANAC.") ?>" class="ml-3 btn btn-info ignore-lock" type="button" onclick="npa.syncCard(event)">
<i class="fas fa-sync"></i>
<span class="nav-text ml-2"><?= __guue("Sincronizza") ?></span>
</button>
<?php endif; ?>
<?php if($npa->isCardModifiable()): ?>
<?php if($npa->check["eform"]["required"]): ?>
<button title="<?= __guue("Crea una revisione di una scheda in pubblicazione.") ?>" class="ml-3 btn btn-info ignore-lock" type="button" onclick="npa.creaRevisione(event, 'modifica')">
<i class="fas fa-edit"></i>
<span class="nav-text ml-2"><?= __guue("Crea modifica") ?></span>
</button>
<?php else: ?>
<?php $alertManager->addWarningAlert(__("Modifica non disponibile. Attendere la fine della pubblicazione e procedere con rettifica.")); ?>
<?php endif; ?>
<?php endif; ?>
<?php endif;?>
<?php if (!$lock) : ?>
<button title="<?= __guue("Verifica formalmente i dati inseriti e salva la scheda.") ?>" class="ml-3 npa-nav-button btn btn-primary" type="button" onclick="npa.salva(event)">
<i class="fas fa-save"></i>
<span class="nav-text ml-2"><?= __guue("Salva") ?></span>
</button>
<button title="<?= __guue("Salva la scheda senza verificare i dati.") ?>" class="ml-3 npa-nav-button btn btn-info" type="button" onclick="npa.salvaBozza(event)">
<i class="fas fa-archive "></i>
<span class="nav-text ml-2"><?= __guue("Salva bozza") ?></span>
</button>
<?php endif;?>
<?php if($_SESSION["utente"]->isSupportoOrRoot()): ?>
<button class="ml-3 btn btn-warning shadow-none" disabled>
NPA <?= $npa->version ?>
</button>
<?php endif; ?>
<?
if(! empty($npa->fascicolo["data"]) && ($npa->scheda["stato"] <= 100 || ($deletable && $deletableServerSide))) {
if(! $_SESSION["utente"]->isSupporto()) {
if(!$canDoRequest) {
// Se l'utente non è autenticato con spid
if(($canDoRequestResponseError["code"] ?? "")== "AUTH") {
SpidSA::printSmallLoginButton();
} else {
?>
<button class="btn btn-danger ml-2" disabled>
<i class="fa fa-exclamation-triangle"></i>
<span class="nav-text ml-2"><?= __("Azioni NPA non disponibili, verifica gli Avvisi") ?></span>
</button>
<?
}
} else {
?>
<?php ob_start(); ?>
<?php if (! empty($npa->scheda["codice"])) : ?>
<?php if($deletable && $pendingCancellazione): ?>
<a class="dropdown-item text-danger" href="javascript:void(0)" onclick="npa.eliminaScheda(event, <?= $codice ?>)" >
<i class="fas fa-trash mr-2"></i>
<?= __("Ottieni esito cancellazione") ?>
</a>
<?php endif; ?>
<?php if($deletable && $deletableServerSide && !$pendingCancellazione): ?>
<a class="dropdown-item text-danger" href="javascript:void(0)" onclick="npa.eliminaScheda(event, <?= $codice ?>)" >
<i class="fas fa-trash mr-2"></i>
<?= $elimina_text ?>
</a>
<?php endif; ?>
<?php if(!empty($npa->scheda["codice_rettifica"])): ?>
<?php if ($npa->checkIfCardNeedsXMLDocument() && ($npa->scheda["stato"] == 10 || ($npa->scheda["stato"] > 10 && $npa->scheda["stato"] <= 40 && $npa->scheda["errore"] == "SI"))) : ?>
<a class="dropdown-item text-primary <?= $lock ? 'disabled' : null ?>" <?= $lock ? 'disabled="disabled"' : null ?> href="javascript:void(0)" onclick="rectifyCard('<?= $npa->scheda['codice'] ?>', '<?= $npa->scheda['id_scheda'] ?>')">
<i class="fas fa-edit mr-2"></i>
<?= __("Pubblica rettifica") ?>
</a>
<?php endif; ?>
<?php if (!$pendingCancellazione && $npa->scheda["stato"] == 90 && $npa->scheda["errore"] == "NO") : ?>
<a class="dropdown-item ignore-lock text-primary" href="javascript:void(0)" onclick="rectifyCard('<?= $npa->scheda['codice'] ?>', '<?= $npa->scheda['id_scheda'] ?>')">
<i class="fas fa-edit mr-2"></i>
<?= __("Ottieni esito rettifica") ?>
</a>
<?php endif; ?>
<?php elseif(!empty($npa->scheda["codice_modifica"])): ?>
<?php if ($npa->checkIfCardNeedsXMLDocument() && ($npa->scheda["stato"] == 10 || ($npa->scheda["stato"] > 10 && $npa->scheda["stato"] <= 40 && $npa->scheda["errore"] == "SI"))) : ?>
<a class="dropdown-item text-primary <?= $lock ? 'disabled' : null ?>" <?= $lock ? 'disabled="disabled"' : null ?> href="javascript:void(0)" onclick="modifyCard('<?= $npa->scheda['codice'] ?>', '<?= $npa->scheda['id_scheda'] ?>')">
<i class="fas fa-edit mr-2"></i>
<?= __("Pubblica modifica") ?>
</a>
<?php endif; ?>
<?php if (!$pendingCancellazione && $npa->scheda["stato"] == 90 && $npa->scheda["errore"] == "NO") : ?>
<a class="dropdown-item ignore-lock text-primary" href="javascript:void(0)" onclick="modifyCard('<?= $npa->scheda['codice'] ?>', '<?= $npa->scheda['id_scheda'] ?>')">
<i class="fas fa-edit mr-2"></i>
<?= __("Ottieni esito modifica") ?>
</a>
<?php endif; ?>
<?php else: ?>
<?php if ($npa->checkIfCardNeedsXMLDocument() && ($npa->scheda["stato"] == 10 || ($npa->scheda["stato"] > 10 && $npa->scheda["stato"] <= 40 && $npa->scheda["errore"] == "SI"))) : ?>
<a class="dropdown-item text-primary <?= $lock ? 'disabled' : null ?>" <?= $lock ? 'disabled="disabled"' : null ?> href="javascript:void(0)" onclick="dispatchCard('<?= $npa->scheda['codice'] ?>', '<?= $npa->scheda['id_scheda'] ?>')">
<i class="fas fa-paper-plane mr-2"></i>
<?= __("Trasmetti ad ANAC") ?>
</a>
<?php endif; ?>
<?php if ($npa->canBeConfirmed($confirmRecovery)): ?>
<a class="dropdown-item text-primary" href="javascript:void(0)" onclick="confirmCard('<?= $npa->scheda['codice'] ?>', '<?= $npa->scheda['id_scheda'] ?>')">
<i class="fas fa-check mr-2"></i>
<?= $confirmRecovery ? __("Recupera conferma scheda") : ($npa->scheda["stato"] == 20 ? __("Conferma Scheda") : __("Ottieni esito conferma")) ?>
</a>
<?php endif; ?>
<?php if(!$pendingCancellazione && $npa->canBePublished()) : ?>
<a class="dropdown-item text-primary" href="javascript:void(0)" onclick="publishCard('<?= $npa->scheda['codice'] ?>', '<?= $npa->scheda['id_scheda'] ?>')">
<i class="fas fa-newspaper mr-2"></i>
<?= $npa->scheda["stato"] == NuovaPiattaformaAppalti::TRASMITTED_STATO ? __("Pubblica Scheda") : __("Ottieni esito pubblicazione") ?>
</a>
<?php endif; ?>
<?php endif; ?>
<?php if (($npa->scheda["stato"] == 100 ) && $npa->scheda["errore"] == "NO" && DEVELOP_ENV) : ?>
<a class="dropdown-item" href="javascript:void(0)" onclick="publishCard('<?= $npa->scheda['codice'] ?>', '<?= $npa->scheda['id_scheda'] ?>')">DBG: Forza refresh stato pubblicazione</a>
<?php endif; ?>
<?php endif; ?>
<?php $azioniNpa = ob_get_clean(); ?>
<?php if(!empty(trim($azioniNpa))): ?>
<div class="btn-group">
<button type="button" class="ml-3 npa-nav-button btn btn-secondary dropdown-toggle ignore-lock" data-toggle="dropdown" aria-expanded="false">
<i class="fas fa-cog"></i>
<span class="nav-text ml-2"><?= __guue("Azioni NPA") ?></span>
</button>
<div class="dropdown-menu">
<?= $azioniNpa ?>
</div>
</div>
<?php else: ?>
<?php if(!$_SESSION["utente"]->isSupporto()) : ?>
<button class="btn btn-secondary ml-2" disabled>
<i class="fa fa-exclamation-circle mr-2"></i>
<span class="nav-text ml-2"><?= __("Nessuna azione NPA disponibile") ?></span>
</button>
<?php endif; ?>
<?php endif; ?>
<?
}
}
}
?>
<?php endif; ?>