Initial Commit

This commit is contained in:
GiacomoHome
2021-09-17 12:41:45 +02:00
commit 9001e4656e
570 changed files with 31013 additions and 0 deletions
+95
View File
@@ -0,0 +1,95 @@
<?php
/**
* Class App_Model_Resource_Abstract
*/
class App_Model_Resource_Abstract extends Zend_Db_Table_Abstract
{
protected $_defaultOrder; // [obbligatorio]
protected $_defaultTipoOrder; // [obbligatorio]
protected $_defaultSelectColumns; // [opzionale]
protected $_defaultJoinData; // [opzionale] può essere un array singolo o multiplo per applicare più join insieme
public function __construct()
{
if(!$this->_defaultOrder){
throw new App_Controller_Errors_WebServiceError("'_defaultOrder' non definito per la risorsa ". get_class($this));
}
if(!$this->_defaultTipoOrder){
throw new App_Controller_Errors_WebServiceError("'_defaultTipoOrder' non definito per la risorsa " . get_class($this));
}
parent::__construct();
}
//Funzione che restituisce il nome della tabella
public function getTableName()
{
return $this->_name;
}
//Funzione che restituisce la chiave primaria sicura
public function getPrimaryKey()
{
if (is_array($this->_primary)) return $this->_primary[1];
return $this->_primary;
}
//Funzione che restituisce il campo ordinamento di default
public function getDefaultOrder()
{
if (isset($this->_defaultOrder) && $this->_defaultOrder) return $this->_defaultOrder;
return $this->getPrimaryKey();
}
//Funzione che restituisce il tipo di ordinamento di default
public function getDefaultTipoOrder()
{
if (isset($this->_defaultTipoOrder) && $this->_defaultTipoOrder) return $this->_defaultTipoOrder;
return "ASC";
}
//Funzione che restituisce il tipo di select default
public function getDefaultSelectColumns()
{
if (isset($this->_defaultSelectColumns) && $this->_defaultSelectColumns) return $this->_defaultSelectColumns;
return "*";
}
//Funzione che restituisce il campo joinData di default
public function getDefaultJoinData()
{
if (isset($this->_defaultJoinData) && $this->_defaultJoinData) return $this->_defaultJoinData;
return null;
}
public function getDefaultOrderString()
{
return $this->getDefaultOrder() . ' ' . $this->getDefaultTipoOrder();
}
//--------------- FUNZIONI PER LA GESTIONE DI DATABASE MULTIPLI ------------------------------------------
public function _setDbName($nomedb)
{
$dbparam = $this->_db->getConfig();
$dbparam['dbname'] = $nomedb;
$this->_db = Zend_Db::factory('Pdo_Mysql', $dbparam);
}
/**
* @return Zend_Db_Adapter_Abstract
*/
public function getDbAdapter()
{
return $this->_db;
}
public function setDBConnection($nomeDB)
{
$this->_db->query('USE ' . $nomeDB);
}
}