<?PHP
/*
 * DIREITOS AUTORAIS RESERVADOS (C) 2007 UFRJ
 * 
 * ESTE PROGRAMA É SOFTWARE LIVRE; VOCÊ PODE REDISTRIBUÍ-LO E/OU MODIFICÁ-LO SOB OS
 * TERMOS DA LICENÇA PÚBLICA GERAL GNU CONFORME PUBLICADA PELA FREE SOFTWARE FOUNDATION;
 * TANTO A VERSÃO 2 DA LICENÇA, COMO (A SEU CRITÉRIO) QUALQUER VERSÃO POSTERIOR.

 * ESTE PROGRAMA É DISTRIBUÍDO NA EXPECTATIVA DE QUE SEJA ÚTIL, PORÉM, SEM NENHUMA GARANTIA;
 * NEM MESMO A GARANTIA IMPLÍCITA DE COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
 * CONSULTE A LICENÇA PÚBLICA GERAL DO GNU PARA MAIS DETALHES.
 * 
 * VOCÊ DEVE TER RECEBIDO UMA CÓPIA DA LICENÇA PÚBLICA GERAL DO GNU JUNTO COM ESTE PROGRAMA; 
 * SE NÃO, ACESSE <<HTTP://WWW.GNU.ORG/LICENSES/LICENSES.PT-BR.HTML>>
 */

<?php

/*
 * Pontifical Catholic University of Rio de Janeiro
 * Semantic Web work.
 *
 * Authors: Carlos Juliano and Ana Carolina
 * Created on 18/08/2009
 
  Introduzidas novas funcoes ... Paulo
 */
 
function geraCaracteres()
{
   $chave = '';
   $sopinha = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
   srand((double)microtime()*1000000);
   for($i=0; $i<10; $i++)
   {
     $chave .= $sopinha[rand()%strlen($sopinha)];
   }
   return $chave;
}


function qualidadeSenha($senha, $nome, $msn)
{

/*
   Mantida no codigo ... mas nao chamada
*/

   $digitos=array("0","1","2","3","4","5","6","7","8","9");
   $letras=array("a","A","b","B","c","C","d","D","e","E","f","F","g","G","h","H","i","I",
                 "j","J","k","K","l","L","m","M","n","N","o","O","p","P","q","Q","r","R",
                 "s","S","t","T","u","U","v","V","x","X","y","Y","w","W","z","Z");

   if (strcmp($senha, $nome) == 0)
   {
      header('location:index.php?msn='.$msn);
      exit;
   }
   if (strlen($senha) < 6)
   {
      header('location:index.php?msn='.($msn+1));
      exit;
   }
   if (strcmp(substr($nome,0,2), substr($senha,0,2)) == 0)
   {
      header('location:index.php?msn='.($msn+2));
      exit;
   }
   $indice=0;
   while ($indice < strlen($senha))
   {
      if (!(in_array($senha[$indice], $digitos)) &&
          !(in_array($senha[$indice], $letras)) )
      {
         $a=$senha[$indice];
         header('location:index.php?msn='.($msn+3));
         exit;
      }
      $indice+=1;
   }
   $indice=0;
   $dContador=0;
   $lContador=0;
   while ($indice < strlen($senha))
   {
      if (in_array($senha[$indice], $digitos))
      {
         $lContador=0;
         $dContador+=1;
      }
      else
      {
         $dContador=0;
         $lContador+=1;
      }
      if ($dContador > 2 || $lContador > 2)
      {
         die();
         header('location:index.php?msn='.($msn+4));
         exit;
      }
      $indice+=1;
   }
   $i=(int)(strlen($senha)/2);
   $nDigitos=0;
   $indice=0;

   while($indice <= strlen($senha))
   {
      if (in_array($senha[$indice], $digitos))
      {
         $nDigitos+=1;
      }
      $indice+=1;
   }
   if ($nDigitos < $i)
   {
      header('location:index.php?msn='.($msn+5));
      exit;
   }
}

function calculaPercentual($c,$d)
{
	if ($d==0)
		return number_format(0,2,',','.');
	else
		print number_format($c*100/$d,2,',','.');
}

function cleanSql($s)
{
	if (!isset($s))
		return null;

	$s = str_replace ("\r"  ,  ""   , $s);
	$s = str_replace ("\n"  ,  ""   , $s);

	$pattern = '/,\s+/';
	$s = preg_replace($pattern,  ","  , $s);

	$pattern = '/\(\s+/';
	$s = preg_replace($pattern,  "("  , $s);

	$s = trim($s);

	return $s;
}

function userLogin($login, $senha) {
	// criptografa a senha
	$senha = md5($senha);
	$sql = "select codusuario, senha from cultura.usuario where login ='$login'";
	$res = $this->_query($sql);
	$x = $this->_fetch_array($res);
	if ($x["senha"] != $senha) {
		return false;

	}

	$cod = $x["codusuario"];
	return $cod;
}

function geraTimeStamp() {

	$tempo = time();
	$tempo = date('YmdHis', $tempo);

	sleep(1);

	return $tempo;
}

function retiraAcentos($nomeArg) {

    $string = $nomeArg;

    $string = utf8_decode($string);
    $string = strtr($string, utf8_decode($a), $b);
    $string = strtoupper($string);
    $string = utf8_encode($string);

    return $string;
}
?>
