<?
function print_rr($a){
	print '<pre>';
	print_r ($a);
	print '</pre>';
}

function ligacao( $label , $link , $link2){
	return $composto='<a href="'.$link . $link2.'">'.$label.'</a>';
}

function ligacaoTitulo( $label , $link , $novo){
	return $composto='<a href="'.$link . $novo.'" class=tituloLista>'.$label.'</a>';
}

function navegacao( $label , $link , $novo){
	?>
<input
	type="button" value="<?=$label?>"
	onClick="document.location='<?=$link . $novo ?>'" style="width: 20px" />
	<?
}

function botaoImagem( $label , $link2 , $imagem){
	return $composto='<a href="?' . $link2.'" class=tituloLista/><img src="images/'.$imagem.'" / border=0>'.$label.'</a>';
}

/*
 function botaoNav($link2, $imagem){
 return $composto='<td style="text-indent: 0px;vertical-align:middle"><a href="?'.$link2.'" class="botaoToolbar" style="vertical-align:middle"><img src="images/spacer.gif" width="6" height="5" border=0><br><img src="images/'.$imagem.'" / border=0></a></td>';
 }
 */

function persistence($myvar){
	Global $cat, $_SESSION, $change;

	if ($change) $_SESSION[$myvar]=null;

	if(isset($_REQUEST[$myvar])){
		$_SESSION[$myvar]=$_REQUEST[$myvar];
	} else {
		$cat->req[$myvar]=$_SESSION[$myvar];
	}
}

function getDirList($dir) {
	$dirArray = array();
	if ($handle = opendir($dir)) {
		while (false !== ($file = readdir($handle))) {
			if ($file == "." || $file == "..")  continue;
			if ($file == "thumb" || $file == "Thumbs.db")  continue;
			$dirArray[]=basename($file);
		}
		closedir($handle);
	}
	return $dirArray;
}

function dataExtenso($data){

	$aux = explode("-",$data);

	$mes[1]="Janeiro";
	$mes[2]="Fevereiro";
	$mes[3]="Março";
	$mes[4]="Abril";
	$mes[5]="Maio";
	$mes[6]="Junho";
	$mes[7]="Julho";
	$mes[8]="Agosto";
	$mes[9]="Setembro";
	$mes[10]="Outubro";
	$mes[11]="Novembro";
	$mes[12]="Dezembro";

	$novaData = $aux[2] . " de " . $mes[(int)$aux[1]] . " de " . $aux[0];
	return $novaData;
}

function caixaMensagem($mensagem){
	print "<div style='background:#CCCCCC'>$mensagem</div>";
}

function short($string, $length, $replacer = '...'){
	if(strlen($string) > $length)
	return (preg_match('/^(.*)\W.*$/', substr($string, 0, $length+1), $matches) ? $matches[1] : substr($string, 0, $length)) . $replacer;
	return $string;
}

function datefiff($data1, $data2){
	$tmp_inicio = strtotime($data1);
	$tmp_fim = strtotime($data2);

	$dateDiff = $tmp_fim - $tmp_inicio;
	return floor($dateDiff/(60*60*24));
}


function remove_acentos_espacos($input){
	$old=array('á','à','ã','â',  'é','è','ê', 'í','ì',  'ó','ò','õ','ô',  'ú','ù','û', 'ç' ,'&' );
	$new=array('a','a','a','a',  'e','e','e', 'i','i',  'o','o','o','o',  'u','u','u', 'c'  ,'e');
	$string_tmp = str_replace($old, $new, mb_strtolower($input));
	return str_replace(' ','_',$string_tmp);
}

function gerarPassword($word) {
	srand((double)microtime()*1000000);
	$temppass = md5($word . rand(0,9999999));
	$mypassword=substr($temppass, 1, 8);
	return $mypassword;
}



function apresenta_msg($texto){
	echo "<script>$.jGrowl('$texto');</script>";
}

function apresenta_erro($texto){
	echo "<script>$.jGrowl('$texto');</script>";
}

function set_msg($texto){
	$_SESSION['msg'] .= $texto;
}

function set_erro($texto){
	$_SESSION['erro']= $texto;
}

function get_msg(){
	$msg = $_SESSION['msg'];
	$_SESSION['msg'] = '';
	return $msg;
}

function get_erro(){
	$erro = $_SESSION['erro'];
	$_SESSION['erro'] = '';
	return $erro;
}

function ha_msg(){
	return $_SESSION['msg'] ? true:false;
}

function ha_erro(){
	return $_SESSION['erro'] ? true:false;
}


function testaUser($id){
	if($_SESSION['authdata']['id'] == $id || $_SESSION['authdata']['super'] == 1)
	return true;
	return false;
}

function is_admin(){
	return ($_SESSION['authdata']['super'] == 1);
}

function trataAntigo($id, $tipo){
	$db= new dbElemento;
	$sql="select idAntigo from $tipo where id = '$id' ";
	$result = mysql_query($sql);
	list($idAntigo) = mysql_fetch_row($result);

	if($idAntigo){ //testa se tem antigo, pode não ter. Pode estar por aprovar a primeira vez.
		$sql="update $tipo set estado = 3 where id = '$idAntigo'";
		mysql_query($sql);
	}
}

function updateLog($accao, $idRegisto="", $tipoRegisto=""){
	global $_SESSION;
	$idUser = $_SESSION['authdata']['id'];
	$login = $_SESSION['authdata']['login'];
	$data = date("Y-m-d");
	$hora = date("H:i");
	$ip = $_SERVER['REMOTE_ADDR'];

	$sql="insert into log (idUser,login, accao, data, hora, idRegisto, tipoRegisto, ip)
 	  values ('$idUser','$login', '$accao', '$data', '$hora', '$idRegisto', '$tipoRegisto', '$ip')";
	mysql_query($sql);
}

function trataPassword($plaintext_pass){
	$static_salt = "itcode";
	$rand_salt = genRandNumber(5);

	$md5_hash = md5($plaintext_pass);
	$salted_hash = $static_satl.$md5_hash.$rand_salt;
	$final_hash = sha1($salted_hash);
	return array($final_hash, $rand_salt);	//guardar na db os dois
}

function genRandNumber($length = 5){
	$result = "";
	$possible = "0123456789abcdfghijklmnopqrstuvwxyz";
	$i = 0;
	while ($i < $length) {
		$char = substr($possible, mt_rand(0, strlen($possible)-1), 1);
		if (!strstr($result, $char)) {
			$result .= $char;
			$i++;
		}
	}
	return $result;
}

/*
function test_userep(){
	if (!$db)
		$db= new dbElemento;
		
	$user=$db->getLinha("user", $_SESSION['authdata']['id']);
	return $user['repositorio'];
}*/


?>
