SetTitulo( "{$this->_instituicao} i-Educar - Usuário" );
$this->processoAp = "555";
$this->addEstilo('localizacaoSistema');
}
}
class indice extends clsCadastro
{
/**
* Referencia pega da session para o idpes do usuario atual
*
* @var int
*/
var $pessoa_logada;
var $cod_usuario;
var $ref_cod_escola;
var $ref_cod_instituicao;
var $ref_funcionario_cad;
var $ref_funcionario_exc;
var $ref_cod_tipo_usuario;
var $data_cadastro;
var $data_exclusao;
var $ativo;
var $nivel_usuario_;
var $ref_cod_instituicao_;
var $cod_usuario_;
function Inicializar()
{
$retorno = "Novo";
@session_start();
$this->pessoa_logada = $_SESSION['id_pessoa'];
@session_write_close();
if($_POST)
{
$this->cod_usuario=$_POST["cod_usuario_"];
}
else
{
$this->cod_usuario=$_GET["cod_usuario"];
}
if( is_numeric( $this->cod_usuario ) )
{
$obj = new clsPmieducarUsuario( $this->cod_usuario);
$registro = $obj->detalhe();
if( $registro )
{
foreach( $registro AS $campo => $val ) // passa todos os valores obtidos no registro para atributos do objeto
$this->$campo = $val;
$obj_permissoes = new clsPermissoes();
$this->fexcluir = $obj_permissoes->permissao_excluir( 555, $this->pessoa_logada,7, "educar_usuario_lst.php", true );
$retorno = "Editar";
}
}
$this->url_cancelar = ($retorno == "Editar") ? "educar_usuario_det.php?cod_usuario={$registro["cod_usuario"]}" : "educar_usuario_lst.php";
$this->nome_url_cancelar = "Cancelar";
$nomeMenu = $retorno == "Editar" ? $retorno : "Cadastrar";
$localizacao = new LocalizacaoSistema();
$localizacao->entradaCaminhos( array(
$_SERVER['SERVER_NAME']."/intranet" => "Início",
"educar_index.php" => "i-Educar - Escola",
"" => "{$nomeMenu} usuário"
));
$this->enviaLocalizacao($localizacao->montar());
return $retorno;
}
function Gerar()
{
$obj_permissao = new clsPermissoes();
$obj_permissao->permissao_cadastra(555,$this->pessoa_logada,7,"educar_usuario_lst.php", true);
// primary keys
$this->campoOculto( "cod_usuario", $this->cod_usuario );
// foreign keys
$opcoes = array( "" => "Pesquise o funcionário clicando na lupa ao lado" );
if( $this->cod_usuario )
{
$objTemp = new clsFuncionario( $this->cod_usuario );
$detalhe = $objTemp->detalhe();
$detalhe = $detalhe["idpes"]->detalhe();
$opcoes["{$detalhe["idpes"]}"] = $detalhe["nome"];
}
$parametros = new clsParametrosPesquisas();
$parametros->setSubmit( 0 );
$parametros->adicionaCampoSelect( "cod_usuario_", "ref_cod_pessoa_fj", "nome" );
$this->campoListaPesq( "cod_usuario_", "Usuário", $opcoes, $this->cod_usuario, "pesquisa_funcionario_lst.php", "", false, "", "", null, null, "", false, $parametros->serializaCampos() );
$opcoes = array( "" => "Selecione" );
if( class_exists( "clsPmieducarTipoUsuario" ) )
{
$objTemp = new clsPmieducarTipoUsuario();
$objTemp->setOrderby('nm_tipo ASC');
$obj_libera_menu = new clsMenuFuncionario($this->pessoa_logada,false,false,0);
$obj_super_usuario = $obj_libera_menu->detalhe();
// verifica se pessoa logada é super-usuario
if ($obj_super_usuario) {
$lista = $objTemp->lista(null,null,null,null,null,null,null,null,1);
}else{
$lista = $objTemp->lista(null,null,null,null,null,null,null,null,1,$obj_permissao->nivel_acesso($this->pessoa_logada));
}
if ( is_array( $lista ) && count( $lista ) )
{
foreach ( $lista as $registro )
{
$opcoes["{$registro['cod_tipo_usuario']}"] = "{$registro['nm_tipo']}";
$opcoes_["{$registro['cod_tipo_usuario']}"] = "{$registro['nivel']}";
}
}
}
else
{
echo "";
$opcoes = array( "" => "Erro na geração" );
}
$tamanho = sizeof($opcoes_);
echo "";
$this->campoLista( "ref_cod_tipo_usuario", "Tipo Usuário", $opcoes, $this->ref_cod_tipo_usuario,"",null,null,null,null,true );
$nivel = $obj_permissao->nivel_acesso($this->cod_usuario);
$this->campoOculto("nivel_usuario_",$nivel);
$get_biblioteca = false;
$get_escola = true;
$cad_usuario = true;
include( "include/pmieducar/educar_campo_lista.php" );
$this->acao_enviar = "valida()";
}
function Novo()
{
@session_start();
$this->pessoa_logada = $_SESSION['id_pessoa'];
@session_write_close();
// verifica se usuario é escolar
if ($this->ref_cod_instituicao && $this->ref_cod_escola)
{
$obj = new clsPmieducarUsuario( $this->cod_usuario_, $this->ref_cod_escola, $this->ref_cod_instituicao, $this->pessoa_logada, $this->pessoa_logada, $this->ref_cod_tipo_usuario,null,null,1 );
} // verifica se usuario é institucional
else if ($this->ref_cod_instituicao && !$this->ref_cod_escola)
{
$obj = new clsPmieducarUsuario( $this->cod_usuario_, null, $this->ref_cod_instituicao, $this->pessoa_logada, $this->pessoa_logada, $this->ref_cod_tipo_usuario,null,null,1 );
} // verifica se usuario é poli-institucional
else if (!$this->ref_cod_instituicao && !$this->ref_cod_escola)
{
$obj = new clsPmieducarUsuario( $this->cod_usuario_, null, null, $this->pessoa_logada, $this->pessoa_logada, $this->ref_cod_tipo_usuario,null,null,1 );
}
if($obj->existe())
$cadastrou = $obj->edita();
else
$cadastrou = $obj->cadastra();
// cadastra os menus que o usuario tem acesso
$obj_menu_func = new clsMenuFuncionario($this->cod_usuario_);
$obj_menu_func->exclui_todos();
//echo $this->cod_usuario;
$obj_menu_tipo_usuario = new clsPmieducarMenuTipoUsuario();
$obj_menu_tipo_ususario_lst = $obj_menu_tipo_usuario->lista($this->ref_cod_tipo_usuario);
foreach ( $obj_menu_tipo_ususario_lst as $menu )
{
$obj_menu_func = new clsMenuFuncionario($this->cod_usuario_,$menu["cadastra"],$menu["exclui"],$menu["ref_cod_menu_submenu"]);
$obj_menu_func->cadastra();
}
if( $cadastrou )
{
$this->mensagem .= "Cadastro efetuado com sucesso.
";
header( "Location: educar_usuario_lst.php" );
die();
return true;
}
$this->mensagem = "Cadastro não realizado.
";
echo "";
return false;
}
function Editar()
{
@session_start();
$this->pessoa_logada = $_SESSION['id_pessoa'];
@session_write_close();
// verifica se usuario é escolar
if ($this->ref_cod_instituicao && $this->ref_cod_escola)
{
$obj = new clsPmieducarUsuario( $this->cod_usuario, $this->ref_cod_escola, $this->ref_cod_instituicao, null, $this->pessoa_logada, $this->ref_cod_tipo_usuario,null,null,1 );
} // verifica se usuario é institucional
else if ($this->ref_cod_instituicao && !$this->ref_cod_escola)
{
$obj = new clsPmieducarUsuario( $this->cod_usuario, null, $this->ref_cod_instituicao, null, $this->pessoa_logada, $this->ref_cod_tipo_usuario,null,null,1 );
} // verifica se usuario é poli-institucional
else if (!$this->ref_cod_instituicao && !$this->ref_cod_escola)
{
$obj = new clsPmieducarUsuario( $this->cod_usuario, null, null, null, $this->pessoa_logada, $this->ref_cod_tipo_usuario,null,null,1 );
}
$editou = $obj->edita();
// cadastra os menus que o usuario tem acesso
$obj_menu_func = new clsMenuFuncionario($this->cod_usuario);
$obj_menu_func->exclui_todos();
//echo $this->cod_usuario;
$obj_menu_tipo_usuario = new clsPmieducarMenuTipoUsuario();
$obj_menu_tipo_ususario_lst = $obj_menu_tipo_usuario->lista($this->ref_cod_tipo_usuario);
foreach ( $obj_menu_tipo_ususario_lst as $menu )
{
$obj_menu_func = new clsMenuFuncionario($this->cod_usuario,$menu["cadastra"],$menu["exclui"],$menu["ref_cod_menu_submenu"]);
$obj_menu_func->cadastra();
}
if($this->nivel_usuario_ == 8)
{
$obj_tipo = new clsPmieducarTipoUsuario($this->ref_cod_tipo_usuario);
$det_tipo = $obj_tipo->detalhe();
if($det_tipo['nivel'] != 8){
$obj_usuario_bib = new clsPmieducarBibliotecaUsuario();
$lista_bibliotecas_usuario = $obj_usuario_bib->lista(null,$this->pessoa_logada);
if ($lista_bibliotecas_usuario) {
foreach ($lista_bibliotecas_usuario as $usuario)
{
$obj_usuario_bib = new clsPmieducarBibliotecaUsuario($usuario['ref_cod_biblioteca'],$this->pessoa_logada);
if(!$obj_usuario_bib->excluir()){
echo "";
return false;
}
}
}
}
}
if($this->ref_cod_instituicao != $this->ref_cod_instituicao_)
{
$obj_biblio = new clsPmieducarBiblioteca();
$lista_biblio_inst = $obj_biblio->lista(null,$this->ref_cod_instituicao_);
if($lista_biblio_inst)
{
foreach ($lista_biblio_inst as $biblioteca) {
$obj_usuario_bib = new clsPmieducarBibliotecaUsuario($biblioteca['cod_biblioteca'],$this->pessoa_logada);
$obj_usuario_bib->excluir();
}
}
}
if( $editou )
{
$this->mensagem .= "Edição efetuada com sucesso.
";
header( "Location: educar_usuario_lst.php" );
die();
return true;
}
$this->mensagem = "Edição não realizada.
";
echo "";
return false;
}
function Excluir()
{
@session_start();
$this->pessoa_logada = $_SESSION['id_pessoa'];
@session_write_close();
$obj = new clsPmieducarUsuario($this->cod_usuario, null, null, null, $this->pessoa_logada,null,null,null,0);
$excluiu = $obj->excluir();
if( $excluiu )
{
// cadastra os menus que o usuario tem acesso
$obj_menu_func = new clsMenuFuncionario($this->cod_usuario);
$obj_menu_func->exclui_todos(55);
$obj_menu_func->exclui_todos(57);
$obj_usuario_bib = new clsPmieducarBibliotecaUsuario();
$lista_bibliotecas_usuario = $obj_usuario_bib->lista(null,$this->cod_usuario);
if ($lista_bibliotecas_usuario) {
foreach ($lista_bibliotecas_usuario as $usuario)
{
$obj_usuario_bib = new clsPmieducarBibliotecaUsuario($usuario['ref_cod_biblioteca'],$this->pessoa_logada);
if(!$obj_usuario_bib->excluir()){
echo "";
return false;
}
}
}
$this->mensagem .= "Exclusão efetuada com sucesso.
";
header( "Location: educar_usuario_lst.php" );
die();
return true;
}
$this->mensagem = "Exclusão não realizada.
";
echo "";
return false;
}
}
// cria uma extensao da classe base
$pagina = new clsIndexBase();
// cria o conteudo
$miolo = new indice();
// adiciona o conteudo na clsBase
$pagina->addForm( $miolo );
// gera o html
$pagina->MakeAll();
?>