openstamanager/modules/utenti/user.php

123 lines
3.5 KiB
PHP
Raw Normal View History

<?php
2020-09-07 15:04:06 +02:00
/*
* OpenSTAManager: il software gestionale open source per l'assistenza tecnica e la fatturazione
2021-01-20 15:08:51 +01:00
* Copyright (C) DevCode s.r.l.
2020-09-07 15:04:06 +02:00
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
include_once __DIR__.'/../../core.php';
use Models\Group;
use Models\User;
2017-09-12 14:53:19 +02:00
Permissions::check('rw');
$id_utente = filter('id_utente');
$user = User::find($id_utente);
$utente = $user ? $user->toArray() : [];
// Gruppo della selezione
if (!empty($id_record)) {
2024-07-30 16:11:52 +02:00
$gruppo_utente = $user ? $user->group->getTranslation('title') : 0;
2018-06-26 14:30:26 +02:00
$gruppi = [
'Clienti' => 'Cliente',
'Tecnici' => 'Tecnico',
'Agenti' => 'Agente',
];
$gruppo = $gruppi[$gruppo_utente];
}
2017-09-12 14:53:19 +02:00
// Lettura sedi dell'utente già impostate
if (!empty($user)) {
$sedi = $dbo->fetchOne('SELECT GROUP_CONCAT(idsede) as sedi FROM zz_user_sedi WHERE id_user='.prepare($id_utente).' GROUP BY id_user')['sedi'];
}
echo '
<form action="'.base_path().'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'" method="post" enctype="multipart/form-data" id="user_update">
<input type="hidden" name="op" value="update_user">
<input type="hidden" name="backto" value="record-edit">
2020-09-07 15:04:06 +02:00
<input type="hidden" name="id_utente" value="'.$utente['id'].'">';
include $structure->filepath('components/photo.php');
include $structure->filepath('components/base.php');
2019-07-25 17:20:24 +02:00
if (!empty($user)) {
echo '
<div class="row">
<div class="col-md-12">
2019-07-30 16:51:33 +02:00
{[ "type": "checkbox", "label": "'.tr('Cambia password').'", "name": "change_password", "value": "0" ]}
2019-07-25 17:20:24 +02:00
</div>
</div>
2020-09-07 15:04:06 +02:00
2019-07-25 17:20:24 +02:00
<script>
2019-10-03 12:09:14 +02:00
function no_check_pwd(){
2019-07-30 16:51:33 +02:00
$("#password").attr("disabled", true);
$("#submit-button").attr("disabled", false).removeClass("disabled");
2019-10-03 12:09:14 +02:00
}
2020-09-07 15:04:06 +02:00
$("#modals > div").on("shown.bs.modal", function () {
2019-10-03 12:09:14 +02:00
no_check_pwd();
2019-07-30 16:51:33 +02:00
});
2019-07-25 17:20:24 +02:00
$("#change_password").change(function() {
if (this.checked) {
$("#password").attr("disabled", false);
$("#password").change();
} else {
2019-10-03 12:09:14 +02:00
no_check_pwd();
2019-07-25 17:20:24 +02:00
}
2019-10-03 12:09:14 +02:00
});
2019-07-25 17:20:24 +02:00
</script>';
}
include $structure->filepath('components/password.php');
echo '
<!-- PULSANTI -->
<div class="row">
<div class="col-md-12 text-right">
<button type="button" onclick="submitCheck()" class="btn btn-primary" id="submit-button">';
if (empty($user)) {
echo '
<i class="fa fa-plus"></i> '.tr('Aggiungi');
} else {
echo '
<i class="fa fa-edit"></i> '.tr('Modifica');
}
echo '
</button>
</div>
</div>
2020-09-07 15:04:06 +02:00
</form>
<script>
function submitCheck() {
var username = parseInt($("#username").attr("valid"));
2020-09-07 15:04:06 +02:00
if(username) {
$("#user_update").submit();
}else{
$("input[name=username]").focus();
swal("'.tr('Impossibile procedere').'", "'.tr('Username già esistente o troppo corto').'", "error");
}
}
</script>
2019-07-26 18:05:19 +02:00
<script>$(document).ready(init)</script>';