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.
 
 
 
 
 

307 righe
17 KiB

<?
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php";
include_once($configPath);
if (!empty($_SESSION["utente"]) && isset($_GET["codice"]) && ($_SESSION["utente"]->permission("utenti",$_GET["codice"]) || $_SESSION["utente"]->codice == $_GET["codice"])) {
$bind = array();
$bind[":codice"] = $_GET["codice"];
$sql = "SELECT b_utenti.* FROM b_utenti WHERE b_utenti.codice = :codice ";
$ris_utenti = $pdo->go($sql,$bind);
if (isset($ris_utenti) && $ris_utenti->rowCount() === 1) {
$record = $ris_utenti->fetch(PDO::FETCH_ASSOC);
} else if (empty($_GET["codice"]) && $_SESSION["utente"]->permission("utenti")) {
$record = get_campi("b_utenti");
if (isset($_SESSION["ente"])) { $record["ruolo"] = "USR"; }
}
if (!empty($record)) {
$ruoli = utente::ruoli();
$gerarchia = $ruoli[$record["ruolo"]]["gerarchia"] ?? 0;
$_change_cf = true;
if(($_SESSION["utente"]->authenticationLevel == 2 || $_SESSION["utente"]->publicSSO == "SPID") && $record["codice"] == $_SESSION["utente"]->codice) { $_change_cf = false; }
if ($_SESSION["utente"]->gerarchia <= $gerarchia || $record["codice"] == $_SESSION["utente"]->codice || empty($record["codice"])) {
if ($record["codice"] == $_SESSION["utente"]->codice) {
?>
<div class="text-right p-3">
<?
if (!empty($record["spidCode"])) {
?>
<button type="button" class="btn btn-danger" onClick="eliminaP('<?= $record["codice"] ?>','profilo/spid');"><span class="fa fa-times"></span> <?= __("Disattiva autenticazione tramite SPID") ?></button>
<?
} else {
if (isset($_SESSION["ente"]) && $_SESSION["ente"]->checkSPID()) {
?>
<?= __("Effettua l'accesso con le tue credenziali SPID per collegare il tuo account e utilizzarle nei prossimi accessi alla piattaforma") ?>
<div class="mt-1">
<? SpidSA::printLoginButton(); ?>
</div>
<?
}
}
?>
</div>
<?
}
?>
<script src="/src/js/extra/password-generator.js"></script>
<form rel="validate" method="post" action="/backend/utenti/save.php" autocomplete="false" id="edit-form">
<input id="token" type="hidden" name="token" value="<?= tokenGen() ?>">
<input id="codice" type="hidden" name="codice" value="<?= $record["codice"] ?>">
<div class="card mb-3">
<div class="card-header">
<h3 class="mb-0 font-weight-bold"><?= __("Credenziali") ?></h3>
</div>
<div class="card-body">
<div class="row">
<div class="col-12 col-lg-5">
<div class="form-group">
<label for="email"><?= __("Indirizzo e-mail") ?>*</label>
<input name="email" data-codice="<?= $record["codice"] ?>" type="text" class="form-control" id="email" value="<?= $record["email"] ?>" title="<?= __("Indirizzo e-mail") ?>" rel="S;2;100;E;/profilo/check.php">
</div>
</div>
<div class="col-12 col-lg-5">
<div class="form-group">
<label for="password"><?= __("Password") ?></label>
<? if (empty($record["codice"])) {
$rel = "S;8;32;P;check-password;=";
$rel_check = "S;8;32;P";
$disabled = "";
} else { ?>
<div class="input-group">
<div class="input-group-prepend">
<div class="input-group-text">
<input type="checkbox" id="edit-password" onchange="change_password();"></span>
</div>
</div>
<?
$rel = "N;8;32;P";
$rel_check = "N;8;32;P";
$disabled = "disabled";
}
?>
<input name="password" type="password" class="form-control" id="password" title="<?= __("Password") ?>" rel="<?= $rel ?>" <?= $disabled ?>>
<? if (!empty($record["codice"])) { ?></div><? } ?>
</div>
<div class="form-group">
<input type="password" class="form-control" <? if (!empty($record["codice"])) { ?>style="display:none"<? } ?> id="check-password" title="<?= __("Ripeti") ?> <?= __("password") ?>" rel="<?= $rel_check ?>" <?= $disabled ?>>
</div>
<pre id="suggest" class="p-1 bg-success text-white" style="display:none"></pre>
<button type="button" class="btn-block btn-sm" onClick="$('#suggest').html(customPassword()).slideDown(); return false;"><?= __("suggerisci") ?></button>
</div>
<div class="col-12 col-lg-2">
<div class="form-group">
<label for="attivo"><?= __("Attivo") ?>*</label>
<select name="attivo" id="attivo" title="<?= __("Attivo") ?>" rel="S;1;1;A">
<option value=""><?= __("Seleziona") ?>...</option>
<option value="S"><?= __("Si") ?></option>
<option value="N"><?= __("No") ?></option>
</select>
<? if (!empty($record["attivo"])) { ?>
<script>
$("#attivo").val('<?= $record["attivo"] ?>');
</script>
<? } ?>
</div>
</div>
</div>
<? if (empty($_SESSION["ente"]) && $_SESSION["utente"]->gerarchia < 9) { ?>
<div class="form-group">
<label for="ruolo"><?= __("Ruolo") ?>*</label>
<select class="form-control" name="ruolo" id="ruolo" onChange="$('#form-gruppo_consulenza').slideUp(); $('#gruppo_consulenza').attr('rel','N;0;0;N'); if ($(this).val() == 'USR') { $('#card-collaborazioni').slideDown(); } else { $('#card-collaborazioni').slideUp(); if ($(this).val() == 'CON') { $('#form-gruppo_consulenza').slideDown(); $('#gruppo_consulenza').attr('rel','S;0;0;N'); }}" rel="S;1;0;A" title="<?= __("Ruolo") ?>">
<?
foreach($ruoli AS $id_ruolo => $ruolo) {
if ($ruolo["admin"] && $ruolo["gerarchia"] >= $_SESSION["utente"]->gerarchia) {
?>
<option value="<?= $id_ruolo ?>"><?= $ruolo["nome"] ?></option>
<?
}
}
?>
</select>
<? if (isset($record["ruolo"])) { ?>
<script>
$("#ruolo").val('<?= $record["ruolo"] ?>');
</script>
<? } ?>
</div>
<div class="form-group" id="form-gruppo_consulenza" <?= $record["ruolo"] == "CON" ? "" : "style='display:none'" ?>>
<label for="gruppo_consulenza"><?= __("Gruppo consulenza") ?>*</label>
<select name="gruppo_consulenza" id="gruppo_consulenza" title="<?= __("Gruppo consulenza") ?>" rel="<?= $record["ruolo"] == "CON" ? "S" : "N'" ?>;0;0;N" class="form-control">
<option value="0">STUDIO AMICA</option>
<?
$sql = "SELECT * FROM b_gruppi_consulenza WHERE 1 ORDER BY denominazione ";
$ris = $pdo->go($sql);
if ($ris->rowCount() > 0) {
while ($rec = $ris->fetch(PDO::FETCH_ASSOC)) {
echo "<option value=\"" . $rec["codice"] . "\"" . (($record["gruppo_consulenza"] == $rec["codice"]) ? " selected" : "") . ">" . $rec["denominazione"] . "</option>";
}
}
?>
</select>
</div>
<? } ?>
</div>
</div>
<? if ($_SESSION["utente"]->gerarchia <= 10) { ?>
<div class="card mb-3" <?= ($record["ruolo"] != "USR") ? 'style="display:none"' : ""?> id="card-collaborazioni">
<div class="card-header">
<h3 class="mb-0 font-weight-bold"><?= __("Collaborazioni") ?></h3>
</div>
<div class="card-body m-0 p-0" id="body-collaborazioni">
<?
$bind = [];
$bind[":codice_utente"] = $record["codice"];
$sql = "SELECT * FROM r_collaborazioni WHERE codice_utente = :codice_utente ";
if (!empty($_SESSION["ente"])) {
$bind[":codice_ente"] = $_SESSION["ente"]->codice;
$sql .= " AND codice_ente IN (SELECT codice FROM b_enti WHERE codice = :codice_ente OR sua = :codice_ente)";
if ($_SESSION["utente"]->gerarchia > 9) {
if (!$_SESSION["utente"]->fromHere()) {
$bind[":codice_ente"] = $_SESSION["utente"]->codice_ente;
}
$sql .= " AND codice_ente NOT IN (SELECT codice FROM b_enti WHERE sua = :codice_ente AND dominio IS NOT NULL AND dominio <> '' AND attivo = 'S') ";
}
}
$collaborazioni = $pdo->go($sql,$bind);
if ($collaborazioni->rowCount() > 0) {
while($collaborazione = $collaborazioni->fetch(PDO::FETCH_ASSOC)) {
include(__DIR__."/collaborazione.php");
}
}
?>
</div>
<div class="card-footer">
<button type="button" class="btn btn-block btn-info" onclick="aggiungi('/backend/utenti/collaborazione.php?codice=<?= $record["codice"] ?>','#body-collaborazioni');return false;" > Aggiungi collaborazione</button>
</div>
</div>
<? } ?>
<? if ($record["codice"] == $_SESSION["utente"]->codice) { ?>
<div class="card mb-3">
<div class="card-header">
<h3 class="mb-0 font-weight-bold"><?= __("Autenticazione a due fattori") ?></h3>
</div>
<div class="card-body">
<? if (!empty($record["twoFactor_token"])) { ?>
<div class="alert alert-success text-center">
<span class="fa fa-check-circle fa-2x"></span><br>
<?= __("Attiva") ?>
</div>
<button type="button" class="btn btn-block btn-danger" onClick="eliminaP('<?= $record["codice"] ?>','profilo/2fa');"><span class="fa fa-times"></span> <?= __("Disattiva autenticazione a due fattori") ?></button>
<? } else { ?>
<div class="alert alert-warning text-center">
<span class="fa fa-exclamation-circle fa-2x"></span><br>
<?= __("Disattiva") ?>
</div>
<button type="button" class="btn btn-block btn-success" onClick="showModalWithURL('/profilo/enable2FA.php');"><span class="fa fa-lock"></span> <?= __("Attiva autenticazione a due fattori") ?></button>
<? } ?>
</div>
</div>
<?
$themes = getThemes();
if (count($themes) > 0) {
?>
<div class="card mb-3">
<div class="card-header">
<h3 class="mb-0 font-weight-bold"><?= __("Tema grafico") ?></h3>
</div>
<div class="card-body">
<? $selected = $record["theme"]; ?>
<select name="theme" title="<?= __("Tema grafico") ?>" id="theme">
<option value="">Default</option>
<?
foreach($themes AS $key => $theme) {
?>
<option value="<?= $key ?>" <?= ($selected == $key) ? "selected" : "" ?>>
<?= $theme["titolo"] ?>
<? if (!empty($theme["palette"])) {
if (is_array($theme["palette"])) { $theme["palette"] = "light"; }
?>
- <?= strtoupper($theme["palette"]) ?>
<?
} ?>
</option>
<?
}
?>
</select>
</div>
</div>
<? } ?>
<? } ?>
<div class="card mb-3">
<div class="card-header">
<h3 class="mb-0 font-weight-bold"><?= __("Anagrafica") ?></h3>
</div>
<div class="card-body">
<div class="row">
<div class="col-sm-4">
<div class="form-group">
<label for="cognome"><?= __("Cognome") ?>*</label>
<input name="cognome" type="text" class="form-control" id="cognome" value="<?= $record["cognome"] ?>" title="<?= __("Cognome") ?>" rel="S;2;50;A">
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<label for="nome"><?= __("Nome") ?>*</label>
<input name="nome" type="text" class="form-control" id="nome" value="<?= $record["nome"] ?>" title="<?= __("Nome") ?>" rel="S;2;50;A">
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<label for="cf"><?= __("codice Fiscale") ?>
<?= (!$_SESSION["utente"]->isSupportoOrRoot()) ? "*" : "" ?></label>
<input name="cf" <?= ! $_change_cf ? 'disabled="disabled"' : '' ?> type="text" class="form-control <?= ! $_change_cf ? 'disabled' : ''?>" id="cf" value="<?= $record["cf"] ?>" title="<?= __("codice Fiscale") ?>" rel="<?= (!$_SESSION["utente"]->isSupportoOrRoot()) ? "S" : "N" ?>;16;16;CF">
<? if (empty($record["cf"])) {
alertManager::printWarningCompact(__("Inserire il dato mancante"));
}?>
</div>
</div>
</div>
<div class="form-group">
<label for="indirizzo"><?= __("Indirizzo") ?></label>
<input name="indirizzo" type="text" class="form-control" id="indirizzo" value="<?= $record["indirizzo"] ?>" title="<?= __("Indirizzo") ?>" rel="N;2;255;A">
</div>
<div class="row">
<div class="col-sm-8">
<div class="form-group">
<label for="citta"><?= __("Citta") ?></label>
<input name="citta" class="form-control" id="citta" title="<?= __("citta") ?>" rel="N;1;255;A" value="<?= $record["citta"] ?>">
</div>
</div>
<div class="form-group col-sm-2">
<label for="provincia"><?= __("Provincia") ?></label>
<input name="provincia" class="form-control" id="provincia" title="<?= __("Provincia") ?>" rel="N;1;255;A" value="<?= $record["provincia"] ?>">
</div>
<div class="form-group col-sm-2">
<label for="cap"><?= __("CAP") ?></label>
<input name="cap" class="form-control" id="cap" title="<?= __("CAP") ?>" rel="N;1;255;A" value="<?= $record["cap"] ?>">
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="form-group">
<label for="telefono"><?= __("Telefono") ?></label>
<input name="telefono" type="text" class="form-control" id="telefono" value="<?= $record["telefono"] ?>" title="<?= __("Telefono") ?>" rel="N;2;255;A">
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<label for="cellulare"><?= __("Cellulare") ?></label>
<input name="cellulare" type="text" class="form-control" id="cellulare" value="<?= $record["cellulare"] ?>" title="<?= __("Cellulare") ?>" rel="N;2;20;A">
</div>
</div>
</div>
<div class="form-group">
<label for="pec"><?= __("PEC") ?></label>
<input name="pec" type="text" class="form-control" id="pec" value="<?= $record["pec"] ?>" title="<?= __("pec") ?>" rel="N;2;255;E">
</div>
</div>
</div>
<button type="submit" class="btn btn-block btn-success"><span class="fa fa-save"></span> <?= __("Salva") ?></button>
</form>
<?
die();
}
}
}
header('HTTP/1.0 403 Forbidden');
die();
?>