<?php
class CLMCheck extends AppColumna{
	
	protected $_valoresMultiples = array();
	private $name_check;
	private $class_check;
	
	
	public function __construct($name, $valor = null, $cabecera = null, $valoresMultiples = array()){
		parent::__construct($name, $valor, $cabecera);
		$this->_valoresMultiples = $valoresMultiples;
		$this->tipo = 'multiple';
	}
	/**
	 * 
	 * @param string $value
	 */
	
	public function setNameCheck($value){
		$this->name_check = $value;
	}
	public function setClassCheck($value){
		$this->class_check = $value;
	}
	
	public function setValoresMultiples($valores = array()){
		$this->_valoresMultiples = $valores;
	}
	
	public function addValorMultiple($indice, $valor){
		$this->_valoresMultiples[$indice] = $valor; 
	}
	public function unSetValorMultiple($indice){
		unset($this->_valoresMultiples[$indice]);
	}
	
	private function renderCheck($activo = false) {
		$html = '<input type="checkbox" ';
		$html .= ' name="'.$this->name_check.'" ';
		$html .= ' class="'.$this->class_check.'" ';
		$html .= $activo?' checked ':'';
		$html.= '/>';
		return $html;
				
				
	}
	
	
	public function getInfo(){

		$salida = parent::getInfo();
		$salida['valores'] = $this->getValores();			
		return $salida;
	
	}
	private function getValores(){
		return array(
				0 => $this->renderCheck(),
				1 => $this->renderCheck(true)
		);
	}
	
	public function reemplaza_datosCampo($datos){
	
		
		$dato = $this->getValor();
		$datos = AppResultadoListado::convertirFilaParaListado($datos);
		$dato = str_replace(array_keys($datos), array_values($datos), $dato);
		$valores = $this->getValores();
		if(isset($valores[$dato])){
			$dato_valores = $valores[$dato];
			$dato = str_replace(array_keys($datos), array_values($datos), $dato_valores);
		}
	
	
		return $dato;
	}
	
	
	
}