Chris Covell wrote:

Would it be possible for you to explain this in a bit more detail. The reason I ask is that we provide our own user interface (on the public server) to our users vastly simplifying the options available (for requesting and retrieving certificates). In order to do this we have created new sheets and commands (based on the existing OpenCA sheets and commands but called different names). We started this work based on 0.9.0 and had to make many changes incorporating the modifications when the commands changed in 0.9.1. I just wanted to know to what extent the commands and sheets have changed so that I can estimate the development required when we migrate to 0.9.2.

So you ask for a small documentation, right :)


Now we have in OpenCA four mechanisms to output HTML-pages. All functions are misc.utils.lib and log.utils. Perhasp we will merge them later to OpenCA::Output::HTML but this is not yet planned.

1. libSendReply
2. libSendMenu
3. libSendStatic
4. normal log

Let's start with the easiest thing - point 4. Nothing changed in this interface except of some classes for the stylesheet.

libSendMenu creates and manages menus from menu.xml. You can configure the complete menu in this single file. So if you want to hide some complexity then you can modify this XML-file. If you installed OpenCA from scratch then you can search for the pub interface in this file and you will see the raw structure. The DTD is like this:

menu.xml ::=
<openca>
 <interface_menus>
  $interface+
 </interface_menus>
</openca>

interface ::=
  <interface>
    <name>ca</name>
    <htdocs_prefix>/ca</htdocs_prefix>
    <cgi_prefix>/cgi-bin/ca/ca?</cgi_prefix>
    <logo_left></logo_left>
    <logo_right></logo_right>
    <menu>
      $item+
    </menu>

item ::=
      <item>
        <name>General</name>
        ($subitem|$lastitem)
      </item>

subitem ::=
        <id>1</id>
        $item*

lastitem ::=
          <name>Initialization</name>
          <link>cmd=getStaticPage;name=init</link>
          <target>main</target>

So it is not DTD it is more a grammar. OpenCa support now menus with unlimited depth but you have to take care about the frames of course.

libSendStatic is used by getStaticPage now. Here you can define the functions which the user can see if you show him some statical information. The interface support NAME, EXPLANATION, TIMESTAMP and ITEM_LIST.

NAME -> simple string
EXPLANATION -> long explanation of this page
TIMESTAMP -> true value, off by default
ITEM_LIST -> double array ($list->[$i]->[$j])
             $j == 0 is th
             $j != 0 is td

libSendReply is more dynamic than libSendStatic. Please check the source code until I checked in the docs tomorrow. It supports command panels andlists, item lists, info lists and siginfo.

If you need to build statical pages then please use getStaticPage (see listCSRtype).

If this is not enough information then please write again because it is a major design change. The major goal is better i18n and stylesheet support (looks at src/common/lib/stylsheets/default.css and it's results).

Best regards

Michael
--
-------------------------------------------------------------------
Michael Bell                   Email: [EMAIL PROTECTED]
ZE Computer- und Medienservice            Tel.: +49 (0)30-2093 2482
(Computing Centre)                        Fax:  +49 (0)30-2093 2704
Humboldt-University of Berlin
Unter den Linden 6
10099 Berlin                   Email (private): [EMAIL PROTECTED]
Germany                                       http://www.openca.org



-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01
_______________________________________________
OpenCA-Devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/openca-devel

Reply via email to