public_html/docs/english/config.html
author Dirk Haun <dirk@haun-online.de>
Sat, 17 Oct 2009 11:17:43 +0200
branchHEAD
changeset 7377 c837dd0217ac
parent 7375 62255fe7e5f9
child 7423 1c569ec0827b
permissions -rw-r--r--
Documentation update
     1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
     2 <html>
     3 <head>
     4   <title>Geeklog Documentation - Configuration</title>
     5   <link rel="stylesheet" type="text/css" href="../docstyle.css" title="Dev Stylesheet">
     6 </head>
     7 
     8 <body>
     9 <p><a href="http://www.geeklog.net/" style="background:transparent"><img src="../images/newlogo.gif" alt="Geeklog" width="243" height="90"></a></p>
    10 <div class="menu"><a href="index.html">Geeklog Documentation</a> - Configuration</div>
    11 
    12 <h1>Geeklog Configuration</h1>
    13 
    14 <h2>Configuration files</h2>
    15 
    16 <p>Previous versions of Geeklog used one huge file called <tt>config.php</tt>
    17 that held all the core configuration options. As of Geeklog 1.5.0, most of
    18 the configuration options have been moved to the database and can now be
    19 reached from the <b>Configuration</b> admin panel within Geeklog.</p>
    20 
    21 <p>For technical reasons, some configuration options still have to be
    22 stored in files. There are two such configuration files now:
    23 <ul>
    24 <li><a href="#db-config.php">db-config.php</a></li>
    25 <li><a href="#siteconfig.php">siteconfig.php</a></li>
    26 </ul>
    27 <p>These files are updated
    28 when you install Geeklog and you will not normally have to edit them
    29 manually.</p>
    30 
    31 <h1>Configuration options</h1>
    32 
    33 <p>Geeklog's configuration options are grouped like this:</p>
    34 
    35 <ul>
    36 <li><a href="#site">Site</a></li>
    37 <li><a href="#stories">Stories and Trackback</a></li>
    38 <li><a href="#theme">Theme</a></li>
    39 <li><a href="#blocks">Blocks</a></li>
    40 <li><a href="#users">Users and Submissions</a></li>
    41 <li><a href="#images">Images</a></li>
    42 <li><a href="#languages">Languages and Locale</a></li>
    43 <li><a href="#misc">Miscellaneous</a></li>
    44 </ul>
    45 
    46 <h2><a name="site">Site</a></h2>
    47 
    48 <h3><a name="site_site">Site: Site</a></h3>
    49 
    50 <table border="1" width="100%">
    51 <tr><th style="width:8%">Variable</th>
    52     <th style="width:29%">Default Value</th>
    53     <th style="width:63%">Description</th></tr>
    54 <tr>
    55   <td valign="top"><a name="desc_site_url">site_url</a></td>
    56   <td valign="top">http://www.example.com</td>
    57   <td valign="top">Base URL for your site (no trailing slash)</td></tr>
    58 <tr>
    59   <td valign="top"><a name="desc_site_admin_url">site_admin_url</a></td>
    60   <td valign="top">http://www.example.com/admin</td>
    61   <td valign="top">Base URL of the admin area of your site (no trailing slash).
    62     You won't have to change this normally, but some hosting services use a
    63     predefined "admin" directory for other purposes. In this case, you can
    64     rename Geeklog's <tt>admin</tt> directory and adjust the URL accordingly to
    65     avoid conflicts.</td></tr>
    66 <tr>
    67   <td valign="top"><a name="desc_site_name">site_name</a></td>
    68   <td valign="top">Geeklog Site</td>
    69   <td valign="top">Name of your site</td></tr>
    70 <tr>
    71   <td valign="top"><a name="desc_site_slogan">site_slogan</a></td>
    72   <td valign="top">Another Nifty Geeklog Site</td>
    73   <td valign="top">Slogan for your site. This is added to the HTML title field.</td></tr>
    74 <tr>
    75   <td valign="top"><a name="desc_microsummary_short">microsummary_short</a></td>
    76   <td valign="top">GL:</td>
    77   <td valign="top">Prefix to use for a <a href="http://wiki.mozilla.org/Microsummaries">microsummary</a>.</td></tr>
    78 <tr>
    79   <td valign="top"><a name="desc_site_disabled_msg">site_disabled_msg</a></td>
    80   <td valign="top">'Geeklog Site is down. Please come back soon.'</td>
    81   <td valign="top">This contains the message to display when a Geeklog site is
    82     disabled. If the text begins with "http:" then visitors are redirected to
    83     that URL.<br>
    84     <strong>Note:</strong> The option actually disable the site can be found
    85     in the <tt>siteconfig.php</tt> file.</td></tr>
    86 <tr>
    87   <td valign="top"><a name="desc_copyrightyear">copyrightyear</a></td>
    88   <td valign="top"><i>(disabled)</i></td>
    89   <td valign="top">Set this to the year you want to appear in the copyright notice of your
    90     site's footer. If not set, Geeklog will use the current year.</td></tr>
    91 <tr>
    92   <td valign="top"><a name="desc_url_rewrite">url_rewrite</a></td>
    93   <td valign="top">false</td>
    94   <td valign="top">Enable (true) or disable (false) URL rewriting.<br>
    95     Also see the section on <a href="#url-rewrite">URL Rewriting</a> below.</td></tr>
    96 <tr>
    97   <td valign="top"><a name="desc_meta_tags">meta_tags</a></td>
    98   <td valign="top">disabled</td>
    99   <td valign="top">Enabled - The meta tags for stories and topics will be displayed. If none are found, then the default will be used. The default will also be used for any page that doesn't have meta tags.<br>
   100       Enabled (Default for Homepage only) - The same as Enabled except, the defaults are used only for the Homepage.<br>
   101     Disabled - Meta tags are not used.</td></tr>
   102 <tr>
   103   <td valign="top"><a name="desc_meta_description">meta_description</a></td>
   104   <td valign="top">'Geeklog, the open source content management system designed with security in mind.'</td>
   105   <td valign="top">The default meta description for your site.</td></tr>
   106 <tr>
   107   <td valign="top"><a name="desc_meta_keywords">meta_keywords</a></td>
   108   <td valign="top">'Geeklog, Blog, Content Management System, CMS, Open Source, Security'</td>
   109   <td valign="top">The default meta keywords for your site.</td></tr>    
   110 </table>
   111 
   112 <h3><a name="site_mail">Site: Mail</a></h3>
   113 
   114 <table border="1" width="100%">
   115 <tr><th style="width:8%">Variable</th>
   116     <th style="width:29%">Default Value</th>
   117     <th style="width:63%">Description</th></tr>
   118 <tr>
   119   <td valign="top"><a name="desc_site_mail">site_mail</a></td>
   120   <td valign="top">admin@example.com</td>
   121   <td valign="top">E-mail address for all admin mail</td></tr>
   122 <tr>
   123   <td valign="top"><a name="desc_noreply_mail">noreply_mail</a></td>
   124   <td valign="top">noreply@example.com</td>
   125   <td valign="top">This is the sender's address of emails sent by the system when users register etc.
   126     This should be either the same as $_CONF['site_mail'] or a bouncing address
   127     to prevent spammers from getting your email address by registering on the site.
   128     If this is NOT the same as above, there will be a message in sent messages
   129     that replying to those emails is recommended.</td></tr>
   130 <tr><td valign="top"><a name="desc_mail_settings_backend">backend</a></td>
   131     <td valign="top">mail</td>
   132     <td valign="top">Used to select how to send email. Can be one of 'smtp',
   133         'sendmail', or 'mail'.</td></tr>
   134 <tr><td valign="top"><a name="desc_mail_settings_sendmail_path">sendmail_path</a></td>
   135     <td valign="top"><tt>/usr/bin/sendmail</tt></td>
   136     <td valign="top">If you chose 'sendmail' for the backend setting, this
   137         specifies the complete path to the sendmail binary.</td></tr>
   138 <tr><td valign="top"><a name="desc_mail_settings_sendmail_args">sendmail_args</a></td>
   139     <td valign="top"><tt>''</tt> <i>(empty)</i></td>
   140     <td valign="top">If you chose 'sendmail' for the backend setting, this
   141         variable can be used to pass additional parameters to the sendmail
   142         binary.</td></tr>
   143 <tr><td valign="top"><a name="desc_mail_settings_host">host</a></td>
   144     <td valign="top">smtp.example.com</td>
   145     <td valign="top">If you chose 'smtp' for the backend setting, this is the
   146         SMTP server to use.</td></tr>
   147 <tr><td valign="top"><a name="desc_mail_settings_port">port</a></td>
   148     <td valign="top">25</td>
   149     <td valign="top">If you chose 'smtp' for the backend setting, this is the
   150         port number to talk to on the SMTP server.</td></tr>
   151 <tr><td valign="top"><a name="desc_mail_settings_auth">auth</a></td>
   152     <td valign="top">0</td>
   153     <td valign="top">If you chose 'smtp' for the backend setting, set this to
   154         <code>1</code> if your SMTP server requires authorization, and
   155         <code>0</code> (or leave the field empty) if it doesn't.</td></tr>
   156 <tr><td valign="top"><a name="desc_mail_settings_username">username</a></td>
   157     <td valign="top">smtp-username</td>
   158     <td valign="top">If you chose 'smtp' for the backend setting, this is the
   159         name of your SMTP account.</td></tr>
   160 <tr><td valign="top"><a name="desc_mail_settings_password">password</a></td>
   161     <td valign="top">smtp-password</td>
   162     <td valign="top">If you chose 'smtp' for the backend setting, this is the
   163         password for your SMTP account.</td></tr>
   164 </table>
   165 
   166 <h3><a name="site_syndication">Site: Syndication</a></h3>
   167 
   168 <p>Geeklog can export its headlines to a news feed in various formats (RSS, RDF, and Atom). This will let you share your news with other sites (Hint: Create a Portal block from Geeklog's Block menu to import news feeds from other sites).</p>
   169 
   170 <p>Starting with Geeklog 1.3.9, feeds can be created and configured from
   171 Geeklog's Admin menu ("Content Syndication"). The following settings will only
   172 be used as the <em>default settings</em> for any new feeds that you create from
   173 the admin panel.</p>
   174 
   175 <table border="1" width="100%">
   176 <tr><th style="width:8%">Variable</th>
   177     <th style="width:29%">Default Value</th>
   178     <th style="width:63%">Description</th></tr>
   179 <tr><td valign="top"><a name="desc_backend">backend</a></td>
   180     <td valign="top">1</td>
   181     <td valign="top">Create a feed file for the stories in rdf_file (0=no, 1=yes)</td></tr>
   182 <tr><td valign="top"><a name="desc_rdf_file">rdf_file</a></td>
   183     <td valign="top">HTML path with "/backend/geeklog.rss" suffix</td>
   184     <td valign="top">File system path for the feed file. This file allows you to share your site's headlines with others</td></tr>
   185 <tr><td valign="top"><a name="desc_rdf_limit">rdf_limit</a></td>
   186     <td valign="top">10</td>
   187     <td valign="top">Limit the number of stories to export to the news feed. If the value for this setting is a number, the feed will hold this many stories. If the number is followed by a lower-case 'h' (e.g. 24h) it denotes the number of hours from which to chose the stories.</td></tr>
   188 <tr><td valign="top"><a name="desc_rdf_storytext">rdf_storytext</a></td>
   189     <td valign="top">0</td>
   190     <td valign="top">If this value is 1, then the entire introtext of the stories will be included in the news feed. Any number greater than 1 limits the introtext to that many characters (e.g. a value of 80 would only include the first 80 characters from the introtext in the feed). If set to 0, the introtext is not included in the feed.</td></tr>
   191 <tr><td valign="top"><a name="desc_rdf_language">rdf_language</a></td>
   192     <td valign="top">en-gb</td>
   193     <td valign="top">Value for the feed's language tag. Depending on your site's language and operating system, this may differ from the language setting in the locale (see above).<br><strong>Example:</strong> The PHP locale setting for German is 'de_DE' while the correct language setting for a German RSS feed would be 'de-DE' (note the dash instead of the underscore).</td></tr>
   194 <tr><td valign="top"><a name="desc_syndication_max_headlines">syndication_max_headlines</a></td>
   195     <td valign="top">0</td>
   196     <td valign="top">Upper limit for the max. number of headlines when <em>importing</em> a feed (into a portal block). The limit can also be set for each individual portal block in the block menu.<br>
   197     When set to 0, all headlines are imported.</td></tr>
   198 </table>
   199 
   200 <h3><a name="site_paths">Site: Paths</a></h3>
   201 
   202 <table border="1" width="100%">
   203 <tr><th style="width:8%">Variable</th>
   204     <th style="width:29%">Default Value</th>
   205     <th style="width:63%">Description</th></tr>
   206 <tr><td valign="top"><a name="desc_path_html">path_html</a></td>
   207     <td valign="top">/path/to/geeklog/public_html/</td>
   208     <td valign="top">Path to your web tree directory for your site (trailing slash necessary).  This directory holds all the web pages used by Geeklog.</td></tr>
   209 <tr><td valign="top"><a name="desc_path_log">path_log</a></td>
   210     <td valign="top">/path/to/geeklog/logs/</td>
   211     <td valign="top">File system path for the log files</td></tr>
   212 <tr><td valign="top"><a name="desc_path_language">path_language</a></td>
   213     <td valign="top">/path/to/geeklog/language/</td>
   214     <td valign="top">location of the Geeklog language files</td></tr>
   215 <tr><td valign="top"><a name="desc_backup_path">backup_path</a></td>
   216     <td valign="top">/path/to/geeklog/backups/</td>
   217     <td valign="top">location where mysqldump (see above) will store database backups</td></tr>
   218 <tr><td valign="top"><a name="desc_path_data">path_data</a></td>
   219     <td valign="top">/path/to/geeklog/data/</td>
   220     <td valign="top">File system path for the data directory, used e.g. for the user batch add feature</td></tr>
   221 <tr><td valign="top"><a name="desc_path_images">path_images</a></td>
   222     <td valign="top">/path/to/geeklog/public_html/images/</td>
   223     <td valign="top">Path where Geeklog expects to find its images, including
   224         user photos and images for stories.</td>
   225 </table>
   226 
   227 <h3><a name="site_pear">Site: PEAR</a></h3>
   228 
   229 <table border="1" width="100%">
   230 <tr><th style="width:8%">Variable</th>
   231     <th style="width:29%">Default Value</th>
   232     <th style="width:63%">Description</th></tr>
   233 <tr><td valign="top"><a name="desc_have_pear">have_pear</a></td>
   234     <td valign="top"><code>false</code></td>
   235     <td valign="top">Whether you have <a href="http://pear.php.net/">PEAR</a>
   236         installed on your server (<code>= true</code>) or not
   237         (<code>= false</code>). When set to <code>false</code>, Geeklog will
   238         use the PEAR packages installed in <code>$_CONF['path_pear']</code>
   239         (see below)</td></tr>
   240 <tr><td valign="top"><a name="desc_path_pear">path_pear</a></td>
   241     <td valign="top"><tt>/path/to/geeklog/system/pear/</tt></td>
   242     <td valign="top">When <code>$_CONF['have_pear']</code> (see above) is set
   243         to <code>false</code>, this is the path where Geeklog expects to find
   244         the <a href="http://pear.php.net/">PEAR</a> packages it requires (e.g.
   245         PEAR::Mail for sending emails).</td></tr>
   246 </table>
   247 
   248 <h3><a name="site_mysql">Site: MySQL</a></h3>
   249 
   250 <p>As the name implies, these options are only relevant when your site is
   251 running on a MySQL database. They are ignored when using MS SQL.</p>
   252 
   253 <table border="1" width="100%">
   254 <tr><th style="width:8%">Variable</th>
   255     <th style="width:29%">Default Value</th>
   256     <th style="width:63%">Description</th></tr>
   257 <tr><td valign="top"><a name="desc_allow_mysqldump">allow_mysqldump</a></td>
   258     <td valign="top">1</td>
   259     <td valign="top">Enable or disable the backup functionality (1 = on,
   260         0 = off).</td></tr>
   261 <tr><td valign="top"><a name="desc_mysqldump_path">_DB_mysqldump_path</a></td>
   262     <td valign="top">/usr/bin/mysqldump</td>
   263     <td valign="top">Complete path to the <a
   264         href="http://www.mysql.com/doc/en/mysqldump.html">mysqldump</a> utility
   265         (part of MySQL) for making backups of your Geeklog database.</td></tr>
   266 <tr><td valign="top"><a name="desc_mysqldump_options">mysqldump_options</a></td>
   267     <td valign="top">-Q</td>
   268     <td valign="top">Here you can include additional options for the <a
   269         href="http://www.mysql.com/doc/en/mysqldump.html">mysqldump</a> call
   270         that Geeklog uses to create a backup from your database.</td></tr>
   271 <tr><td valign="top"><a name="desc_mysqldump_filename_mask">mysqldump_filename_mask</a></td>
   272     <td valign="top">geeklog_db_backup_%Y_%m_%d_%H_%M_%S.sql</td>
   273     <td valign="top">Mask to use for the names of the backup files. See <a
   274         href="#date_formats">date formats</a> below for details of the date and
   275         time in the file name.</td></tr>
   276 </table>
   277 
   278 <h3><a name="site_search">Site: Search</a></h3>
   279 
   280 <table border="1" width="100%">
   281 <tr><th style="width:8%">Variable</th>
   282     <th style="width:29%">Default Value</th>
   283     <th style="width:63%">Description</th></tr>
   284 <tr>
   285   <td valign="top"><a name="desc_search_style">search_style</a></td>
   286   <td valign="top">'google'</td>
   287   <td valign="top">Sets the style of the results page. Can be either 'google' or 'table'</td></tr>
   288 <tr>
   289   <td valign="top"><a name="desc_search_limits">search_limits</a></td>
   290   <td valign="top">10,15,25,30</td>
   291   <td valign="top">The result limits a user can select. Each value <b>must</b> be seperated with a comma.</td></tr>
   292 <tr>
   293   <td valign="top"><a name="desc_num_search_results">num_search_results</a></td>
   294   <td valign="top">30</td>
   295   <td valign="top">The default number of results per page. Should be a value from 'search_limits' above.</td></tr>
   296 <tr>
   297   <td valign="top"><a name="desc_search_show_limit">search_show_limit</a></td>
   298   <td valign="top">true</td>
   299   <td valign="top">Shows (= true) or hides (= false) the page limits selection box.</td></tr>
   300 <tr>
   301   <td valign="top"><a name="desc_search_show_sort">search_show_sort</a></td>
   302   <td valign="top">true</td>
   303   <td valign="top">Shows (= true) or hides (= false) the 'Sort By' selection box. (When using the table style it will enable/disable column sorting)</td></tr>
   304 <tr>
   305   <td valign="top"><a name="desc_search_show_num">search_show_num</a></td>
   306   <td valign="top">true</td>
   307   <td valign="top">Shows (= true) or hides (= false) the result number.</td></tr>
   308 <tr>
   309   <td valign="top"><a name="desc_search_show_type">search_show_type</a></td>
   310   <td valign="top">true</td>
   311   <td valign="top">Shows (= true) or hides (= false) the plugin name the result came from.</td></tr>
   312 <tr>
   313   <td valign="top"><a name="desc_search_separator">search_separator</a></td>
   314   <td valign="top"> &amp;gt; (Space before and after character)</td>
   315   <td valign="top">The character to display between result type sub groups.</td></tr>
   316 <tr>
   317   <td valign="top"><a name="desc_search_def_keytype">search_def_keytype</a></td>
   318   <td valign="top">'phrase'</td>
   319   <td valign="top">Default to one of these search methods:<ul>
   320     <li>'all': results must contain all of the search terms.</li>
   321     <li>'any': results may contain any of the search terms.</li>
   322     <li>'phrase': search for the exact phrase as entered. (default)</li>
   323     </ul></td></tr>
   324 </table>
   325 
   326 
   327 <h2><a name="stories">Stories and Trackback</a></h2>
   328 
   329 <h3><a name="stories_story">Stories and Trackback: Story</a></h3>
   330 
   331 <table border="1" width="100%">
   332 <tr><th style="width:8%">Variable</th>
   333     <th style="width:29%">Default Value</th>
   334     <th style="width:63%">Description</th></tr>
   335 <tr>
   336   <td valign="top"><a name="desc_maximagesperarticle">maximagesperarticle</a></td>
   337   <td valign="top">5</td>
   338   <td valign="top">max. number of images you can have in a story</td></tr>
   339 <tr>
   340   <td valign="top"><a name="desc_limitnews">limitnews</a></td>
   341   <td valign="top">10</td>
   342   <td valign="top">Number of stories to limit the index page to, this same number will appear in the older stuff block</td></tr>
   343 <tr>
   344   <td valign="top"><a name="desc_minnews">minnews</a></td>
   345   <td valign="top">1</td>
   346   <td valign="top">Minimum numbers of stories than can appear on a topic page</td></tr>
   347 <tr>
   348   <td valign="top"><a name="desc_contributedbyline">contributedbyline</a></td>
   349   <td valign="top">1</td>
   350   <td valign="top">Show author username to public, and enable search by username (0=no, 1=yes)</td></tr>
   351 <tr>
   352   <td valign="top"><a name="desc_hideviewscount">hideviewscount</a></td>
   353   <td valign="top">0</td>
   354   <td valign="top">Whether to show (= 0) or to hide (= 1) the number of views
   355     a story has had.</td></tr>
   356 <tr>
   357   <td valign="top"><a name="desc_hideemailicon">hideemailicon</a></td>
   358   <td valign="top">0</td>
   359   <td valign="top">When set to 1, this will disable the ability to send a story by email. It
   360     will also hide the email icon from stories and the &quot;Email Article To a
   361     Friend&quot; from the Story Options block.</td></tr>
   362 <tr>
   363   <td valign="top"><a name="desc_hideprintericon">hideprintericon</a></td>
   364   <td valign="top">0</td>
   365   <td valign="top">When set to 1, this will disable display of a story in a &quot;printer
   366     friendly&quot; format. It will also hide the printer icon from stories and
   367     the &quot;View Printable Version&quot; from the Story Options
   368     block.</td></tr>
   369 <tr>
   370   <td valign="top"><a name="desc_allow_page_breaks">allow_page_breaks</a></td>
   371   <td valign="top">1</td>
   372   <td valign="top">Allow usage of the <code>[page_break]</code> tag in stories (when set to 1), so that stories can spread over multiple pages.</td></tr>
   373 <tr>
   374   <td valign="top"><a name="desc_page_break_comments">page_break_comments</a></td>
   375   <td valign="top">last</td>
   376   <td valign="top">When the <code>[page_break]</code> tag is allowed in stories (see above), where should the story's comments be displayed: <code>'last'</code> = on the story's last page only, <code>'first'</code> = on the first page only, <code>'all'</code> = on every page.</td></tr>
   377 <tr>
   378   <td valign="top"><a name="desc_article_image_align">article_image_align</a></td>
   379   <td valign="top">right</td>
   380   <td valign="top">Which side of article the topic image should be shown (right or left)</td></tr>
   381 <tr>
   382   <td valign="top"><a name="desc_show_topic_icon">show_topic_icon</a></td>
   383   <td valign="top">1</td>
   384   <td valign="top">Default setting for new stories and story submissions: Whether to show the topic icon (1) or not (0).</td></tr>
   385 <tr>
   386   <td valign="top"><a name="desc_draft_flag">draft_flag</a></td>
   387   <td valign="top">0</td>
   388   <td valign="top">Default setting for new stories created by Story Admins: Whether the story's draft flag should be set (1) or not (0).</td></tr>
   389 <tr>
   390   <td valign="top"><a name="desc_frontpage">frontpage</a></td>
   391   <td valign="top">0</td>
   392   <td valign="top">Default setting for new stories and story submissions: Whether the story should appear on the site's frontpage (1) or only in its topic's page (0). Please note that for stories submitted to the archive topic, this setting will be ignored and the story will <em>not</em> appear on the frontpage.</td></tr>
   393 <tr>
   394   <td valign="top"><a name="desc_hide_no_news_msg">hide_no_news_msg</a></td>
   395   <td valign="top">0</td>
   396   <td valign="top">When set to 1, hide the "No News To Display" message on the index page (e.g. when viewing a topic without any stories in it)</td></tr>
   397 <tr>
   398   <td valign="top"><a name="desc_hide_main_page_navigation">hide_main_page_navigation</a></td>
   399   <td valign="top">0</td>
   400   <td valign="top">When set to 1, this option will hide the "Google paging"
   401     navigation from index.php, i.e. from the site's frontpage and all topic
   402     pages. This may come in handy for more advanced layouts but will of course
   403     prevent people from easily reaching older articles.</td></tr>
   404 <tr>
   405   <td valign="top"><a name="desc_onlyrootfeatures">onlyrootfeatures</a></td>
   406   <td valign="top">0</td>
   407   <td valign="top">This restricts the featuring of stories to root user(s). If you have several story admins who can create content that is not visible to other story admins,
   408   and such a content is featured, another admin might think its ok to feature his own content. To prevent
   409   that two admins unknowingly take features from each other away, only a user who can see all content (= root)
   410   should be able to feature a story.</td></tr>
   411 <tr>
   412   <td valign="top"><a name="desc_aftersave_story">aftersave_story</a></td>
   413   <td valign="top">'list'</td>
   414   <td valign="top">Which page to go to after a story has been saved:
   415     <ul>
   416     <li>'item': display the story</li>
   417     <li>'list': show admin's list of stories (default)</li>
   418     <li>'home': display the site's homepage</li>
   419     <li>'admin': go to the "Admin Home" page, i.e. Command &amp; Control</li>
   420     </ul></td></tr>
   421 </table>
   422 
   423 <h3><a name="stories_trackback">Stories and Trackback: Trackback</a></h3>
   424 
   425 <table border="1" width="100%">
   426 <tr><th style="width:8%">Variable</th>
   427     <th style="width:29%">Default Value</th>
   428     <th style="width:63%">Description</th></tr>
   429 <tr>
   430   <td valign="top"><a name="desc_trackback_enabled">trackback_enabled</a></td>
   431   <td valign="top">true</td>
   432   <td valign="top">Enable (true) or disable (true) <a href="http://en.wikipedia.org/wiki/Trackback">trackback</a> comments. This applies to both sending and receiving trackback comments.</td></tr>
   433 <tr>
   434   <td valign="top"><a name="desc_trackback_code">trackback_code</a></td>
   435   <td valign="top">0</td>
   436   <td valign="top">Default value for new stories: Trackback enabled (0) or disabled (-1)</td></tr>
   437 <tr>
   438   <td valign="top"><a name="desc_trackbackspeedlimit">trackbackspeedlimit</a></td>
   439   <td valign="top">300</td>
   440   <td valign="top">Number of seconds between two trackbacks / pingbacks from the same IP address.</td></tr>
   441 <tr>
   442   <td valign="top"><a name="desc_check_trackback_link">check_trackback_link</a></td>
   443   <td valign="top">2</td>
   444   <td valign="top">This option can be used to check the validity of a trackback.
   445     You can check if the URL in the trackback actually contains a link back to
   446     your site (otherwise, it's probably spam). You can also check if the
   447     trackback was sent from the proper IP address, i.e. the IP of the site in
   448     the trackback URL (again, if they don't match, it's probably spam). Note
   449     that you can <strong>add up the values</strong> below to do more than one
   450     check (but using option 1 <em>and</em> 2 doesn't make sense and will be
   451     treated as if you requested option 2).<br>
   452     Options are: 0 = don't perform any checks, 1 = check only for your site's main URL (<code>$_CONF['site_url']</code>), 2 = check for the exact URL of the entry (e.g. an article) on your site, 4 = check IP address of the sender of the trackback against the site referred to in the trackback URL.<br>
   453     <b>Example:</b> <code>$_CONF['check_trackback_link'] = 6; // check for the exact URL (2) and proper IP address (4)</code></td></tr>
   454 <tr>
   455   <td valign="top"><a name="desc_multiple_trackbacks">multiple_trackbacks</a></td>
   456   <td valign="top">0</td>
   457   <td valign="top">How to handle multiple trackbacks and pingbacks from the same source: 0 = keep only the first, reject any further trackbacks / pingbacks; 1 = overwrite, i.e. only keep the latest trackback / pingback; 2 = allow multiple trackbacks / pingbacks, i.e. list them all</td></tr>
   458 </table>
   459 
   460 <h3><a name="stories_pingback">Stories and Trackback: Pingback</a></h3>
   461 
   462 <table border="1" width="100%">
   463 <tr><th style="width:8%">Variable</th>
   464     <th style="width:29%">Default Value</th>
   465     <th style="width:63%">Description</th></tr>
   466 <tr>
   467   <td valign="top"><a name="desc_pingback_enabled">pingback_enabled</a></td>
   468   <td valign="top">true</td>
   469   <td valign="top">Enable (true) or disable (true) <a href="http://en.wikipedia.org/wiki/Pingback">pingback</a> support. This applies to both sending and receiving pingbacks.</td></tr>
   470 <tr>
   471   <td valign="top"><a name="desc_pingback_excerpt">pingback_excerpt</a></td>
   472   <td valign="top">true</td>
   473   <td valign="top">Unlike Trackbacks, Pingback don't include an excerpt of the
   474     text from the site linking to us. When this option is enabled, Geeklog will
   475     try and create an excerpt by searching the backlink on the site that sent
   476     the Pingback, extract a piece of the text near the link, and use that as
   477     the excerpt for the Pingback.</td></tr>
   478 <tr>
   479   <td valign="top"><a name="desc_pingback_self">pingback_self</a></td>
   480   <td valign="top">0</td>
   481   <td valign="top">Pingbacks are sent out automatically to <em>all</em> the
   482     URLs linked from a story - which includes stories on your own site that
   483     you may have linked in the article. This option lets you specify how these
   484     "self pingbacks" are to be handled: 0 = skip them, i.e. don't send pingbacks
   485     to stories on your own site; 1 = allow them, but obey the speed limit;
   486     2 = allow them and ignore the speed limit.<br>
   487     If your article contains more than one link to other stories on your site,
   488     then option 1 is probably of limited use, as it would only pingback the
   489     first linked story and run into the speed limit for the others.</td></tr>
   490 <tr>
   491   <td valign="top"><a name="desc_ping_enabled">ping_enabled</a></td>
   492   <td valign="top">true</td>
   493   <td valign="top">Enable (true) or disable (true) the ability to ping weblog directory services like <a href="http://technorati.com/">Technorati</a>.</td></tr>
   494 </table>
   495 
   496 
   497 <h2><a name="theme">Theme</a></h2>
   498 
   499 <h3><a name="theme_theme">Theme: Theme</a></h3>
   500 
   501 <table border="1" width="100%">
   502 <tr><th style="width:8%">Variable</th>
   503     <th style="width:29%">Default Value</th>
   504     <th style="width:63%">Description</th></tr>
   505 <tr>
   506   <td valign="top"><a name="desc_theme">theme</a></td>
   507   <td valign="top">professional</td>
   508   <td valign="top">Default theme to use on the site</td></tr>
   509 <tr>
   510   <td valign="top"><a name="desc_doctype">doctype</a></td>
   511   <td valign="top">HTML 4.01 Strict</td>
   512   <td valign="top"><a
   513     href="http://en.wikipedia.org/wiki/Document_Type_Declaration">Document Type
   514     Declaration</a> (aka DOCTYPE aka DTD) to use for all the themes on your
   515     site, assuming they use the <tt>{doctype}</tt> variable instead of a
   516     hard-coded DOCTYPE in their <tt>header.thtml</tt>.</td></tr>
   517 <tr>
   518   <td valign="top"><a name="desc_menu_elements">menu_elements</a></td>
   519   <td valign="top"><code>array('contribute', 'calendar', 'search', 'stats',
   520     'directory', 'plugins')</code></td>
   521   <td valign="top">Specifies which entries are displayed in the site's menu bar
   522     (if your theme uses the <code>{menu_elements}</code> variable to display
   523     the menu bar). Can be any combination of <tt>'home'</tt>,
   524     <tt>'contribute'</tt>, <tt>'calendar'</tt>, <tt>'search'</tt>,
   525     <tt>'directory'</tt>, <tt>'prefs'</tt>, <tt>'plugins'</tt>,
   526     and <tt>'custom'</tt> where <tt>'plugins'</tt> is the same as the
   527     <code>{plg_menu_elements}</code> variable, i.e. a list of the menu entries
   528     provided by plugins, and <tt>'custom'</tt> displays the entries returned by
   529     a custom function <code>CUSTOM_menuEntries</code> (see
   530     <tt>lib-custom.php</tt> for details).</td></tr>
   531 <tr>
   532   <td valign="top"><a name="desc_path_themes">path_themes</a></td>
   533   <td valign="top">/path/to/geeklog/public_html/layout/</td>
   534   <td valign="top">Directory where all themes reside</td></tr>
   535 </table>
   536 
   537 <h3><a name="theme_advanced">Theme: Advanced Settings</a></h3>
   538 
   539 <table border="1" width="100%">
   540 <tr><th style="width:8%">Variable</th>
   541     <th style="width:29%">Default Value</th>
   542     <th style="width:63%">Description</th></tr>
   543 <tr>
   544   <td valign="top"><a name="desc_show_right_blocks">show_right_blocks</a></td>
   545   <td valign="top">false</td>
   546   <td valign="top">If set to <tt>true</tt>, the right-side column of blocks
   547     will be displayed on <em>all</em> pages (instead of only on the index
   548     page).</td></tr>
   549 <tr>
   550   <td valign="top"><a name="desc_showfirstasfeatured">showfirstasfeatured</a></td>
   551   <td valign="top">0</td>
   552   <td valign="top">When set to 1, this will render the first story on <em>any</em> page
   553     using the templates for a featured story, even if that story is not
   554     featured. This will even be applied to the first story on page 2 of a
   555     topic page, for example.</td></tr>
   556 </table>
   557 
   558 
   559 <h2><a name="blocks">Blocks</a></h2>
   560 
   561 <h3><a name="blocks_admin">Blocks: Admin Block</a></h3>
   562 
   563 <table border="1" width="100%">
   564 <tr><th style="width:8%">Variable</th>
   565     <th style="width:29%">Default Value</th>
   566     <th style="width:63%">Description</th></tr>
   567 <tr>
   568   <td valign="top"><a name="desc_sort_admin">sort_admin</a></td>
   569   <td valign="top">false</td>
   570   <td valign="top">If set to <tt>true</tt> will sort the entries in the Admin's
   571     block and the icons on the Submissions page (<tt>moderation.php</tt>)
   572     alphabetically.</td></tr>
   573 <tr>
   574   <td valign="top"><a name="desc_link_documentation">link_documentation</a></td>
   575   <td valign="top">1</td>
   576   <td valign="top">Add a link to Geeklog's documentation to the Admin block.
   577     Set this to 0 if you don't want that link to show up.</td></tr>
   578 <tr>
   579   <td valign="top"><a name="desc_link_versionchecker">link_versionchecker</a></td>
   580   <td valign="top">1</td>
   581   <td valign="top">Add a link "GL Version Test" to the Admin block so that you
   582     can easily check if your Geeklog version is up to date. Set this to 0 if
   583     you don't want that link to show up.<br>
   584     <strong>Note:</strong> The link is only displayed to members of the Root
   585     group anyway.</td></tr>
   586 </table>
   587 
   588 <h3><a name="blocks_topics">Blocks: Topics Block</a></h3>
   589 
   590 <table border="1" width="100%">
   591 <tr><th style="width:8%">Variable</th>
   592     <th style="width:29%">Default Value</th>
   593     <th style="width:63%">Description</th></tr>
   594 <tr>
   595   <td valign="top"><a name="desc_sortmethod">sortmethod</a></td>
   596   <td valign="top">alpha</td>
   597   <td valign="top">alpha = Sort topics in topic list alphabetically<br>
   598     sortnum = Sort topics in topic list by the given sort number</td></tr>
   599 <tr>
   600   <td valign="top"><a name="desc_showstorycount">showstorycount</a></td>
   601   <td valign="top">1</td>
   602   <td valign="top">Show the number of stories in a topic in the Sections block (0=no, 1=yes)</td></tr>
   603 <tr>
   604   <td valign="top"><a name="desc_showsubmissioncount">showsubmissioncount</a></td>
   605   <td valign="top">1</td>
   606   <td valign="top">Show the number of story submissions for a topic in the Sections block (0=no, 1=yes)</td></tr>
   607 <tr>
   608   <td valign="top"><a name="desc_hide_home_link">hide_home_link</a></td>
   609   <td valign="top">0</td>
   610   <td valign="top">Hide the "Home" link from the Sections block (0=no, 1=yes)</td></tr>
   611 </table>
   612 
   613 <h3><a name="blocks_who">Blocks: Who's Online Block</a></h3>
   614 
   615 <table border="1" width="100%">
   616 <tr><th style="width:8%">Variable</th>
   617     <th style="width:29%">Default Value</th>
   618     <th style="width:63%">Description</th></tr>
   619 <tr>
   620   <td valign="top"><a name="desc_whosonline_threshold">whosonline_threshold</a></td>
   621   <td valign="top">300</td>
   622   <td valign="top">How long, in seconds, users can be idle before removing them from the whosonline block</td></tr>
   623 <tr>
   624   <td valign="top"><a name="desc_whosonline_anonymous">whosonline_anonymous</a></td>
   625   <td valign="top">0</td>
   626   <td valign="top">If enabled (i.e. set to 1), anonymous users will only see the number of registered users currently online in the Who's Online block but not their names. Only logged-in users will see the names of other users that are currently online.</td></tr>
   627 </table>
   628 
   629 <h3><a name="blocks_what">Blocks: What's New Block</a></h3>
   630 
   631 <table border="1" width="100%">
   632 <tr><th style="width:8%">Variable</th>
   633     <th style="width:29%">Default Value</th>
   634     <th style="width:63%">Description</th></tr>
   635 <tr>
   636   <td valign="top"><a name="desc_newstoriesinterval">newstoriesinterval</a></td>
   637   <td valign="top">86400</td>
   638   <td valign="top">Stories are "new" if they are this many seconds old.</td></tr>
   639 <tr>
   640   <td valign="top"><a name="desc_newcommentsinterval">newcommentsinterval</a></td>
   641   <td valign="top">172800</td>
   642   <td valign="top">Comments are "new" if they are this many seconds old.</td></tr>
   643 <tr>
   644   <td valign="top"><a name="desc_newtrackbackinterval">newtrackbackinterval</a></td>
   645   <td valign="top">172800</td>
   646   <td valign="top">Trackback comments are "new" if they are this many seconds old.</td></tr>
   647 <tr>
   648   <td valign="top"><a name="desc_hidenewstories">hidenewstories</a></td>
   649   <td valign="top">0</td>
   650   <td valign="top">Set to 1 to hide new stories from the What's New block.</td></tr>
   651 <tr>
   652   <td valign="top"><a name="desc_hidenewcomments">hidenewcomments</a></td>
   653   <td valign="top">0</td>
   654   <td valign="top">Set to 1 to hide new comments from the What's New block.</td></tr>
   655 <tr>
   656   <td valign="top"><a name="desc_hidenewtrackbacks">hidenewtrackbacks</a></td>
   657   <td valign="top">0</td>
   658   <td valign="top">Set to 1 to hide new trackback comments from the What's New block.</td></tr>
   659 <tr>
   660   <td valign="top"><a name="desc_hidenewplugins">hidenewplugins</a></td>
   661   <td valign="top">0</td>
   662   <td valign="top">Set to 1 to hide new entries by plugins from the What's New
   663     block.</td></tr>
   664 <tr>
   665   <td valign="top"><a name="desc_title_trim_length">title_trim_length</a></td>
   666   <td valign="top">20</td>
   667   <td valign="top">Max. length of the title of items listed in the What's New
   668     block.</td></tr>
   669 </table>
   670 
   671 
   672 <h2><a name="users">Users and Submissions</a></h2>
   673 
   674 <h3><a name="users_users">Users and Submissions: Users</a></h3>
   675 
   676 <table border="1" width="100%">
   677 <tr><th style="width:8%">Variable</th>
   678     <th style="width:29%">Default Value</th>
   679     <th style="width:63%">Description</th></tr>
   680 <tr>
   681   <td valign="top"><a name="desc_disable_new_user_registration">disable_new_user_registration</a></td>
   682   <td valign="top">false</td>
   683   <td valign="top">When set to <tt>true</tt> completely disables all options
   684     to sign up as a new user.</td></tr>
   685 <tr>
   686   <td valign="top"><a name="desc_allow_user_themes">allow_user_themes</a></td>
   687   <td valign="top">Can be 1 or 0</td>
   688   <td valign="top">If set to 1, users can set their own theme that the site uses</td></tr>
   689 <tr>
   690   <td valign="top"><a name="desc_allow_user_language">allow_user_language</a></td>
   691   <td valign="top">Can be 1 or 0</td>
   692   <td valign="top">If set to 1, users can select the language for the site navigation</td></tr>
   693 <tr>
   694   <td valign="top"><a name="desc_allow_user_photo">allow_user_photo</a></td>
   695   <td valign="top">Can be 1 or 0</td>
   696   <td valign="top">If set to 1, users can upload a photo to their profile</td></tr>
   697 <tr>
   698   <td valign="top"><a name="desc_allow_username_change">allow_username_change</a></td>
   699   <td valign="top">0</td>
   700   <td valign="top">If set to 1, users will be allowed to change their username
   701     (login name). Stories and comments posted under the old username will
   702     automatically show the new username.</td></tr>
   703 <tr>
   704   <td valign="top"><a name="desc_allow_account_delete">allow_account_delete</a></td>
   705   <td valign="top">0</td>
   706   <td valign="top">If set to 1, users will be allowed to delete their accounts. Stories and comments posted under that account will be kept and show up as being posted by "Anonymous".</td></tr>
   707 <tr>
   708   <td valign="top"><a name="desc_hide_author_exclusion">hide_author_exclusion</a></td>
   709   <td valign="top">Can be 1 or 0</td>
   710   <td valign="top">If set to 1, the option to to exclude certain authors from being seen is hidden from the user's preferences.</td></tr>
   711 <tr>
   712   <td valign="top"><a name="desc_show_fullname">show_fullname</a></td>
   713   <td valign="top">0</td>
   714   <td valign="top">Whether to display a user's full name (= 1) or only their
   715     username (= 0). For users that haven't entered their full name, Geeklog
   716     will always display the username.</td></tr>
   717 <tr>
   718   <td valign="top"><a name="desc_show_servicename">show_servicename</a></td>
   719   <td valign="top">true</td>
   720   <td valign="top">If you allow users to log in with accounts on remote services
   721     (like LDAP or LiveJournal), this option will at the service's name to
   722     the username to avoid confusion with local users of the same name. Set to
   723     <tt>false</tt> to disable.</td></tr>
   724 <tr>
   725   <td valign="top"><a name="desc_custom_registration">custom_registration</a></td>
   726   <td valign="top"><code>false</code></td>
   727   <td valign="top">When set to <code>true</code>, Geeklog will let you use
   728       your own signup form for new user registrations. Please see the file
   729       <tt>lib-custom.php</tt> that ships with Geeklog for an example.</td></tr>
   730 <tr>
   731   <td valign="top"><a name="desc_login_method_standard">standard</a></td>
   732   <td valign="top"><code>true</code></td>
   733   <td valign="top">Whether to allow normal logins into the site, i.e. with
   734     a user account that only exists in your site's database.</td></tr>
   735 <tr>
   736   <td valign="top"><a name="desc_login_method_openid">openid</a></td>
   737   <td valign="top"><code>false</code></td>
   738   <td valign="top">Whether to allow logins using <a href="http://openid.net/">OpenID</a>. This will display a special OpenID login below the normal login field.<br>
   739     <strong>Note:</strong> Currently only OpenID 1.1 is supported.</td></tr>
   740 <tr>
   741   <td valign="top"><a name="desc_login_method_3rdparty">3rdparty</a></td>
   742   <td valign="top"><code>false</code></td>
   743   <td valign="top">Allow (when set to <tt>true</tt>) users who already have
   744     an account with some other service to log into your Geeklog site with the
   745     login for that service. Currently supported: LDAP and LiveJournal.<br>
   746     Please note that to enable login for a specific service, you need an
   747     authorization class in <tt>system/classes/authentication</tt>. If you only
   748     want to allow LDAP but not LiveJournal users (or vice versa), simply
   749     remove the class file for the unwanted service(s).<br>
   750     See <a href="http://www.geeklog.net/article.php/remote-authentication">Remote Authentication in Geeklog</a> for more information.</td></tr>
   751 <tr>
   752   <td valign="top"><a name="desc_aftersave_user">aftersave_user</a></td>
   753   <td valign="top"><code>'item'</code></td>
   754   <td valign="top">Which page to go to after a user has been saved:
   755     <ul>
   756     <li>'item': display the user's profile</li>
   757     <li>'list': show admin's list of users (default)</li>
   758     <li>'home': display the site's homepage</li>
   759     <li>'admin': go to the "Admin Home" page, i.e. Command &amp; Control</li>
   760     </ul></td></tr>
   761 </table>
   762 
   763 <h3><a name="users_spamx">Users and Submissions: Spam-X</a></h3>
   764 
   765 <table border="1" width="100%">
   766 <tr><th style="width:8%">Variable</th>
   767     <th style="width:29%">Default Value</th>
   768     <th style="width:63%">Description</th></tr>
   769 <tr>
   770   <td valign="top"><a name="desc_spamx">spamx</a></td>
   771   <td valign="top">128</td>
   772   <td valign="top">Tells Geeklog's <a href="spamx.html" rel="nofollow">Spam-X</a> plugin what to do when a spam post has been detected. The value is the sum
   773     of all values that uniquely identify the Spam-X modules that should be
   774     executed. E.g. the "delete" action module uses 128, the "email admin"
   775     module uses 8, so if both modules should be executed, this option should
   776     be set to 128 + 8 = 136.</td></tr>
   777 </table>
   778 
   779 <h3><a name="users_login">Users and Submissions: Login Settings</a></h3>
   780 
   781 <table border="1" width="100%">
   782 <tr><th style="width:8%">Variable</th>
   783     <th style="width:29%">Default Value</th>
   784     <th style="width:63%">Description</th></tr>
   785 <tr>
   786   <td valign="top"><a name="desc_lastlogin">lastlogin</a></td>
   787   <td valign="top"><code>true</code></td>
   788   <td valign="top">Whether to keep track of when a user last logged in
   789     (<code>= true</code>) or not (<code>= false</code>).</td></tr>
   790 <tr><td valign="top"><a name="desc_loginrequired">loginrequired</a></td>
   791     <td valign="top">0</td>
   792     <td valign="top">Login is required to access <em>any</em> part of the site. When
   793       set to 1, this overrides the following settings. When you only want to
   794       block access to certain parts of the site, set this to 0 and select
   795       from the following settings.</td></tr>
   796 <tr><td valign="top"><a name="desc_submitloginrequired">submitloginrequired</a></td>
   797     <td valign="top">0</td>
   798     <td valign="top">When set to 1, only registered users can submit stories
   799       and items handled by plugins, e.g. links and events</td></tr>
   800 <tr><td valign="top"><a name="desc_commentsloginrequired">commentsloginrequired</a></td>
   801     <td valign="top">0</td>
   802     <td valign="top">When set to 1, only registered users can submit comments</td></tr>
   803 <tr><td valign="top"><a name="desc_statsloginrequired">statsloginrequired</a></td>
   804     <td valign="top">0</td>
   805     <td valign="top">When set to 1, only registered users can access the site stats</td></tr>
   806 <tr><td valign="top"><a name="desc_searchloginrequired">searchloginrequired</a></td>
   807     <td valign="top">0</td>
   808     <td valign="top">When set to 1, only registered users can use the advanced search. When
   809       set to 2, the simple search is blocked for anonymous users, too.</td></tr>
   810 <tr><td valign="top"><a name="desc_profileloginrequired">profileloginrequired</a></td>
   811     <td valign="top">0</td>
   812     <td valign="top">When set to 1, only registered users can view another user's profile</td></tr>
   813 <tr><td valign="top"><a name="desc_emailuserloginrequired">emailuserloginrequired</a></td>
   814     <td valign="top">0</td>
   815     <td valign="top">When set to 1, only registered users can use the email submission
   816       form to send an email to another user</td></tr>
   817 <tr><td valign="top"><a name="desc_emailstoryloginrequired">emailstoryloginrequired</a></td>
   818     <td valign="top">0</td>
   819     <td valign="top">When set to 1, only registered users can email stories</td></tr>
   820 <tr><td valign="top"><a name="desc_directoryloginrequired">directoryloginrequired</a></td>
   821     <td valign="top">0</td>
   822     <td valign="top">When set to 1, only registered users can access the list of past articles</td></tr>
   823 <tr>
   824   <td valign="top"><a name="desc_passwordspeedlimit">passwordspeedlimit</a></td>
   825   <td valign="top">300</td>
   826   <td valign="top">Minimum delay between two requests for a new password, in seconds.</td></tr>
   827 <tr>
   828   <td valign="top"><a name="desc_login_attempts">login_attempts</a></td>
   829   <td valign="top">3</td>
   830   <td valign="top">Max. number of login attempts before the speedlimit (see
   831     below) kicks in and further logins are blocked for the given amount of
   832     time.</td></tr>
   833 <tr>
   834   <td valign="top"><a name="desc_login_speedlimit">login_speedlimit</a></td>
   835   <td valign="top">300</td>
   836   <td valign="top">How many seconds have to pass before another login attempt
   837     can be made after <code>$_CONF['login_attempts']</code> (see above) login
   838     attempts have failed.</td></tr>
   839 </table>
   840 
   841 <h3><a name="users_usersub">Users and Submissions: User Submission</a></h3>
   842 
   843 <table border="1" width="100%">
   844 <tr><th style="width:8%">Variable</th>
   845     <th style="width:29%">Default Value</th>
   846     <th style="width:63%">Description</th></tr>
   847 <tr>
   848   <td valign="top"><a name="desc_usersubmission">usersubmission</a></td>
   849   <td valign="top">0</td>
   850   <td valign="top">Enable (1) or disable (0) the user submission queue (i.e.
   851       new users must be approved before they receive their password)</td></tr>
   852 <tr>
   853   <td valign="top"><a name="desc_allow_domains">allow_domains</a></td>
   854   <td valign="top">''</td>
   855   <td valign="top">When the user submission queue is enabled this can contain a
   856     comma-separated list of domain names from which user submissions will not
   857     be queued (but approved automatically). Regular expressions are also allowed
   858     and interpreted.<br><strong>Example:</strong>
   859     <tt>'mycompany.com,myothercompany.com'</tt></td></tr>
   860 <tr>
   861   <td valign="top"><a name="desc_disallow_domains">disallow_domains</a></td>
   862   <td valign="top">''</td>
   863   <td valign="top">This is the opposite of <code>$_CONF['allow_domains']</code>
   864     (see above): A list of domain names that are <em>not</em> allowed in email
   865     addresses of new users. Note that this list is <em>always</em> used, even
   866     when the user submission queue has been switched off. Again, regular
   867     expression can be used.<br><strong>Example</strong> disallow email addresses
   868     with a certain domain name and from any ".edu" domain:
   869     <tt>'somebaddomain.com,\.edu$'</tt></td></tr>
   870 </table>
   871 
   872 <h3><a name="users_submission">Users and Submissions: Submission Settings</a></h3>
   873 
   874 <table border="1" width="100%">
   875 <tr><th style="width:8%">Variable</th>
   876     <th style="width:29%">Default Value</th>
   877     <th style="width:63%">Description</th></tr>
   878 <tr>
   879   <td valign="top"><a name="desc_storysubmission">storysubmission</a></td>
   880   <td valign="top">1</td>
   881   <td valign="top">Enable (1) or disable (0) the story submission queue</td></tr>
   882 <tr>
   883   <td valign="top"><a name="desc_listdraftstories">listdraftstories</a></td>
   884   <td valign="top">0</td>
   885   <td valign="top">When set to 1, this will display an additional block on the
   886     submissions page (<tt>moderation.php</tt>) that lists all the stories that
   887     have the 'draft' flag set.</td></tr>
   888 <tr>
   889   <td valign="top"><a name="desc_postmode">postmode</a></td>
   890   <td valign="top">plaintext</td>
   891   <td valign="top">Sets the default submission mode to 'html' or 'plaintext'</td></tr>
   892 <tr>
   893   <td valign="top"><a name="desc_speedlimit">speedlimit</a></td>
   894   <td valign="top">45</td>
   895   <td valign="top">Minimum delay between submissions in seconds. This helps prevent Denial of Service (DOS) attacks</td></tr>
   896 <tr>
   897   <td valign="top"><a name="desc_skip_preview">skip_preview</a></td>
   898   <td valign="top">0</td>
   899   <td valign="top">If 1, allows submission of stories and comments without previewing (i.e. the submission form will always have a Preview <em>and</em> a Submit button).</td></tr>
   900 <tr>
   901   <td valign="top"><a name="desc_advanced_editor">advanced_editor</a></td>
   902   <td valign="top">false</td>
   903   <td valign="top">Enable (if set to <code>true</code>) a WYSIWYG editor for
   904     story and comment submissions and static pages. Geeklog ships with <a
   905     href="http://www.fckeditor.net/">FCKeditor</a>.</td></tr>
   906 <tr>
   907   <td valign="top"><a name="desc_wikitext_editor">wikitext_editor</a></td>
   908   <td valign="top">false</td>
   909   <td valign="top">Allow using <a href="http://pear.reversefold.com/dokuwiki/text_wiki:samplepage">wiki syntax</a> in stories. This adds a third option,
   910     "Wiki-style format", to the Post Mode dropdown in the story editor
   911     (implemented using the <a href="http://pear.php.net/package/Text_Wiki">PEAR::Text_Wiki</a> package).</td></tr>
   912 </table>
   913 
   914 <h3><a name="users_comments">Users and Submissions: Comments</a></h3>
   915 
   916 <table border="1" width="100%">
   917 <tr><th style="width:8%">Variable</th>
   918     <th style="width:29%">Default Value</th>
   919     <th style="width:63%">Description</th></tr>
   920 <tr>
   921   <td valign="top"><a name="desc_commentspeedlimit">commentspeedlimit</a></td>
   922   <td valign="top">45</td>
   923   <td valign="top">Number of seconds between posting a comment for the user</td></tr>
   924 <tr>
   925   <td valign="top"><a name="desc_comment_limit">comment_limit</a></td>
   926   <td valign="top">100</td>
   927   <td valign="top">Most number of comments to show at any one time</td></tr>
   928 <tr>
   929   <td valign="top"><a name="desc_comment_mode">comment_mode</a></td>
   930   <td valign="top">nested</td>
   931   <td valign="top">How to display comments (threaded, nested, flat or nocomments)</td></tr>
   932 <tr>
   933   <td valign="top"><a name="desc_comment_code">comment_code</a></td>
   934   <td valign="top">0</td>
   935   <td valign="top">Default value for new stories: Comments enabled (0) or disabled (-1)</td></tr>
   936 <tr>
   937   <td valign="top"><a name="desc_comment_edit">comment_edit</a></td>
   938   <td valign="top">0</td>
   939   <td valign="top">Whether to allow users and admins (i.e. those with
   940     comment.edit permission) to edit comments.</td></tr>
   941 <tr>
   942   <td valign="top"><a name="desc_commentsubmission">commentsubmission</a></td>
   943   <td valign="top">0</td>
   944   <td valign="top">Enable (1) or disable (0) comment submission queue.</td></tr>
   945 <tr>
   946   <td valign="top"><a name="desc_comment_edittime">comment_edittime</a></td>
   947   <td valign="top">1800</td>
   948   <td valign="top">How long (in seconds) a comment is editable for the user who
   949     submitted it. Requires that comments are editable (see <a href="#desc_comment_edit">above</a>). Anonymous users (those that did not register an account) can
   950     never edit their comments while admins can always edit comments.</td></tr>
   951 <tr>
   952   <td valign="top"><a name="desc_article_comment_close_enabled">article_comment_close_enabled</a></td>
   953   <td valign="top">0</td>
   954   <td valign="top">Whether or not stories should be closed for comments after
   955     a certain amount of days (see next option). This is only the default
   956     setting for new stories and can be changed separately for each
   957     story.</td></tr>
   958 <tr>
   959   <td valign="top"><a name="desc_article_comment_close_days">article_comment_close_days</a></td>
   960   <td valign="top">30</td>
   961   <td valign="top">Number of days after which a story is to be automatically
   962     closed for comments, i.e. no new comments can be posted after that many
   963     days.<br>
   964     Note that this is only the default value to which the "Disable Comments"
   965     option is set when creating a new story. It will not take effect unless it
   966     has also been enabled for the story.</td></tr>
   967 <tr>
   968   <td valign="top"><a name="desc_comment_close_rec_stories">comment_close_rec_stories</a></td>
   969   <td valign="top">0</td>
   970   <td valign="top">Number of most recent stories for which comment posting is
   971     allowed. Posting a new story will automatically close comments for the
   972     oldest of these stories. Set to 0 to disable this option.</td></tr>
   973 <tr>
   974   <td valign="top"><a name="desc_allow_reply_notifications">allow_reply_notifications</a></td>
   975   <td valign="top">0</td>
   976   <td valign="top">Allow (1) or disallow (0) subscribing to comment
   977     notifications. Registered users can get an email notifying them of direct
   978     replies to comments they left.</td></tr>
   979 </table>
   980 
   981 
   982 <h2><a name="images">Images</a></h2>
   983 
   984 <h3><a name="images_imagelib">Images: Image Library</a></h3>
   985 
   986 <table border="1" width="100%">
   987 <tr><th style="width:8%">Variable</th>
   988     <th style="width:29%">Default Value</th>
   989     <th style="width:63%">Description</th></tr>
   990 <tr>
   991   <td valign="top"><a name="desc_image_lib">image_lib</a></td>
   992   <td valign="top">None</td>
   993   <td valign="top">Set this to either 'imagemagick', 'netpbm', or 'gdlib' if
   994     images should be resized during upload. Leave as 'None' if you don't want
   995     images to be resized or if you don't have those packages available.</td></tr>
   996 <tr>
   997   <td valign="top"><a name="desc_path_to_mogrify">path_to_mogrify</a></td>
   998   <td valign="top"><i>(disabled)</i></td>
   999   <td valign="top">If you chose 'imagemagick' for
  1000     <code>$_CONF['image_lib']</code> above, then this should hold the
  1001     <strong>complete path</strong> to the mogrify executable (from the
  1002     <a href="http://www.imagemagick.org/">ImageMagick</a> package), e.g.
  1003     '<tt>/usr/bin/mogrify</tt>' (ImageMagick 5.4.9 or newer recommended).</td></tr>
  1004 <tr>
  1005   <td valign="top"><a name="desc_path_to_netpbm">path_to_netpbm</a></td>
  1006   <td valign="top"><i>(disabled)</i></td>
  1007   <td valign="top">If you chose 'netpbm' for <code>$_CONF['image_lib']</code>
  1008     above, then this should hold the complete path to the <em>directory</em>
  1009     where the binaries from the Netpbm package are kept, e.g.
  1010     <code>'/usr/bin/netpbm/'</code>. Note that the path must end in a slash.<br>
  1011     Precompiled binaries for various platforms can be downloaded from the <a
  1012     href="http://netpbm.sourceforge.net/">Netpbm homepage</a>.</td></tr>
  1013 </table>
  1014 
  1015 <h3><a name="images_upload">Images: Upload</a></h3>
  1016 
  1017 <table border="1" width="100%">
  1018 <tr><th style="width:8%">Variable</th>
  1019     <th style="width:29%">Default Value</th>
  1020     <th style="width:63%">Description</th></tr>
  1021 <tr>
  1022   <td valign="top"><a name="desc_keep_unscaled_image">keep_unscaled_image</a></td>
  1023   <td valign="top">0</td>
  1024   <td valign="top">Set this to 1 if you want Geeklog to keep the original, unscaled images after upload. The smaller image will then be used as a thumbnail and will link to the original image. Note that this may use a lot of disk space (depending on the size of your images).</td></tr>
  1025 <tr>
  1026   <td valign="top"><a name="desc_allow_user_scaling">allow_user_scaling</a></td>
  1027   <td valign="top">1</td>
  1028   <td valign="top">When unscaled images are kept (see above), this option lets
  1029     the user chose between using the scaled or unscaled image in the story, i.e.
  1030     enables the <code>[unscaled<i>X</i>]</code> image tag (in addition to the
  1031     <code>[image<i>X</i>]</code> tag).</td></tr>
  1032 <tr>
  1033   <td valign="top"><a name="desc_jpeg_quality">jpeg_quality</a></td>
  1034   <td valign="top"><i>(disabled)</i></td>
  1035   <td valign="top">Control the image quality when resizing JPEGs. All the image
  1036     libraries supported by Geeklog are based on the IJG JPEG library which uses
  1037     an arbitrary range of 0-100 to specify the "quality" (note that this is
  1038     <em>not</em> a percent value). The default, when not set, is 75 which
  1039     provides good quality in most cases. In some cases, higher values may
  1040     provide better results.<br>
  1041     Rules of thumb: Values above 90 usually don't improve the image quality any
  1042     more but only produce larger files. Values below 50 will result in poor
  1043     image quality. Values of 25 and below will produce distorted
  1044     images.</td></tr>
  1045 <tr>
  1046   <td valign="top"><a name="desc_debug_image_upload">debug_image_upload</a></td>
  1047   <td valign="top"><code>false</code></td>
  1048   <td valign="top">When set to <code>true</code>, this option enables debugging
  1049     output to be written into Geeklog's <tt>error.log</tt> file during the
  1050     upload of an image. This is useful to track down problems with the image
  1051     upload and resizing.</td></tr>
  1052 </table>
  1053 
  1054 <h3><a name="images_articles">Images: Images in Articles</a></h3>
  1055 
  1056 <table border="1" width="100%">
  1057 <tr><th style="width:8%">Variable</th>
  1058     <th style="width:29%">Default Value</th>
  1059     <th style="width:63%">Description</th></tr>
  1060 <tr>
  1061   <td valign="top"><a name="desc_max_image_width">max_image_width</a></td>
  1062   <td valign="top">160</td>
  1063   <td valign="top">Max. width of an image in pixels. If it exceeds this, it is
  1064     either rejected or resized (depending on the setting of
  1065     <code>$_CONF['image_lib']</code> above).</td></tr>
  1066 <tr>
  1067   <td valign="top"><a name="desc_max_image_height">max_image_height</a></td>
  1068   <td valign="top">120</td>
  1069   <td valign="top">Max. height of an image in pixels. If it exceeds this, it is
  1070     either rejected or resized (depending on the setting of
  1071     <code>$_CONF['image_lib']</code> above).</td></tr>
  1072 <tr>
  1073   <td valign="top"><a name="desc_max_image_size">max_image_size</a></td>
  1074   <td valign="top">1048576 <i>(equals 1 MB)</i></td>
  1075   <td valign="top">Max. size of an image in bytes. If it exceeds this, it is
  1076     is rejected (even if you're using a graphics package to resize images).</td></tr>
  1077 </table>
  1078 
  1079 <h3><a name="images_topic">Images: Topic Icons</a></h3>
  1080 
  1081 <table border="1" width="100%">
  1082 <tr><th style="width:8%">Variable</th>
  1083     <th style="width:29%">Default Value</th>
  1084     <th style="width:63%">Description</th></tr>
  1085 <tr>
  1086   <td valign="top"><a name="desc_max_topicicon_width">max_topicicon_width</a></td>
  1087   <td valign="top">48</td>
  1088   <td valign="top">Max. width of a topic icon in pixels. If it exceeds this,
  1089     it is either rejected or resized (depending on the setting of
  1090     <code>$_CONF['image_lib']</code> above).</td></tr>
  1091 <tr>
  1092   <td valign="top"><a name="desc_max_topicicon_height">max_topicicon_height</a></td>
  1093   <td valign="top">48</td>
  1094   <td valign="top">Max. height of a topic icon in pixels. If it exceeds this,
  1095     it is either rejected or resized (depending on the setting of
  1096     <code>$_CONF['image_lib']</code> above).</td></tr>
  1097 <tr>
  1098   <td valign="top"><a name="desc_max_topicicon_size">max_topicicon_size</a></td>
  1099   <td valign="top">65536 <i>(equals 64 KB)</i></td>
  1100   <td valign="top">Max. size of a topic icon in bytes. If it exceeds this, it
  1101     is rejected (even if you're using a graphics package to resize images).</td>
  1102 </table>
  1103 
  1104 <h3><a name="images_photos">Images: Photos</a></h3>
  1105 
  1106 <table border="1" width="100%">
  1107 <tr><th style="width:8%">Variable</th>
  1108     <th style="width:29%">Default Value</th>
  1109     <th style="width:63%">Description</th></tr>
  1110 <tr>
  1111   <td valign="top"><a name="desc_max_photo_width">max_photo_width</a></td>
  1112   <td valign="top">128</td>
  1113   <td valign="top">Max. width of a user photo in pixels. If it exceeds this, it
  1114     is either rejected or resized (depending on the setting of
  1115     <code>$_CONF['image_lib']</code> above).</tr>
  1116 <tr>
  1117   <td valign="top"><a name="desc_max_photo_height">max_photo_height</a></td>
  1118   <td valign="top">128</td>
  1119   <td valign="top">Max. height of a user photo in pixels. If it exceeds this,
  1120     it is either rejected or resized (depending on the setting of
  1121     <code>$_CONF['image_lib']</code> above).</td></tr>
  1122 <tr>
  1123   <td valign="top"><a name="desc_max_photo_size">max_photo_size</a></td>
  1124   <td valign="top">65536 <i>(equals 64 KB)</i></td>
  1125   <td valign="top">Max. size of a user photo in bytes. If it exceeds this, it
  1126     is rejected (even if you're using a graphics package to resize images).</td></tr>
  1127 <tr>
  1128   <td valign="top"><a name="desc_force_photo_width">force_photo_width</a></td>
  1129   <td valign="top"><i>(disabled)</i></td>
  1130   <td valign="top">This option, when enabled, will only apply when
  1131     <em>displaying</em> a user photo. The <code>&lt;img&gt;</code> tag for the
  1132     user photo will be emitted with a max. width, as specified by this option.
  1133     This means that the actual photo can still be larger, but will only be
  1134     displayed smaller. This is useful for cases where you don't want oddly
  1135     shaped user photos to break your page's layout (e.g. in a forum).</td></tr>
  1136 <tr>
  1137   <td valign="top"><a name="desc_default_photo">default_photo</a></td>
  1138   <td valign="top"><i>(disabled)</i></td>
  1139   <td valign="top">When enabled, this option should point to an image (full URL
  1140     required!) that should be displayed for users without a user photo. When
  1141     this option is not set and a user does not have a user photo (or an <a 
  1142     href="#images_gravatar">avatar</a>) then Geeklog will simply not display
  1143     anything.</td></tr>
  1144 </table>
  1145 
  1146 <h3><a name="images_gravatar">Images: Gravatar</a></h3>
  1147 
  1148 <table border="1" width="100%">
  1149 <tr><th style="width:8%">Variable</th>
  1150     <th style="width:29%">Default Value</th>
  1151     <th style="width:63%">Description</th></tr>
  1152 <tr>
  1153   <td valign="top"><a name="desc_use_gravatar">use_gravatar</a></td>
  1154   <td valign="top">false</td>
  1155   <td valign="top">If enabled (set to <tt>true</tt>), a user's avatar image will
  1156     be requested from <a href="http://gravatar.com/">gravatar.com</a> if the
  1157     user didn't upload a user photo (i.e. an uploaded photo always takes
  1158     precedence).<br>
  1159     Please note that this option may slow down your site on pages that display
  1160     a lot of userphotos for different users (e.g. forum threads).</td></tr>
  1161 <tr>
  1162   <td valign="top"><a name="desc_gravatar_rating">gravatar_rating</a></td>
  1163   <td valign="top"><i>(disabled)</i></td>
  1164   <td valign="top">Avatars submitted to gravatar.com are rated with the rating
  1165     system used for movies (in the U.S.), i.e. the letters G, PG, R, or X. This
  1166     option will let you chose the <em>maximum</em> allowed rating for an avatar.
  1167     For example, a max. rating of R will make sure that no X-rated avatars will
  1168     be displayed on your site (only G, PG, and R).</td></tr>
  1169 </table>
  1170 
  1171 
  1172 <h2><a name="languages">Languages and Locale</a></h2>
  1173 
  1174 <h3><a name="languages_language">Languages and Locale: Language</a></h3>
  1175 
  1176 <table border="1" width="100%">
  1177 <tr><th style="width:8%">Variable</th>
  1178     <th style="width:29%">Default Value</th>
  1179     <th style="width:63%">Description</th></tr>
  1180 <tr>
  1181   <td valign="top"><a name="desc_language">language</a></td>
  1182   <td valign="top">english</td>
  1183   <td valign="top">Name of your language file. Additional language files may be
  1184     available for download at <a href="http://www.geeklog.net/">http://www.geeklog.net</a>.
  1185     If you translate a language file, please send it to us. Also see <a
  1186     href="#Localization">Localization</a> below.</td></tr>
  1187 <tr>
  1188   <td valign="top"><a name="desc_language_files">language_files</a></td>
  1189   <td valign="top"><i>(disabled)</i></td>
  1190   <td valign="top">For multi-lingual setups only: A list mapping language
  1191     shortcuts ('en', 'de', etc.) to the Geeklog language files to use.</td></tr>
  1192 <tr>
  1193   <td valign="top"><a name="desc_languages">languages</a></td>
  1194   <td valign="top"><i>(disabled)</i></td>
  1195   <td valign="top">For multi-lingual setups only: A list mapping language
  1196     shortcuts ('en', 'de', etc.) to the language's native name ("English",
  1197     "Deutsch", etc.).</td></tr>
  1198 </table>
  1199 
  1200 <p>Also see <a href="http://wiki.geeklog.net/wiki/index.php/Multi-Language_Support">Multi-Language Support</a> in the Geeklog Wiki.</p>
  1201 
  1202 <h3><a name="languages_locale">Languages and Locale: Locale</a></h3>
  1203 
  1204 <table border="1" width="100%">
  1205 <tr><th style="width:8%">Variable</th>
  1206     <th style="width:29%">Default Value</th>
  1207     <th style="width:63%">Description</th></tr>
  1208 <tr>
  1209   <td valign="top"><a name="desc_locale">locale</a></td>
  1210   <td valign="top">en_GB</td>
  1211   <td valign="top"><a href="http://en.wikipedia.org/wiki/Locale">Locale</a> for
  1212         the system. This defines both the language and the country that PHP
  1213         will use when deciding how to display localized information such as
  1214         dates (e.g. for the names of months).</td></tr>
  1215 <tr>
  1216   <td valign="top"><a name="desc_date">date</a></td>
  1217   <td valign="top">%A, %B %d %Y @ %I:%M %p %Z</td>
  1218   <td valign="top">Date format used for most of the site, including story displays. See <a
  1219     href="#date_formats">date formats</a> below.</td></tr>
  1220 <tr>
  1221   <td valign="top"><a name="desc_daytime">daytime</a></td>
  1222   <td valign="top">%m/%d %I:%M%p</td>
  1223   <td valign="top">Date format used when a shorter date is needed. See <a
  1224     href="#date_formats">date formats</a> below.</td></tr>
  1225 <tr>
  1226   <td valign="top"><a name="desc_shortdate">shortdate</a></td>
  1227   <td valign="top">%x</td>
  1228   <td valign="top">Date format this is the shortest date. See <a href="#date_formats">date
  1229     formats</a> below.</td></tr>
  1230 <tr>
  1231   <td valign="top"><a name="desc_dateonly">dateonly</a></td>
  1232   <td valign="top">%d-%b</td>
  1233   <td valign="top">Short date format (day and month only), to be used e.g. in the
  1234     Upcoming Events and Older Stories blocks. See <a href="#date_formats">date
  1235     formats</a> below.</td></tr>
  1236 <tr>
  1237   <td valign="top"><a name="desc_timeonly">timeonly</a></td>
  1238   <td valign="top">%I:%M %p %Z</td>
  1239   <td valign="top">Format string for the time only, to be used e.g. on the Event Details
  1240     page. See <a href="#date_formats">date formats</a> below.</td></tr>
  1241 <tr>
  1242   <td valign="top"><a name="desc_week_start">week_start</a></td>
  1243   <td valign="top">Sun</td>
  1244   <td valign="top">First day of the week in the calendar. Can be either <tt>'Sun'</tt> (Sunday) or <tt>'Mon'</tt> (Monday).</td></tr>
  1245 <tr>
  1246   <td valign="top"><a name="desc_hour_mode">hour_mode</a></td>
  1247   <td valign="top">12</td>
  1248   <td valign="top">Which format to use when submitting or editing an object
  1249     with a time setting (e.g. the publish time of a story). Can be 12 (for the
  1250     12 hour am/pm format) or 24 (for the 24 hour format).</td></tr>
  1251 <tr>
  1252   <td valign="top"><a name="desc_thousand_separator">thousand_separator</a></td>
  1253   <td valign="top"><code>,</code></td>
  1254   <td valign="top">Character to use between every group of thousands.</td></tr>
  1255 <tr>
  1256   <td valign="top"><a name="desc_decimal_separator">decimal_separator</a></td>
  1257   <td valign="top"><code>.</code></td>
  1258   <td valign="top">Character to use before decimals.</td></tr>
  1259 <tr>
  1260   <td valign="top"><a name="desc_decimal_count">decimal_count</a></td>
  1261   <td valign="top">2</td>
  1262   <td valign="top">How many decimal places to display.</td></tr>
  1263 <tr>
  1264   <td valign="top"><a name="desc_timezone">timezone</a></td>
  1265   <td valign="top"><i>(disabled)</i></td>
  1266   <td valign="top">If your server is located in a different timezone, use this
  1267     option to set your local (i.e. your own) timezone, so that the time and
  1268     date on the site match your own.<br>
  1269     This option is known as the "<a href="http://www.geeklog.net/forum/viewtopic.php?showtopic=21232">timezone hack</a>" and may not work on some
  1270     servers.</td></tr>
  1271 </table>
  1272 
  1273 
  1274 <h2><a name="misc">Miscellaneous</a></h2>
  1275 
  1276 <h3><a name="misc_cookies">Miscellaneous: Cookies</a></h3>
  1277 
  1278 <p>These variables define the names of all of Geeklog's cookies. They can easily be changed in case there's a name collision with the cookies used by some other software package that you may use on your site.</p>
  1279 
  1280 <table border="1" width="100%">
  1281 <tr><th style="width:8%">Variable</th>
  1282     <th style="width:29%">Default Value</th>
  1283     <th style="width:63%">Description</th></tr>
  1284 <tr>
  1285   <td valign="top"><a name="desc_cookie_session">cookie_session</a></td>
  1286   <td valign="top">gl_session</td>
  1287   <td valign="top">Name of the cookie that stores the session ID.</td></tr>
  1288 <tr>
  1289   <td valign="top"><a name="desc_cookie_name">cookie_name</a></td>
  1290   <td valign="top">geeklog</td>
  1291   <td valign="top">Name of the permanent cookie.</td></tr>
  1292 <tr>
  1293   <td valign="top"><a name="desc_cookie_password">cookie_password</a></td>
  1294   <td valign="top">password</td>
  1295   <td valign="top">Name of the password cookie.</td></tr>
  1296 <tr>
  1297   <td valign="top"><a name="desc_cookie_theme">cookie_theme</a></td>
  1298   <td valign="top">theme</td>
  1299   <td valign="top">Name of the theme cookie.</td></tr>
  1300 <tr>
  1301   <td valign="top"><a name="desc_cookie_language">cookie_language</a></td>
  1302   <td valign="top">language</td>
  1303   <td valign="top">Name of the language cookie.</td></tr>
  1304 <tr>
  1305   <td valign="top"><a name="desc_cookie_tzid">cookie_tzid</a></td>
  1306   <td valign="top">timezone</td>
  1307   <td valign="top">Name of the timezone cookie.</td></tr>
  1308 <tr>
  1309   <td valign="top"><a name="desc_cookie_anon_name">cookie_anon_name</a></td>
  1310   <td valign="top">anon_name</td>
  1311   <td valign="top">Name of the cookie to store the username of anonymous
  1312     users.</td></tr>
  1313 <tr>
  1314   <td valign="top"><a name="desc_cookie_ip">cookie_ip</a></td>
  1315   <td valign="top">0</td>
  1316   <td valign="top">Session ID to contain IP address of user as well as random number. This is more secure but will more than likely require dialed up users to login each and every time. (0=no, 1=yes)</td></tr>
  1317 <tr>
  1318   <td valign="top"><a name="desc_default_perm_cookie_timeout">default_perm_cookie_timeout</a></td>
  1319   <td valign="top">28800</td>
  1320   <td valign="top">Permanent cookie timeout in seconds (28800 = 8 hours).</td></tr>
  1321 <tr>
  1322   <td valign="top"><a name="desc_session_cookie_timeout">session_cookie_timeout</a></td>
  1323   <td valign="top">7200</td>
  1324   <td valign="top">Session cookie timeout in seconds (7200 = 2 hours).</td></tr>
  1325 <tr>
  1326   <td valign="top"><a name="desc_cookie_path">cookie_path</a></td>
  1327   <td valign="top">/</td>
  1328   <td valign="top">Cookie path (see the <a href="http://www.php.net/manual/en/function.setcookie.php">PHP manual</a> for details).</td></tr>
  1329 <tr>
  1330   <td valign="top"><a name="desc_cookiedomain">cookiedomain</a></td>
  1331   <td valign="top"><i>(empty)</i></td>
  1332   <td valign="top">The domain that the cookie is available. Geeklog will attempt to guess the correct value for this setting (based on the 'site_url' variable). See the <a href="http://www.php.net/manual/en/function.setcookie.php">PHP manual</a> for details.</td></tr>
  1333 <tr>
  1334   <td valign="top"><a name="desc_cookiesecure">cookiesecure</a></td>
  1335   <td valign="top">0</td>
  1336   <td valign="top">Only set to 1 if your site uses HTTPS (see the <a href="http://www.php.net/manual/en/function.setcookie.php">PHP manual</a> for details).</td></tr>
  1337 </table>
  1338 
  1339 <h3><a name="misc_misc">Miscellaneous: Miscellaneous</a></h3>
  1340 
  1341 <table border="1" width="100%">
  1342 <tr><th style="width:8%">Variable</th>
  1343     <th style="width:29%">Default Value</th>
  1344     <th style="width:63%">Description</th></tr>
  1345 <tr>
  1346   <td valign="top"><a name="desc_notification">notification</a></td>
  1347   <td valign="top">array()</td>
  1348   <td valign="top">Send an email notification to <tt>$_CONF['site_email']</tt>
  1349     when a new story, comment, trackback or pingback has been submitted
  1350     or a new user has registered with the site. The <tt>array()</tt> can hold
  1351     any combination of  the strings <tt>'story'</tt>, <tt>'comment'</tt>,
  1352     <tt>'trackback'</tt>, <tt>'pingback'</tt>, and <tt>'user'</tt> (separated
  1353     by commas), depending on which notification(s) you want.<br>
  1354     <strong>Example:</strong> <code>array('story','user');</code> would
  1355     send notifications when a new story has been submitted or a new user has
  1356     registered. No notifications would be sent, for example, for new
  1357     comments.</td>
  1358 <tr>
  1359   <td valign="top"><a name="desc_cron_schedule_interval">cron_schedule_interval</a></td>
  1360   <td valign="top">0</td>
  1361   <td valign="top">Geeklog can emulate a <a href="http://en.wikipedia.org/wiki/Cronjob">cronjob</a>, i.e. trigger a certain action at a given time. The code
  1362     to be executed can be provided by a plugin or through the
  1363     <code>CUSTOM_runScheduledTask</code> function in your
  1364     <tt>lib-custom.php</tt>. The value given is in seconds and specifies the
  1365     interval in which the code should be executed (e.g. 86400 for daily
  1366     activation).<br>
  1367     Please note that to trigger this action, you will need to have someone
  1368     visit your site at around the specified time. On a site with few visitors,
  1369     the code may only be executed with considerable delay.<br>
  1370     Set to 0 to disable.</td></tr>
  1371 <tr>
  1372   <td valign="top"><a name="desc_disable_autolinks">disable_autolinks</a></td>
  1373   <td valign="top">0</td>
  1374   <td valign="top">If set to 1, disables the autolinks. I.e. links using the
  1375     [story:] etc. syntax are not interpreted any more.</td></tr>
  1376 <tr>
  1377   <td valign="top"><a name="desc_clickable_links">clickable_links</a></td>
  1378   <td valign="top">true</td>
  1379   <td valign="top">Whether or not URLs in plain-text posting should
  1380     automatically be turned into clickable links.</td></tr>
  1381 <tr>
  1382   <td valign="top"><a name="desc_compressed_output">disable_compressed_output</a></td>
  1383   <td valign="top">false</td>
  1384   <td valign="top">If enabled and supported by both the browser and the
  1385     webserver, HTML output will be compressed before sending it to the browser.
  1386     This will typically result in much smaller amounts of data to be sent
  1387     (usually between 20% and 25%, compared to the uncompressed output). It may,
  1388     however, result in slightly more load on the webserver.<br>
  1389     For now, this feature should be considered <strong>experimental</strong> and
  1390     hasn't been implemented for all HTML output yet.</td></tr>
  1391 <tr>
  1392   <td valign="top"><a name="desc_frame_options">frame_options</a></td>
  1393   <td valign="top">DENY</td>
  1394   <td valign="top">Protection against <a
  1395     href="http://en.wikipedia.org/wiki/Clickjacking">Clickjacking</a>: This
  1396     option indicates that the site's content should not be displayed in a frame.
  1397     This only works, however, when the visitor's browser respects the
  1398     <tt>X-FRAME-OPTIONS</tt> HTTP header. Options are to disallow all framing
  1399     (Strict), only allow framing from within the same site (Same Origin), or to
  1400     allow all framing (disabled). We strongly suggest <em>not</em> to disable
  1401     this option.</td></tr>
  1402 </table>
  1403 
  1404 <h3><a name="misc_debug">Miscellaneous: Debug</a></h3>
  1405 
  1406 <table border="1" width="100%">
  1407 <tr><th style="width:8%">Variable</th>
  1408     <th style="width:29%">Default Value</th>
  1409     <th style="width:63%">Description</th></tr>
  1410 <tr>
  1411   <td valign="top"><a name="desc_rootdebug">rootdebug</a></td>
  1412   <td valign="top"><code>false</code></td>
  1413   <td valign="top">When a PHP error occurs, Geeklog's error handler will only
  1414     display the actual error message to members of the Root group (to prevent
  1415     leakage of possibly sensitive information). When set to <code>true</code>,
  1416     this information will be displayed to <em>all</em> users. <strong>Use only
  1417     for debugging purposes!</strong><br>
  1418     Tip: If an error prevents you from logging into your site to enable that
  1419     option, you can also <a href="#desc_rootdebug_siteconfig">enable it in your
  1420     <tt>siteconfig.php</tt></a> file.</td></tr>
  1421 </table>
  1422 
  1423 <h3><a name="misc_digest">Miscellaneous: Daily Digest</a></h3>
  1424 
  1425 <table border="1" width="100%">
  1426 <tr><th style="width:8%">Variable</th>
  1427     <th style="width:29%">Default Value</th>
  1428     <th style="width:63%">Description</th></tr>
  1429 <tr>
  1430   <td valign="top"><a name="desc_emailstories">emailstories</a></td>
  1431   <td valign="top">0</td>
  1432   <td valign="top">Let users get stories e-mailed to them (0=no, 1=yes), aka Daily Digest.
  1433     Please note that this requires cron and the use of PHP as a shell script.</td></tr>
  1434 <tr>
  1435   <td valign="top"><a name="desc_emailstorieslength">emailstorieslength</a></td>
  1436   <td valign="top">1</td>
  1437   <td valign="top">When emailstories (above) is enabled, send only the title and the
  1438     link to the new stories (0), or send the entire introtext (1) or send
  1439     the first <i>n</i> characters from the introtext (where <i>n</i> = any other number)</td></tr>
  1440 <tr>
  1441   <td valign="top"><a name="desc_emailstoriesperdefault">emailstoriesperdefault</a></td>
  1442   <td valign="top">0</td>
  1443   <td valign="top">When set to 1, new users will be subscribed to the daily digest
  1444     automatically when they register with the site.</td></tr>
  1445 </table>
  1446 
  1447 <h3><a name="misc_html">Miscellaneous: HTML Filtering</a></h3>
  1448 
  1449 <table border="1" width="100%">
  1450 <tr><th style="width:8%">Variable</th>
  1451     <th style="width:29%">Default Value</th>
  1452     <th style="width:63%">Description</th></tr>
  1453 <tr>
  1454   <td valign="top"><a name="desc_user_html">user_html</a></td>
  1455   <td valign="top">&lt;p&gt;, &lt;b&gt;, &lt;i&gt;, &lt;a&gt;, &lt;em&gt;, &lt;br&gt;, &lt;tt&gt;, &lt;hr&gt;, &lt;ol&gt;, &lt;ul&gt;, &lt;li&gt;, &lt;code&gt;, &lt;pre&gt;</td>
  1456   <td valign="top">HTML tags and attributes that normal users are allowed to
  1457       use in story submissions and comments.</td></tr>
  1458 <tr>
  1459   <td valign="top"><a name="desc_admin_html">admin_html</a></td>
  1460   <td valign="top">additional HTML tags, e.g. for tables</td>
  1461   <td valign="top">HTML tags and attributes that admin users are allowed to
  1462       use (in addition to those from user_html). Redefining a tag with
  1463       additional attributes will overwrite the definition from user_html.</td></tr>
  1464 <tr>
  1465   <td valign="top"><a name="desc_advanced_html">advanced_html</a></td>
  1466   <td valign="top">additional HTML tags for use with the Advanced Editor, e.g.
  1467       for images</td>
  1468   <td valign="top">Additional HTML tags and attributes that users are allowed
  1469       to use when the <a href="#desc_advanced_editor">Advanced Editor</a> is
  1470       enabled.</td></tr>
  1471 <tr>
  1472   <td valign="top"><a name="desc_skip_html_filter_for_root">skip_html_filter_for_root</a></td>
  1473   <td valign="top">0</td>
  1474   <td valign="top">When set to 1, this will allow members of the Root group
  1475     to use <em>all</em> HTML in their posts. <strong>Use at your own risk!</strong></td></tr>
  1476 <tr>
  1477   <td valign="top"><a name="desc_allowed_protocols">allowed_protocols</a></td>
  1478   <td valign="top">array ('http', 'https', 'ftp');</td>
  1479   <td valign="top">Defines which protocols are allowed in links (i.e. HTML
  1480     <code>&lt;a&gt;</code> tags).</td></tr>
  1481 </table>
  1482 
  1483 <h3><a name="misc_censoring">Miscellaneous: Censoring</a></h3>
  1484 
  1485 <table border="1" width="100%">
  1486 <tr><th style="width:8%">Variable</th>
  1487     <th style="width:29%">Default Value</th>
  1488     <th style="width:63%">Description</th></tr>
  1489 <tr>
  1490   <td valign="top"><a name="desc_censormode">censormode</a></td>
  1491   <td valign="top">1</td>
  1492   <td valign="top">Censor submissions and comments (0 = Disabled, 1 = Enabled, exact matches, 2 = Enabled, match start of word, 3 = Enabled, match fragment)</td></tr>
  1493 <tr>
  1494   <td valign="top"><a name="desc_censorreplace">censorreplace</a></td>
  1495   <td valign="top">*censored*</td>
  1496   <td valign="top">Text to replace a censored word with</td></tr>
  1497 <tr>
  1498   <td valign="top"><a name="desc_censorlist">censorlist</a></td>
  1499   <td valign="top">array(<i>a list of "bad" words goes here ...</i>)</td>
  1500   <td valign="top">An array of censored words</td></tr>
  1501 </table>
  1502 
  1503 <h3><a name="misc_ip_lookup">Miscellaneous: IP Lookup</a></h3>
  1504 
  1505 <table border="1" width="100%">
  1506 <tr><th style="width:8%">Variable</th>
  1507     <th style="width:29%">Default Value</th>
  1508     <th style="width:63%">Description</th></tr>
  1509 <tr>
  1510   <td valign="top"><a name="desc_ip_lookup">ip_lookup</a></td>
  1511   <td valign="top"><i>not set</i></td>
  1512   <td valign="top">The IP addresses of comment posters are logged and displayed for admin users. When this variable is set to point to a service that can do IP address lookups, it's possible to lookup the owner of an IP address by clicking on it, making it easier to report abuse to ISPs, etc.<br>
  1513 <code>$_CONF['ip_lookup']</code> should hold the complete URL to the lookup service, with a '<code>*</code>' marking the place where the IP address should go. It's also possible to use Tom Willet's <a href="http://sourceforge.net/project/showfiles.php?group_id=68255&amp;package_id=95743">NetTools</a> package, in which case the correct setting would be <code>$_CONF['ip_lookup'] = $_CONF['site_url'] . '/nettools/whois.php?domain=*';</code></td></tr>
  1514 </table>
  1515 
  1516 <h3><a name="misc_ip_webservices">Miscellaneous: Webservices</a></h3>
  1517 
  1518 <table border="1" width="100%">
  1519 <tr><th style="width:8%">Variable</th>
  1520     <th style="width:29%">Default Value</th>
  1521     <th style="width:63%">Description</th></tr>
  1522 <tr>
  1523   <td valign="top"><a name="desc_disable_webservices">disable_webservices</a></td>
  1524   <td valign="top">false</td>
  1525   <td valign="top">Set this to <code>true</code> to disable the webservices.</td></tr>
  1526 <tr>
  1527   <td valign="top"><a name="desc_restrict_webservices">restrict_webservices</a></td>
  1528   <td valign="top">false</td>
  1529   <td valign="top">Set this to <code>true</code> to restrict webservices usage
  1530     to users with the <tt>webservices.atompub</tt> permission (e.g. those in
  1531     the predefined "Webservices Users" group).</td></tr>
  1532 <tr>
  1533   <td valign="top"><a name="desc_atom_max_stories">atom_max_stories</a></td>
  1534   <td valign="top">10</td>
  1535   <td valign="top">Max. number of stories returned when an Atom feed is
  1536     requested through the webservices API.</td></tr>
  1537 </table>
  1538 
  1539 <p>Also see <a href="http://wiki.geeklog.net/wiki/index.php/Using_the_Webservices">Using the Webservices</a> in the Geeklog Wiki.</p>
  1540 
  1541 
  1542 <h2><a name="db-config.php">db-config.php</a></h2>
  1543 
  1544 <p>As the name implies, the file <tt>db-config.php</tt> contains the database
  1545 configuration. This information is put there during the initial install and
  1546 you should not normally have to edit this file.</p>
  1547 
  1548 <table border="1" width="100%">
  1549 <tr><th style="width:8%">Variable</th>
  1550     <th style="width:29%">Default Value</th>
  1551     <th style="width:63%">Description</th></tr>
  1552 <tr><td valign="top">_DB_host</td>
  1553     <td valign="top">localhost</td>
  1554     <td valign="top">Database Server (to be entered in the form: <i>hostname:port:unixsocket</i>). In most cases you won't need to change the default value.</td></tr>
  1555 <tr><td valign="top">_DB_name</td>
  1556     <td valign="top">geeklog</td>
  1557     <td valign="top">Database Name</td></tr>
  1558 <tr><td valign="top">_DB_user</td>
  1559     <td valign="top">root</td>
  1560     <td valign="top">Database User Account</td></tr>
  1561 <tr><td valign="top">_DB_pass</td>
  1562     <td valign="top">null</td>
  1563     <td valign="top">Database User Password</td></tr>
  1564 <tr><td valign="top">_DB_table_prefix</td>
  1565     <td valign="top">gl_</td>
  1566     <td valign="top">Prefix to put in front of all of Geeklog's table names (to
  1567         avoid name collisions with tables used by other applications)</td></tr>
  1568 <tr><td valign="top">_DB_dbms</td>
  1569     <td valign="top">mysql</td>
  1570     <td valign="top">This option tells Geeklog which type of database it's
  1571         running on. Can be either <code>'mysql'</code> (for MySQL) or
  1572         <code>'mssql'</code> (for Microsoft SQL Server).</td></tr>
  1573 </table>
  1574 
  1575 
  1576 <h2><a name="siteconfig.php">siteconfig.php</a></h2>
  1577 
  1578 <p>The <tt>siteconfig.php</tt> file holds configuration data that can not be
  1579 stored in the database. Again, most of this information is put there during
  1580 the installation and you should not normally have to edit this file.</p> 
  1581 
  1582 <table border="1" width="100%">
  1583 <tr><th style="width:8%">Variable</th>
  1584     <th style="width:29%">Default Value</th>
  1585     <th style="width:63%">Description</th></tr>
  1586 <tr><td valign="top"><a name="desc_path">path</a></td>
  1587     <td valign="top">/path/to/geeklog/</td>
  1588     <td valign="top">Base file system path for your site (trailing slash necessary)</td></tr>
  1589 <tr><td valign="top"><a name="desc_path_system">path_system</a></td>
  1590     <td valign="top">/path/to/geeklog/system/</td>
  1591     <td valign="top">Path to your system directory for your site (trailing slash necessary).  This directory holds the code libraries used throughout Geeklog</td></tr>
  1592 <tr>
  1593   <td valign="top"><a name="desc_site_enabled">site_enabled</a></td>
  1594   <td valign="top">true</td>
  1595   <td valign="top">A Geeklog site can be disabled quickly (e.g. for maintenance)
  1596     by setting this to 'false'.<br>
  1597     Also see the <a href="#desc_site_disabled_msg">site_disabled_msg</a>
  1598     configuration option.</td></tr>
  1599 <tr>
  1600   <td valign="top"><a name="desc_default_charset">default_charset</a></td>
  1601   <td valign="top">iso-8859-1</td>
  1602   <td valign="top">Character encoding used by Geeklog when serving HTML pages or
  1603     sending email. Only used if the language file did not already set
  1604     another character encoding.<br>
  1605     For <a href="http://wiki.geeklog.net/wiki/index.php/Multi-Language_Support">multi-language</a> setups, using <code>'utf-8'</code> as the default character
  1606     set is recommended.</td></tr>
  1607 <tr>
  1608   <td valign="top"><a name="desc_rootdebug_siteconfig">rootdebug</a></td>
  1609   <td valign="top"><i>(disabled)</i></td>
  1610   <td valign="top">Same as the '<a href="#desc_rootdebug">rootdebug</a>' option
  1611     in the Configuration. However, sometimes an error may occur that prevents
  1612     you from logging into your site and enabling the 'rootdebug' option. In
  1613     such a case, you can uncomment this line and enable the option here.<br>
  1614     In addition to 'true' and 'false', you can also set this option to 'force'
  1615     (only in <tt>siteconfig.php</tt>). This will enable displaying of sensitive
  1616     information like passwords and cookies.<br>
  1617     In any case, the same strong warning as <a href="#desc_rootdebug">above</a>
  1618     applies here, too: <strong>Do not leave this option enabled on a "live"
  1619     site!</strong></td></tr>
  1620 </table>
  1621 
  1622 
  1623 <h2><a name="url-rewrite">URL Rewriting</a></h2>
  1624 
  1625 <p>Geeklog includes a simple but useful URL rewriting feature which can help
  1626 make your site more crawler friendly (i.e. the URLs of your site are more
  1627 likely to be picked up by the search engine's indexing bots). This feature is
  1628 supported for URLs to stories, static pages, the article directory, and links.
  1629 </p>
  1630 <p>URL rewriting means that your URLs will look like this</p>
  1631 <p style="margin-left:4em;"><tt>http://www.geeklog.net/article.php/20021022234959146</tt></p>
  1632 <p>instead of like this</p>
  1633 <p style="margin-left:4em;"><tt>http://www.geeklog.net/article.php?story=20021022234959146</tt></p>
  1634 <p>While some search engines will pick up the second form, Google seems to
  1635 prefer the first format and often ignores the second format.</p>
  1636 <p><strong>Note:</strong> This feature may not work with all web servers. It
  1637 is known to work with Apache (all versions) and known <em>not</em> to work
  1638 with IIS (at least some versions). Please try it out before you go public
  1639 with your site.</p>
  1640 
  1641 
  1642 <h2><a name="Localization">Localization</a></h2>
  1643 
  1644 <p>Localizing Geeklog is fairly easy. All strings are contained in a
  1645 language file. The default file that ships with the tarball is english.php.
  1646 People interested in translating Geeklog to other languages are encouraged
  1647 to join the <a
  1648 href="http://lists.geeklog.net/listinfo/geeklog-translations">geeklog-translations</a>
  1649 mailing list. All important information concerning translating Geeklog will
  1650 be posted there.
  1651 
  1652 <h3><a name="date_formats">Locale and Date Formats</a></h3>
  1653 
  1654 <p>You can set the locale and date format in the configuration. To set the
  1655 locale, set the variable to the proper string or if you leave it blank it
  1656 will pull the default locale from the operating system. The date formats
  1657 are handled by your locale. Isn't that smart? Locale names are OS
  1658 dependent. On most UNIX hosts, you can find locale codes in the
  1659 <i>/usr/share/locale/locale.alias</i> file and on some systems the command
  1660 <i>locale -a</i> will display all available locales on a system. If a
  1661 locale doesn't exist you can create it using the <i>localedef</i> command.
  1662 
  1663 <p>More info on locale: <a
  1664 href="http://www.opengroup.org/onlinepubs/7908799/xbd/locale.html">http://www.opengroup.org/onlinepubs/7908799/xbd/locale.html</a><br>
  1665 More info on localdef: <a
  1666 href="http://www.opengroup.org/onlinepubs/7908799/xcu/localedef.html">http://www.opengroup.org/onlinepubs/7908799/xcu/localedef.html</a>
  1667 
  1668 <h3>Date Format Syntax</h3>
  1669 
  1670 <ul>
  1671   <li><tt>%a - abbreviated weekday name according to the current locale</tt></li>
  1672   <li><tt>%A - full weekday name according to the current locale</tt></li>
  1673   <li><tt>%b - abbreviated month name according to the current locale</tt></li>
  1674   <li><tt>%B - full month name according to the current locale</tt></li>
  1675   <li><tt>%c - preferred date and time representation for the current locale</tt></li>
  1676   <li><tt>%C - century number (the year divided by 100 and truncated to           an integer, range 00 to 99)</tt></li>
  1677   <li><tt>%d - day of the month as a decimal number (range 00 to 31)</tt></li>
  1678   <li><tt>%D - same as %m/%d/%y</tt></li>
  1679   <li><tt>%e - day of the month as a decimal number, a single digit is preceded by a space (range ' 1' to '31')</tt></li>
  1680   <li><tt>%h - same as %b</tt></li>
  1681   <li><tt>%H - hour as a decimal number using a 24-hour clock (range 00 to 23)</tt></li>
  1682   <li><tt>%I - hour as a decimal number using a 12-hour clock (range 01 to 12)</tt></li>
  1683   <li><tt>%j - day of the year as a decimal number (range 001 to 366)</tt></li>
  1684   <li><tt>%m - month as a decimal number (range 1 to 12)</tt></li>
  1685   <li><tt>%M - minute as a decimal number</tt></li>
  1686   <li><tt>%n - newline character</tt></li>
  1687   <li><tt>%p - either `am' or `pm' according to the given time value, or the corresponding strings for the current locale</tt></li>
  1688   <li><tt>%r - time in a.m. and p.m. notation</tt></li>
  1689   <li><tt>%R - time in 24 hour notation</tt></li>
  1690   <li><tt>%S - second as a decimal number</tt></li>
  1691   <li><tt>%t - tab character</tt></li>
  1692   <li><tt>%T - current time, equal to %H:%M:%S</tt></li>
  1693   <li><tt>%u - weekday as a decimal number [1,7], with 1 representing Monday</tt></li>
  1694   <li><tt>%U - week number of the current year as a decimal number, starting with the first Sunday as the first day of the first week</tt></li>
  1695   <li><tt>%V - The ISO 8601:1988 week number of the current year as a decimal number, range 01 to 53, where week 1 is the first week that has at least 4 days in the current year, and with Monday as the first day of the week.</tt></li>
  1696   <li><tt>%W - week number of the current year as a decimal number, starting with the first Monday as the first day of the first week</tt></li>
  1697   <li><tt>%w - day of the week as a decimal, Sunday being 0</tt></li>
  1698   <li><tt>%x - preferred date representation for the current locale without the time</tt></li>
  1699   <li><tt>%X - preferred time representation for the current locale without the date</tt></li>
  1700   <li><tt>%y - year as a decimal number without a century (range 00 to 99)</tt></li>
  1701   <li><tt>%Y - year as a decimal number including the century</tt></li>
  1702   <li><tt>%Z - time zone or name or abbreviation</tt></li>
  1703   <li><tt>%% - a literal `%' character</tt></li>
  1704 </ul>
  1705 
  1706 <div class="footer">
  1707     <a href="http://wiki.geeklog.net/">The Geeklog Documentation Project</a><br>
  1708     All trademarks and copyrights on this page are owned by their respective owners. Geeklog is copyleft.
  1709 </div>
  1710 
  1711 </body>
  1712 </html>