Ejemplo n.º 1
0
// CARGO LOS PARAMETROS DE CONFIGURACION.
// ---------------------------------------------------------------
$config = sfYaml::load('../config/config.yml');
$app = $config['config']['app'];
// ---------------------------------------------------------------
// ACTIVAR EL AUTOLOADER DE CLASES Y FICHEROS A INCLUIR
// ---------------------------------------------------------------
define("APP_PATH", $_SERVER['DOCUMENT_ROOT'] . $app['path'] . "/");
include_once "../" . $app['framework'] . "Autoloader.class.php";
Autoloader::setCacheFilePath(APP_PATH . 'tmp/class_path_cache.txt');
Autoloader::excludeFolderNamesMatchingRegex('/^CVS|\\..*$/');
Autoloader::setClassPaths(array('../' . $app['framework'], '../entities/', '../lib/'));
spl_autoload_register(array('Autoloader', 'loadClass'));
$v = $_GET;
$relacion = new CpanRelaciones();
$idRelacion = $relacion->getIdRelacion($v['entidadOrigen'], $v['idOrigen'], $v['entidadDestino'], $v['idDestino']);
if ($v['onOff']) {
    // Hacer relacion
    if (!$idRelacion) {
        $relacion = new CpanRelaciones();
        $relacion->setEntidadOrigen($v['entidadOrigen']);
        $relacion->setIdEntidadOrigen($v['idOrigen']);
        $relacion->setEntidadDestino($v['entidadDestino']);
        $relacion->setIdEntidadDestino($v['idDestino']);
        $relacion->setPublish(1);
        $relacion->create();
    }
} else {
    // Quitar la relación
    if ($idRelacion) {
        $relacion = new CpanRelaciones($idRelacion);
Ejemplo n.º 2
0
 /**
  * Generar un árbol genealógico con las entidades hijas
  * de la entidad cuyo id es $idPadre
  *
  * @param integer $idPadre El id de la entidad padre
  * @return array Array con los objetos hijos
  */
 private function getChildrens($idPadre, $conServicios, $entidadRelacionada, $idEntidadRelacionada)
 {
     // Obtener todos los hijos del padre actual
     $hijos = $this->cargaCondicion('Id,PrimaryKeyMD5,NivelJerarquico,Publish,BelongsTo', "BelongsTo='{$idPadre}'", "SortOrder ASC");
     foreach ($hijos as $hijo) {
         $aux = new $this($hijo['Id']);
         $arrayServicios = $conServicios ? $this->getServicios($hijo['Id']) : array();
         $arrayHijos = $this->getChildrens($hijo['Id'], $conServicios, $entidadRelacionada, $idEntidadRelacionada);
         $this->_hijos[$idPadre][$hijo['PrimaryKeyMD5']] = array('id' => $hijo['Id'], 'titulo' => $aux->getTitulo(), 'nivelJerarquico' => $hijo['NivelJerarquico'], 'publish' => $hijo['Publish'], 'belongsTo' => $hijo['BelongsTo'], 'nHijos' => count($arrayHijos), 'hijos' => $arrayHijos, 'nServicios' => count($arrayServicios), 'servicios' => $arrayServicios);
         if ($entidadRelacionada) {
             $relacion = new CpanRelaciones();
             $this->_hijos[$idPadre][$hijo['PrimaryKeyMD5']]['estaRelacionado'] = $relacion->getIdRelacion($entidadRelacionada, $idEntidadRelacionada, 'ServFamilias', $hijo['Id']);
         }
         unset($hijo);
     }
     return $this->_hijos[$idPadre];
 }
Ejemplo n.º 3
0
 /**
  * Generar un árbol genealógico con las entidades hijas
  * de la entidad cuyo id es $idPadre
  *
  * @param integer $idPadre El id de la entidad padre
  * @param array $optArticulos Array de opciones de articulos
  * @return array Array con los objetos hijos
  */
 private function getChildrens($idPadre, $optArticulos, $entidadRelacionada, $idEntidadRelacionada, $aditionalFilter = '1', $sortOrder = "SortOrder ASC")
 {
     // Obtener todos los hijos del padre actual
     $hijos = $this->cargaCondicion('IDFamilia as Id,PrimaryKeyMD5,NivelJerarquico,Publish,BelongsTo', "(BelongsTo='{$idPadre}') and ({$aditionalFilter})", $sortOrder);
     foreach ($hijos as $hijo) {
         $aux = new $this($hijo['Id']);
         $arrayArticulos = $optArticulos["conArticulos"] ? $this->getArticulos($hijo['Id'], $optArticulos, $entidadRelacionada, $idEntidadRelacionada) : array();
         $arrayHijos = $this->getChildrens($hijo['Id'], $optArticulos, $entidadRelacionada, $idEntidadRelacionada);
         $this->_hijos[$idPadre][$hijo['PrimaryKeyMD5']] = array('id' => $hijo['Id'], 'titulo' => $aux->__toString(), 'nivelJerarquico' => $hijo['NivelJerarquico'], 'publish' => $hijo['Publish'], 'belongsTo' => $hijo['BelongsTo'], 'nHijos' => count($arrayHijos), 'hijos' => $arrayHijos, 'nArticulos' => count($arrayArticulos), 'articulos' => $arrayArticulos);
         if ($entidadRelacionada) {
             $relacion = new CpanRelaciones();
             $this->_hijos[$idPadre][$hijo['PrimaryKeyMD5']]['estaRelacionado'] = $relacion->getIdRelacion($entidadRelacionada, $idEntidadRelacionada, 'Familias', $hijo['Id']);
         }
         unset($hijo);
     }
     return $this->_hijos[$idPadre];
 }
Ejemplo n.º 4
0
 /**
  * Devuelve array de dos dimensiones con los
  * boletines a los que está suscrito el cliente en curso.
  * 
  * @return array
  */
 public function getSuscripciones()
 {
     $array = array();
     $tipoBoletines = new BolTipos();
     $tipos = $tipoBoletines->cargaCondicion("Id,Titulo");
     foreach ($tipos as $tipo) {
         $boletin = new BolBoletines();
         $boletines = $boletin->cargaCondicion("Id,Titulo", "IDTipo='{$tipo['Id']}'");
         foreach ($boletines as $boletin) {
             $relaciones = new CpanRelaciones();
             $idRelacion = $relaciones->getIdRelacion("Clientes", $this->IDCliente, "BolBoletines", $boletin['Id']);
             $array[$tipo['Titulo']][$boletin['Id']] = array('titulo' => $boletin['Titulo'], 'suscrito' => $idRelacion);
         }
     }
     return $array;
 }