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.
 
 
 

337 righe
10 KiB

<?php
require_once ROOT . "/lib/classes/IDataClass.php";
/**
* Description of Faq
*
* @author Anselmo
*/
class Faq extends DataClass {
const TABLE_NAME = "FAQ";
const SEQ_NAME = "FAQ_ID_SEQ";
public $ID = 0; // Primary key
public $ID_UID_FIEBASE_ADMIN = 0;
public $OGGETTO = "";
public $DOMANDA = "";
public $PUBBLICATA = 0;
public $CANCELLATO = 0;
public $DATA_INSERIMENTO = 'SYSTIMESTAMP';
public $ID_CATEGORIA = 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)) {
$sql = "SELECT * FROM " . self::TABLE_NAME . " WHERE ID = :id";
$query = $con->prepare($sql);
$query->bindParam(":id", $src);
try {
$query->execute();
$it = $query->fetchAll(PDO::FETCH_ASSOC);
Utils::FillObjectFromRow($this, $it[0]);
} catch (Exception $exc) {
$exc->getMessage();
}
}
}
/**
* Restituisce il totale i
*
* @param bool $filter Se specificato, filtra i comune in funzione dei parametri specificati in esso specificato
* @return int
*/
public static function Count($filter = null) {
return parent::_count(self::TABLE_NAME, $filter);
}
public static function LoadDataTable($searchQuery = "", $searchArray = array(), $columnName = array(), $columnSortOrder = array(), $start = 0, $offset = 0, $totCount = false) {
return parent::_loadDataTable(self::TABLE_NAME, $searchQuery, $searchArray, $columnName, $columnSortOrder, $start, $offset, $totCount);
}
public function Save() {
global $con, $LoggedAccount;
$this->ID_UID_FIEBASE_ADMIN = $LoggedAccount->ID;
$vars = get_object_vars($this);
$sql = Utils::prepareQuery(self::TABLE_NAME, $vars);
$queryabi = $con->prepare($sql);
foreach ($vars as $k => $v) {
if ($k == "ID" && $v == 0) {
continue;
}
$queryabi->bindValue(":" . $k, $v);
}
try {
$it = parent::_Save($queryabi);
} catch (Exception $exc) {
$it['erroreDescrizione'] = $exc->getMessage();
}
return $it;
}
public function SaveOCI() {
global $conOCI, $LoggedAccount;
$this->ID_UID_FIEBASE_ADMIN = $LoggedAccount->ID;
$vars = get_object_vars($this);
$sql = Utils::prepareQuery(self::TABLE_NAME, $vars);
$statement = $conOCI->db_getStatement($sql);
$ins = false;
foreach ($vars as $k => $v) {
if ($k == "ID" && $v == 0) {
$ins = true;
continue;
}
if ($k == "DATA_INSERIENTO" && $ins) {
oci_bind_by_name($statement, ":" . $k, date('d-m-Y'));
} else {
oci_bind_by_name($statement, ":" . $k, $v);
}
}
try {
$it = $conOCI->db_execute($statement);
$conOCI->db_free_statement($statement);
$conOCI->db_close();
} catch (Exception $exc) {
$it['erroreDescrizione'] = $exc->getMessage();
$conOCI->db_free_statement($statement);
$conOCI->db_close();
}
return $it;
}
public function Delete() {
return parent::_Delete(self::TABLE_NAME, "ID = " . $this->ID);
}
/**
* Load List Faq with PDO connection
*/
public function Load($id_categoria = 0, $cancellato = 0) {
global $con;
$where = "PUBBLICATA = 1 ";
$order = " ORDER BY ID";
if (intval($cancellato) >= 0){
$where .= ($where == "" ? "" : " AND ") . "CANCELLATO = :cancellato";
}
if (intval($id_categoria) >= 0){
$where .= ($where == "" ? "" : " AND ") . "ID_CATEGORIA = :id_categoria";
}
$sql = "SELECT * FROM " . self::TABLE_NAME;
if ($where != ""){
$sql .= " WHERE $where $order";
}
$query = $con->prepare($sql);
if (intval($cancellato) >= 0){
$query->bindParam(":CANCELLATO", intval($cancellato));
}
if (intval($id_categoria) >= 0){
$query->bindParam(":ID_CATEGORIA", intval($id_categoria));
}
try {
$query->execute();
$res = $query->fetchAll(PDO::FETCH_ASSOC);
} catch (Exception $exc) {
$res['esito'] = -999;
$res['erroreDescrizione'] = $exc->getMessage();
}
return $res;
}
/**
* Load List Faq with OCI connection
*/
public function LoadOCI($id_categoria = 0, $cancellato = 0) {
global $conOCI;
$rows = array();
$where = "PUBBLICATA = 1 ";
$order = " ORDER BY ID";
$id_categoria = intval($id_categoria);
$cancellato = intval($cancellato);
if ($cancellato >= 0) {
$where .= ($where == "" ? "" : " AND ") . "CANCELLATO = :CANCELLATO";
}
if ($id_categoria >= 0) {
$where .= ($where == "" ? "" : " AND ") . "ID_CATEGORIA = :ID_CATEGORIA";
}
$sql = "SELECT * FROM " . self::TABLE_NAME;
if ($where != "") {
$sql .= " WHERE $where $order";
}
try {
$statement = $conOCI->db_getStatement($sql);
if ($cancellato >= 0) {
oci_bind_by_name($statement, ":CANCELLATO", $cancellato);
}
if ($id_categoria > 0) {
oci_bind_by_name($statement, ":ID_CATEGORIA", $id_categoria);
}
$rows = $conOCI->db_fetch_assoc($statement);
$conOCI->db_free_statement($statement);
$conOCI->db_close();
} catch (Exception $exc) {
$rows['esito'] = -999;
$rows['erroreDescrizione'] = $exc->getMessage();
$conOCI->db_free_statement($statement);
$conOCI->db_close();
}
return $rows;
}
/**
* 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 = "") {
array_push($record, array("Campo" => $campo, "Valore" => $this->$campo));
}
}
class FaqUtenti extends DataClass {
const TABLE_NAME = "FAQ_UTENTI";
const SEQ_NAME = "FAQ_UTENTI_ID_SEQ";
const SP_ = "SPFAQUTENTISAVE";
public $ID = 0; // Primary key
public $ACCOUNT = '';
public $DOMANDA = "";
public $DATA_INSERIMENTO = null;
public $NOME = '';
public $COGNOME = '';
public $EMAIL = '';
public $STATO = 0;
public $ID_CATEGORIA = 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)) {
$sql = "SELECT * FROM " . self::TABLE_NAME . " WHERE ID = :id";
$query = $con->prepare($sql);
$query->bindParam(":id", $src);
try {
$query->execute();
$it = $query->fetchAll(PDO::FETCH_ASSOC);
Utils::FillObjectFromRow($this, $it[0]);
} catch (Exception $exc) {
$exc->getMessage();
}
}
}
public static function LoadByIDOCI($id = 0){
global $conOCI;
$faq = new FaqUtenti();
try {
$sql = "SELECT * FROM " . self::TABLE_NAME . " WHERE ID = :id ";
$statement = $conOCI->db_getStatement($sql);
oci_bind_by_name($statement, ":id", $id);
$row = $conOCI->db_fetch_array($statement);
if (intval($row['ID']) > 0) {
Utils::FillObjectFromRow($faq, $row);
}
$conOCI->db_free_statement($statement);
$conOCI->db_close();
} catch (Exception $exc) {
$conOCI->db_free_statement($statement);
$conOCI->db_close();
}
}
/**
* Restituisce il totale i
*
* @param bool $filter Se specificato, filtra i comune in funzione dei parametri specificati in esso specificato
* @return int
*/
public static function Count($filter = null) {
return parent::_count(self::TABLE_NAME, $filter);
}
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 function Save() {
global $con;
$vars = get_object_vars($this);
unset($vars['DATA_INSERIMENTO']);
$sql = Utils::prepareQuery(self::TABLE_NAME, $vars);
$query = $con->prepare($sql);
foreach ($vars as $k => $v) {
if ($k == "ID" && $v == 0) {
continue;
}
$query->bindValue(":" . $k, $v);
}
try {
$it = parent::_Save($query);
} catch (Exception $exc) {
$it['erroreDescrizione'] = $exc->getMessage();
}
return $it;
}
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 = "") {
array_push($record, array("Campo" => $campo, "Valore" => $this->$campo));
}
}