<?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>>
 */

<?
session_start();
//recupera dados do formulario
$usuario		= trim(pg_escape_string($_POST['form_usuario']));
$usuario_old		= trim(pg_escape_string($_POST['form_usuario_old']));
$atualSenha		= trim(pg_escape_string($_POST['form_atualSenha']));
$nSenha			= trim(pg_escape_string($_POST['form_nSenha']));
$cnSenha		= trim(pg_escape_string($_POST['form_cnSenha']));
$botao 			= $_POST['botao'];

$tema    = trim(pg_escape_string($_POST['form_tema']));
$perfil  = trim(pg_escape_string($_POST['form_perfil']));
$permissao   = $_POST['form_permissao'];

//informacoes para remocao de users
$idUser 		= $_GET['idUser'];
$acao	 		= $_GET['acao'];

//rotina para remocao de users
if ($acao == 'remover') {
	include "includes/pg_begin.php";
    
    $sql="delete from acesso where usuario = '".$idUser."'";
    $result=pg_query($dbh, $sql);
    
    
	$sql="delete from logon where usuario = '".$idUser."'";
	$result=pg_query($dbh, $sql);
	
	if (!$result) {
	   //die("Erro na selecao do usuario" . pg_last_error());
	   header('location:gerencia.php?msn=1');
	   exit;
	}		
	include "includes/pg_end.php";
	header('location:gerencia.php?msn=2');
	exit;
}


//atualizar dados (perfil, etc)
if ($botao == 'enviar')
{
	include "includes/pg_begin.php";

    //verifica se o login j� n�o existe
    $sql="select * from logon where usuario = '".$usuario."' and usuario <> '" . $usuario_old . "'";
	$result=pg_query($dbh, $sql);

	$row = pg_fetch_array($result);
	if ($row['usuario'])
        {
		include "includes/pg_end.php";
		header('location:gerencia.php?msn=9&botao=alterar+CRAS&usuario=' . $usuario_old);
		exit;
	}

    if (trim($nSenha) != "")
    {
       $senha = "'" . md5($nSenha) . "'";
    }
    else
    {
       $senha = "senha";
    }

	$sql=" Update logon
         	set usuario = '$usuario',
                senha = $senha,
                tipoperfil = '$perfil'
	        where usuario = '$usuario_old' ";
            
	$result=pg_query($dbh, $sql);
    
    $sql="delete from acesso where usuario = '".$usuario_old."'";
    $result=pg_query($dbh, $sql);	
    
    if (in_array("U",$permissao))
    {
            $sql="insert into acesso (usuario, objeto, permissao, valorpermissao) values('".$usuario."', 'Tema','U', null )";
            $result=pg_query($dbh, $sql);                    
    }            
    
    if (in_array("C",$permissao))
    {
            $sql="insert into acesso (usuario, objeto, permissao, valorpermissao) values('".$usuario."', 'Tema','C', '$tema' )";
            $result=pg_query($dbh, $sql);                    
    }
    
    if (in_array("A",$permissao))
    {
            $sql="insert into acesso (usuario, objeto, permissao, valorpermissao) values('".$usuario."', 'Tema','A', '$tema' )";
            $result=pg_query($dbh, $sql);                    
    }
    
	if (!$result) {
	   header('location:gerencia.php?msn=7&botao=alterar+CRAS&usuario=' . $usuario_old);
	   exit;
	}
	include "includes/pg_end.php";
	header('location:gerencia.php?msn=8&botao=gerenciar+usuários');
	exit;

}

if (trim($botao) == 'cadastrar')
{
	include "includes/pg_begin.php";
	$sql="select * from logon where usuario = '".$usuario."'";
	$result=pg_query($dbh, $sql);

	if (!$result) {
		include "includes/pg_end.php";
		header('location:gerencia.php?msn=3');
		exit;
	}
	$row = pg_fetch_array($result);
	if ($row['usuario']) {
		include "includes/pg_end.php";
		header('location:gerencia.php?msn=9');
		exit;
	}
	else {	
		if (trim($nSenha) == trim($cnSenha)) {
			$sql="insert into logon (usuario, senha, tipoperfil) values('".$usuario."', '".md5($nSenha)."','".$perfil."' )";
			$result=pg_query($dbh, $sql);
            
            if (in_array("U",$permissao))
            {
                    $sql="insert into acesso (usuario, objeto, permissao, valorpermissao) values('".$usuario."', 'Tema','U', null )";
                    $result=pg_query($dbh, $sql);                    
            }            
            
            if (in_array("C",$permissao))
            {
                    $sql="insert into acesso (usuario, objeto, permissao, valorpermissao) values('".$usuario."', 'Tema','C', '$tema' )";
                    $result=pg_query($dbh, $sql);                    
            }
            
            if (in_array("A",$permissao))
            {
                    $sql="insert into acesso (usuario, objeto, permissao, valorpermissao) values('".$usuario."', 'Tema','A', '$tema' )";
                    $result=pg_query($dbh, $sql);                    
            }
            
			if (!$result) {
				include "includes/pg_end.php";
				header('location:gerencia.php?msn=10');
				exit;
			}
			else {
				include "includes/pg_end.php";
				header('location:gerencia.php?msn=11');
				exit;
			}
		}
		else {
			include "includes/pg_end.php";
			header('location:gerencia.php?msn=5');
			exit;
		}
	}
}
?>
