Personalizando sua Instalação

Provavelmente a primeira coisa que você vai querer fazer uma vez com o Greenstone instalado e rodando, será a personalizar a home page. O arquivo que gera a home page do Greenstone é chamado de home.dm, e está localizado no subdiretório macros no qual você instalou o Greenstone. (O caminho padrão em ambientes Windows é C:\Program Files\gsdl.) Este arquivo é um arquivo texto que você precisará editar para criar uma nova home page. Ao invés de editá-lo, recomendamos que você crie um novo arquivo, digamos yourhome.dm. Ele será parecido com o arquivo home.dm porém utilizará o “package home” - que é quem faz o trabalho atual - de maneira diferente.

Quando você faz uma home page diferente, deve haver algum modo de linká-la para as páginas da biblioteca digital, para que seja possível realizar a busca e navegação nas coleções de seu sistema. A solução adotada pelo Greenstone é a utilização de “macros”. Esta é a razão pela qual o arquivo da home page tem a extensão “.dm” e não “.html”— é um arquivo “macro” ao invés de um arquivo regular html. Mas não quail: este arquivo macro contém apenas html, com alguns detalhes específicos citados abaixo. A linguagem macro contém vários recursos poderosos, e somente uma pequena parte deles é listada abaixo—verifique o Guia do Desenvolvedor da Biblioteca Digital Greenstone para mais informações.

Exemplo

A figura ## mostra o exemplo de uma nova home page para a biblioteca digital. Cada um dos links “Click here” lhe direcionará para um recurso do Greenstone. Esta página foi gerada pelo arquivo chamado yourhome.dm mostrado na figura ## .

Arrayyourhome.dm

package home
_content_ {
<h2>Your own Greenstone home page</h2>
<ul>
<table>
<tr valign=top><td>Search page for the demo collection<br></td>
      <td><a href="_httpquery_&c=demo">Click here</a></td></tr>
<tr><td>"About" page for the demo collection</td>
      <td><a href="_httppageabout_&c=demo">Click here</a></td></tr>
<tr><td>Preferences page for the demo collection</td>
      <td><a href="_httppagepref_&c=demo">Click here</a></td></tr>
<tr><td>Home page</td>
      <td><a href="_httppagehome_">Click here</a></td></tr>
<tr><td>Help page</td>
      <td><a href="_httppagehelp_">Click here</a></td></tr>
<tr><td>Administration page</td>
      <td><a href="_httppagestatus_">Click here</a></td></tr>
<tr><td>The Collector</td>
      <td><a href="_httppagecollector_">Click here</a></td></tr>
</table>
</ul>
}
# if you hate the squirly green bar down the left-hand side of the
# page, uncomment these lines:
# _header_ {
# }

Você pode utilizar a figura ## como um template para criar sua própria página especializada Greenstone. Basicamente, ela define uma macro chamada content. Dentro das chaves é html normal. É possível inserir textos adicionais, junto com quaisquer comandos de formatação html, para colocar o conteúdo que você quer ver na página. O texto é em html normal; caso queira, é possível incluir hyperlinks, e utilizar todos os recursos incluídos na linguagem html.

Para fazer o seu link da nova home page em páginas de outras bibliotecas digitais, você precisa uitlizar as palavras mágicas apropriadas. Na linguagem macro, palavras mágicas são palavras cercadas por traço inferior (_), underscore. É possível ver isso na figura ## . Por exemplo, _httppagehome_ lhe direcionará para a home page, _httppagehelp_ para a página de ajuda, e assim por diante. Em alguns casos será necessária a inclusão do nome da coleção. Por exemplo, _httpquery_&c=demo especifica a página de busca para a coleção demo; para outras coleções é necessário substituir demo pelo nome de coleção adequado.

A definição da macro _content_ é puro html. Qualquer código padrão html pode ser substituído dentro de uma definição da macro. Entretanto, os caracteres especiais '{', '}', '\', e '_' devem ser utilizados juntos com a barra invertida para prevení-los de serem processados pelo interpretador da linguagem macro.

Note que a definição da macro _content_ não contém nenhum cabeçalho ou rodapé html. Se você deseja modificar o cabeçalho ou o rodapé de sua página, você deveria definir as macros _header_ para cabeçalho e/ou _footer_ para rodapé, adicionando-as ao arquivo yourhome.dm no formulário

_macroname_ {
...
}

Por exemplo, a barra verde do lado esquerdo, abaixo nas páginas do Greenstone é definida pela macro do cabeçalho _header_, e quando ela tem o valor null, ela será removida, como indicado no final da figura ## .

Como fazer as coisas funcionarem

Você terá que contar para o Greenstone sobre sua nova home page yourhome.dm. O sistema lê os arquivos macro que estão especificados no arquivo de configuração central main.cfg, então caso você crie algum arquivo novo, você deve incluí-lo no arquivo central. A ordem nos nomes faz diferença: as definições mais recentes têm precedência.

Assim, para fazer o software da biblioteca digital do Greenstone utilizar a home page na figura ## ao invés da padrão, primeiro coloque o arquivo yourhome.dm na figura ## no diretório macros. Então edite o arquivo de configuração main.cfg para substituir o home.dm com yourhome.dm na lista de arquivos macro que são carregadas na inicialização.

Redirecionando a URL para o Greenstone

Você poderá querer redirecionar uma URL mais conveniente para o seu programa Greenstone cgi. Por exemplo, no seu sistema a URL http://nzdl.org (que é um atalho para http://nzdl.org/index.html) é redirecionada para http://nzdl.org/cgi-bin/library . O servidor web Apache webserver realiza isso com a diretiva Redirect. Junto com outras diretivas, ela se encontra no arquivo de configuração C:\Program Files\Apache Group\Apache\conf\httpd.conf. Para redirecionar a URL http://www.seuservidor.com para http://www.seuservidor.com/cgi-bin/library , adicione a seguinte linha em httpd.conf:

Redirect /index.html http://www.yourserver.com/cgi-bin/library

Então você vai acessar o seu sistema da biblioteca digital diretamente a partir da URL http://www.seuservidor.com . Se ao invés disso, você quiser que uma URL como http://www.seuservidor.com/greenstone seja direcionada para http://www.seuservidor/cgi-bin/library, inclua aí o arquivo httpd.conf

Redirect /greenstone http://www.yourserver.com/cgi-bin/library

Se o seu computador não tem um nome de domínio (como o exemplo “www.seuservidor.com” acima), simplesmente substitua www.seuservidor.com por localhost nas linhas acima. Desde que o seu navegador esteja sendo executado na mesma máquina que o servidor web - o que certamente acontece se o seu computador não têm um nome de domínio - isso tem o mesmo efeito que os redirecionamentos acima.

Ao invés de inserir redirecionamentos adicionais de diretivas no arquivo httpd.conf, você pode igualmente colocá-los no arquivo .htaccess dentro do seu diretório raiz de documentos do seu servidor. Na realidade, fazer isso tem duas vantagens. Primeiro, as mudanças em .htaccess têm um efeito imediato, quando o tiver que iniciar novamente o servidor Apache para verificar as mudanças em httpd.conf. Em segundo lugar, em ambientes Unix você geralmente tem que estar logado como usuário "root" para editar o arquivo httpd.conf, considerando que você não edite o arquivo .htaccess.


Navigation
Toolbox