<?php
//include_once ("db/dbImagem.class.php");
include_once ("base/elemento.class.php");
include_once ("base/categoria.class.php");
include_once ("base/lista.class.php");

class contacto extends elemento{
	
	
	function contacto() {
       
    }
    
    
	function exportar(){
		
	}
	
	function escolher(){
		$f= new form($id, "" , $this->req);
		$f->toolbars("Importar");
		$f->label("Importar CSV", "<br>Escolha o ficheiro .csv a importar.<br>
		Os campos devem ser, por ordem:<br>
		<b>id, nome, email, actividade, idCat, activo </b>.<br>
		O separador deve ser um <b>;</b> (ponto e vírgula)<br><br>");
		$f->campoFile("Ficheiro", "ficheiro");
		$f->mostra("Importar");
	}
	
	
	function importar1(){
		if ($value['error'] == UPLOAD_ERR_OK) {
			$tmp_name = $_FILES["ficheiro"]["tmp_name"];
			$name="../netimages/import.csv";
			if (!copy($tmp_name, $name )) {
	    				print("failed to copy $name ...<br>\n");
						exit;
			} 
			
			$db= new dbElemento;
			if (!$db->set("LOAD DATA INFILE '$name' INTO TABLE contacto FIELDS TERMINATED BY ';'")) {
			echo mysql_error();
			exit;
			}
			echo "ok";
		}
	}
	
	
	function importar(){
		if ($value['error'] == UPLOAD_ERR_OK) {
			$db= new dbElemento;

			$tmp_name = $_FILES["ficheiro"]["tmp_name"];
			$name="../netimages/import.csv";
			if (!copy($tmp_name, $name )) {
	    				print("failed to copy $name ...<br>\n");
						exit;
			} 
			$row = 1;
			$handle = fopen("$name", "r");
			while (($data = fgetcsv($handle, 2048, ";")) !== FALSE) {
			   
			   
			   //$num = count($data);
			   //echo "<p> $num fields in line $row: <br /></p>\n";
			   $row++;
			   if ($row==2){
				   if (!testaCSV) {
				   		print "erro no ficheiro";
						exit;}
				   continue;
			   } 
			   
			   //testa se mail já existe
			   //if (!$db->getLinhaCampo("contacto", "email", $data[2])){
			   
			   		$sql="insert into contacto(nome, email, actividade, idCat, activo) values ('";
			   		$sql.=$data[1] ."','". $data[2] ."','". $data[3] ."','". $data[4] ."','".$data[5] ."')";
			   
			   		$db->set($sql);
			   //}
			   
			   
			}
			fclose($handle);
			//apagar ficheiros
			
		}
	}
	
	function testaCSV($row){
		if(  ($row[0]!='id') || ($row[1]!='nome') || ($row[2]!='email') ||
		($row[3]!='actividade') || ($row[4]!='idCat') || ($row[5]!='activo')  )
			return false;
		return true;
	}
	
	function editar($id="") {
        
        $db= new dbElemento;
        $dados=$db->getListaCategorias("contactoCategoria", "*");
        /////files////$dados=getDirList("../netimages/image/");
		//foreach ($dados as $l) $dadosSel[$l['id']]=$l['categoria'];
		foreach ($dados as $l) $dadosSel[$l['id']]=$l['categoria'];
		/////files////foreach ($dados as $l) $dadosSel[$l]=$l;
        //print_rr($dadosSel);
        $linha = @$db->getLinha($this->tipo, $id);
		$f= new form($id, $linha , $this->req);
		$f->toolbars();
		$f->titulo("",1);
		$f->campoTexto("Nome", "nome");
		$f->campoTexto("Email", "email");
		$f->campoTexto("Actividade", "actividade");
		$f->campoSeleccao("Categoria", "idCat", $dadosSel, $linha['idCat']);
		$f->campoSimNao("Activo", "activo", 0);
		$f->mostra();
    }

	function listar() {
        $campos=array("Nº"=>"id","Nome"=>"nome","Email"=>"email","Actividade"=>"Actividade");
        
        $db= new dbElemento;
        
        $dados=$db->getLista($this->tipo, $this->idCat, $campos , "nome", $this->req['ordem'] ,$this->req['offset'], $this->req['limit'], $this->req['procurar'], $this->req['filtro'] );
        $this->req['total']=$db->getTotal($this->tipo, $this->idCat, $this->req['procurar'], $this->req['filtro']);
        
        //print_rr($dados);
                
        $f= new lista($campos, $dados, $this->req);
		$f->toolbars(true);
		//$f->cabeca();
		$f->titulo("Contactos / ");
		$f->cabecaSimples();
        //$f->filtros();
        $f->tabela(false, true);
		$f->mostra();
    }


}
?>
