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)); } * */