Mister Spy Say ="Hello Kids ... :D"
___ ____ _ _____
| \/ (_) | | / ___|
| . . |_ ___| |_ ___ _ __ \ `--. _ __ _ _
| |\/| | / __| __/ _ \ '__| `--. \ '_ \| | | |
| | | | \__ \ || __/ | /\__/ / |_) | |_| |
\_| |_/_|___/\__\___|_| \____/| .__/ \__, |
| | __/ |
|_| |___/
Bot Mister Spy V3
Mister Spy
Mister Spy
<?php
require_once('class.dbaccess.php');
require_once('class.edicion.php');
require_once('class.edicionestructurada.php');
require_once('class.newsletterrubros.php');
require_once('class.filter.php');
require_once('class.page.php');
class EdicionesEstructuradas extends DBAccess
{
public function GetAll(Page $oPage = NULL)
{
$sql = "SELECT ee.*, ";
$sql.= " e.Edicion AS EdicionNombre,";
$sql.= " nr.Descripcion AS RubroNombre,";
$sql.= " nr.IdRelacion AS RelacionCampo";
$sql.= " FROM tblEdicionesEstructurada ee";
$sql.= " INNER JOIN tblEdiciones ed ON ee.IdEdicion = ed.IdEdicion";
$sql.= " INNER JOIN tblNewsletterRubros nr ON ee.IdRubro = nr.IdRubro";
$sql.= " ORDER BY IdEdicion";
$sql.= " GROUP BY IdEdicion";
$sql.= ($oPage) ? Pageable::ParsePage($oPage) : "";
if (!($oRes = $this->GetQuery($sql)))
return false;
$arr = array();
while ($oRow = $oRes->GetRow())
{
$oEdicionEstructurada = new EdicionEstructurada();
$oEdicionEstructurada->ParseFromArray($oRow);
$sql = "SELECT *";
$sql.= " FROM $oEdicionEstructurada->RubroNombre t";
$sql.= " WHERE t. = $oEdicionEstructurada->RelacionCampo" . DB::Number($oEdicionEstructurada->IdRelacion);
if (!($oRes = $this->GetQuery($sql)))
return false;
if (!($oRow = $oRes->GetRow()))
return false;
$oEdicionEstructurada->Titulo = $oRow['Titulo'];
array_push($arr, $oEdicionEstructurada);
$oRes->MoveNext();
}
return $arr;
}
public function GetAllByEdicion(Edicion $oEdicion)
{
$sql = "SELECT ee.*, ";
$sql.= " nr.IdRubro,";
$sql.= " nr.Class,";
$sql.= " nr.Tabla,";
$sql.= " nr.CampoPrincipal,";
$sql.= " nr.CampoSecundario,";
$sql.= " nr.CampoTerciario,";
$sql.= " nr.CampoFecha,";
$sql.= " nr.TablaImagenes,";
$sql.= " nr.IdRelacionImagen,";
$sql.= " nr.CampoImagen,";
$sql.= " nr.DirectorioImagenThumb,";
$sql.= " nr.DirectorioImagenBig,";
$sql.= " nr.PaginaFrontend,";
$sql.= " nr.Descripcion AS RubroNombre,";
$sql.= " nr.IdRelacion AS RelacionCampo,";
$sql.= " nr.TextoTitulo,";
$sql.= " ed.Nombre AS EdicionNombre";
$sql.= " FROM tblEdicionesEstructurada ee";
$sql.= " INNER JOIN tblEdiciones ed ON ee.IdEdicion = ed.IdEdicion";
$sql.= " INNER JOIN tblNewsletterRubros nr ON ee.IdRubro = nr.IdRubro";
$sql.= " WHERE ed.IdEdicion = " . DB::Number($oEdicion->IdEdicion);
//$sql.= " GROUP BY IdEdicion";
$sql.= " ORDER BY ee.IdRubro, ee.IdEdicion ASC";
if ( !($oRes = $this->GetQuery($sql)) )
return false;
$arr = array();
while ($oRow = $oRes->GetRow())
{
$NewsletterRubros = new NewsletterRubros();
$oEdicionEstructurada = new EdicionEstructurada();
$oEdicionEstructurada->ParseFromArray($oRow);
/* obtiene los datos del rubro */
$oNewsletterRubro = $NewsletterRubros->GetById($oEdicionEstructurada->IdRubro);
$sql = "SELECT *";
$sql.= " FROM $oNewsletterRubro->Tabla";
$sql.= " WHERE $oNewsletterRubro->IdRelacion = " . DB::Number($oEdicionEstructurada->IdRelacion);
if ($oResDetalle = $this->GetQuery($sql))
{
if ($oRowDetalle = $oResDetalle->GetRow())
{
$oEdicionEstructurada->Titulo = $oRowDetalle[$oRow['CampoPrincipal']];
}
$oResDetalle->MoveNext();
}
if ($oNewsletterRubro->TablaImagenes != '')
{
$sql = "SELECT *";
$sql.= " FROM $oNewsletterRubro->TablaImagenes";
$sql.= " WHERE $oNewsletterRubro->IdRelacionImagen = " . DB::Number($oEdicionEstructurada->IdRelacion);
$sql.= " LIMIT 1";
if ($oResImagen = $this->GetQuery($sql))
{
if ($oRowImagen = $oResImagen->GetRow())
$oEdicionEstructurada->RelacionImagen = $oRowImagen[$oEdicionEstructurada->oRubro->CampoImagen];
$oResImagen->MoveNext();
}
}
array_push($arr, $oEdicionEstructurada);
$oRes->MoveNext();
}
return $arr;
}
public function GetById($IdEdicion, $IdRubro, $IdRelacion)
{
$sql = "SELECT ee.*, ";
$sql.= " ed.Nombre AS EdicionNombre,";
$sql.= " nr.Descripcion AS RubroNombre,";
$sql.= " nr.IdRelacion AS RelacionCampo,";
$sql.= " nr.Tabla AS RelacionTabla";
$sql.= " FROM tblEdicionesEstructurada ee";
$sql.= " INNER JOIN tblEdiciones ed ON ee.IdEdicion = ed.IdEdicion";
$sql.= " INNER JOIN tblNewsletterRubros nr ON ee.IdRubro = nr.IdRubro";
$sql.= " WHERE ee.IdEdicion = " . DB::Number($IdEdicion);
$sql.= " AND ee.IdRubro = " . DB::Number($IdRubro);
$sql.= " AND ee.IdRelacion = " . DB::Number($IdRelacion);
if (!($oRes = $this->GetQuery($sql)))
return false;
if (!($oRow = $oRes->GetRow()))
return false;
$oEdicionEstructurada = new EdicionEstructurada();
$oEdicionEstructurada->ParseFromArray($oRow);
return $oEdicionEstructurada;
}
public function GetRelacionById($IdEdicion, $IdRubro, $IdRelacion)
{
$sql = "SELECT ee.*, ";
$sql.= " ed.Nombre AS EdicionNombre,";
$sql.= " nr.Descripcion AS RubroNombre,";
$sql.= " nr.IdRelacion AS RelacionCampo,";
$sql.= " nr.Tabla AS RelacionTabla,";
$sql.= " nr.Class AS RelacionClase";
$sql.= " FROM tblEdicionesEstructurada ee";
$sql.= " INNER JOIN tblEdiciones ed ON ee.IdEdicion = ed.IdEdicion";
$sql.= " INNER JOIN tblNewsletterRubros nr ON ee.IdRubro = nr.IdRubro";
$sql.= " WHERE ee.IdEdicion = " . DB::Number($IdEdicion);
$sql.= " AND ee.IdRubro = " . DB::Number($IdRubro);
$sql.= " AND ee.IdRelacion = " . DB::Number($IdRelacion);
if (!($oRes = $this->GetQuery($sql)))
return false;
if (!($oRow = $oRes->GetRow()))
return false;
$oEdicionEstructurada = new EdicionEstructurada();
$oEdicionEstructurada->ParseFromArray($oRow);
$sql = "SELECT *";
$sql.= " FROM $oEdicionEstructurada->RelacionTabla ";
$sql.= " WHERE $oEdicionEstructurada->RelacionCampo = " . DB::Number($oEdicionEstructurada->IdRelacion);
if (!($oRes = $this->GetQuery($sql)))
return false;
if (!($oRow = $oRes->GetRow()))
return false;
$oEdicionEstructurada->Titulo = $oRow['Titulo'];
return $oEdicionEstructurada;
}
public function GetCountRows()
{
$sql = "SELECT ee.*, ";
$sql.= " e.Edicion AS EdicionNombre,";
$sql.= " nr.Descripcion AS RubroNombre,";
$sql.= " nr.IdRelacion AS RelacionCampo";
$sql.= " FROM tblEdicionesEstructurada ee";
$sql.= " INNER JOIN tblEdiciones ed ON ee.IdEdicion = ed.IdEdicion";
$sql.= " INNER JOIN tblNewsletterRubros nr ON ee.IdRubro = nr.IdRubro";
$sql.= " ORDER BY IdEdicion";
$sql.= " GROUP BY IdEdicion";
if (!($oRes = $this->GetQuery($sql)))
return false;
$CountRows = $oRes->NumRows();
return $CountRows;
}
public function Create(EdicionEstructurada $oEdicionEstructurada)
{
$arr = array
(
'IdEdicion' => DB::Number($oEdicionEstructurada->IdEdicion),
'IdRubro' => DB::Number($oEdicionEstructurada->IdRubro),
'IdRelacion' => DB::Number($oEdicionEstructurada->IdRelacion)
);
if (!$this->Insert('tblEdicionesEstructurada', $arr))
return false;
return $oEdicionEstructurada;
}
public function Delete($IdEdicion, $IdRubro, $IdRelacion)
{
$where = " IdEdicion = " . DB::Number($IdEdicion);
$where.= " AND IdRubro = " . DB::Number($IdRubro);
$where.= " AND IdRelacion = " . DB::Number($IdRelacion);
if (!DBAccess::DeleteEntidad('tblEdicionesEstructurada', $where))
return false;
DBAccess::$db->Commit();
return true;
}
}
?>
Mr. DellatioNx196 GaLers xh3LL Backd00r 1.0, Coded By Mr. DellatioNx196 - Bogor BlackHat