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.
598 righe
25 KiB
598 righe
25 KiB
<?php |
|
|
|
require_once "IDataClass.php"; |
|
/* |
|
* To change this license header, choose License Headers in Project Properties. |
|
* To change this template file, choose Tools | Templates |
|
* and open the template in the editor. |
|
*/ |
|
|
|
/** |
|
* Description of UTENTI |
|
* |
|
* @author Stefano |
|
*/ |
|
class Account extends DataClass { |
|
|
|
//put your code here |
|
const TABLE_NAME = "ACCOUNT"; |
|
const SEQ_NAME = "ACCOUNT_ID_SEQ"; |
|
|
|
public $ID = 0; // Primary key |
|
public $CODICE_FISCALE = ""; |
|
public $CONSENSO = 0; |
|
public $SchedaPersona = array(); |
|
public $SPID_MOBILE_PHONE = ""; |
|
public $SPID_TIPO_DOCUMENTO = ""; |
|
public $SPID_NUMERO_DOCUMENTO = ""; |
|
public $SPID_ENTE_RILASCIO = ""; |
|
public $SPID_DATA_RILASCIO = ""; |
|
public $SPID_DATA_SCADENZA = ""; |
|
public $SPID_EMAIL = ""; |
|
public $COGNOME = ""; |
|
public $NOME = ""; |
|
public $INRESPONSETO = ""; |
|
public $AUTHNINSTANT = 0; |
|
|
|
public function __construct($src = null) { |
|
global $con; |
|
if ($src == null) |
|
return; |
|
if (is_array($src)) { |
|
if (isset($src['ID']) && $src['ID'] > 0) { |
|
$this->_loadAndFillObject($src['ID'], self::TABLE_NAME, $src); |
|
} else { |
|
$this->_loadByRow($src, $stripSlashes); |
|
} |
|
} elseif (intval($src)) { |
|
$this->_loadById($src, self::TABLE_NAME, true); |
|
} |
|
$this->SchedaPersona = array(); |
|
} |
|
|
|
public static function loadObjFromCodiceF($codice_fiscale = "") { |
|
global $con; |
|
$return = new Account(); |
|
$verify = $con->prepare("SELECT * FROM " . self::TABLE_NAME . " WHERE CODICE_FISCALE=:cod "); |
|
$verify->bindParam(":cod", $codice_fiscale); |
|
try { |
|
$verify->execute(); |
|
$itVerify = $verify->fetch(PDO::FETCH_ASSOC); |
|
if (intval($itVerify['ID']) > 0) { |
|
Utils::FillObjectFromRow($return, $itVerify); |
|
} |
|
} catch (Exception $exc) { |
|
} |
|
return $return; |
|
} |
|
|
|
/* |
|
* Select id by Mail |
|
*/ |
|
|
|
public function selectId($email = "") { |
|
global $con; |
|
$return = array(); |
|
$return['esito'] = 1; |
|
$return['descrizioneErrore'] = ""; |
|
$verify = $con->prepare("SELECT ID FROM " . self::TABLE_NAME . " WHERE EMAIL=:email "); |
|
$verify->bindParam(":email", $email); |
|
try { |
|
$verify->execute(); |
|
$itVerify = $verify->fetch(PDO::FETCH_ASSOC); |
|
if (intval($itVerify['ID']) > 0) { |
|
$return['ID'] = $itVerify['ID']; |
|
$return['esito'] = 1; |
|
} else { |
|
$return['esito'] = -999; |
|
} |
|
} catch (Exception $exc) { |
|
$return['esito'] = -999; |
|
$return['descrizioneErrore'] = $exc->getMessage(); |
|
} |
|
return $return; |
|
} |
|
|
|
/* |
|
* Select id by codice Fiscale |
|
*/ |
|
|
|
public function selectIdFromCodiceF($codice_fiscale = "") { |
|
global $con; |
|
$return = array(); |
|
$verify = $con->prepare("SELECT ID FROM " . self::TABLE_NAME . " WHERE CODICE_FISCALE=:cod "); |
|
$verify->bindParam(":cod", $codice_fiscale); |
|
try { |
|
$verify->execute(); |
|
$itVerify = $verify->fetch(PDO::FETCH_ASSOC); |
|
if (intval($itVerify['ID']) > 0) { |
|
$return['ID'] = $itVerify['ID']; |
|
$return['esito'] = 1; |
|
} else { |
|
$return['esito'] = -999; |
|
} |
|
} catch (Exception $exc) { |
|
$return['esito'] = -999; |
|
$return['descrizioneErrore'] = $exc->getMessage(); |
|
} |
|
return $return; |
|
} |
|
|
|
/* |
|
* controllo presenza codice Fiscale |
|
*/ |
|
|
|
public function controlloCodiceFiscale($codice_fiscale = "") { |
|
global $con; |
|
$return = array(); |
|
$return['esito'] = 1; |
|
$return['descrizioneErrore'] = ""; |
|
$verify = $con->prepare("SELECT ID FROM " . self::TABLE_NAME . " WHERE CODICE_FISCALE=:codice_fiscale "); |
|
$verify->bindParam(":codice_fiscale", $codice_fiscale); |
|
try { |
|
$verify->execute(); |
|
$itVerify = $verify->fetch(PDO::FETCH_ASSOC); |
|
if (intval($itVerify['ID']) > 0) { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = "Il codice fiscale dell'utente è già registrato"; |
|
} |
|
} catch (Exception $exc) { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = $exc->getMessage(); |
|
} |
|
return $return; |
|
} |
|
|
|
public static function LoadDataTable($searchQuery = "", $searchArray = array(), $columnName = array(), $columnSortOrder = array(), $start = 0, $offset = 0) { |
|
|
|
return parent::_loadDataTable(self::TABLE_NAME, $searchQuery, $searchArray, $columnName, $columnSortOrder, $start, $offset); |
|
} |
|
|
|
public static function login_spid($codice_fiscale = "", $mobilePhone = "", $email = "", $idCard = "", $inResponseTo = "", $AuthnInstant = 0) { |
|
|
|
global $con, $LoggedAccount, $bando_setup; |
|
session_name('SICILIAPEIFE_BONUSICILIA'); |
|
session_start(); |
|
|
|
$idCardArray = explode(" ", $idCard); |
|
$tipodocumento = $idCardArray[0]; |
|
$numerodocumento = $idCardArray[1]; |
|
/*BUG FIX TIMSPID*/ |
|
if(Utils::is_date($idCardArray[3])){ |
|
$enterilascio = $idCardArray[2]; |
|
$dataemissione = date("d-m-Y", strtotime($idCardArray[3])); |
|
$datascadenza = date("d-m-Y", strtotime($idCardArray[4])); |
|
}else{ |
|
$enterilascio = $idCardArray[2]. " ".$idCardArray[3]; |
|
$dataemissione = date("d-m-Y", strtotime($idCardArray[4])); |
|
$datascadenza = date("d-m-Y", strtotime($idCardArray[5])); |
|
} |
|
|
|
$return = array(); |
|
|
|
if(ATTIVA_CONTROLO_BANDO_LOGIN){ |
|
|
|
if (!$bando_setup->ControllaPeriodoPreparazione()) { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = 'Il servizio non è attivo.'; |
|
return $return; |
|
} |
|
|
|
} |
|
//echo "<br>CI ENTRO"; |
|
|
|
$con->db_transactionStart(); |
|
$transaction = false; |
|
$codFisc = trim($codice_fiscale); |
|
$uid_spid = new UID_SPID(); |
|
$uid_spid->CODICE_FISCALE = $codFisc; |
|
$uid_spid->INRESPONSETO = $inResponseTo; |
|
$resSpid = $uid_spid->Save(); |
|
//echo "<br>CI ENTRO<pre>". print_r($resSpid, true)."</pre>"; |
|
if ($resSpid['esito'] == 1) { |
|
//echo "<br>CI ENTRO 2"; |
|
$id_accountCodiFis = Account::selectIdFromCodiceF($uid_spid->CODICE_FISCALE); |
|
if ($id_accountCodiFis['esito'] == 1) { |
|
$account = new Account($id_accountCodiFis['ID']); |
|
$account->INRESPONSETO = $inResponseTo; |
|
$account->AUTHNINSTANT = $AuthnInstant; |
|
$respAccount = $account->Save(); |
|
//echo "<br>CI ENTRO 3"; |
|
if ($respAccount['esito'] == 1) { |
|
$LoggedAccount = $account; |
|
$LoggedAccount->SchedaPersona = SchedaPersona::Load($uid_spid->CODICE_FISCALE); |
|
$jsonEncodeLogged = json_encode($LoggedAccount); |
|
$jsonDecodeLogged = json_decode($jsonEncodeLogged, true); |
|
$LoggedAccount->COGNOME = $jsonDecodeLogged['SchedaPersona']['cognome']; |
|
$LoggedAccount->NOME = $jsonDecodeLogged['SchedaPersona']['nome']; |
|
$LoggedAccount->CODICE_FISCALE = $uid_spid->CODICE_FISCALE; |
|
$LoggedAccount->SPID_MOBILE_PHONE = $mobilePhone; |
|
$LoggedAccount->SPID_EMAIL = $email; |
|
$LoggedAccount->SPID_TIPO_DOCUMENTO = $tipodocumento; |
|
$LoggedAccount->SPID_NUMERO_DOCUMENTO = $numerodocumento; |
|
$LoggedAccount->SPID_ENTE_RILASCIO = $enterilascio; |
|
$LoggedAccount->SPID_DATA_RILASCIO = $dataemissione; |
|
$LoggedAccount->SPID_DATA_SCADENZA = $datascadenza; |
|
$_SESSION['ID'] = $LoggedAccount->ID; |
|
$_SESSION['ControllaPeriodoPreparazione'] = $bando_setup->ControllaPeriodoPreparazione(); |
|
$_SESSION['ControllaPeriodoAttestati'] = $bando_setup->ControllaPeriodoAttestati(); |
|
$_SESSION['LoggedAccount'] = json_encode($LoggedAccount); |
|
$transaction = true; |
|
//echo "<br>CI ENTRO 4"; |
|
} |
|
} else { |
|
$account = new Account(); |
|
$account->CODICE_FISCALE = $codFisc; |
|
$account->INRESPONSETO = $inResponseTo; |
|
$account->AUTHNINSTANT = $AuthnInstant; |
|
$respAccount = $account->Save(); |
|
if ($respAccount['esito'] == 1) { |
|
$LoggedAccount = $account; |
|
$LoggedAccount->SchedaPersona = SchedaPersona::Load($account->CODICE_FISCALE); |
|
|
|
$jsonEncodeLogged = json_encode($LoggedAccount); |
|
$jsonDecodeLogged = json_decode($jsonEncodeLogged, true); |
|
$LoggedAccount->COGNOME = $jsonDecodeLogged['SchedaPersona']['cognome']; |
|
$LoggedAccount->NOME = $jsonDecodeLogged['SchedaPersona']['nome']; |
|
$LoggedAccount->CODICE_FISCALE = $uid_spid->CODICE_FISCALE; |
|
$LoggedAccount->SPID_MOBILE_PHONE = $mobilePhone; |
|
$LoggedAccount->SPID_EMAIL = $email; |
|
$LoggedAccount->SPID_TIPO_DOCUMENTO = $tipodocumento; |
|
$LoggedAccount->SPID_NUMERO_DOCUMENTO = $numerodocumento; |
|
$LoggedAccount->SPID_ENTE_RILASCIO = $enterilascio; |
|
$LoggedAccount->SPID_DATA_RILASCIO = $dataemissione; |
|
$LoggedAccount->SPID_DATA_SCADENZA = $datascadenza; |
|
$_SESSION['ID'] = $LoggedAccount->ID; |
|
$_SESSION['ControllaPeriodoPreparazione'] = $bando_setup->ControllaPeriodoPreparazione(); |
|
$_SESSION['ControllaPeriodoAttestati'] = $bando_setup->ControllaPeriodoAttestati(); |
|
$_SESSION['LoggedAccount'] = json_encode($LoggedAccount); |
|
$transaction = true; |
|
} |
|
} |
|
} else { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = $resSpid['erroreDescrizione']; |
|
} |
|
if ($transaction) { |
|
$return['esito'] = 1; |
|
$return['custom'] = "quimettocustom"; |
|
$con->db_transactionCommit(); |
|
} else { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = "Attenzione , riprovare o contattare il Personale Tecnico"; |
|
$con->db_transactionRollback(); |
|
} |
|
return($return); |
|
} |
|
|
|
public static function loginSpidDeroga($codice_fiscale = "", $mobilePhone = "", $email = "", $idCard = "", $inResponseTo = "", $AuthnInstant = 0) { |
|
|
|
global $con, $LoggedAccount, $bando_setup; |
|
$idCardArray = explode(" ", $idCard); |
|
$tipodocumento = $idCardArray[0]; |
|
$numerodocumento = $idCardArray[1]; |
|
/*BUG FIX TIMSPID*/ |
|
if(Utils::is_date($idCardArray[3])){ |
|
$enterilascio = $idCardArray[2]; |
|
$dataemissione = date("d-m-Y", strtotime($idCardArray[3])); |
|
$datascadenza = date("d-m-Y", strtotime($idCardArray[4])); |
|
}else{ |
|
$enterilascio = $idCardArray[2]. " ".$idCardArray[3]; |
|
$dataemissione = date("d-m-Y", strtotime($idCardArray[4])); |
|
$datascadenza = date("d-m-Y", strtotime($idCardArray[5])); |
|
} |
|
|
|
$return = array(); |
|
|
|
if(ATTIVA_CONTROLO_BANDO_LOGIN){ |
|
|
|
if (!$bando_setup->ControllaPeriodoDeroga() ) { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = 'Il servizio non è attivo.'; |
|
return $return; |
|
} |
|
|
|
} |
|
|
|
|
|
$con->db_transactionStart(); |
|
$transaction = false; |
|
$codFisc = trim($codice_fiscale); |
|
$uid_spid = new UID_SPID(); |
|
$uid_spid->CODICE_FISCALE = $codFisc; |
|
$uid_spid->INRESPONSETO = $inResponseTo; |
|
$resSpid = $uid_spid->Save(); |
|
if ($resSpid['esito'] == 1) { |
|
$id_accountCodiFis = Account::selectIdFromCodiceF($uid_spid->CODICE_FISCALE); |
|
echo "selectIdFromCodiceF"; |
|
Utils::print_array($id_accountCodiFis);exit(); |
|
if ($id_accountCodiFis['esito'] == 1) { |
|
$account = new Account($id_accountCodiFis['ID']); |
|
$account->INRESPONSETO = $inResponseTo; |
|
$account->AUTHNINSTANT = $AuthnInstant; |
|
$respAccount = $account->Save(); |
|
if ($respAccount['esito'] == 1) { |
|
|
|
|
|
$verificaDeroga = FixFile::verificaDeroga($uid_spid->CODICE_FISCALE); |
|
echo "verificaDeroga"; |
|
Utils::print_array($verificaDeroga);exit(); |
|
if($verificaDeroga['esito'] == 1){ |
|
|
|
$LoggedAccount = $account; |
|
/*$LoggedAccount->SchedaPersona = SchedaPersona::Load($uid_spid->CODICE_FISCALE); |
|
$amerigo = json_encode($LoggedAccount); |
|
$stefano = json_decode($amerigo, true); |
|
$LoggedAccount->COGNOME = $stefano['SchedaPersona']['cognome']; |
|
$LoggedAccount->NOME = $stefano['SchedaPersona']['nome'];*/ |
|
$LoggedAccount->CODICE_FISCALE = $uid_spid->CODICE_FISCALE; |
|
$LoggedAccount->SPID_MOBILE_PHONE = $mobilePhone; |
|
$LoggedAccount->SPID_EMAIL = $email; |
|
$LoggedAccount->SPID_TIPO_DOCUMENTO = $tipodocumento; |
|
$LoggedAccount->SPID_NUMERO_DOCUMENTO = $numerodocumento; |
|
$LoggedAccount->SPID_ENTE_RILASCIO = $enterilascio; |
|
$LoggedAccount->SPID_DATA_RILASCIO = $dataemissione; |
|
$LoggedAccount->SPID_DATA_SCADENZA = $datascadenza; |
|
$_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'] = 'Accesso alle deroghe non consentito'; |
|
} |
|
} |
|
}else{ |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = 'Accesso non consentito'; |
|
} |
|
} else { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = $resSpid['erroreDescrizione']; |
|
} |
|
if ($transaction) { |
|
$return['esito'] = 1; |
|
$return['custom'] = "quimettocustom"; |
|
$con->db_transactionCommit(); |
|
} else { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = "Attenzione , riprovare o contattare il Personale Tecnico"; |
|
$con->db_transactionRollback(); |
|
} |
|
return($return); |
|
} |
|
|
|
public static function loginSpidClickDay($codice_fiscale = "", $mobilePhone = "", $email = "", $idCard = "", $inResponseTo = "", $AuthnInstant = 0) { |
|
|
|
global $con, $LoggedAccount, $bando_setup; |
|
$idCardArray = explode(" ", $idCard); |
|
$tipodocumento = $idCardArray[0]; |
|
$numerodocumento = $idCardArray[1]; |
|
/*BUG FIX TIMSPID*/ |
|
if(Utils::is_date($idCardArray[3])){ |
|
$enterilascio = $idCardArray[2]; |
|
$dataemissione = date("d-m-Y", strtotime($idCardArray[3])); |
|
$datascadenza = date("d-m-Y", strtotime($idCardArray[4])); |
|
}else{ |
|
$enterilascio = $idCardArray[2]. " ".$idCardArray[3]; |
|
$dataemissione = date("d-m-Y", strtotime($idCardArray[4])); |
|
$datascadenza = date("d-m-Y", strtotime($idCardArray[5])); |
|
} |
|
|
|
$return = array(); |
|
|
|
// if(ATTIVA_CONTROLO_BANDO_LOGIN){ |
|
// |
|
// if (!$bando_setup->ControllaPeriodoClickDay()) { |
|
// $return['esito'] = -999; |
|
// $return['erroreDescrizione'] = 'Il servizio non è attivo.'; |
|
// return $return; |
|
// } |
|
// |
|
// } |
|
|
|
|
|
//$con->db_transactionStart(); |
|
$transaction = false; |
|
$codFisc = trim($codice_fiscale); |
|
$resSpid['esito'] = 1; |
|
if ($resSpid['esito'] == 1) { |
|
//$id_accountCodiFis = Account::selectIdFromCodiceF($codFisc); |
|
$account = Account::loadObjFromCodiceF($codFisc); |
|
if ($account->ID > 0) { |
|
// $account = new Account($id_accountCodiFis['ID']); |
|
$account->INRESPONSETO = $inResponseTo; |
|
$account->AUTHNINSTANT = $AuthnInstant; |
|
//$respAccount = $account->Save(); |
|
$respAccount['esito'] = 1; |
|
if ($respAccount['esito'] == 1) { |
|
$LoggedAccount = $account; |
|
/*$LoggedAccount->SchedaPersona = SchedaPersona::Load($uid_spid->CODICE_FISCALE); |
|
$amerigo = json_encode($LoggedAccount); |
|
$stefano = json_decode($amerigo, true); |
|
$LoggedAccount->COGNOME = $stefano['SchedaPersona']['cognome']; |
|
$LoggedAccount->NOME = $stefano['SchedaPersona']['nome'];*/ |
|
$LoggedAccount->CODICE_FISCALE = $codFisc; |
|
$LoggedAccount->SPID_MOBILE_PHONE = $mobilePhone; |
|
$LoggedAccount->SPID_EMAIL = $email; |
|
$LoggedAccount->SPID_TIPO_DOCUMENTO = $tipodocumento; |
|
$LoggedAccount->SPID_NUMERO_DOCUMENTO = $numerodocumento; |
|
$LoggedAccount->SPID_ENTE_RILASCIO = $enterilascio; |
|
$LoggedAccount->SPID_DATA_RILASCIO = $dataemissione; |
|
$LoggedAccount->SPID_DATA_SCADENZA = $datascadenza; |
|
$_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; |
|
$return['custom'] = "quimettocustom"; |
|
//$con->db_transactionCommit(); |
|
} else { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = "Accesso non consentito"; |
|
//$con->db_transactionRollback(); |
|
} |
|
return($return); |
|
} |
|
|
|
public static function loginSpidAttestati($codice_fiscale = "", $mobilePhone = "", $email = "", $idCard = "", $inResponseTo = "", $AuthnInstant = 0) { |
|
|
|
global $con, $LoggedAccount, $bando_setup; |
|
session_name('SICILIAPEIFE_BONUSICILIA'); |
|
session_start(); |
|
$idCardArray = explode(" ", $idCard); |
|
$tipodocumento = $idCardArray[0]; |
|
$numerodocumento = $idCardArray[1]; |
|
/*BUG FIX TIMSPID*/ |
|
if(Utils::is_date($idCardArray[3])){ |
|
$enterilascio = $idCardArray[2]; |
|
$dataemissione = date("d-m-Y", strtotime($idCardArray[3])); |
|
$datascadenza = date("d-m-Y", strtotime($idCardArray[4])); |
|
}else{ |
|
$enterilascio = $idCardArray[2]. " ".$idCardArray[3]; |
|
$dataemissione = date("d-m-Y", strtotime($idCardArray[4])); |
|
$datascadenza = date("d-m-Y", strtotime($idCardArray[5])); |
|
} |
|
|
|
$return = array(); |
|
|
|
if(ATTIVA_CONTROLO_BANDO_LOGIN){ |
|
|
|
if (!$bando_setup->ControllaPeriodoAttestati()) { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = 'Il servizio non è attivo.'; |
|
return $return; |
|
} |
|
|
|
} |
|
|
|
|
|
//$con->db_transactionStart(); |
|
$transaction = false; |
|
$codFisc = trim($codice_fiscale); |
|
$resSpid['esito'] = 1; |
|
if ($resSpid['esito'] == 1) { |
|
//$id_accountCodiFis = Account::selectIdFromCodiceF($codFisc); |
|
$account = Account::loadObjFromCodiceF($codFisc); |
|
if ($account->ID > 0) { |
|
// $account = new Account($id_accountCodiFis['ID']); |
|
$account->INRESPONSETO = $inResponseTo; |
|
$account->AUTHNINSTANT = $AuthnInstant; |
|
//$respAccount = $account->Save(); |
|
$respAccount['esito'] = 1; |
|
if ($respAccount['esito'] == 1) { |
|
$LoggedAccount = $account; |
|
/*$LoggedAccount->SchedaPersona = SchedaPersona::Load($uid_spid->CODICE_FISCALE); |
|
$amerigo = json_encode($LoggedAccount); |
|
$stefano = json_decode($amerigo, true); |
|
$LoggedAccount->COGNOME = $stefano['SchedaPersona']['cognome']; |
|
$LoggedAccount->NOME = $stefano['SchedaPersona']['nome'];*/ |
|
$LoggedAccount->CODICE_FISCALE = $codFisc; |
|
$LoggedAccount->SPID_MOBILE_PHONE = $mobilePhone; |
|
$LoggedAccount->SPID_EMAIL = $email; |
|
$LoggedAccount->SPID_TIPO_DOCUMENTO = $tipodocumento; |
|
$LoggedAccount->SPID_NUMERO_DOCUMENTO = $numerodocumento; |
|
$LoggedAccount->SPID_ENTE_RILASCIO = $enterilascio; |
|
$LoggedAccount->SPID_DATA_RILASCIO = $dataemissione; |
|
$LoggedAccount->SPID_DATA_SCADENZA = $datascadenza; |
|
$_SESSION['ID'] = $LoggedAccount->ID; |
|
$_SESSION['ControllaPeriodoPreparazione'] = $bando_setup->ControllaPeriodoPreparazione(); |
|
$_SESSION['ControllaPeriodoAttestati'] = $bando_setup->ControllaPeriodoAttestati(); |
|
$_SESSION['LoggedAccount'] = json_encode($LoggedAccount); |
|
$transaction = true; |
|
} |
|
} |
|
} else { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = $resSpid['erroreDescrizione']; |
|
} |
|
if ($transaction) { |
|
$return['esito'] = 1; |
|
$return['custom'] = "quimettocustom"; |
|
//$con->db_transactionCommit(); |
|
} else { |
|
$return['esito'] = -999; |
|
$return['erroreDescrizione'] = "Accesso non consentito"; |
|
//$con->db_transactionRollback(); |
|
} |
|
return($return); |
|
} |
|
|
|
public function Save() { |
|
global $con, $LoggedAccount; |
|
$vars = get_object_vars($this); |
|
unset($vars['SchedaPersona']); |
|
unset($vars['SPID_MOBILE_PHONE']); |
|
unset($vars['SPID_TIPO_DOCUMENTO']); |
|
unset($vars['SPID_ENTE_RILASCIO']); |
|
unset($vars['SPID_DATA_RILASCIO']); |
|
unset($vars['SPID_DATA_SCADENZA']); |
|
unset($vars['SPID_NUMERO_DOCUMENTO']); |
|
unset($vars['NOME']); |
|
unset($vars['COGNOME']); |
|
unset($vars['SPID_EMAIL']); |
|
//Utils::print_array($LoggedAccount);exit(); |
|
$sql = Utils::prepareQuery(self::TABLE_NAME, $vars); |
|
$queryabi = $con->prepare($sql); |
|
//Utils::print_array($LoggedAccount);exit(); |
|
foreach ($vars as $k => $v) { |
|
if ($k == "ID" && $v == 0) |
|
continue; |
|
$queryabi->bindValue(":" . $k, $v); |
|
} |
|
try { |
|
$it = parent::_Save($queryabi); |
|
} catch (Exception $exc) { |
|
$it['descrizioneErrore'] = $exc->getMessage(); |
|
} |
|
// $it['sql']=$sql; |
|
return $it; |
|
} |
|
/** |
|
* Vorifico se è istaziato |
|
* @return type |
|
*/ |
|
public function IsLogged() { |
|
Utils::checkLogin(); |
|
} |
|
|
|
public function Delete() { |
|
return parent::_Delete(self::TABLE_NAME, "id = " . $this->id); |
|
} |
|
|
|
/** |
|
* Elimina l'oggetto corrente dal database e restituisce TRUE se ha successo |
|
* |
|
* @return bool Risultato booleano dell'operazione |
|
*/ |
|
public function LogicalDelete() { |
|
return parent::_LogicalDelete(self::TABLE_NAME, "id = " . $this->id); |
|
} |
|
|
|
/** |
|
* Funzione per la visualizzazione dei logs |
|
* @param type $record |
|
* @param type $campo |
|
*/ |
|
public function Parse(&$record, $campo = "") { |
|
$props = get_class_vars(get_class($this)); |
|
switch ($campo) { |
|
|
|
default: |
|
array_push($record, array("Campo" => $campo, "Valore" => $this->$campo)); |
|
break; |
|
} |
|
} |
|
|
|
}
|
|
|