| Customizationtmda-cgi is easily customized by modifying the theme. Unless you wish to 
  make radical changes, you should not need to modify the Python code. Begin by making a copy of the Blue directory under 
  display/themes and select this new theme with the theme picker in
  tmda-cgi. You can now begin to make changes to your theme and view your
  changes as you work. Here is a fairly brief summary of things to keep in mind while working on
  your theme. If you need more help, please see the Commercial Support page for contact 
  information.Directories Embedded Variables
 Theme Form Variables
 Using button_maker
 
 Directories
  
    | buttons | Images used as navigation buttons. Feel free to modify these. |  
    | button_templates | Buttons without text. If you modify these, you will need to use the
      button_maker program to add the text back onto the buttons. |  
    | dyn_buttons | Blank buttons with added text. Don't modify these. Modify the blank
      buttons and use button_maker to add the text back onto 
      them. |  
    | flowchart | Reserved for future use. |  
    | template | HTML templates.  You can modify the .html files, but if an
      .ht of the same name exists, I recommend you modify that instead
      and use make to rebuild the .html. |  
    | ./*.gif ./*.png
 | Miscellaneous images used on the template pages.  Feel free to modify
      these. |  
    | styles.css | Stylesheet for template pages.  Feel free to modify this. |  
    | theme.ini | Theme configuration.  Feel free to modify 
      this. |  
    | subtopics.p | Generated by running make in template directory.
      Do not modify. |  Embedded Variablestmda-cgi expands the embedded variables it finds on the template pages. 
  These variables appear in three different formats: 
  Standard Python expansion variables, such as %(Sender)s. These
    variables are replaced with actual data when tmda-cgi is run.Embedded variables, such as <-- var: Grey="#91A2BD" -->.
    tmda-cgi reads in these variables and uses the value given. The quotes are
    mandatory and may not be substituted with single ticks.Special blocks, marked with a <-- var: Row --> at the
    beginning and either a <-- /var --> or <-- /var (Row)
    --> at the end. These blocks are repeated or removed depending on the
    content tmda-cgi needs to display. All variable names are case-sensative. Theme Form VariablesThe theme customization page can accept a wide variety of fields, all
  without modification of the Python code. This is done by "announcing" what 
  form fields (and potential values) to expect by way of an embedded variable 
  called FormVars. FormVars must be assigned a comma separated list of variables.
  Each variable must be in the following format: 
  <Section>:<Option>[:<Value>:...] The [:<Value>:...] list should be used if the variable will be
  configured with a pull-down list or series of radio buttons. Each item listed
  should be a punctuation-stripped version of value it can return. Text inputs
  do not require any values to be listed. Each variable listed in FormVars should correspond to a 
  <input> tag on the form. The fields should be named according to
  <Section><Option> (no ":"). Drop-down fields should use <option> tags as follows: 
  <option %(<Section><Option><Value>Selected)s 
    value="<Value>"><Text></option> Radio buttons should use <input> tags as follows: 
  <input type="radio" name="<Section><Option>" 
  value="<Value>"%(<Section><Option><Value>Checked)s>
 Using button_makerbutton_maker is an <Ack! Spit! Puke!> Perl program* that comes with tmda-cgi and 
  applies text to blank button templates.  The code is called automatically 
  when make detects a change in links.h. However, make is not set to automatically rebuild all 
  .html files when links.h is changed. If you change the
  menu structure, run make remake instead to make sure that all
  .html files are updated. Before running button_maker, you will need to make sure the 
  following programs have been installed on your server: * Yes, I realize that there is now a Python API for ImageMagick (PythonMagic). It was in its 
  infancy when I created button_maker and was not yet working for the 
  *nix platforms. |