Ir para o conteúdo

 Voltar a SGD - Fórum ...
Tela cheia

Erro na instalacao - includes

10 de Outubro de 2008, 21:13 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 60 vezes

Ola para todos, quem poderia ter passado por essa situacao:

 estou utilizando o ubuntu 8.0.4  meu apache e mysql estao configurados corretamente, mais quando vou executar a instalacao do SGD ocorre o seguinte:

 

http://localhost/sgd/installation/setup.php

 

 Warning: include(../themes/default/block.class.php) [function.include]: failed to open stream: No such file or directory in /var/www/sgd/installation/setup.php on line 415

Warning: include() [function.include]: Failed opening '../themes/default/block.class.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/sgd/installation/setup.php on line 415

Warning: include(../themes/default/header.php) [function.include]: failed to open stream: No such file or directory in /var/www/sgd/installation/setup.php on line 417

Warning: include() [function.include]: Failed opening '../themes/default/header.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/sgd/installation/setup.php on line 417

Fatal error: Class 'block' not found in /var/www/sgd/installation/setup.php on line 419

 

 

verifiquei que os arquivos nao existem no download pelo subversion

  •  /themes/default/block.class.php
  • /themes/default/header.php

 isso esta causando o erro, alguem tem esses aquivos?

 

att

Fabio Lucio

Ministerio da saude

Autor: fabio lucio moreira lima


33 comentários

  • D87c87168f6de434c043133dda0a4027?only path=false&size=50&d=404Lupa Treinamento(usuário não autenticado)
    14 de Outubro de 2008, 13:48

     

    Olá Fabio,

        Tenho na minha instalação os arquivos que estão faltando na sua, te repasso os mesmos. Segue o código do arquivo  block.class.php

    Código

    <?php

    /*
    LICENÇA PÚBLICA GERAL GNU
    Versão 2, junho de 1991

    Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave,
    Cambridge, MA 02139, USA

    A qualquer pessoa é permitido copiar e distribuir cópias deste documento de
    licença, desde que sem qualquer alteração.

    Introdução

    As licenças de software são normalmente desenvolvidas para restringir a
    liberdade de compartilhá-lo e modifica-lo. Pelo contrário, a Licença Pública
    Geral GNU pretende garantir a sua liberdade de compartilhar e modificar o
    software livre -- garantindo que o software será livre para os seus
    utilizadores. Esta Licença Pública Geral aplica-se à maioria do software da
    Free Software Foundation e a qualquer outro programa ao qual o seu autor decida
    aplicá-la. (Algum software da FSF é cobertos pela Licença Pública Geral de
    Bibliotecas.) Também poderá aplicá-la aos seus programas.

    Quando nos referimos a software livre, estamo-nos a referir à liberdade e não
    ao preço. A Licença Pública Geral (GPL - General Public Licence - em Inglês.)
    foi desenvolvida para garantir a sua liberdade de distribuir cópias de software
    livre (e cobrar por isso, se quiser); receber o código-fonte ou ter acesso a
    ele, se quiser; poder modificar o software ou utilizar partes dele em novos
    programas livres; e que saiba que está no seu direito de o fazer.

    Para proteger seus direitos, precisamos fazer restrições que impeçam a qualquer
    um negar estes direitos ou solicitar que você abdique deles. Estas restrições
    traduzem-se em certas responsabilidades para si, caso venha a distribuir cópias
    do software, ou modificá-lo.

    Por exemplo, se você distribuir cópias de um programa sobre este tipo de
    licenciamento, gratuitamente ou por alguma quantia, tem que fornecer igualmente
    todos os direitos que possui sobre ele. Tem igualmente que garantir que os
    destinatários recebam ou possam obter o código-fonte. Além disto, tem que
    fornecer-lhes estes termos para que possam conhecer seus direitos.

    Nós protegemos seus direitos por duas formas que se completam: (1) com
    copyright do software e (2) com a oferta desta licença, que lhe dá permissão
    legal para copiar, distribuir e/ou modificar o software.

    Além disso, tanto para a protecção do autor quanto a nossa, gostaríamos de
    certificar-nos de que todos entendam que não há qualquer garantia sobre o
    software livre. Se o software é modificado por alguém e redistribuído, queremos
    que seus destinatários saibam que o que eles obtiveram não é original, de forma
    que qualquer problema introduzido por terceiros não interfira na reputação do
    autor original.

    Finalmente, qualquer programa é ameaçado constantemente por patentes de
    software. Queremos evitar o perigo de que distribuidores de software livre
    obtenham patentes individuais sobre o software, o que teria o efeito de tornar
    o software proprietário. Para prevenir isso, deixamos claro que qualquer
    patente tem que ser licenciada para uso livre e gratuito por qualquer pessoa,
    ou então que nem necessite ser licenciada.

    Os termos e condições precisas para cópia, distribuição e modificação
    encontram-se abaixo:

    LICENÇA PÚBLICA GERAL GNU TERMOS E CONDIÇÕES PARA CÓPIA, DISTRIBUIÇÃO E
    MODIFICAÇÃO

    0. Esta licença aplica-se a qualquer programa ou outro trabalho que contenha um
    aviso colocado pelo detentor dos direitos autorais informando que aquele pode
    ser distribuído sob as condições desta Licença Pública Geral. O "Programa"
    abaixo refere-se a qualquer programa ou trabalho e "trabalho baseado no
    Programa" significa tanto o Programa em si, como quaisquer trabalhos derivados,
    de acordo com a lei de direitos de autor: isto quer dizer um trabalho que
    contenha o Programa ou parte dele, tanto na forma original ou modificado, e/ou
    tradução para outros idiomas. ***(Doravante o termo "modificação" ou sinónimos
    serão usados livremente.) *** Cada licenciado é mencionado como "você".

    Actividades outras que a cópia, a distribuição e modificação não estão cobertas
    por esta Licença; elas estão fora do seu âmbito. O acto de executar o Programa
    não é restringido e o resultado do Programa é coberto pela licença apenas se o
    seu conteúdo contenha trabalhos baseados no Programa (independentemente de
    terem sido gerados pela execução do Programa). Este último ponto depende das
    funcionalidades específicas de cada programa.

    1. Você pode copiar e distribuir cópias fiéis do código-fonte do Programa da
    mesma forma que você o recebeu, usando qualquer meio, deste que inclua em cada
    cópia um aviso de direitos de autor e uma declaração de inexistência de
    garantias; mantenha intactos todos os avisos que se referem a esta Licença e à
    ausência total de garantias; e forneça aos destinatários do Programa uma cópia
    desta Licença, em conjunto com o Programa.

    Você pode cobrar pelo acto físico de transferir uma cópia e pode,
    opcionalmente, oferecer garantias em troca de pagamento.

    2. Você pode modificar sua cópia ou cópias do Programa, ou qualquer parte dele,
    gerando assim um trabalho derivado, copiar e distribuir essas modificações ou
    trabalhos sob os termos da secção 1 acima, desde que se enquadre nas seguintes
    condições:

    a) Os arquivos modificados devem conter avisos proeminentes afirmando que você
    alterou os arquivos, incluindo a data de qualquer alteração.

    b) Deve ser licenciado, sob os termos desta Licença, integralmente e sem custo
    algum para terceiros, qualquer trabalho seu que contenha ou seja derivado do
    Programa ou de parte dele.

    c) Se qualquer programa modificado, quando executado, lê normalmente comandos
    interactivamente, tem que fazer com que, quando iniciado o uso interactivo,
    seja impresso ou mostrado um anúncio de que não há qualquer garantia (ou então
    que você fornece a garantia) e que os utilizadores podem redistribuir o
    programa sob estas condições, ainda informando os utilizadores como consultar
    uma cópia desta Licença. (Excepção: se o Programa em si é interactivo mas
    normalmente não imprime estes tipos de anúncios, então o seu trabalho derivado
    não precisa imprimir um anúncio.)

    Estas exigências aplicam-se ao trabalho derivado como um todo. Se secções
    identificáveis de tal trabalho não são derivadas do Programa, e podem ser
    razoavelmente consideradas trabalhos independentes e separados por si só, então
    esta Licença, e seus termos, não se aplicam a estas secções caso as distribua
    como um trabalho separado. Mas se distribuir as mesmas secções como parte de um
    todo que constitui trabalho derivado, a distribuição como um todo tem que
    enquadrar-se nos termos desta Licença, cujos direitos para outros licenciados
    se estendem ao todo, portanto também para toda e qualquer parte do programa,
    independente de quem a escreveu.

    Desta forma, esta secção não tem a intenção de reclamar direitos ou contestar
    seus direitos sobre o trabalho escrito completamente por si; ao invés disso, a
    intenção é a de exercitar o direito de controlar a distribuição de trabalhos,
    derivados ou colectivos, baseados no Programa.

    Adicionalmente, a mera adição ao Programa (ou a um trabalho derivado deste) de
    um outro trabalho num volume de armazenamento ou meio de distribuição não faz
    esse outro trabalho seja incluído no âmbito desta Licença.

    3. Você pode copiar e distribuir o Programa (ou trabalho derivado, conforme
    descrito na Secção 2) em código-objecto ou em forma executável sob os termos
    das Secções 1 e 2 acima, desde que cumpra uma das seguintes alienas:

    a) O faça acompanhar com o código-fonte completo e em forma acessível por
    máquinas, código esse que tem que ser distribuído sob os termos das Secções 1 e
    2 acima e em meio normalmente utilizado para o intercâmbio de software; ou,

    b) O acompanhe com uma oferta escrita, válida por pelo menos três anos, de
    fornecer a qualquer um, com um custo não superior ao custo de distribuição
    física do material, uma cópia do código-fonte completo e em forma acessível por
    máquinas,  código esse que tem que ser distribuído sob os termos das Secções 1
    e 2 acima e em meio normalmente utilizado para o intercâmbio de software; ou,

    c) O acompanhe com a informação que você recebeu em relação à oferta de
    distribuição do código-fonte correspondente. (Esta alternativa é permitida
    somente em distribuição não comerciais, e apenas se você recebeu o programa em
    forma de código-objecto ou executável, com uma oferta de acordo com a Subsecção
    b) acima.)

    O código-fonte de um trabalho corresponde à forma de trabalho preferida para se
    fazer modificações. Para um trabalho em forma executável, o código-fonte
    completo significa todo o código-fonte de todos os módulos que ele contém, mais
    quaisquer arquivos de definição de "interface", mais os "scripts" utilizados
    para se controlar a compilação e a instalação do executável. Contudo, como
    excepção especial, o código-fonte distribuído não precisa incluir qualquer
    componente normalmente distribuído (tanto em forma original quanto binária) com
    os maiores componentes (o compilador, o "kernel" etc.) do sistema operativo sob
    o qual o executável funciona, a menos que o componente em si acompanhe o
    executável.

    Se a distribuição do executável ou código-objecto é feita através da oferta de
    acesso a cópias em algum lugar, então oferecer o acesso equivalente a cópia, no
    mesmo lugar, do código-fonte, equivale à distribuição do código-fonte, mesmo
    que terceiros não sejam compelidos a copiar o código-fonte em conjunto com o
    código-objecto.

    4. Você não pode copiar, modificar, sublicenciar ou distribuir o Programa,
    excepto de acordo com as condições expressas nesta Licença. Qualquer outra
    tentativa de cópia, modificação, sublicenciamento ou distribuição do Programa
    não é valida, e cancelará automaticamente os direitos que lhe foram fornecidos
    por esta Licença. No entanto, terceiros que receberam de si cópias ou direitos,
    fornecidos sob os termos desta Licença, não terão a sua licença terminada,
    desde que permaneçam em total concordância com ela.

    5. Você não é obrigado a aceitar esta Licença já que não a assinou. No entanto,
    nada mais lhe dará permissão para modificar ou distribuir o Programa ou
    trabalhos derivados deste. Estas acções são proibidas por lei, caso você não
    aceite esta Licença. Desta forma, ao modificar ou distribuir o Programa (ou
    qualquer trabalho derivado do Programa), você estará a indicar a sua total
    concordância com os termos desta Licença, nomeadamente os termos e condições
    para copiar, distribuir ou modificar o Programa, ou trabalhos baseados nele.

    6. Cada vez que redistribuir o Programa (ou qualquer trabalho derivado), os
    destinatários adquirirão automaticamente do autor original uma licença para
    copiar, distribuir ou modificar o Programa, sujeitos a estes termos e
    condições. Você não poderá impor aos destinatários qualquer outra restrição ao
    exercício dos direitos então adquiridos. Você não é responsável em garantir a
    concordância de terceiros a esta Licença.

    7. Se, em consequência de decisões judiciais ou alegações de violação de
    patentes ou quaisquer outras razões (não limitadas a assuntos relacionados a
    patentes), lhe forem impostas condições (por ordem judicial, acordos ou outras
    formas) e que contradigam as condições desta Licença, elas não o livram das
    condições desta Licença. Se não puder distribuir de forma a satisfazer
    simultaneamente suas obrigações para com esta Licença e para com as outras
    obrigações pertinentes, então como consequência você não poderá distribuir o
    Programa. Por exemplo, se uma licença de patente não permitir a redistribuição,
    sem obrigação ao pagamento de "royalties", por todos aqueles que receberem
    cópias directa ou indirectamente de si, então a única forma de você satisfazer
    a licença de patente e a esta Licença seria a de desistir completamente de
    distribuir o Programa.

    Se qualquer parte desta secção for considerada inválida ou não aplicável em
    qualquer circunstância particular, o restante da secção aplica-se, e a secção
    como um todo aplicar-se-á em outras circunstâncias.

    O propósito desta secção não é o de induzi-lo a infringir quaisquer patentes ou
    reivindicação de direitos de propriedade de outros, ou a contestar a validade
    de quaisquer dessas reivindicações; esta secção tem como único propósito
    proteger a integridade dos sistemas de distribuição de software livre, que é
    implementado pela prática de licenças públicas. Várias pessoas têm contribuído
    generosamente e em grande escala para software distribuído usando este sistema,
    na certeza de que sua aplicação é feita de forma consistente; fica a critério
    do autor/doador decidir se ele ou ela está disposto(a) a distribuir software
    utilizando outro sistema, e um outro detentor de uma licença não pode impor
    esta ou qualquer outra escolha.

    Esta secção destina-se a tornar bastante claro o que se acredita ser
    consequência do restante desta Licença.

    8. Se a distribuição e/ou uso do Programa são restringidos em certos países por
    patentes ou direitos de autor, o detentor dos direitos de autor original, que
    colocou o Programa sob esta Licença, pode incluir uma limitação geográfica de
    distribuição, excluindo aqueles países, de forma a apenas permitir a
    distribuição nos países não excluídos. Nestes casos, esta Licença incorpora a
    limitação como se a mesma constasse escrita nesta Licença.

    9. A Free Software Foundation pode publicar versões revistas e/ou novas da
    Licença Pública Geral de tempos em tempos. Estas novas versões serão similares
    em espírito à versão actual, mas podem diferir em detalhes que resolvam novos
    problemas ou situações.

    A cada versão é dada um número distinto. Se o Programa especifica um número de
    versão específico desta Licença que se aplica a ele e a "qualquer nova versão",
    você tem a opção de aceitar os termos e condições daquela versão ou de qualquer
    outra versão.
    */

    class block {

        function block() {
            $this->iconWidth = "23";
            $this->iconHeight = "23";
            $this->bgColor = "#5B7F93";
            $this->fgColor = "#C4D3DB";
            $this->oddColor = "#F5F5F5";
            $this->evenColor = "#EFEFEF";
            $this->highlightOn = "#DEE7EB";

            $this->class = "odd";
            $this->highlightOff = $this->oddColor;
            $this->theme = THEME;
            $this->pathImg = "../themes";
        }

        function countlink($num, $showall, $dado = '0', $sub = '0') {
            if ($dado == $sub) {
                $numeral = "<strong>" . $num . "</strong>";

                if ($showall != "") {
                    echo $numeral;
                }

            } else {

                $numeral = $num;
                if ($showall != "") {
                    echo "<a href=\"$showall&" . session_name() . "=" . session_id() . "&changeProject=true\">" . $numeral . "</a>";
                }

            }

        }

        /**
         * Print tooltips
         * @param string $item Text printed in tooltip
         * @access public
         **/
        function printHelp($item) {
            global $help, $strings;
            return " [<a href=\"javascript:void(0);\" onmouseover=\"return overlib('" . addslashes($help[$item]) . "',SNAPX,550,BGCOLOR,'" . $this->bgColor . "',FGCOLOR,'" . $this->fgColor . "');\" onmouseout=\"return nd();\">" . $strings["help"] . "</a>]";
        }

        /**
         * Add a note
         * @param string $content Text printed in note
         * @access public
         **/
        function note($content) {
            echo "<p class=\"note\">" . $content . "</p>\n\n";
        }

        /**
         * Print standard heading
         * @param string $title Text printed in heading
         * @access public
         **/
        function heading($title) {
            echo "<h1 class=\"heading\">" . stripslashes($title) . "</h1>\n\n";
        }
       
       

        /**
         * Print toggle heading (with collapse/expande arrow)
         * @param string $title Text printed in heading
         * @see block::closeToggle()
         * @access public
         **/
        function headingToggle($title) {
            if ($_COOKIE[$this->form] == "c" || $HTTP_COOKIE_VARS[$this->form] == "c") {
                $style = "none";
                $arrow = "closed";
            } else {
                $style = "block";
                $arrow = "open";
            }
            echo "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\"><tr><td><a href=\"javascript:showHideModule('" . $this->form . "','{$this->theme}')\" onMouseOver=\"javascript:showHideModuleMouseOver('" . $this->form . "'); return true; \" onMouseOut=\"javascript:window.status=''; return true;\"><img name=\"" . $this->form . "Toggle\" border=\"0\" src=\"$this->pathImg/$this->theme/module_toggle_" . $arrow . ".gif\" alt=\"\"></a></td><td><img width=\"10\" height=\"10\" name=\"" . $this->form . "tl\" src=\"$this->pathImg/$this->theme/spacer.gif\" alt=\"\"></td><td width=\"100%\"><h1 class=\"heading\">" . $title . "</h1></td></tr></table>
                   
                    <div id=\"" . $this->form . "\" style=\"display: $style;\">\n\n";
        }

        /**
         * Close toggle block
         * @see block::headingToggle()
         * @access public
         **/
        function closeToggle() {
            echo "</div>\n\n";
        }

        /**
         * Print error heading
         * @param string $title Text printed in heading
         * @access public
         **/
        function headingError($title) {
            echo "<h1 class=\"headingError\">" . $title . "</h1>\n";
        }

        /**
         * Print error message in table
         * @param string $content Text printed in content error table
         * @access public
         **/
        function contentError($content) {
            echo "<table class=\"error\"><tr><td>" . $content . "</td></tr></table>\n";
        }

        function returnBorne($current) {
            global ${ 'borne' . $current };
            if (${ 'borne' . $current } == "") {
                $borneValue = "0";
            } else {
                $borneValue = ${'borne' . $current};
            }
            return $borneValue;
        }

        /**
         * Print page-per-page in bottom of list block
         * @param string $current Borne number for concerned block
         * @param string $total Total bornes number
         * @param string $showall Link to page which display all records, with parameters
         * @param string $parameters Optional parameters to transmit between pages
         * @access public
         **/
        function bornesFooter($current, $total, $showall, $parameters) {
            global $strings;
            if ($this->rowsLimit < $this->recordsTotal) {
                echo "<table cellspacing=\"0\" width=\"100%\" border=\"0\" cellpadding=\"0\"><tr><td nowrap class=\"footerCell\">&#160;&#160;&#160;&#160;";

                $nbpages = ceil($this->recordsTotal / $this->rowsLimit);

                $j = "0";

                for ($i = 1; $i <= $nbpages; $i++) {
                    if ($this->borne == $j) {
                        echo "<b>$i</b>&#160;";
                    } else {
                        echo "<a href=\"$PHP_SELF?$transmitSid";
                        for ($k = 1; $k <= $total; $k++) {
                            global ${ 'borne' . $k };
                            if ($k != $current) {
                                echo "&borne$k=" . ${ 'borne' . $k };
                            } else
                                if ($k == $current) {
                                    echo "&borne$k=$j";
                                }
                        }
                        echo "&$parameters&" . session_name() . "=" . session_id() . "#" . $this->form . "Anchor\">$i</a>&#160;";
                    }
                    $j = $j + $this->rowsLimit;

                }
                echo "</td><td nowrap align=\"right\" class=\"footerCell\">";
                if ($showall != "") {
                    echo "<a href=\"$showall&" . session_name() . "=" . session_id() . "\">" . $strings["show_all"] . "</a>";
                }
                echo "&#160;&#160;&#160;&#160;&#160;</td></tr><tr><td height=\"5\" colspan=\"2\"><img width=\"1\" height=\"5\" border=\"0\" src=\"$this->pathImg/$this->theme/spacer.gif\" alt=\"\"></td></tr></table>";
            }

        }

        function bornesPages($current, $total, $showall, $parameters, $indice, $totp) {
            $totpaginas = $totp;
            if ($indice > 0) {
                //$indd = $indice + 1 ;
                //$andd = $indice - 1 ;
            }

            if ($this->rowsLimit < $this->recordsTotal) {
                echo "<table  cellspacing=\"0\" width=\"100%\"  border=\"0\" cellpadding=\"0\"><tr align=\"center\" ><td nowrap class=\"footerCell\">&#160;&#160;&#160;&#160;";

                $nbpages = ceil($this->recordsTotal / $this->rowsLimit);

                if (($indice == "") or ($indice == 0)) {
                    $vindice = 1;
                } else {
                    $vindice = $indice;
                }

                $values = (0 + (($vindice -1) * $totpaginas));
                //$j = "0";
                $j = $values;

                if ($nbpages > $totpaginas) {
                    $contador = $totpaginas + $vindice;

                    if ($nbpages > ($totpaginas + $indice)) {
                        $indd = $vindice +1;
                    } else {
                        $indd = $vindice;
                    }
                    $andd = $vindice -1;
                } else {
                    $contador = ($nbpages + $vindice) -1;

                }
                //echo "<br>oo".$contador;

                //para inicio
                if ($nbpages >= $totpaginas) {
                    echo "<a href=\"$PHP_SELF?$transmitSid";
                    for ($k = 1; $k <= $total; $k++) {
                        global ${ 'borne' . $k };
                        if ($k != $current) {
                            echo "&borne$k=" . ${ 'borne' . $k };
                        } else
                            if ($k == $current) {
                                echo "&borne$k=$j";
                            }
                    }
                    echo "&$parameters&ind=" . $andd . "&" . session_name() . "=" . session_id() . "#" . $this->form . "Anchor\" onMouseOver=\"javascript:window.status='<<'; return true;\" onMouseOut=\"javascript:window.status=''; return true\">";
                    if ($vindice > 1) {
                        echo "<<";
                    }
                    echo "</a>&#160;";
                }

                for ($i = $vindice; $i <= $contador; $i++) {
                    if ($this->borne == $j) {
                        echo "<b>$i</b>&#160;";
                    } else {
                        echo "<a href=\"$PHP_SELF?$transmitSid";
                        for ($k = 1; $k <= $total; $k++) {
                            global ${ 'borne' . $k };
                            if ($k != $current) {
                                echo "&borne$k=" . ${ 'borne' . $k };
                            } else
                                if ($k == $current) {
                                    echo "&borne$k=$j";
                                }
                        }

                        //
                        echo "&$parameters&ind=" . $indice . "&" . session_name() . "=" . session_id() . "#" . $this->form . "Anchor\" onMouseOver=\"javascript:window.status='Pagina: " . $i . "'; return true;\" onMouseOut=\"javascript:window.status=''; return true\">$i</a>&#160;";
                    }
                    $j = $j + $this->rowsLimit;
                    //

                }
                //para fim
                if ($nbpages >= $totpaginas) {
                    echo "<a href=\"$PHP_SELF?$transmitSid";
                    for ($k = 1; $k <= $total; $k++) {
                        global ${ 'borne' . $k };
                        if ($k != $current) {
                            echo "&borne$k=" . ${ 'borne' . $k };
                        } else
                            if ($k == $current) {

                                if ($j == $nbpages) {
                                    echo "&borne$k=" . ($j - $totpaginas);
                                } else {
                                    echo "&borne$k=" . ($j);
                                }
                            }
                    }
                    echo "&$parameters&ind=" . $indd . "&" . session_name() . "=" . session_id() . "#" . $this->form . "Anchor\" onMouseOver=\"javascript:window.status='>>'; return true;\" onMouseOut=\"javascript:window.status=''; return true\">";
                    if (($this->borne < $j) && ($contador < $nbpages)) {
                        echo ">>";
                    }
                    echo "</a>&#160;";
                }

                echo "</td><td nowrap align=\"right\" class=\"footerCell\">";
                if ($showall != "") {
                    echo "<a href=\"$showall&" . session_name() . "=" . session_id() . "\" onMouseOver=\"javascript:window.status='" . $strings["show_all"] . "'; return true;\" onMouseOut=\"javascript:window.status=''; return true\">" . $strings["show_all"] . "</a>";
                }
                echo "&#160;&#160;&#160;&#160;&#160;</td></tr><tr><td height=\"5\" colspan=\"2\"><img width=\"1\" height=\"5\" border=\"0\" src=\"$this->pathImg/$this->theme/spacer.gif\" alt=\"\"></td></tr></table>";
            }

        } //fim function

        /**
         * Print Message table
         * @param string $msgLabel Text built with messages.php
         * @access public
         **/
        function messageBox($msgLabel) {
            echo "<br/><table class=\"message\">
                    <tr><td>$msgLabel</td></tr>
                    </table>";
        }

        /**
         * Open icons table
         * @see block::closePaletteIcon()
         * @see block::paletteIcon()
         * @see block::paletteScript()
         * @access public
         **/
        function openPaletteIcon() {
            echo "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" class=\"icons\"><tr>\n";
        }

        /**
         * Close icons table
         * @see block::openPaletteIcon()
         * @see block::paletteIcon()
         * @see block::paletteScript()
         * @access public
         **/
        function closePaletteIcon() {
            echo "<td align=left width=\"1%\"><img height=\"26\" width=\"5\" src=\"$this->pathImg/$this->theme/spacer.gif\" alt=\"\"></td><td class=\"commandDesc\" align=\"left\" width=\"99%\"><div id=\"" . $this->form . "tt\" class=\"rel\"><div id=\"" . $this->form . "tti\" class=\"abs\"><img height=\"1\" width=\"350\" src=\"$this->pathImg/$this->theme/spacer.gif\" alt=\"\"></div></div></td></tr></table>\n";
        }

        /**
         * Open icons script
         * @see block::openPaletteScript()
         * @access public
         **/
        function openPaletteScript() {
            echo "<script type=\"text/JavaScript\">
                    <!--
                    document." . $this->form . "Form.buttons = new Array();\n";
        }

        /**
         * Close icons script
         * @param integer $compt Total records
         * @param array $values First row
         * @see block::closePaletteScript()
         * @access public
         **/
        function closePaletteScript($compt, $values) {
            echo "MM_updateButtons(document." . $this->form . "Form, 0);document." . $this->form . "Form.checkboxes = new Array();";
            for ($i = 0; $i < $compt; $i++) {
                echo "document." . $this->form . "Form.checkboxes[document." . $this->form . "Form.checkboxes.length] = new MMCheckbox('$values[$i]',document." . $this->form . "Form,'" . $this->form . "cb$values[$i]');";
            }
            echo "document." . $this->form . "Form.tt = '" . $this->form . "tt';
                    // -->
                    </script>\n\n";
        }

        /**
         * Define sorting to apply on a list block
         * @param string $sortingRef Row reference in sorting table
         * @param string $sortingValue Row value in sorting table
         * @param string $sortingDefault Default sorting value
         * @param array $sortingFields Array with sorted fields on each column
         * @access public
         **/
        function sorting($sortingRef, $sortingValue, $sortingDefault, $sortingFields) {
            if ($sortingRef != "") {
                $this->sortingRef = $sortingRef;
            }
            if ($sortingValue != "") {

                $this->sortingValue = $sortingValue;
            }
            if ($sortingDefault != "") {
                $this->sortingDefault = $sortingDefault;
            }
            if ($sortingFields != "") {
                $this->sortingFields = $sortingFields;
            }
            global $sortingOrders, $sortingFields, $sortingArrows, $sortingStyles, $explode;
            if (isset ($this->sortingValue) != "") {
                $explode = explode(" ", $this->sortingValue);
            } else {
                $this->sortingValue = $this->sortingDefault;
                $explode = explode(" ", $this->sortingValue);
            }

            for ($i = 0; $i < count($sortingFields); $i++) {
                if ($sortingFields[$i] == $explode[0] && $explode[1] == "DESC") {
                    $sortingOrders[$i] = "ASC";
                    $sortingArrows[$i] = "&#160;<img border=\"0\" src=\"$this->pathImg/$this->theme/icon_sort_za.gif\" alt=\"\" width=\"11\" height=\"11\">";
                    $sortingStyles[$i] = "active";
                } else
                    if ($sortingFields[$i] == $explode[0] && $explode[1] == "ASC") {
                        $sortingOrders[$i] = "DESC";
                        $sortingArrows[$i] = "&#160;<img border=\"0\" src=\"$this->pathImg/$this->theme/icon_sort_az.gif\" alt=\"\" width=\"11\" height=\"11\">";
                        $sortingStyles[$i] = "active";
                    } else {
                        $sortingOrders[$i] = "ASC";
                        $sortingArrows[$i] = "";
                        $sortingStyles[$i] = "";
                    }
            }
            if ($sortingOrders != "") {
                $this->sortingOrders = $sortingOrders;
            }
            if ($sortingArrows != "") {
                $this->sortingArrows = $sortingArrows;
            }
            if ($sortingStyles != "") {
                $this->sortingStyles = $sortingStyles;
            }
        }

        /**
         * Open a standard form
         * @param string $address Action form value
         * @see block::closeFormResults()
         * @see block::closeForm()
         * @access public
         **/
        function openForm($address, $formname = '', $script = '') {
            if ($script != '') {
                $func = ' ' . $script;
            }
            if ($formname != "") {
                echo "<a name='" . $formname . "Anchor'></a>\n" .
                     "<form accept-charset='UNKNOWN' method='POST' action='$address' name='" . $formname . "Form' id='" . $formname . "Form' enctype='application/x-www-form-urlencoded'$func>\n";
            } else {
                echo "<a name='" . $this->form . "Anchor'></a>\n" .
                     "<form accept-charset='UNKNOWN' method='POST' action='$address' name='" . $this->form . "Form' id='" . $this->form . "Form' enctype='application/x-www-form-urlencoded'$func>\n";
            }

        }

        /**
         * Close a form used with a list block
         * @access public
         **/
        function closeFormResults() {
            echo "<input name='sor_cible' type='HIDDEN' value='{$this->sortingRef}'><input name='sor_champs' type='HIDDEN' value=''><input name='sor_ordre' type='HIDDEN' value=''>
                    </form>\n\n";
        }

        /**
         * @Campo input com opções de configuração
         * @param string $tipo description tipo igual a vazio tipo text,2 hidden
         **/
        function insInput($name, $id, $size = '', $max = '', $value = '', $w = '', $h = '', $script = '', $tipo = '') {
            if ($tipo == "") {

                $input = "<input type=\"text\" id=\"" . $id . "\"  name=\"" . $name . "\" size=\"" . $size . "\" maxlength=\"" . $max . "\" value=\"" . $value . "\" " . $script . " style=\"width:" . $w . "; height:" . $h . "\";>";

            } else
                if ($tipo == "2") {

                    $input = "<input type=\"hidden\" id=\"" . $id . "\" name=\"" . $name . "\"  value=\"" . $value . "\" >";

                }

            return $input;
        }

        /**
         * @Campo select com opções de configuração
         **/
        function insSelect($arrayId, $arrayValue, $index, $name, $id, $size = '', $option = '', $w = '', $h = '', $script = '') {
            $countId = count($arrayId);
            $countOption = count($option);

            if ($countOption > 0 && $index != $option[0]) {
                $poption = "<option id=\"" . $option[0] . "\" value=\"0\">" . strtoupper($option[1]) . "</option>\n";
            } else
                if ($countOption > 0 && $index == $option[0]) {
                    $poption = "<option id=\"" . $option[0] . "\" value=\"" . $index . "\" selected>" . strtoupper($option[1]) . "</option>\n";
                } else {
                    $poption = " ";
                }
           
            if($countOption > 0){
                $poption = "<option id=\"".$option[0]."\" value=\"0\">".$option[1].":</option>";
            }else{
              $poption = " ";
            }
           
            $select = "<select name=\"" . $name . "\" id=\"" . $id . "\" size=\"" . $size . "\" style=\"width:" . $w . "; height:" . $h . "\" " . $script . ">";

            $select .= $poption;

            for ($i = 0; $i < $countId; $i++) {

                if ($arrayId[$i] == $index) {
                    $sel = "selected";
                } else {
                    $sel = " ";
                }

                $select .= "<option value=\"" . $arrayId[$i] . "\" " . $sel . " >" . strtoupper($arrayValue[$i]) . "</option>";

            }

            $select .= "</select>";

            return $select;
        }

        function insRadio($name, $id, $value, $size = '', $checked = "false", $w = '', $h = '', $border = '0', $script = '') {

            if ($checked == "true") {

                $check = "checked";
            } else {

                $check = " ";
            }

            $radio = "<input name=\"" . $name . "\" id=\"" . $id . "\" type=\"radio\" value=\"" . $value . "\" " . $check . "  size=\"" . $value . "\" style=\"height:" . $h . " ; width:" . $w . "; border:" . $border . " \" " . $script . " >";

            return $radio;

        }

        /**
         * @Campo button com opções de configuração
         * @$tipo: 1 - submit/ 2 - botton/ 3 - reset
         * @name,size,maxlength,value,width,heigth,script
         **/
        function insButton($tipo, $name, $id, $size = '', $max = '', $value = '', $w = '', $h = '', $script = '') {

            if ($tipo == "1") {

                $bt = "<input type=\"submit\" id=\"" . $id . "\" name=\"" . $name . "\" value=\"" . $value . "\" maxlength=\"" . $max . "\" size=\"" . $size . "\" " . $script . " style=\"width:" . $w . "; height:" . $h . "\"; >";

            } else
                if ($tipo == "2") {

                    $bt = "<input type=\"button\" id=\"" . $id . "\" name=\"" . $name . "\" value=\"" . $value . "\" maxlength=\"" . $max . "\" size=\"" . $size . "\" " . $script . " style=\"width:" . $w . "; height:" . $h . "\"; >";

                } else
                    if ($tipo == "3") {

                        $bt = "<input type=\"Reset\" id=\"" . $id . "\" name=\"" . $name . "\" value=\"" . $value . "\" maxlength=\"" . $max . "\" size=\"" . $size . "\" " . $script . " style=\"width:" . $w . "; height:" . $h . "\"; >";

                    }

            return $bt;

        }

        /**
         * Define column labels in a list block
         * @param array $labels Array with labels strings
         * @param boolean $published Show/hide a published column
         * @param boolean $sorting Disable sorting
         * @param array $sortingOff Array with label number (from $labels) and order (ASC/DESC)
         * @access public
         **/
        function labels($labels, $published, $sorting = "true", $sortingOff = "") {
            global $labels, $sortingOrders, $sortingFields, $sortingArrows, $sortingStyles, $strings, $sitePublish;
            $sortingFields = $this->sortingFields;
            $sortingOrders = $this->sortingOrders;
            $sortingArrows = $this->sortingArrows;
            $sortingStyles = $this->sortingStyles;

            if ($sitePublish == "false" && $published == "true") {
                $comptLabels = count($labels) - 1;
            } else {
                $comptLabels = count($labels);
            }
            for ($i = 0; $i < $comptLabels; $i++) {
                if ($sorting == "true") {
                    if (($labels[$i] == 'Cronograma') || ($labels[$i] == 'Sistema') || ($labels[$i] == '-')) {
                        echo "<th nowrap  class='$sortingStyles[$i]'><a  onMouseOver=\"javascript:window.status='Não Definido'; return true;\" onMouseOut=\"javascript:window.status=''; return true\">" . $labels[$i] . "$sortingArrows[$i]</a></th>\n";
                    } else {
                        echo "<th nowrap  class='$sortingStyles[$i]'><a href=\"javascript:document." . $this->form . "Form.sor_cible.value='{$this->sortingRef}';document." . $this->form . "Form.sor_champs.value='{$sortingFields[$i]}';document." . $this->form . "Form.sor_ordre.value='{$sortingOrders[$i]}';document." . $this->form . "Form.submit();\" onMouseOver=\"javascript:window.status='" . $strings["sort_by"] . " " . addslashes($labels[$i]) . "'; return true;\" onMouseOut=\"javascript:window.status=''; return true\">" . $labels[$i] . "$sortingArrows[$i]</a></th>\n";
                    }

                } else {
                    if ($sortingOff[1] == "ASC") {
                        $sortingArrow = "&#160;<img border='0' src='{$this->pathImg}/{$this->theme}/icon_sort_az.gif' alt='' width='11' height='11'>";

                    } else
                        if ($sortingOff[1] == "DESC") {
                            $sortingArrow = "&#160;<img border='0' src='{$this->pathImg}/{$this->theme}/icon_sort_za.gif' alt='' width='11' height='11'>";
                        }
                    if ($i == $sortingOff[0]) {
                        echo "<th nowrap class='active'>" . $labels[$i] . "$sortingArrow";
                    } else {
                        echo "<th nowrap>" . $labels[$i];
                    }
                }
            }

            echo "</tr>\n";
        }

        /**
         * Open results list
         * @param boolean $checkbox Disable checkbox display
         * @access public
         **/
        function openResults($checkbox = "true") {
            echo "<table class='listing' cellpadding='0' cellspacing='0' border='0'>
                    <tr>\n";
            if ($checkbox == "true") {
                echo "<th width='1%' align='center'><a href=\"javascript:MM_toggleSelectedItems(document." . $this->form . "Form,'{$this->theme}')\"><img height='13' width='13' border='0' src='{$this->pathImg}/{$this->theme}/checkbox_off_16.gif' alt='' vspace='3' hspace='3'></a></th>\n";
            } else {
                echo "<th width='1%' align='center'><img height='13' width='13' border='0' src='{$this->pathImg}/{$this->theme}/spacer.gif' alt='' vspace='3'></th>\n";
            }
        }

        function closeResults() {
            echo "</table>
                    <hr />\n";
        }

        function noresults() {
            global $strings;
            echo "<table cellspacing='0' border='0' cellpadding='2'><tr><td colspan='4'>" . $strings["no_items"] . "</td></tr></table><hr />";
        }

        /**
         * Display an icon (html)
         * @param integer $num Icon number
         * @param string $type Icon name (used in graphic file name)
         * @param string $text Text used in info-tip
         * @see block::openPaletteIcon()
         * @access public
         **/
        function paletteIcon($num, $type, $text) {
            echo "<td width=\"30\" class=\"commandBtn\"><a href=\"javascript:var b = MM_getButtonWithName(document." . $this->form . "Form, '" . $this->form . "$num'); if (b) b.click();\" onMouseOver=\"var over = MM_getButtonWithName(document." . $this->form . "Form, '" . $this->form . "$num'); if (over) over.over(); return true; \" onMouseOut=\"var out = MM_getButtonWithName(document." . $this->form . "Form, '" . $this->form . "$num'); if (out) out.out(); return true; \"><img width=\"$this->iconWidth\" height=\"$this->iconHeight\" border=\"0\" name=\"" . $this->form . "$num\" src=\"$this->pathImg/$this->theme/btn_" . $type . "_norm.gif\" alt='" . stripslashes($text) . "'></a></td>\n";
        }

        /**
         * Display an icon (JavaScript)
         * @param integer $num Icon number
         * @param string $type Icon name (used in graphic file name)
         * @param string $options JavaScript options enableOnNoSelection, enableOnSingleSelection, enableOnMultipleSelection
         * @param string $text Text used in roll-over layer
         * @see block::openPaletteIcon()
         * @access public
         **/
        function paletteScript($num, $type, $link, $options, $text) {
            echo "document." . $this->form . "Form.buttons[document." . $this->form . "Form.buttons.length] = new MMCommandButton('" . $this->form . "$num',document." . $this->form . "Form,'" . $link . "&" . session_name() . "=" . session_id() . "','{$this->pathImg}/{$this->theme}/btn_" . $type . "_norm.gif','{$this->pathImg}/{$this->theme}/btn_" . $type . "_over.gif','{$this->pathImg}/{$this->theme}/btn_" . $type . "_down.gif','{$this->pathImg}/{$this->theme}/btn_" . $type . "_dim.gif',$options,'',\"" . stripslashes($text) . "\",false,'');\n";
        }

        /**
         * Start a table to display sheet/form
         * @see block::contentRow()
         * @access public
         **/
        function openContent($w = '',$style='',$cells="0",$cellp="0",$type='',$idt='',$class='') {
           
            if($class!=""){
                $clas  = "class='".$class."'";
            }else{
                $clas  = " ";
            }
           
            if($style!=""){
                $styl  = "style=\"".$style."\"";
            }else{
                $styl  = " ";
            }
           
            if($idt!=""){
                $idtable  = "id='".$idt."'";
            }else{
                $idtable  = " ";
            }
           
            if ($w != "") {
                    if($style=="" && $class==""){
                    echo "<table width=\"" . $w . "%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"content\">\n";
                    }else{
                    echo "<table ".$idtable."  width=\"" . $w . "%\" border=\"0\" cellspacing=\"".$cells."\" cellpadding=\"".$cellp."\" ".$clas."  ".$styl." >\n";   
                    }
            } else {
                if($type=="1"){           
                echo "<table ".$idtable."  ".$clas."  width=\"" . $w . "%\"  border='0' cellspacing='0' cellpadding='0' ".$styl.">\n";
                }else{
                echo "<table class='content' border='0' cellspacing='0' cellpadding='0'>\n";   
                }
            }
        }

        /**
         * Display a table line in sheet/form
         * @param string $left Text in left cell
         * @param string $right Text in right cell
         * @param boolean $altern Option to altern background color
         * @access public
         **/
        function contentRow($left, $right, $altern = "false") {
            if ($this->class == "") {
                $this->class = "odd";
            }

            if ($left != "") {
                echo "<tr class='{$this->class}'><td valign='top' class='leftvalue'>" . $left . " :</td><td>" . $right . "&nbsp;</td></tr>\n";
            } else
                if ($altern == "alt") {
                    echo "<tr class='{$this->class}'><td valign='top' class='leftvalue'>&nbsp;</td><td>" . $right . "&nbsp;</td><td valign='top' class='leftvalue'>&nbsp;</td></tr>\n";
                } else
                    if ($altern == "center") {
                        echo "<tr class='{$this->class}'><td valign='top'  class='leftvalue'>&nbsp;</td><td align='center'>" . $right . "&nbsp;</td><td valign='top' class='leftvalue'>&nbsp;</td></tr>\n";
                    } else {
                        echo "<tr class='{$this->class}'><td valign='top' class='leftvalue'>&nbsp;</td><td>" . $right . "&nbsp;</td></tr>\n";
                    }

            if ($this->class == "odd" && $altern == "true") {
                $this->class = "even";
            } else
                if ($this->class == "even" && $altern == "true") {
                    $this->class = "odd";
                }
        }

        function openRow($cfg = '', $color = '') {
            $change = "true";

            if ($cfg == "on") {
                if ($color == "off") {
                    echo "<tr>\n";
                } else {
                    //
                    if ($this->class == "odd") {
                    $this->class = "even";
                    }else{
                    $this->class = "odd";   
                    }
                    echo "<tr class='{$this->class}' >\n";
                }

            } else {
                echo "<tr class='{$this->class}' onmouseover=\"this.style.backgroundColor='" . $this->highlightOn . "'\" onmouseout=\"this.style.backgroundColor='" . $this->highlightOff . "'\">\n";
                if ($this->class == "odd") {
                    $this->class = "even";
                    $this->highlightOff = $this->evenColor;
                    $change = "false";
                } else
                    if ($this->class == "even" && $change != "false") {
                        $this->class = "odd";
                        $this->highlightOff = $this->oddColor;
                    }
            }
        }

        function checkboxRow($ref, $checkbox = "true") {
            if ($checkbox == "true") {
                echo "<td align='center'><a href=\"javascript:MM_toggleItem(document." . $this->form . "Form, '" . $ref . "', '" . $this->form . "cb" . $ref . "','{$this->theme}')\"><img name='" . $this->form . "cb" . $ref . "' border='0' src='{$this->pathImg}/{$this->theme}/checkbox_off_16.gif' alt='' vspace='3'></a></td>";
            } else {
                echo "<td><img height='13' width='13' border='0' src='{$this->pathImg}/{$this->theme}/spacer.gif' alt='' vspace='3'></td>";
            }
        }

        function openCell($cfg=''){
            if ($cgf == "on") {
                        echo "<td $clas width='" . $width . "' " . $cols . " ".$styl." onmouseover=\"this.style.backgroundColor='" . $this->highlightOn . "'\" onmouseout=\"this.style.backgroundColor='" . $this->highlightOff . "'\">\n";
                    } else {
                        echo "<td $clas width='" . $width . "' height='" . $height . "' ".$styl." " . $cols . " " . $alin . "  ".$valin." >\n";
                    }
           
        }

        function closeCell(){
        echo "</td>\n";   
           
        }
       
        function cellRow($content, $width = '', $cgf = '', $height = '', $colspan = '', $align = '',$valign='',$class='',$ctl='',$style='',$css='',$script='') {

            if ($colspan != '') {
                $cols = "colspan=\" " . $colspan . "\"";
            } else {
                $cols = " ";
            }

            if ($align == "1")
                $alin = "align=\"left\"";
            elseif ($align == "2")
                $alin = "align=\"center\"";
            elseif ($align == "3")
                $alin = "align=\"right\"";
            else
                $alin = " ";
            //   
            if ($valign == "1")
                $valin = "valign=\"top\"";
            elseif ($valign == "2")
                $valin = "valign=\"middle\"";
            elseif ($valign == "3")
                $valin = "valign=\"bottom\"";
            else
                $valin = " ";
               
            if($class!=""){
                $clas  = "class=\"".$class."\"";
            }else{
                $clas  = " ";
            }

            if($style!=""){
                $styl = "style=".$style."";
            }else{
                $styl = " ";
            }
           
            if($css=="off"){
            $bgcolor = "";
            }else{
            $bgcolor = $this->highlightOff;   
            }
            if($ctl==""){
                    if ($cgf == "on") {
                        echo "<td $clas width='" . $width . "' height='" . $height . "' " . $cols . " ".$styl." onmouseover=\"this.style.backgroundColor='" . $this->highlightOn . "'\" onmouseout=\"this.style.backgroundColor='" . $bgcolor . "'\">$content</td>\n";
                    } else {
                        echo "<td $clas width='" . $width . "' height='" . $height . "' ".$styl." " . $cols . " " . $alin . "  ".$valin." >$content</td>\n";
                    }
                   
            }else if($ctl=="1"){
               
            //nowrap
            echo " <th ".$cgf." ".$clas." ".$alin." ".$styl."  ".$valin."  ".$cols." >".$content." </th>";   
            }
        }

        function closeRow() {
            echo "</tr>\n";
        }

        function contentTitle($title, $colspan = '2') {
            if ($colspan != "2") {
                $cols = " colspan=\"" . $colspan . "\"";
            } else {
                $cols = " colspan=\"2\"";
            }
            echo "<tr>\n<th" . $cols . ">" . $title . "</th>\n</tr>\n";
        }

        function contentSub($title, $cols) {
            if ($cols == "") {
                echo "<tr><th colspan='2'>" . $title . "</th></tr>";
            } else {
                echo "<tr><th colspan='" . $cols . "'>" . $title . "</th></tr>";
            }
        }

        function arrayTitle($arraytitle, $wt = '', $align = '') {
            $array_titulo = "<tr width=\"58%\">";
            for ($i = 0; $i < count($arraytitle); $i++) {
                if ($wt[$i] == "") {
                    $wt[$i] = '100%';
                }
                $array_titulo .= "<th  width='" . $wt[$i] . "' align='" . $align . "'>" . $arraytitle[$i] . "</th>";
            }
            $array_titulo .= "</tr>";
           
            echo $array_titulo;
        }

        function closeContent($scrip='') {
            if($scrip!=""){
                $sc = $scrip;
            }else{
            $sc = "";   
            }
           
            echo "</table>\n<hr />\n".$sc;
        }

        function closeForm() {
            echo "</form>\n";
        }

        function openBreadcrumbs() {
            echo "<p class='breadcrumbs'>";
        }

        function itemBreadcrumbs($content) {
            if ($this->breadcrumbsTotal == "") {
                $this->breadcrumbsTotal = "0";
            }
            $this->breadcrumbs[$this->breadcrumbsTotal] = stripslashes($content);
            $this->breadcrumbsTotal = $this->breadcrumbsTotal + 1;
        }

        function closeBreadcrumbs() {
            $items = $this->breadcrumbsTotal;
            for ($i = 0; $i < $items; $i++) {
                echo $this->breadcrumbs[$i];
                if ($items -1 != $i) {
                    echo " / ";
                }
            }
            echo "</p>\n\n";
        }

        function openNavigation() {
            echo "<p id='navigation'>";
        }

        function itemNavigation($content) {
            if ($this->navigationTotal == "") {
                $this->navigationTotal = "0";
            }
            $this->navigation[$this->navigationTotal] = $content;
            $this->navigationTotal = $this->navigationTotal + 1;
        }

        function closeNavigation() {
            $items = $this->navigationTotal;
            for ($i = 0; $i < $items; $i++) {
                echo $this->navigation[$i];
                if ($items -1 != $i) {
                    echo "&nbsp;&nbsp;";
                }
            }
            echo "</p>\n\n";
        }

        function openAccount() {
            echo "<p id='account'>";
        }

        function itemAccount($content) {
            if ($this->accountTotal == "") {
                $this->accountTotal = "0";
            }
            $this->account[$this->accountTotal] = $content;
            $this->accountTotal = $this->accountTotal + 1;
        }

        function closeaccount() {
            $items = $this->accountTotal;
            for ($i = 0; $i < $items; $i++) {
                echo $this->account[$i];
                if ($items -1 != $i) {
                    echo " ";
                }
            }
            echo "</p>\n\n";
        }

        function openTablelist() {
            echo "<table class=\"listing\" align=\"center\" width=\"760\" cellspacing='0' cellpadding='0' bgcolor='#FFFFFF'> ";
        }

        function closeTablelist() {
            echo "</table>";
        }

        function openTable() {
            echo "<table class=\"gtable\" align=\"center\" width=\"760\" cellspacing='0' cellpadding='0' bgcolor='#FFFFFF'> <tr><td>";
        }

        function closeTable() {
            echo "</td></tr></table>";
        }

        function buildLink($url, $label, $type, $sts = "", $act="") {
            if ($type == "in") {
                return "<a href='$url&" . session_name() . "=" . session_id() . "' onMouseOver=\"return window.status='" . $sts . "'\" onMouseOut=\"return window.status=''\" $act>$label</a>";
            } else
                if ($type == "icone") {
                    return "<a href='$url&" . session_name() . "=" . session_id() . "'><img src='../interface/icones/$label' border='0' alt=''></a>";
                } else
                    if ($type == "inblank") {
                        return "<a href='$url&" . session_name() . "=" . session_id() . "' target='_blank'>$label</a>";
                    } else
                        if ($type == "powered") {
                            return "Powered by <a href='$url' target='_blank'>$label</a>";
                        } else
                            if ($type == "out") {
                                return "<a href=" . $url . " >$label</a>";
                            } else
                                if ($type == "mail") {
                                    return "<a href='mailto:$url'>$label</a>";
                                }
        }

    }
    ?>

     

    Agora repasso o código do arquivo header.php

    Código

     

    <?php
    /*
    LICENÇA PÚBLICA GERAL GNU
    Versão 2, junho de 1991

    Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave,
    Cambridge, MA 02139, USA

    A qualquer pessoa é permitido copiar e distribuir cópias deste documento de
    licença, desde que sem qualquer alteração.

    Introdução

    As licenças de software são normalmente desenvolvidas para restringir a
    liberdade de compartilhá-lo e modifica-lo. Pelo contrário, a Licença Pública
    Geral GNU pretende garantir a sua liberdade de compartilhar e modificar o
    software livre -- garantindo que o software será livre para os seus
    utilizadores. Esta Licença Pública Geral aplica-se à maioria do software da
    Free Software Foundation e a qualquer outro programa ao qual o seu autor decida
    aplicá-la. (Algum software da FSF é cobertos pela Licença Pública Geral de
    Bibliotecas.) Também poderá aplicá-la aos seus programas.

    Quando nos referimos a software livre, estamo-nos a referir à liberdade e não
    ao preço. A Licença Pública Geral (GPL - General Public Licence - em Inglês.)
    foi desenvolvida para garantir a sua liberdade de distribuir cópias de software
    livre (e cobrar por isso, se quiser); receber o código-fonte ou ter acesso a
    ele, se quiser; poder modificar o software ou utilizar partes dele em novos
    programas livres; e que saiba que está no seu direito de o fazer.

    Para proteger seus direitos, precisamos fazer restrições que impeçam a qualquer
    um negar estes direitos ou solicitar que você abdique deles. Estas restrições
    traduzem-se em certas responsabilidades para si, caso venha a distribuir cópias
    do software, ou modificá-lo.

    Por exemplo, se você distribuir cópias de um programa sobre este tipo de
    licenciamento, gratuitamente ou por alguma quantia, tem que fornecer igualmente
    todos os direitos que possui sobre ele. Tem igualmente que garantir que os
    destinatários recebam ou possam obter o código-fonte. Além disto, tem que
    fornecer-lhes estes termos para que possam conhecer seus direitos.

    Nós protegemos seus direitos por duas formas que se completam: (1) com
    copyright do software e (2) com a oferta desta licença, que lhe dá permissão
    legal para copiar, distribuir e/ou modificar o software.

    Além disso, tanto para a protecção do autor quanto a nossa, gostaríamos de
    certificar-nos de que todos entendam que não há qualquer garantia sobre o
    software livre. Se o software é modificado por alguém e redistribuído, queremos
    que seus destinatários saibam que o que eles obtiveram não é original, de forma
    que qualquer problema introduzido por terceiros não interfira na reputação do
    autor original.

    Finalmente, qualquer programa é ameaçado constantemente por patentes de
    software. Queremos evitar o perigo de que distribuidores de software livre
    obtenham patentes individuais sobre o software, o que teria o efeito de tornar
    o software proprietário. Para prevenir isso, deixamos claro que qualquer
    patente tem que ser licenciada para uso livre e gratuito por qualquer pessoa,
    ou então que nem necessite ser licenciada.

    Os termos e condições precisas para cópia, distribuição e modificação
    encontram-se abaixo:

    LICENÇA PÚBLICA GERAL GNU TERMOS E CONDIÇÕES PARA CÓPIA, DISTRIBUIÇÃO E
    MODIFICAÇÃO

    0. Esta licença aplica-se a qualquer programa ou outro trabalho que contenha um
    aviso colocado pelo detentor dos direitos autorais informando que aquele pode
    ser distribuído sob as condições desta Licença Pública Geral. O "Programa"
    abaixo refere-se a qualquer programa ou trabalho e "trabalho baseado no
    Programa" significa tanto o Programa em si, como quaisquer trabalhos derivados,
    de acordo com a lei de direitos de autor: isto quer dizer um trabalho que
    contenha o Programa ou parte dele, tanto na forma original ou modificado, e/ou
    tradução para outros idiomas. ***(Doravante o termo "modificação" ou sinónimos
    serão usados livremente.) *** Cada licenciado é mencionado como "você".

    Actividades outras que a cópia, a distribuição e modificação não estão cobertas
    por esta Licença; elas estão fora do seu âmbito. O acto de executar o Programa
    não é restringido e o resultado do Programa é coberto pela licença apenas se o
    seu conteúdo contenha trabalhos baseados no Programa (independentemente de
    terem sido gerados pela execução do Programa). Este último ponto depende das
    funcionalidades específicas de cada programa.

    1. Você pode copiar e distribuir cópias fiéis do código-fonte do Programa da
    mesma forma que você o recebeu, usando qualquer meio, deste que inclua em cada
    cópia um aviso de direitos de autor e uma declaração de inexistência de
    garantias; mantenha intactos todos os avisos que se referem a esta Licença e à
    ausência total de garantias; e forneça aos destinatários do Programa uma cópia
    desta Licença, em conjunto com o Programa.

    Você pode cobrar pelo acto físico de transferir uma cópia e pode,
    opcionalmente, oferecer garantias em troca de pagamento.

    2. Você pode modificar sua cópia ou cópias do Programa, ou qualquer parte dele,
    gerando assim um trabalho derivado, copiar e distribuir essas modificações ou
    trabalhos sob os termos da secção 1 acima, desde que se enquadre nas seguintes
    condições:

    a) Os arquivos modificados devem conter avisos proeminentes afirmando que você
    alterou os arquivos, incluindo a data de qualquer alteração.

    b) Deve ser licenciado, sob os termos desta Licença, integralmente e sem custo
    algum para terceiros, qualquer trabalho seu que contenha ou seja derivado do
    Programa ou de parte dele.

    c) Se qualquer programa modificado, quando executado, lê normalmente comandos
    interactivamente, tem que fazer com que, quando iniciado o uso interactivo,
    seja impresso ou mostrado um anúncio de que não há qualquer garantia (ou então
    que você fornece a garantia) e que os utilizadores podem redistribuir o
    programa sob estas condições, ainda informando os utilizadores como consultar
    uma cópia desta Licença. (Excepção: se o Programa em si é interactivo mas
    normalmente não imprime estes tipos de anúncios, então o seu trabalho derivado
    não precisa imprimir um anúncio.)

    Estas exigências aplicam-se ao trabalho derivado como um todo. Se secções
    identificáveis de tal trabalho não são derivadas do Programa, e podem ser
    razoavelmente consideradas trabalhos independentes e separados por si só, então
    esta Licença, e seus termos, não se aplicam a estas secções caso as distribua
    como um trabalho separado. Mas se distribuir as mesmas secções como parte de um
    todo que constitui trabalho derivado, a distribuição como um todo tem que
    enquadrar-se nos termos desta Licença, cujos direitos para outros licenciados
    se estendem ao todo, portanto também para toda e qualquer parte do programa,
    independente de quem a escreveu.

    Desta forma, esta secção não tem a intenção de reclamar direitos ou contestar
    seus direitos sobre o trabalho escrito completamente por si; ao invés disso, a
    intenção é a de exercitar o direito de controlar a distribuição de trabalhos,
    derivados ou colectivos, baseados no Programa.

    Adicionalmente, a mera adição ao Programa (ou a um trabalho derivado deste) de
    um outro trabalho num volume de armazenamento ou meio de distribuição não faz
    esse outro trabalho seja incluído no âmbito desta Licença.

    3. Você pode copiar e distribuir o Programa (ou trabalho derivado, conforme
    descrito na Secção 2) em código-objecto ou em forma executável sob os termos
    das Secções 1 e 2 acima, desde que cumpra uma das seguintes alienas:

    a) O faça acompanhar com o código-fonte completo e em forma acessível por
    máquinas, código esse que tem que ser distribuído sob os termos das Secções 1 e
    2 acima e em meio normalmente utilizado para o intercâmbio de software; ou,

    b) O acompanhe com uma oferta escrita, válida por pelo menos três anos, de
    fornecer a qualquer um, com um custo não superior ao custo de distribuição
    física do material, uma cópia do código-fonte completo e em forma acessível por
    máquinas,  código esse que tem que ser distribuído sob os termos das Secções 1
    e 2 acima e em meio normalmente utilizado para o intercâmbio de software; ou,

    c) O acompanhe com a informação que você recebeu em relação à oferta de
    distribuição do código-fonte correspondente. (Esta alternativa é permitida
    somente em distribuição não comerciais, e apenas se você recebeu o programa em
    forma de código-objecto ou executável, com uma oferta de acordo com a Subsecção
    b) acima.)

    O código-fonte de um trabalho corresponde à forma de trabalho preferida para se
    fazer modificações. Para um trabalho em forma executável, o código-fonte
    completo significa todo o código-fonte de todos os módulos que ele contém, mais
    quaisquer arquivos de definição de "interface", mais os "scripts" utilizados
    para se controlar a compilação e a instalação do executável. Contudo, como
    excepção especial, o código-fonte distribuído não precisa incluir qualquer
    componente normalmente distribuído (tanto em forma original quanto binária) com
    os maiores componentes (o compilador, o "kernel" etc.) do sistema operativo sob
    o qual o executável funciona, a menos que o componente em si acompanhe o
    executável.

    Se a distribuição do executável ou código-objecto é feita através da oferta de
    acesso a cópias em algum lugar, então oferecer o acesso equivalente a cópia, no
    mesmo lugar, do código-fonte, equivale à distribuição do código-fonte, mesmo
    que terceiros não sejam compelidos a copiar o código-fonte em conjunto com o
    código-objecto.

    4. Você não pode copiar, modificar, sublicenciar ou distribuir o Programa,
    excepto de acordo com as condições expressas nesta Licença. Qualquer outra
    tentativa de cópia, modificação, sublicenciamento ou distribuição do Programa
    não é valida, e cancelará automaticamente os direitos que lhe foram fornecidos
    por esta Licença. No entanto, terceiros que receberam de si cópias ou direitos,
    fornecidos sob os termos desta Licença, não terão a sua licença terminada,
    desde que permaneçam em total concordância com ela.

    5. Você não é obrigado a aceitar esta Licença já que não a assinou. No entanto,
    nada mais lhe dará permissão para modificar ou distribuir o Programa ou
    trabalhos derivados deste. Estas acções são proibidas por lei, caso você não
    aceite esta Licença. Desta forma, ao modificar ou distribuir o Programa (ou
    qualquer trabalho derivado do Programa), você estará a indicar a sua total
    concordância com os termos desta Licença, nomeadamente os termos e condições
    para copiar, distribuir ou modificar o Programa, ou trabalhos baseados nele.

    6. Cada vez que redistribuir o Programa (ou qualquer trabalho derivado), os
    destinatários adquirirão automaticamente do autor original uma licença para
    copiar, distribuir ou modificar o Programa, sujeitos a estes termos e
    condições. Você não poderá impor aos destinatários qualquer outra restrição ao
    exercício dos direitos então adquiridos. Você não é responsável em garantir a
    concordância de terceiros a esta Licença.

    7. Se, em consequência de decisões judiciais ou alegações de violação de
    patentes ou quaisquer outras razões (não limitadas a assuntos relacionados a
    patentes), lhe forem impostas condições (por ordem judicial, acordos ou outras
    formas) e que contradigam as condições desta Licença, elas não o livram das
    condições desta Licença. Se não puder distribuir de forma a satisfazer
    simultaneamente suas obrigações para com esta Licença e para com as outras
    obrigações pertinentes, então como consequência você não poderá distribuir o
    Programa. Por exemplo, se uma licença de patente não permitir a redistribuição,
    sem obrigação ao pagamento de "royalties", por todos aqueles que receberem
    cópias directa ou indirectamente de si, então a única forma de você satisfazer
    a licença de patente e a esta Licença seria a de desistir completamente de
    distribuir o Programa.

    Se qualquer parte desta secção for considerada inválida ou não aplicável em
    qualquer circunstância particular, o restante da secção aplica-se, e a secção
    como um todo aplicar-se-á em outras circunstâncias.

    O propósito desta secção não é o de induzi-lo a infringir quaisquer patentes ou
    reivindicação de direitos de propriedade de outros, ou a contestar a validade
    de quaisquer dessas reivindicações; esta secção tem como único propósito
    proteger a integridade dos sistemas de distribuição de software livre, que é
    implementado pela prática de licenças públicas. Várias pessoas têm contribuído
    generosamente e em grande escala para software distribuído usando este sistema,
    na certeza de que sua aplicação é feita de forma consistente; fica a critério
    do autor/doador decidir se ele ou ela está disposto(a) a distribuir software
    utilizando outro sistema, e um outro detentor de uma licença não pode impor
    esta ou qualquer outra escolha.

    Esta secção destina-se a tornar bastante claro o que se acredita ser
    consequência do restante desta Licença.

    8. Se a distribuição e/ou uso do Programa são restringidos em certos países por
    patentes ou direitos de autor, o detentor dos direitos de autor original, que
    colocou o Programa sob esta Licença, pode incluir uma limitação geográfica de
    distribuição, excluindo aqueles países, de forma a apenas permitir a
    distribuição nos países não excluídos. Nestes casos, esta Licença incorpora a
    limitação como se a mesma constasse escrita nesta Licença.

    9. A Free Software Foundation pode publicar versões revistas e/ou novas da
    Licença Pública Geral de tempos em tempos. Estas novas versões serão similares
    em espírito à versão actual, mas podem diferir em detalhes que resolvam novos
    problemas ou situações.

    A cada versão é dada um número distinto. Se o Programa especifica um número de
    versão específico desta Licença que se aplica a ele e a "qualquer nova versão",
    você tem a opção de aceitar os termos e condições daquela versão ou de qualquer
    outra versão.
    */

    echo "$setDoctype
    $setCopyright
    <html>
    <head>
    <meta http-equiv='Content-Type' content=\"text/html; charset=$setCharset\" />
    <title>$setTitle</title>
    <meta name='robots' content='none' />
    <meta name='description' content='$setDescription' />
    <meta name='keywords' content='$setKeywords' />
    <meta name='copyright' content='SGD' />
    <script type='text/Javascript'>
    <!--
    var gBrowserOK = true;
    var gOSOK = true;
    var gCookiesOK = true;
    var gFlashOK = true;
    // -->
    </script>
    <script type='text/javascript' src='../javascript/general.js'></script>
    <script type='text/JavaScript' src='../javascript/overlib_mini.js'></script>
    <script language='JavaScript' src='../themes/".THEME."/scripts.js'></script>
    <script language='JavaScript' src='../themes/".THEME."/scriptsax.js'></script>
    <script language='JavaScript' src='../themes/".THEME."/Report.js'></script>
    <link rel='stylesheet' href='../themes/".THEME."/stylesheet.css' type='text/css' />
    <link rel='stylesheet' href='../themes/".THEME."/calendar.css' type='text/css' />
    $headBonus";
    echo "<style type=\"text/css\">
    <!--
    body {
        background-image: url(../themes/default/images/bg_grey.gif);
        margin-left: 0px;
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 0px;
    }
    -->
    </style>";
    echo "</head>
    <body  $bodyCommand>";
    $blockHeader = new block();
    $blockHeader->openTable();
    echo "\n<div id='overDiv' style='position:absolute; visibility:hidden; z-index:1000;'></div>\n\n";

    include_once "../themes/".THEME."/baner.php";

    // INI COLOCADO
    echo "<table cellpadding=0 cellspacing=0 border=0 height='93%' width='95%' align='center' bgcolor=\"#FFFFFF\">";
    echo "<tr><td valign='top'  ><br/>";
    // FIM COLOCADO
     
     
    //
    ?>

     

    Espero que te ajude.

     

    Lupa Treinamento.

    • Adbafd5b524408ccbdbcd2ba94dd10bd?only path=false&size=50&d=404fabio lucio moreira lima(usuário não autenticado)
      16 de Outubro de 2008, 11:51

       

      bacana, obrigado funcionou.

      outra coisa, voce poderia passar tambem o restante dos arquivos existentes em ../themes/default/

      exemplo baner.php, footer.php

      para que a instalacao siga sem erros, com isso vou atualizar tambem o repositorio para que for fazer novas instalocoes ok

      obrigado.

      • D87c87168f6de434c043133dda0a4027?only path=false&size=50&d=404Lupa Treinamento(usuário não autenticado)
        16 de Outubro de 2008, 15:03

         

        Boa Tarde Fabio,

           Disponibilizei a pasta Themes\Default na parte de Armazenagem de Arquivo no link abaixo:

        Pasta Themes\default

        Espero que ajude,

         Lupa Treinamento.

Participação da Reunião de Coordenação Geral do Portal do Software Público

10 de Março de 2014, 11:47, por Desconhecido

Estamos participando hoje(10/04/2014) da Reunião de Coordenação Geral do Portal do Software Público, onde discutiremos sobre o novo portal do software publico, bem como as novas ferramentas e recursos que serão disponibilizados para as comunidades.



Quem usa o SGD?

23 de Julho de 2013, 11:42, por Desconhecido

Olá!



Visita da Delegação de Moçambique

8 de Maio de 2009, 20:21, por Desconhecido

É com grande satisfação que o SGD foi apresentado para a delegação de Moçambique que esteve no Brasil em março de 2009. Na ocasião o sistema foi apresentado pelos adminstradores da Comunidade SGD, Sr. Rogério Leitão e Sra. Pollyanna Mendes, no Edifício Sede do FNDE - Fundo Nacional de Denvolvimento da Educação.



SGD no INEP

16 de Outubro de 2007, 14:35, por Desconhecido

Autor: Rogério de Souza Leitão



SGD é apresentado na 5ª Reunião Técnica de Informática - CBTU no Rio de Janeiro

20 de Setembro de 2007, 11:23, por Desconhecido

Autor: Rogério de Souza Leitão