ControllaPeriodoPreparazione() && !$bando_setup->ControllaPeriodoClickDay() && !$bando_setup->ControllaPeriodoErogazione()) {
$return['esito'] = -999;
$return['erroreDescrizione'] = 'Il servizio non è attivo.';
exit(json_encode($return));
}
}
$con->db_transactionStart();
$transaction = false;
$codFisc = trim($_REQUEST['codice_fiscale']);
$uid_spid = new UID_SPID();
$uid_spid->CODICE_FISCALE = $codFisc;
$resSpid = $uid_spid->Save();
if ($resSpid['esito'] == 1) {
$id_accountCodiFis = Account::selectIdFromCodiceF($uid_spid->CODICE_FISCALE);
if ($id_accountCodiFis['esito'] == 1) {
$LoggedAccount = new Account($id_accountCodiFis['ID']);
$LoggedAccount->SchedaPersona = SchedaPersona::Load();
$LoggedAccount->SPID_MOBILE_PHONE = '12456789';
$LoggedAccount->SPID_TIPO_DOCUMENTO = 'CARTA IDENTITà';
$LoggedAccount->SPID_NUMERO_DOCUMENTO = "111122223333";
$LoggedAccount->SPID_ENTE_RILASCIO = 'COMUNE';
$LoggedAccount->SPID_DATA_RILASCIO = "01/01/2020";
$LoggedAccount->SPID_DATA_SCADENZA = "31/12/2021";
$_SESSION['ID'] = $LoggedAccount->ID;
$_SESSION['ControllaPeriodoPreparazione'] = $bando_setup->ControllaPeriodoPreparazione();
$_SESSION['ControllaPeriodoClickDay'] = $bando_setup->ControllaPeriodoClickDay();
$_SESSION['ControllaPeriodoErogazione'] = $bando_setup->ControllaPeriodoErogazione();
$_SESSION['LoggedAccount'] = json_encode($LoggedAccount);
$transaction = true;
} else {
$account = new Account();
$account->CODICE_FISCALE = $codFisc;
$respAccount = $account->Save();
if ($respAccount['esito'] == 1) {
$LoggedAccount = $account;
$LoggedAccount->SchedaPersona = SchedaPersona::Load();
$LoggedAccount->CODICE_FISCALE = $uid_spid->CODICE_FISCALE;
$LoggedAccount->SPID_MOBILE_PHONE = '12456789';
$LoggedAccount->SPID_TIPO_DOCUMENTO = 'CARTA IDENTITà';
$LoggedAccount->SPID_NUMERO_DOCUMENTO = "111122223333";
$LoggedAccount->SPID_ENTE_RILASCIO = 'COMUNE';
$LoggedAccount->SPID_DATA_RILASCIO = "01/01/2020";
$LoggedAccount->SPID_DATA_SCADENZA = "31/12/2021";
$_SESSION['ID'] = $LoggedAccount->ID;
$_SESSION['ControllaPeriodoPreparazione'] = $bando_setup->ControllaPeriodoPreparazione();
$_SESSION['ControllaPeriodoClickDay'] = $bando_setup->ControllaPeriodoClickDay();
$_SESSION['ControllaPeriodoErogazione'] = $bando_setup->ControllaPeriodoErogazione();
$_SESSION['LoggedAccount'] = json_encode($LoggedAccount);
$transaction = true;
}
}
} else {
$return['esito'] = -999;
$return['erroreDescrizione'] = $resSpid['erroreDescrizione'];
}
if ($transaction) {
$return['esito'] = 1;
$con->db_transactionCommit();
} else {
$return['esito'] = -999;
$return['erroreDescrizione'] = "Attenzione , riprovare o contattare il Personale Tecnico";
$con->db_transactionRollback();
}
exit(json_encode($return));
}
function saveConsenso() {
global $LoggedAccount;
if ($_REQUEST['consenso']) {
$result = array();
$resultSave = array();
$account = new Account($LoggedAccount->ID);
$account->CONSENSO = 1;
// unset($_SESSION['LoggedAccount']);
// Utils::print_array($_SESSION);exit();
$resultSave = $account->Save();
if ($resultSave['esito'] == 1) {
$temporany=json_decode($_SESSION['LoggedAccount'], true);
$temporany['CONSENSO']=1;
$_SESSION['LoggedAccount']=json_encode($temporany);
$LoggedAccount = new Account($account->ID);
$result['esito'] = 1;
} else {
$result['esito'] = -999;
$result['erroreDescrizione'] = $resultSave['erroreDescrizione'];
}
} else {
$result['esito'] = -999;
$result['erroreDescrizione'] = "E' necessario prestare il consenso al trattamento dei dati per usufruire dei servizi della piattaforma";
}
exit(json_encode($result));
}
function sendPassword() {
$result = array();
$email = Utils::get_filter_string('email');
if ($email == "") {
$result['erroreDescrizione'] = "Attenzione inserire l'indirizzo E-mail";
} else {
$risposta_Account = Account::selectId($email);
$account = new Account($risposta_Account['ID']);
$resultSendPass = Utils::sendPwdResetFirebase(trim($email));
if ($resultSendPass['esito'] == 1) {
$result['esito'] = 1;
} else {
$result['esito'] = -999;
$result['erroreDescrizione'] = $resultSendPass['erroreDescrizione'];
}
}
exit(json_encode($result));
}
function sendMail() {
$result = array();
$token = trim($_REQUEST['token']);
$account = new Account($risposta_Account['ID']);
if ($account->VERIFICATO == 0) {
$resultSendMail = Utils::sendVerificationMailFirebase($token);
// print_r($resultSendMail);
if ($resultSendMail['esito'] == 1) {
$result['esito'] = 1;
} else {
$result['esito'] = -999;
$result['erroreDescrizione'] = $resultSendMail['erroreDescrizione'];
}
} else {
$result['erroreDescrizione'] = "Attenzione l'indirizzo email risulta già attivo";
}
exit(json_encode($result));
}
function login() {
global $con, $LoggedAccount, $bando_setup;
$return = array();
$return['bottone'] = 0;
$return['token'] = 0;
if (!$bando_setup->ControllaPeriodoPreparazione() && ATTIVA_CONTROLO_BANDO_LOGIN) {
$return['esito'] = -999;
$return['erroreDescrizione'] = 'Il servizio della preparazione della domanda non è attivo.';
exit(json_encode($return));
}
$rGoogle = Utils::loginFirebase($_REQUEST['email'], $_REQUEST['password']);
if ($rGoogle['esito'] == 1) {
$id_firebase = UID_FIREBASE::selectId($_REQUEST['email']);
$uid_firebase = new UID_FIREBASE($id_firebase['ID']);
if ($uid_firebase->VERIFICATO == 0) {
$verifcato = Utils::getUserDataFirebase($rGoogle['dati']['idToken']);
if ($verifcato['esito'] == 1) {
if ($verifcato['dati']['users'][0]['emailVerified'] == 1) {
$uid_firebase->VERIFICATO = 1;
$returnAccount = $uid_firebase->Save();
if ($returnAccount['esito'] == 1) {
$return['esito'] = 1;
$id_accountCodiFis = Account::selectIdFromCodiceF($uid_firebase->CODICE_FISCALE);
$LoggedAccount = new Account($id_accountCodiFis['ID']);
$LoggedAccount->SchedaPersona = SchedaPersona::Load();
$LoggedAccount->COGNOME = "CONTE";
$LoggedAccount->NOME = "AMERIGO";
$LoggedAccount->CODICE_FISCALE = "BSSRNT54P18H501Q";
$LoggedAccount->SPID_MOBILE_PHONE = "328123456";
$LoggedAccount->SPID_EMAIL = "ameconte@gmail.com";
$LoggedAccount->SPID_TIPO_DOCUMENTO = "CartaIdentità";
$LoggedAccount->SPID_NUMERO_DOCUMENTO = "AS09452389";
$LoggedAccount->SPID_ENTE_RILASCIO = "ComuneRoma";
$LoggedAccount->SPID_DATA_RILASCIO = "02-01-2013";
$LoggedAccount->SPID_DATA_SCADENZA = "31-01-2013";
$_SESSION['ID'] = $LoggedAccount->ID;
$_SESSION['ControllaPeriodoPreparazione'] = $bando_setup->ControllaPeriodoPreparazione();
$_SESSION['ControllaPeriodoClickDay'] = $bando_setup->ControllaPeriodoClickDay();
$_SESSION['LoggedAccount'] = json_encode($LoggedAccount);
} else {
$return['esito'] = -999;
$return['erroreDescrizione'] = $returnAccount['erroreDescrizione'];
}
} else {
$return['bottone'] = 1;
$return['token'] = $rGoogle['dati']['idToken'];
$return['esito'] = -999;
$return['erroreDescrizione'] = "Verifica mail non riuscita! E' necessario confermare la creazione dell'account tramite il link contenuta nella mail ricevuta. Se non hai ricevuto la mail, clicca su Reinvia Mail per riceverne una nuova.";
}
} else {
$return['esito'] = -999;
$return['erroreDescrizione'] = $rGoogle['erroreDescrizione'];
}
} else {
$return['esito'] = 1;
$id_accountCodiFis = Account::selectIdFromCodiceF($uid_firebase->CODICE_FISCALE);
$LoggedAccount = new Account($id_accountCodiFis['ID']);
$LoggedAccount->SchedaPersona = SchedaPersona::Load();
$LoggedAccount->COGNOME = "CONTE";
$LoggedAccount->NOME = "AMERIGO";
$LoggedAccount->CODICE_FISCALE = "BSSRNT54P18H501Q";
$LoggedAccount->SPID_MOBILE_PHONE = "328123456";
$LoggedAccount->SPID_EMAIL = "ameconte@gmail.com";
$LoggedAccount->SPID_TIPO_DOCUMENTO = "CartaIdentità";
$LoggedAccount->SPID_NUMERO_DOCUMENTO = "AS09452389";
$LoggedAccount->SPID_ENTE_RILASCIO = "ComuneRoma";
$LoggedAccount->SPID_DATA_RILASCIO = "02-01-2013";
$LoggedAccount->SPID_DATA_SCADENZA = "31-01-2013";
$_SESSION['ID'] = $LoggedAccount->ID;
$_SESSION['ControllaPeriodoPreparazione'] = $bando_setup->ControllaPeriodoPreparazione();
$_SESSION['ControllaPeriodoClickDay'] = $bando_setup->ControllaPeriodoClickDay();
$_SESSION['LoggedAccount'] = json_encode($LoggedAccount);
}
} else {
$return['esito'] = -999;
$return['erroreDescrizione'] = $rGoogle['erroreDescrizione'];
}
// } else {
// $return['esito'] = -999;
// $return['erroreDescrizione'] = "Attenzione l'utente inserito non è presente all'interno dell'applicativo";
// }
exit(json_encode($return));
}
function save() {
global $con;
$return = array();
$ricevuto = array();
$return['esito'] = 1;
$con->db_transactionStart();
$creazione = time();
$ricevuto = Utils::requestDati($_REQUEST);
$account = new Account();
$transaction = false;
/*
* Chiamata Curl Firebase per la memorizzazione dei dati
*/
$signInFirebase = Utils::signUpFirebase($ricevuto['EMAIL'], $_REQUEST['PASSWORD']);
if ($signInFirebase['esito'] == 1) {
$codice_fiscale = UID_FIREBASE::controlloCodiceFiscale($ricevuto['CODICE_FISCALE']);
if ($codice_fiscale['esito'] == 1) {
$accountGoogle = new UID_FIREBASE();
$accountGoogle->GUID = $signInFirebase['dati']['localId'];
$accountGoogle->CODICE_FISCALE = $ricevuto['CODICE_FISCALE'];
$accountGoogle->EMAIL = $signInFirebase['dati']['email'];
$accountGoogle->RECAPITO = $ricevuto['RECAPITO_TELEFONICO'];
$resultSave = $accountGoogle->Save();
if ($resultSave['esito'] == 1) {
$controlloAccountCodFis = Account::controlloCodiceFiscale($accountGoogle->CODICE_FISCALE);
if ($controlloAccountCodFis['esito'] == 1) {
$account = new Account();
$account->CODICE_FISCALE = $accountGoogle->CODICE_FISCALE;
$resultAccount = $account->Save();
if ($resultAccount['esito'] == 1) {
$return['esito'] = 1;
$transaction = true;
} else {
$return['esito'] = -999;
// $return['sql'] = $resultAccount['sql'];
$return['erroreDescrizione'] = "Attenzione c'è stato un problema sul salvataggio";
}
} else {
$return['esito'] = 1;
$transaction = true;
}
} else {
$return['esito'] = -999;
// $return['sql'] = $resultSave['sql'];
$return['erroreDescrizione'] = $resultSave['erroreDescrizione'];
}
} else {
$return['esito'] = -999;
$return['erroreDescrizione'] = $codice_fiscale['erroreDescrizione'];
}
} else {
$return['esito'] = -999;
$return['erroreDescrizione'] = $signInFirebase['erroreDescrizione'];
}
if ($transaction) {
$con->db_transactionCommit();
Utils::sendVerificationMailFirebase($signInFirebase['dati']['idToken']);
} else {
$con->db_transactionRollback();
Utils::deleteUtenteFirebase($signInFirebase['dati']['idToken']);
}
exit(json_encode($return));
}
/*
function listUtenti() {
$draw = $_POST['draw'];
$row = $_POST['start'];
$rowperpage = $_POST['length']; // Rows display per page
$columnIndex = $_POST['order'][0]['column']; // Column index
$columnName = $_POST['columns'][$columnIndex]['data']; // Column name
$columnSortOrder = $_POST['order'][0]['dir']; // asc or desc
$searchValue = $_POST['search']['value']; // Search value
$data = array();
$searchArray = array();
## Search
$searchQuery = "";
if ($searchValue != '') {
$searchQuery = " AND ( lower(cognome) LIKE :descrizione) ";
$searchArray = array(
'descrizione' => "%$searchValue%"
);
}
$res = UTENTE::LoadDataTable($searchQuery, $searchArray, $columnName, $columnSortOrder, $row, $rowperpage);
foreach ($res['empRecords'] as $row) {
$fnAddMod = '';
if ($row['stato'] == 0) {
$fnStato = '';
} else {
$fnStato = '';
}
$data[] = array(
"user" => $row['nome'] . " " . $row['cognome'],
"mail" => $row['mail'],
"modifica" => $fnAddMod,
"cancellato" => $fnStato
);
}
## Response
$response = array(
"draw" => intval($draw),
"iTotalRecords" => $res['iTotalRecords'],
"iTotalDisplayRecords" => $res['iTotalDisplayRecords'],
"aaData" => $data
);
exit(json_encode($response));
}
*
*/