
cliopatria.pl -- ClioPatria skin
This page defines the overall layout of ClioPatria pages. All pages are
returned using reply_html_page/3, using the page class cliopatria(Id),
where Id is currently always default. Pages can be redefined by
providing a rule for user:body//2, where the first argument must unify
with the page class.
The default skin provides the overall menu, a simple search form, the
content and the `server-address'. Because the search-form uses the YUI
autocomplete widgets, the body must include class yui-skin-sam. The
default body has the classes yui-skin-sam and cliopatria.
The default skin provided by this can be overruled using two hooks:
- cliopatria:page_body//1
- Emit a page from the given content. This hook can be used to modify the overall page layout beyond what can be achieved with CSS.
- cliopatria:server_address//0
- Write the address of the server.
This library also provides building blocks, notably for server_address//0:
- server_address//1
- Presents the version info and a link to a GIT module.
- current_page_doc_link//0
-
Presents a link to the documentation of a page if the
self-documentation facilities are loaded. See
run.pl.in.
The CSS file css('cliopatria.css') contains the ClioPatria style that is
makes ClioPatria look pretty to our eyes, but is not essential. The
plugin config-available/fix_menu.pl contains example code to extend the
ClioPatria skin.
user:body(+Style, :Body)// is det[multifile]- The multi-file implementation defines the overall layout of HTML
pages with the Style
cliopatria(_).
address//[private]- Emit an element
addresswith classcliopatria. This first class the hook cliopatria:server_address//0. If this hooks fails, it callsserver_address('ClioPatria').
server_address(+Component)//- HTML component that emits the default ClioPatria address link.
This provides a link to the ClioPatria home page and the (GIT)
version information. ClioPatria is registered with the GIT
module
ClioPatriaand the default server address is provided by calling:..., server_address('ClioPatria'), ...
component_address(+Name)//[private]- The label ClioPatria as a link to its home-page on the web.
component_version(+Name)//[private]- Give verion information and link to detailed version info
current_page_doc_link//- Create a link to the documentation (and from there to the implementation) of this page. This link is created only if the library applications(help/http_help) is loaded.