function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Exemplar Empréstimo - Detalhe";
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->cod_emprestimo = $_GET["cod_emprestimo"];
     $tmp_obj = new clsPmieducarExemplarEmprestimo($this->cod_emprestimo);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header("location: educar_exemplar_emprestimo_lst.php");
         die;
     }
     if (class_exists("clsPmieducarExemplar")) {
         $obj_ref_cod_exemplar = new clsPmieducarExemplar($registro["ref_cod_exemplar"]);
         $det_ref_cod_exemplar = $obj_ref_cod_exemplar->detalhe();
         if (class_exists("clsPmieducarAcervo")) {
             $acervo = $det_ref_cod_exemplar["ref_cod_acervo"];
             $obj_acervo = new clsPmieducarAcervo($acervo);
             $det_acervo = $obj_acervo->detalhe();
             $titulo_exemplar = $det_acervo["titulo"];
         }
     } else {
         $registro["ref_cod_exemplar"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarExemplar\n-->";
     }
     if (class_exists("clsPmieducarCliente")) {
         $obj_cliente = new clsPmieducarCliente($registro["ref_cod_cliente"]);
         $det_cliente = $obj_cliente->detalhe();
         $ref_idpes = $det_cliente["ref_idpes"];
         $obj_pessoa = new clsPessoa_($ref_idpes);
         $det_pessoa = $obj_pessoa->detalhe();
         $registro["ref_cod_cliente"] = $det_pessoa["nome"];
     } else {
         $registro["ref_cod_cliente"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarCliente\n-->";
     }
     if ($registro["ref_cod_cliente"]) {
         $this->addDetalhe(array("Cliente", "{$registro["ref_cod_cliente"]}"));
     }
     if ($titulo_exemplar) {
         $this->addDetalhe(array("Obra", "{$titulo_exemplar}"));
     }
     if ($registro["ref_cod_exemplar"]) {
         $this->addDetalhe(array("Tombo", "{$registro["ref_cod_exemplar"]}"));
     }
     if ($registro["data_retirada"]) {
         $this->addDetalhe(array("Data Retirada", dataFromPgToBr($registro["data_retirada"], "d/m/Y")));
     }
     if ($registro["valor_multa"]) {
         $this->addDetalhe(array("Valor Multa", "{$registro["valor_multa"]}"));
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(610, $this->pessoa_logada, 11)) {
         $this->url_novo = "educar_exemplar_emprestimo_login_cad.php";
     }
     $this->url_cancelar = "educar_exemplar_emprestimo_lst.php";
     $this->largura = "100%";
 }
 function Novo()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     $this->ref_cod_cliente = $_SESSION['reservas']['cod_cliente'];
     @session_write_close();
     if ($this->passo == 2) {
         return true;
     }
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(609, $this->pessoa_logada, 11, "educar_reservas_lst.php");
     $obj_acervo = new clsPmieducarAcervo($this->ref_cod_acervo);
     $det_acervo = $obj_acervo->detalhe();
     // tipo de exemplar
     $cod_exemplar_tipo = $det_acervo["ref_cod_exemplar_tipo"];
     if ($this->existe_reserva == 1) {
         //			die("1");
         //			echo "EMPRESTIMO <br>";
         // ------------------- DADOS DO CLIENTE (EMPRESTIMO) ------------------ //
         $obj_exemplar_emprestimo = new clsPmieducarExemplarEmprestimo();
         $lst_exemplar_emprestimo = $obj_exemplar_emprestimo->lista(null, null, null, null, $this->ref_cod_exemplar, null, null, null, null, null, false, $this->ref_cod_biblioteca);
         if (is_array($lst_exemplar_emprestimo) && count($lst_exemplar_emprestimo)) {
             $det_exemplar_emprestimo = array_shift($lst_exemplar_emprestimo);
             $cod_cliente = $det_exemplar_emprestimo["ref_cod_cliente"];
             // data do emprestimo
             $data_retirada = $det_exemplar_emprestimo["data_retirada"];
             $data_prevista_disponivel = dataFromPgToBr($data_retirada, "Y-m-d");
         } else {
             echo "<script> alert('ERRO - Não foi possível encontrar o registro do empréstimo!'); </script>";
         }
     } else {
         if ($this->existe_reserva == 2) {
             //			die("2");
             //			echo "RESERVA <br>";
             // ------------------- DADOS DO CLIENTE (RESERVA) ------------------ //
             $obj_reservas = new clsPmieducarReservas();
             $lst_reservas = $obj_reservas->lista(null, null, null, null, null, null, $this->data_disponivel, $this->data_disponivel, null, null, $this->ref_cod_exemplar, 1, $this->ref_cod_biblioteca);
             if (is_array($lst_reservas) && count($lst_reservas)) {
                 $det_reservas = array_shift($lst_reservas);
                 $cod_cliente = $det_reservas["ref_cod_cliente"];
                 // data da reserva
                 $data_prevista_disponivel = $this->data_disponivel;
             } else {
                 echo "<script> alert('ERRO - Não foi possível encontrar a reserva!'); </script>";
             }
         }
     }
     //		echo "data_prevista_disponivel 1: ".$data_prevista_disponivel."<br>";
     $obj_cliente_tipo_cliente = new clsPmieducarClienteTipoCliente();
     $lst_cliente_tipo_cliente = $obj_cliente_tipo_cliente->lista(null, $cod_cliente, null, null, null, null, null, null, $this->ref_cod_biblioteca);
     $det_cliente_tipo_cliente = array_shift($lst_cliente_tipo_cliente);
     // tipo do cliente
     $cod_cliente_tipo = $det_cliente_tipo_cliente["ref_cod_cliente_tipo"];
     $obj_cliente_tipo_exemplar_tipo = new clsPmieducarClienteTipoExemplarTipo($cod_cliente_tipo, $cod_exemplar_tipo);
     $det_cliente_tipo_exemplar_tipo = $obj_cliente_tipo_exemplar_tipo->detalhe();
     // qtde de dias disponiveis para emprestimo
     $dias_emprestimo = $det_cliente_tipo_exemplar_tipo["dias_emprestimo"];
     //		echo "dias_espera: ".$this->dias_espera."<br>";
     if ($this->existe_reserva == 2) {
         // Dias que o cliente tem pra pegar o exemplar. Calculo feito levando em consideracao a pior situacao.
         $data_prevista_disponivel = date("D Y-m-d", strtotime("{$data_prevista_disponivel} +" . $this->dias_espera . " days"));
     }
     //		echo "data_prevista_disponivel 2: ".$data_prevista_disponivel."<br>";
     $data_prevista_disponivel = date("D Y-m-d", strtotime("{$data_prevista_disponivel} +" . $dias_emprestimo . " days"));
     //		echo "data_prevista_disponivel 3: ".$data_prevista_disponivel."<br>";
     //---------------------DIAS FUNCIONAMENTO----------------------//
     $obj_biblioteca_dia = new clsPmieducarBibliotecaDia();
     $lst_biblioteca_dia = $obj_biblioteca_dia->lista($this->ref_cod_biblioteca);
     if (is_array($lst_biblioteca_dia) && count($lst_biblioteca_dia)) {
         foreach ($lst_biblioteca_dia as $dia_semana) {
             // dias de funcionamento da biblioteca
             $biblioteca_dias_semana[] = $dia_semana["dia"];
         }
     }
     // salva somente os dias que n se repetem ( dias de n funcionamento)
     $biblioteca_dias_folga = array_diff($this->dias_da_semana, $biblioteca_dias_semana);
     // inverte as relacoes entre chaves e valores ( de $variavel["Sun"] => 1, para $variavel[1] => "Sun")
     $biblioteca_dias_folga = array_flip($biblioteca_dias_folga);
     //---------------------DIAS FERIADO----------------------//
     $obj_biblioteca_feriado = new clsPmieducarBibliotecaFeriados();
     $lst_biblioteca_feriado = $obj_biblioteca_feriado->lista(null, $this->ref_cod_biblioteca);
     if (is_array($lst_biblioteca_feriado) && count($lst_biblioteca_feriado)) {
         foreach ($lst_biblioteca_feriado as $dia_feriado) {
             // dias de feriado da biblioteca
             $biblioteca_dias_feriado[] = dataFromPgToBr($dia_feriado["data_feriado"], "D Y-m-d");
         }
     }
     //		echo "<pre>"; print_r($biblioteca_dias_feriado)."<br>";
     // Cliente tem o dia inteiro para entregar o exemplar. Exemplar somente disponivel para a proxima reserva no dia seguinte.
     $data_prevista_disponivel = date("D Y-m-d ", strtotime("{$data_prevista_disponivel} +1 day"));
     // devido a comparacao das datas, é necessario mudar o formato da data
     $data_prevista_disponivel = dataFromPgToBr($data_prevista_disponivel, "D Y-m-d");
     //		echo "data_prevista_disponivel 4: ".$data_prevista_disponivel."<br>";
     // verifica se a data cai em algum dia que a biblioteca n funciona
     while (in_array(substr($data_prevista_disponivel, 0, 3), $biblioteca_dias_folga) || in_array($data_prevista_disponivel, $biblioteca_dias_feriado)) {
         //			echo "data_prevista_disponivel ASDFG = ".$data_prevista_disponivel."<br>";
         $data_prevista_disponivel = date("D Y-m-d ", strtotime("{$data_prevista_disponivel} +1 day"));
         $data_prevista_disponivel = dataFromPgToBr($data_prevista_disponivel, "D Y-m-d");
         //			echo "data_prevista_disponivel ASDFG = ".$data_prevista_disponivel."<br>";
     }
     //		echo "data_prevista_disponivel 5: ".$data_prevista_disponivel."<br>";die;
     $data_prevista_disponivel = dataFromPgToBr($data_prevista_disponivel, "Y-m-d");
     $obj = new clsPmieducarReservas(null, null, $this->pessoa_logada, $this->ref_cod_cliente, null, $data_prevista_disponivel, null, $this->ref_cod_exemplar, 1);
     $cadastrou = $obj->cadastra();
     if ($cadastrou) {
         $this->mensagem .= "Cadastro efetuado com sucesso.<br>";
         header("Location: educar_reservas_lst.php");
         die;
         return true;
     }
     $this->mensagem = "Cadastro n&atilde;o realizado.<br>";
     echo "<!--\nErro ao cadastrar clsPmieducarReservas\nvalores obrigatorios\n is_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->ref_cod_cliente} ) && is_numeric( {$this->ref_cod_exemplar} )\n-->";
     return false;
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     unset($_SESSION['emprestimo']['cod_cliente']);
     unset($_SESSION['emprestimo']['ref_cod_biblioteca']);
     session_write_close();
     $this->titulo = "Exemplar Empr&eacute;stimo - Listagem";
     foreach ($_GET as $var => $val) {
         // passa todos os valores obtidos no GET para atributos do objeto
         $this->{$var} = $val === "" ? null : $val;
     }
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $lista_busca = array("Cliente", "Tombo", "Exemplar", "Data Retirada");
     // Filtros de Foreign Keys
     $get_escola = true;
     $get_biblioteca = true;
     $get_cabecalho = "lista_busca";
     include "include/pmieducar/educar_campo_lista.php";
     $this->addCabecalhos($lista_busca);
     // Filtros de Foreign Keys
     $this->campoTexto("nm_cliente", "Cliente", $this->nm_cliente, 30, 255, false, false, false, "", "<img border=\"0\" onclick=\"pesquisa_cliente();\" id=\"ref_cod_cliente_lupa\" name=\"ref_cod_cliente_lupa\" src=\"imagens/lupa.png\"\\/>");
     $this->campoOculto("ref_cod_cliente", $this->ref_cod_cliente);
     $this->campoTexto("nm_obra", "Obra", $this->nm_obra, 30, 255, false, false, false, "", "<img border=\"0\" onclick=\"pesquisa_obra();\" id=\"ref_cod_exemplar_lupa\" name=\"ref_cod_exemplar_lupa\" src=\"imagens/lupa.png\"\\/>");
     $this->campoOculto("ref_cod_acervo", $this->ref_cod_acervo);
     $this->campoNumero("ref_cod_exemplar", "Tombo", $this->ref_cod_exemplar, 15, 50);
     if ($this->ref_cod_biblioteca) {
         $this->cod_biblioteca = $this->ref_cod_biblioteca;
         $this->campoOculto("cod_biblioteca", $this->cod_biblioteca);
     } else {
         $this->cod_biblioteca = null;
         $this->campoOculto("cod_biblioteca", $this->cod_biblioteca);
     }
     // outros Filtros
     $this->campoData("data_retirada", "Data Retirada", $this->data_retirada, false);
     // Paginador
     $this->limite = 20;
     $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0;
     $obj_exemplar_emprestimo = new clsPmieducarExemplarEmprestimo();
     $obj_exemplar_emprestimo->setOrderby("data_retirada ASC");
     $obj_exemplar_emprestimo->setLimite($this->limite, $this->offset);
     $lista = $obj_exemplar_emprestimo->lista(null, null, null, $this->ref_cod_cliente, $this->ref_cod_exemplar, $this->data_retirada, $this->data_retirada, null, null, null, false, $this->ref_cod_biblioteca, false, $this->ref_cod_instituicao, $this->ref_cod_escola, $this->nm_obra);
     $total = $obj_exemplar_emprestimo->_total;
     // monta a lista
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             // muda os campos data
             $registro["data_retirada_time"] = strtotime(substr($registro["data_retirada"], 0, 16));
             $registro["data_retirada_br"] = date("d/m/Y", $registro["data_retirada_time"]);
             // pega detalhes de foreign_keys
             if (class_exists("clsPmieducarExemplar")) {
                 $obj_exemplar = new clsPmieducarExemplar($registro["ref_cod_exemplar"]);
                 $det_exemplar = $obj_exemplar->detalhe();
                 $acervo = $det_exemplar["ref_cod_acervo"];
                 $obj_acervo = new clsPmieducarAcervo($acervo);
                 $det_acervo = $obj_acervo->detalhe();
                 $registro["titulo"] = $det_acervo["titulo"];
             } else {
                 $registro["ref_cod_exemplar"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsPmieducarExemplar\n-->";
             }
             if (class_exists("clsPmieducarCliente")) {
                 $obj_cliente = new clsPmieducarCliente($registro["ref_cod_cliente"]);
                 $det_cliente = $obj_cliente->detalhe();
                 $ref_idpes = $det_cliente["ref_idpes"];
                 $obj_pessoa = new clsPessoa_($ref_idpes);
                 $det_pessoa = $obj_pessoa->detalhe();
                 $registro["ref_cod_cliente"] = $det_pessoa["nome"];
             } else {
                 $registro["ref_cod_cliente"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsPmieducarCliente\n-->";
             }
             if (class_exists("clsPmieducarBiblioteca")) {
                 $obj_ref_cod_biblioteca = new clsPmieducarBiblioteca($registro["ref_cod_biblioteca"]);
                 $det_ref_cod_biblioteca = $obj_ref_cod_biblioteca->detalhe();
                 $registro["ref_cod_biblioteca"] = $det_ref_cod_biblioteca["nm_biblioteca"];
             }
             if ($registro["ref_cod_instituicao"]) {
                 $obj_ref_cod_instituicao = new clsPmieducarInstituicao($registro["ref_cod_instituicao"]);
                 $det_ref_cod_instituicao = $obj_ref_cod_instituicao->detalhe();
                 $registro["ref_cod_instituicao"] = $det_ref_cod_instituicao["nm_instituicao"];
             }
             if ($registro["ref_cod_escola"]) {
                 $obj_ref_cod_escola = new clsPmieducarEscola();
                 $det_ref_cod_escola = array_shift($obj_ref_cod_escola->lista($registro["ref_cod_escola"]));
                 $registro["ref_cod_escola"] = $det_ref_cod_escola["nome"];
             }
             $lista_busca = array("<a href=\"educar_exemplar_emprestimo_det.php?cod_emprestimo={$registro["cod_emprestimo"]}\">{$registro["ref_cod_cliente"]}</a>", "<a href=\"educar_exemplar_emprestimo_det.php?cod_emprestimo={$registro["cod_emprestimo"]}\">{$registro["ref_cod_exemplar"]}</a>", "<a href=\"educar_exemplar_emprestimo_det.php?cod_emprestimo={$registro["cod_emprestimo"]}\">{$registro["titulo"]}</a>", "<a href=\"educar_exemplar_emprestimo_det.php?cod_emprestimo={$registro["cod_emprestimo"]}\">{$registro["data_retirada_br"]}</a>");
             if ($qtd_bibliotecas > 1 && ($nivel_usuario == 4 || $nivel_usuario == 8)) {
                 $lista_busca[] = "<a href=\"educar_exemplar_emprestimo_det.php?cod_emprestimo={$registro["cod_emprestimo"]}\">{$registro["ref_cod_biblioteca"]}</a>";
             } else {
                 if ($nivel_usuario == 1 || $nivel_usuario == 2 || $nivel_usuario == 4) {
                     $lista_busca[] = "<a href=\"educar_exemplar_emprestimo_det.php?cod_emprestimo={$registro["cod_emprestimo"]}\">{$registro["ref_cod_biblioteca"]}</a>";
                 }
             }
             if ($nivel_usuario == 1 || $nivel_usuario == 2) {
                 $lista_busca[] = "<a href=\"educar_exemplar_emprestimo_det.php?cod_emprestimo={$registro["cod_emprestimo"]}\">{$registro["ref_cod_escola"]}</a>";
             }
             if ($nivel_usuario == 1) {
                 $lista_busca[] = "<a href=\"educar_exemplar_emprestimo_det.php?cod_emprestimo={$registro["cod_emprestimo"]}\">{$registro["ref_cod_instituicao"]}</a>";
             }
             $this->addLinhas($lista_busca);
         }
     }
     $this->addPaginador2("educar_exemplar_emprestimo_lst.php", $total, $_GET, $this->nome, $this->limite);
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(610, $this->pessoa_logada, 11)) {
         $this->acao = "go(\"educar_exemplar_emprestimo_login_cad.php\")";
         $this->nome_acao = "Novo";
     }
     $this->largura = "100%";
 }
 function Novo()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(628, $this->pessoa_logada, 11, "educar_exemplar_devolucao_lst.php");
     $this->valor_multa = urldecode($this->valor_multa);
     $this->valor_multa = str_replace(".", "", $this->valor_multa);
     $this->valor_multa = str_replace(",", ".", $this->valor_multa);
     //		echo $this->cod_emprestimo." / ".$this->pessoa_logada." / ".date('Y-m-d')." / ".$this->valor_multa;die;
     $obj_situacao = new clsPmieducarSituacao();
     $lst_situacao = $obj_situacao->lista(null, null, null, null, 2, null, 1, 0, null, null, null, null, 1, $this->ref_cod_biblioteca);
     if (is_array($lst_situacao) && count($lst_situacao)) {
         $det_situacao = array_shift($lst_situacao);
         $cod_situacao = $det_situacao["cod_situacao"];
     } else {
         echo "<script> alert('ERRO - Não foi possível encontrar a situação DISPONÍVEL da biblioteca utilizada!'); </script>";
         return false;
     }
     $obj = new clsPmieducarExemplarEmprestimo($this->cod_emprestimo, $this->pessoa_logada, null, null, null, null, date('Y-m-d'), $this->valor_multa);
     $editou = $obj->edita();
     if ($editou) {
         $obj = new clsPmieducarExemplar($this->ref_cod_exemplar, null, null, null, $cod_situacao, $this->pessoa_logada, null, null, null, null, null, 1);
         $editou = $obj->edita();
         if (!$editou) {
             $this->mensagem = "Cadastro n&atilde;o realizado.<br>";
             echo "<!--\nErro ao cadastrar clsPmieducarSituacao\nvalores obrigatorios\nis_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->ref_cod_exemplar} ) && is_numeric( {$cod_situacao} )\n-->";
             return false;
         }
         $this->mensagem .= "Cadastro efetuado com sucesso.<br>";
         header("Location: educar_exemplar_devolucao_lst.php");
         die;
         return true;
     }
     $this->mensagem = "Edi&ccedil;&atilde;o n&atilde;o realizada.<br>";
     echo "<!--\nErro ao editar clsPmieducarExemplarEmprestimo\nvalores obrigatorios\nis_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->ref_cod_cliente} )\n-->";
     return false;
 }
 function Inicializar()
 {
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $this->ref_cod_cliente = $_GET["cod_cliente"];
     $this->ref_cod_biblioteca = $_GET["cod_biblioteca"];
     if (!$this->ref_cod_cliente || !$this->ref_cod_biblioteca) {
         header("Location: educar_pagamento_multa_lst.php");
     }
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(622, $this->pessoa_logada, 11, "educar_pagamento_multa_lst.php");
     if (is_numeric($this->ref_cod_cliente)) {
         $obj_exemplar_emprestimo = new clsPmieducarExemplarEmprestimo();
         $lst_exemplar_emprestimo = $obj_exemplar_emprestimo->listaDividaPagamentoCliente($this->ref_cod_cliente, null, $this->ref_cod_cliente_tipo, $this->pessoa_logada, $this->ref_cod_biblioteca, $this->ref_cod_escola, $this->ref_cod_instituicao);
         if ($lst_exemplar_emprestimo) {
             foreach ($lst_exemplar_emprestimo as $registro) {
                 if (is_numeric($registro["valor_multa"])) {
                     $this->valor_divida_bib = $registro["valor_multa"];
                 } else {
                     $this->valor_divida_bib = 0;
                 }
                 if (is_numeric($registro["valor_pago"])) {
                     $this->valor_pago_bib = $registro["valor_pago"];
                 } else {
                     $this->valor_pago_bib = 0;
                 }
             }
         }
         $obj_cliente = new clsPmieducarCliente($this->ref_cod_cliente);
         $det_cliente = $obj_cliente->detalhe();
         if ($det_cliente) {
             $this->ref_idpes = $det_cliente["ref_idpes"];
             $obj_pessoa = new clsPessoa_($this->ref_idpes);
             $det_pessoa = $obj_pessoa->detalhe();
             if ($det_pessoa) {
                 $this->nm_pessoa = $det_pessoa["nome"];
             }
             $obj_divida = new clsPmieducarExemplarEmprestimo(null, null, null, $this->ref_cod_cliente);
             $det_divida = $obj_divida->clienteDividaTotal($this->ref_idpes, $this->ref_cod_cliente);
             if ($det_divida) {
                 foreach ($det_divida as $divida) {
                     $this->valor_divida = $divida["valor_multa"];
                 }
             }
         }
     }
     $this->url_cancelar = $retorno == "Editar" ? "educar_pagamento_multa_det.php?cod_cliente={$this->ref_cod_cliente}" : "educar_pagamento_multa_lst.php";
     $this->nome_url_cancelar = "Cancelar";
     $this->nome_url_sucesso = "Pagar";
     $this->acao_enviar = "validaValor()";
     return $retorno;
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     unset($_SESSION['reload']);
     session_write_close();
     $this->titulo = "Exemplar Devolu&ccedil;&atilde;o - Detalhe";
     $this->cod_emprestimo = $_GET["cod_emprestimo"];
     if (!$this->cod_emprestimo) {
         header("Location: educar_exemplar_devolucao_lst.php");
     }
     $obj_exemplar_emprestimo = new clsPmieducarExemplarEmprestimo();
     $lista = $obj_exemplar_emprestimo->lista($this->cod_emprestimo);
     if (is_array($lista) && count($lista)) {
         $registro = array_shift($lista);
         if (!$registro) {
             header("location: educar_exemplar_devolucao_lst.php");
             die;
         }
         if (class_exists("clsPmieducarBiblioteca")) {
             $obj_ref_cod_biblioteca = new clsPmieducarBiblioteca($registro["ref_cod_biblioteca"]);
             $det_ref_cod_biblioteca = $obj_ref_cod_biblioteca->detalhe();
             $registro["ref_cod_biblioteca"] = $det_ref_cod_biblioteca["nm_biblioteca"];
         } else {
             $registro["ref_cod_biblioteca"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarBiblioteca\n-->";
         }
         if (class_exists("clsPmieducarInstituicao")) {
             $obj_ref_cod_instituicao = new clsPmieducarInstituicao($registro["ref_cod_instituicao"]);
             $det_ref_cod_instituicao = $obj_ref_cod_instituicao->detalhe();
             $registro["ref_cod_instituicao"] = $det_ref_cod_instituicao["nm_instituicao"];
         } else {
             $registro["ref_cod_instituicao"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->";
         }
         if (class_exists("clsPmieducarEscola")) {
             $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_cod_escola"]);
             $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
             $idpes = $det_ref_cod_escola["ref_idpes"];
             if ($idpes) {
                 $obj_escola = new clsPessoaJuridica($idpes);
                 $obj_escola_det = $obj_escola->detalhe();
                 $registro["ref_cod_escola"] = $obj_escola_det["fantasia"];
             } else {
                 $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]);
                 $obj_escola_det = $obj_escola->detalhe();
                 $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"];
             }
         }
         if (class_exists("clsPmieducarExemplar")) {
             $obj_ref_cod_exemplar = new clsPmieducarExemplar($registro["ref_cod_exemplar"]);
             $det_ref_cod_exemplar = $obj_ref_cod_exemplar->detalhe();
             if (class_exists("clsPmieducarAcervo")) {
                 $acervo = $det_ref_cod_exemplar["ref_cod_acervo"];
                 $obj_acervo = new clsPmieducarAcervo($acervo);
                 $det_acervo = $obj_acervo->detalhe();
                 $titulo_exemplar = $det_acervo["titulo"];
             }
         } else {
             $registro["ref_cod_exemplar"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarExemplar\n-->";
         }
         if (class_exists("clsPmieducarCliente")) {
             $obj_cliente = new clsPmieducarCliente($registro["ref_cod_cliente"]);
             $det_cliente = $obj_cliente->detalhe();
             $ref_idpes = $det_cliente["ref_idpes"];
             $obj_pessoa = new clsPessoa_($ref_idpes);
             $det_pessoa = $obj_pessoa->detalhe();
             $registro["ref_cod_cliente"] = $det_pessoa["nome"];
         } else {
             $registro["ref_cod_cliente"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarCliente\n-->";
         }
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         if ($registro["ref_cod_instituicao"]) {
             $this->addDetalhe(array("Institui&ccedil;&atilde;o", "{$registro["ref_cod_instituicao"]}"));
         }
     }
     if ($nivel_usuario == 1 || $nivel_usuario == 2) {
         if ($registro["ref_cod_escola"]) {
             $this->addDetalhe(array("Escola", "{$registro["ref_cod_escola"]}"));
         }
     }
     if ($registro["ref_cod_biblioteca"]) {
         $this->addDetalhe(array("Biblioteca", "{$registro["ref_cod_biblioteca"]}"));
     }
     if ($registro["ref_cod_cliente"]) {
         $this->addDetalhe(array("Cliente", "{$registro["ref_cod_cliente"]}"));
     }
     if ($titulo_exemplar) {
         $this->addDetalhe(array("Obra", "{$titulo_exemplar}"));
     }
     $this->addDetalhe(array("Código exemplar", "{$registro["ref_cod_exemplar"]}"));
     $this->addDetalhe(array("Tombo", "{$det_ref_cod_exemplar["tombo"]}"));
     if ($registro["data_retirada"]) {
         $this->addDetalhe(array("Data Retirada", dataFromPgToBr($registro["data_retirada"], "d/m/Y")));
     }
     if ($registro["valor_multa"]) {
         $this->addDetalhe(array("Valor Multa", "{$registro["valor_multa"]}"));
     }
     if ($obj_permissoes->permissao_cadastra(628, $this->pessoa_logada, 11)) {
         $this->caption_novo = "Devolu&ccedil;&atilde;o";
         $this->url_novo = "educar_exemplar_devolucao_cad.php?cod_emprestimo={$registro["cod_emprestimo"]}";
     }
     $this->url_cancelar = "educar_exemplar_devolucao_lst.php";
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_biblioteca_index.php" => "i-Educar - Biblioteca", "" => "Detalhe do exemplar para devolu&ccedil;&atilde;o"));
     $this->enviaLocalizacao($localizacao->montar());
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Pagamento Multa - Listagem";
     foreach ($_GET as $var => $val) {
         // passa todos os valores obtidos no GET para atributos do objeto
         $this->{$var} = $val === "" ? null : $val;
     }
     $lista_busca = array("Cliente", "Valor Multa (Biblioteca)", "Valor Multa (Total)", "Valor Pago");
     $obrigatorio = false;
     $get_instituicao = true;
     $get_escola = true;
     $get_biblioteca = true;
     $get_cliente_tipo = true;
     $get_cabecalho = "lista_busca";
     include "include/pmieducar/educar_campo_lista.php";
     $this->addCabecalhos($lista_busca);
     $parametros = new clsParametrosPesquisas();
     $parametros->setSubmit(0);
     $parametros->adicionaCampoSelect("ref_idpes", "idpes", "nome");
     $parametros->setPessoa('F');
     $parametros->setPessoaCPF('N');
     $parametros->setCodSistema(1);
     $this->campoListaPesq("ref_idpes", "Cliente", array('' => "Selecione"), $this->ref_idpes, "pesquisa_pessoa_lst.php", "", false, "", "", null, null, "", false, $parametros->serializaCampos());
     // Paginador
     $this->limite = 20;
     $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0;
     $obj_exemplar_emprestimo = new clsPmieducarExemplarEmprestimo();
     $lst_exemplar_emprestimo = $obj_exemplar_emprestimo->listaDividaPagamentoCliente($this->ref_cod_cliente, $this->ref_idpes, $this->ref_cod_cliente_tipo, $this->pessoa_logada, $this->ref_cod_biblioteca, $this->ref_cod_escola, $this->ref_cod_instituicao);
     // monta a lista
     if (is_array($lst_exemplar_emprestimo) && count($lst_exemplar_emprestimo)) {
         foreach ($lst_exemplar_emprestimo as $registro) {
             $obj_cliente = new clsPmieducarCliente($registro["ref_cod_cliente"]);
             $det_cliente = $obj_cliente->detalhe();
             if ($det_cliente) {
                 $obj_pessoa = new clsPessoa_($det_cliente["ref_idpes"]);
                 $det_pessoa = $obj_pessoa->detalhe();
                 if ($det_tipo) {
                     $nm_tipo = $det_tipo["nm_tipo"];
                 }
             }
             if (!is_numeric($registro["valor_pago"])) {
                 $registro["valor_pago"] = 0;
             }
             $obj_ex_em = new clsPmieducarExemplarEmprestimo();
             $lst_ex_em = $obj_ex_em->listaTotalMulta($registro["ref_cod_cliente"]);
             $multa_total = 0;
             if ($lst_ex_em) {
                 foreach ($lst_ex_em as $divida_total) {
                     if ($divida_total["cod_cliente"] == $registro["ref_cod_cliente"]) {
                         $multa_total = $divida_total["valor_multa_total"];
                     }
                 }
             }
             $obj_bib = new clsPmieducarBiblioteca($registro["ref_cod_biblioteca"]);
             $det_bib = $obj_bib->detalhe();
             if ($det_bib) {
                 $obj_inst = new clsPmieducarInstituicao($det_bib["ref_cod_instituicao"]);
                 $det_inst = $obj_inst->detalhe();
                 $obj_esc = new clsPmieducarEscolaComplemento($det_bib["ref_cod_escola"]);
                 $det_esc = $obj_esc->detalhe();
                 if ($det_esc) {
                     $nome_escola = $det_esc["nm_escola"];
                 } else {
                     $obj_escola = new clsPmieducarEscola($det_bib["ref_cod_escola"]);
                     $det_escola = $obj_escola->detalhe();
                     if ($det_escola) {
                         $obj_pes = new clsPessoa_($det_escola["ref_idpes"]);
                         $det_pes = $obj_pes->detalhe();
                         if ($det_pes) {
                             $nome_escola = $det_pes["nome"];
                         }
                     }
                 }
             }
             $obj_tipo = new clsPmieducarCliente();
             $det_tipo = $obj_tipo->retornaTipoCliente($registro["ref_cod_cliente"], $registro["ref_cod_biblioteca"]);
             $lista_busca = array($lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">{$det_pessoa["nome"]}</a>", $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">" . "R\$" . number_format($registro["valor_multa"], 2, ",", ".") . "</a>", $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">" . "R\$" . number_format($multa_total, 2, ",", ".") . "</a>", $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">" . "R\$" . number_format($registro["valor_pago"], 2, ",", ".") . "</a>");
             if ($qtd_bibliotecas > 1 && ($nivel_usuario == 4 || $nivel_usuario == 8)) {
                 $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">{$det_bib["nm_biblioteca"]}</a>";
             } else {
                 if ($nivel_usuario == 1 || $nivel_usuario == 2 || $nivel_usuario == 4) {
                     $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">{$det_bib["nm_biblioteca"]}</a>";
                 }
             }
             if ($nivel_usuario == 1 || $nivel_usuario == 2) {
                 $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">{$nome_escola}</a>";
             }
             if ($nivel_usuario == 1) {
                 $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">{$det_inst["nm_instituicao"]}</a>";
             }
             $this->addLinhas($lista_busca);
         }
     }
     $this->addPaginador2("educar_pagamento_multa_lst.php", $total, $_GET, $this->nome, $this->limite);
     $obj_permissoes = new clsPermissoes();
     //		if( $obj_permissoes->permissao_cadastra( 622, $this->pessoa_logada, 11 ) )
     //		{
     //		$this->acao = "go(\"educar_pagamento_multa_cad.php\")";
     //		$this->nome_acao = "Novo";
     //		}
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_biblioteca_index.php" => "i-Educar - Biblioteca", "" => "Listagem de d&iacute;vidas"));
     $this->enviaLocalizacao($localizacao->montar());
 }
 function Novo()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     $this->ref_cod_cliente = $_SESSION['emprestimo']['cod_cliente'];
     @session_write_close();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(610, $this->pessoa_logada, 11, "educar_exemplar_emprestimo_lst.php");
     $this->exemplar_emprestimo = unserialize(urldecode($this->exemplar_emprestimo));
     if ($this->exemplar_emprestimo) {
         $this->exemplar_emprestimo = $this->exemplar_emprestimo['ref_cod_exemplar_'];
         foreach ($this->exemplar_emprestimo as $campo) {
             $obj = new clsPmieducarExemplarEmprestimo(null, null, $this->pessoa_logada, $this->ref_cod_cliente, $campo);
             $cadastrou = $obj->cadastra();
             if ($cadastrou) {
                 $obj_situacao = new clsPmieducarSituacao();
                 $lst_situacao = $obj_situacao->lista(null, null, null, null, 1, null, 0, 1, null, null, null, null, 1, $this->ref_cod_biblioteca);
                 if (is_array($lst_situacao) && count($lst_situacao)) {
                     $det_situacao = array_shift($lst_situacao);
                     $cod_situacao = $det_situacao["cod_situacao"];
                     $obj = new clsPmieducarExemplar($campo, null, null, null, $cod_situacao, $this->pessoa_logada, null, null, null, null, null, 1);
                     $editou = $obj->edita();
                     if (!$editou) {
                         $this->mensagem = "Cadastro n&atilde;o realizado.<br>";
                         echo "<!--\nErro ao cadastrar clsPmieducarSituacao\nvalores obrigatorios\nis_numeric( {$this->pessoa_logada} ) && is_numeric( {$campo} ) && is_numeric( {$cod_situacao} )\n-->";
                         return false;
                     }
                 } else {
                     echo "<script> alert('ERRO - Não foi possível encontrar a situação EMPRESTADO da biblioteca utilizada!'); </script>";
                 }
             } else {
                 $this->mensagem = "Cadastro n&atilde;o realizado.<br>";
                 echo "<!--\nErro ao cadastrar clsPmieducarExemplarEmprestimo\nvalores obrigatorios\nis_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->ref_cod_cliente} )\n-->";
                 return false;
             }
         }
         $this->mensagem .= "Cadastro efetuado com sucesso.<br>";
         header("Location: educar_exemplar_emprestimo_lst.php");
         die;
         return true;
     }
     echo "<script> alert('É necessário adicionar pelo menos 1 Tombo!') </script>";
     $this->mensagem = "Cadastro n&atilde;o realizado.<br>";
     return false;
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Pagamento Multa - Detalhe";
     $this->ref_cod_cliente = $_GET["cod_cliente"];
     $this->ref_cod_cliente_tipo = $_GET["cod_cliente_tipo"];
     if (!$this->ref_cod_cliente || !$this->ref_cod_cliente_tipo) {
         header("Location: educar_pagamento_multa_lst.php");
     }
     if (class_exists("clsPmieducarCliente")) {
         $obj_tipo = new clsPmieducarClienteTipo($this->ref_cod_cliente_tipo);
         $det_tipo = $obj_tipo->detalhe();
         $obj_ref_cod_cliente = new clsPmieducarCliente();
         $lst_ref_cod_cliente = $obj_ref_cod_cliente->listaCompleta($this->ref_cod_cliente, null, null, null, null, null, null, null, null, null, 1, null, null, $this->ref_cod_cliente_tipo);
         if ($lst_ref_cod_cliente) {
             foreach ($lst_ref_cod_cliente as $registro) {
                 $this->addDetalhe(array("Cliente", "{$registro["nome"]}"));
                 $this->addDetalhe(array("Login", "{$registro["login"]}"));
                 $obj_divida = new clsPmieducarExemplarEmprestimo();
                 $lst_divida = $obj_divida->lista(null, null, null, $registro["cod_cliente"], null, null, null, null, null, null, null, null, true);
                 if ($lst_divida) {
                     $tabela = "<TABLE>\n\t\t\t\t\t\t\t\t       <TR align=center>\n\t\t\t\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Data de Devolu&ccedil;&atilde;o</B></TD>\n\t\t\t\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>T&iacute;tulo</B></TD>\n\t\t\t\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Biblioteca</B></TD>\n\t\t\t\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Valor</B></TD>\n\t\t\t\t\t\t\t\t       </TR>";
                     $cont = 0;
                     $total = 0;
                     foreach ($lst_divida as $divida) {
                         $total += $divida["valor_multa"];
                         if ($cont % 2 == 0) {
                             $color = " bgcolor=#E4E9ED ";
                         } else {
                             $color = " bgcolor=#FFFFFF ";
                         }
                         $obj_exemplar = new clsPmieducarExemplar($divida["ref_cod_exemplar"]);
                         $det_exemplar = $obj_exemplar->detalhe();
                         if ($det_exemplar) {
                             $obj_acervo = new clsPmieducarAcervo($det_exemplar["ref_cod_acervo"]);
                             $det_acervo = $obj_acervo->detalhe();
                             $obj_bib = new clsPmieducarBiblioteca($det_acervo["ref_cod_biblioteca"]);
                             $det_bib = $obj_bib->detalhe();
                         }
                         $corpo .= "<TR>\n\t\t\t\t\t\t\t\t\t\t    <TD {$color} align=left>" . dataFromPgToBr($divida["data_devolucao"]) . "</TD>\n\t\t\t\t\t\t\t\t\t\t    <TD {$color} align=left>{$det_acervo["titulo"]}</TD>\n\t\t\t\t\t\t\t\t\t\t    <TD {$color} align=left>{$det_bib["nm_biblioteca"]}</TD>\n\t\t\t\t\t\t\t\t\t\t    <TD {$color} align=right>" . "R\$" . number_format($divida["valor_multa"], 2, ",", ".") . "</TD>\n\t\t\t\t\t\t\t\t\t\t</TR>";
                         $cont++;
                     }
                     $tabela .= $corpo;
                     if ($cont % 2 == 0) {
                         $color = " bgcolor=#E4E9ED ";
                     } else {
                         $color = " bgcolor=#FFFFFF ";
                     }
                     $tabela .= "<TR>\n\t\t\t\t\t\t\t\t\t\t<TD {$color} colspan=3 align=right > <B>Total</B> </TD>\n\t\t\t\t\t\t\t\t\t\t<TD {$color} align=right > <B>" . "R\$" . number_format($total, 2, ",", ".") . "</B> </TD>\n\t\t\t\t\t\t\t\t\t</TR>";
                     $obj_multa = new clsPmieducarPagamentoMulta(null, null, $registro["cod_cliente"], null, null, $det_tipo["ref_cod_biblioteca"]);
                     $total_pago = $obj_multa->totalPago();
                     $cont++;
                     if ($cont % 2 == 0) {
                         $color = " bgcolor=#E4E9ED ";
                     } else {
                         $color = " bgcolor=#FFFFFF ";
                     }
                     $tabela .= "<TR>\n\t\t\t\t\t\t\t\t\t\t<TD {$color} colspan=3 align=right > <B>Total Pago</B> </TD>\n\t\t\t\t\t\t\t\t\t\t<TD {$color} align=right > <B>" . "R\$" . number_format($total_pago, 2, ",", ".") . "</B> </TD>\n\t\t\t\t\t\t\t\t\t</TR>";
                     $cont++;
                     if ($cont % 2 == 0) {
                         $color = " bgcolor=#E4E9ED ";
                     } else {
                         $color = " bgcolor=#FFFFFF ";
                     }
                     $obj_tot = new clsPmieducarExemplarEmprestimo();
                     $lst_tot = $obj_tot->listaDividaPagamentoCliente($registro["cod_cliente"], null, null, null, $det_tipo["ref_cod_biblioteca"]);
                     $total_bib = 0;
                     if ($lst_tot) {
                         foreach ($lst_tot as $total_reg) {
                             $total_bib = $total_reg["valor_multa"];
                         }
                     }
                     $tabela .= "<TR>\n\t\t\t\t\t\t\t\t\t\t<TD {$color} colspan=3 align=right > <B>Total (Biblioteca)</B> </TD>\n\t\t\t\t\t\t\t\t\t\t<TD {$color} align=right > <B>" . "R\$" . number_format($total_bib, 2, ",", ".") . "</B> </TD>\n\t\t\t\t\t\t\t\t\t</TR>";
                     $cont++;
                     if ($cont % 2 == 0) {
                         $color = " bgcolor=#E4E9ED ";
                     } else {
                         $color = " bgcolor=#FFFFFF ";
                     }
                     $tabela .= "<TR>\n\t\t\t\t\t\t\t\t\t\t<TD {$color} colspan=3 align=right > <B>Total Devido</B> </TD>\n\t\t\t\t\t\t\t\t\t\t<TD {$color} align=right > <B>" . "R\$" . number_format($total - $total_pago, 2, ",", ".") . "</B> </TD>\n\t\t\t\t\t\t\t\t\t</TR>";
                     $tabela .= "</TABLE>";
                     if ($tabela) {
                         $this->addDetalhe(array("Multa", "{$tabela}"));
                     }
                 }
                 $this->ref_cod_cliente = $registro["cod_cliente"];
             }
         }
     } else {
         $registro["ref_cod_cliente"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarCliente\n-->";
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(622, $this->pessoa_logada, 11)) {
         $this->caption_novo = "Pagar";
         $this->url_novo = "educar_pagamento_multa_cad.php?cod_cliente={$this->ref_cod_cliente}&cod_biblioteca={$det_tipo["ref_cod_biblioteca"]}";
         $this->url_editar = false;
     }
     $this->url_cancelar = "educar_pagamento_multa_lst.php";
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_biblioteca_index.php" => "i-Educar - Biblioteca", "" => "Detalhe da d&iacute;vida"));
     $this->enviaLocalizacao($localizacao->montar());
 }
 protected function postDevolucao()
 {
     if ($this->canPostDevolucao()) {
         // altera situacao exemplar para disponivel
         $situacaoDisponivel = $this->loadSituacaoExemplar($permiteEmprestimo = true, $padrao = true, $emprestada = false);
         if ($situacaoDisponivel && !$this->updateSituacaoExemplar($situacaoDisponivel)) {
             $this->messenger->append("Aparentemente a situação do exemplar não foi alterada para disponivel.", 'error');
         } elseif (!$situacaoDisponivel) {
             $this->messenger->append("Não foi encontrado uma situação padrão cadastrada para exemplar disponivel.", 'error');
         }
         // grava emprestimo
         if (!$this->messenger->hasMsgWithType('error')) {
             $_emprestimo = $this->loadEmprestimoForExemplar();
             $emprestimo = new clsPmieducarExemplarEmprestimo();
             $emprestimo->cod_emprestimo = $_emprestimo['id'];
             $emprestimo->ref_usuario_devolucao = $this->getSession()->id_pessoa;
             $emprestimo->data_devolucao = date("Y-m-d");
             // TODO calcular / setar valor multa (se) devolução atrasada?
             if ($emprestimo->edita()) {
                 $this->messenger->append("Devolução realizada com sucesso.", 'success');
             } else {
                 $this->messenger->append("Aparentemente a devolução não foi cadastrada, por favor, tente novamente.", 'error');
             }
         }
     }
     $this->appendResponse('exemplar', $this->loadExemplar($reload = true));
 }