<?php
/**
	Clase Objeto
*/

//ini_set('include_path', '..' . PATH_SEPARATOR . get_include_path());

class Objeto {
	public static $campos_tabla = array();
	public static $alias = '';
	public static $nombreTabla = '';
	public static $camposSelect = '';
	public static $whereSelect = '';
	
    function __construct(){
    }
    function __destruct(){
    }
	
	/*public function initCampos(){
		if (self::$alias != ''){
			include('comunes/diccionario/diccionario.php');
			self::$campos_tabla = ${$alias};
			self::$camposSelect = BaseDatos::dameCamposAlias(self::$campos_tabla, self::$alias);
		}
	}*/
	
	public static function getCampos(){
		//Vamos a ver desde qué clase estamos llamando y vamos a obtener la tabla de la base de datos
		self::getNombreTabla();
		self::getAlias();
		//Una vez que tenemos el nombre de la tabla, vamos a obtener los campos de la misma y los nombres para la selec
		if (self::$nombreTabla != ''){
			include('comunes/diccionario/diccionario.php');
			self::$campos_tabla = ${self::$nombreTabla . 'Campos'};
			self::$camposSelect = BaseDatos::dameCamposAlias(self::$campos_tabla, self::getAlias());
		}
		return(self::$camposSelect);
	}
	
	public static function getAlias(){
		self::getNombreTabla();
		//Una vez que tenemos el nombre de la tabla, vamos a obtener los campos de la misma y los nombres para la selec
		if (self::$nombreTabla != ''){
			include('comunes/diccionario/diccionario.php');
			self::$alias = ${self::$nombreTabla . 'Alias'};
		}
		return(self::$alias);
	}
	
	public static function getNombreTabla(){
		self::$nombreTabla = strtolower(get_called_class());
		self::getTablaRelacionada();
		return(self::$nombreTabla);
	}
	
	
	
	//Mediante esta función estableceré la correspondencia para aquellas tablas que no se llamen igual que las clases:
	public static function getTablaRelacionada(){
		switch(self::$nombreTabla){
			case 'traduccionarticulo':
				self::$nombreTabla = 'traducarti';
			break;
			case 'seoarticulo':
				self::$nombreTabla = 'articulo_seo';
			break;
			case 'pedidocliente':
				self::$nombreTabla = 'mc_pedcli';
			break;
			case 'tipoenviocliente':
				self::$nombreTabla = 'tipo_envio_cli';
			break;
			case 'formaspago':
				self::$nombreTabla = 'formas_de_pago';
			break;
			case 'usuario':
				self::$nombreTabla = 'cliente';
			break;
			case 'ebook':
				self::$nombreTabla = 'descargas_ebook';
			break;
		}
	}
	
	public static function getWhereTabla(){
		return('');
	}
}
?>