First version of modular filters support
[privoxy.git] / templates / edit-actions-for-url
index 034de52..8b65172 100644 (file)
 #
 # Revisions   :
 #    $Log: edit-actions-for-url,v $
+#    Revision 1.12  2002/03/12 01:42:50  oes
+#    Introduced modular filters
+#
+#    Revision 1.11  2002/03/08 18:19:14  jongfoster
+#    Adding +image-blocker{pattern} option to edit interface
+#
+#    Revision 1.10  2002/03/03 10:29:12  swa
+#    point users to the right feedback forms,
+#    not necessarily the developer list.
+#
+#    Revision 1.9  2002/01/23 00:26:45  jongfoster
+#    Reducing length of URLs
+#    Where encoded and unencoded versions of a string existed, removing
+#    the unencoded one.
+#
+#    Revision 1.8  2002/01/17 21:33:00  jongfoster
+#    Replacing all references to the URL of the config interface
+#    with @default-cgi@
+#
+#    Revision 1.7  2002/01/17 21:21:03  jongfoster
+#    DOS->Unix line endings
+#
 #    Revision 1.6  2001/11/22 21:58:41  jongfoster
 #    Adding action +no-cookies-keep
 #
 # hide-referer-param-custom
 # hide-referer-param
 # hide-user-agent-param
+# image-blocker-param-pattern
 # image-blocker-param-logo
 # image-blocker-param-blank
 # image-blocker-param-custom
-# image-blocker-param-logo
 #
 #
 #############################################################################
@@ -122,6 +144,7 @@ body         { font-family: Helvetica, Helv, Arial, Sans-Serif, sans-serif;
 td.action    { font-weight: bold;
                font-style: italic;
                white-space: nowrap       }
+td.subaction { font-style: italic        }
 th           { font-weight: bold;        }
 # This is the key to the color names below:
 # bg=background, en="Enable", dis="Disable", noc="No Change", hdr=header
@@ -283,7 +306,7 @@ function show_wafer_opts(tf)
 
 <body>
 
-<form method="GET" action="http://i.j.b/edit-actions-submit" id="myform" name="myform">
+<form method="GET" action="edit-actions-submit" id="myform" name="myform">
 
   <table cellpadding="20" cellspacing="10" border="0" width="100%">
     <tr>
@@ -296,45 +319,26 @@ function show_wafer_opts(tf)
       </td>
     </tr>
 
-<!-- @if-unstable-start -->
-# This will only appear if CODE_STATUS is "alpha" or "beta". See configure.in
-    <tr>
-      <td style="background-color: #ffdddd" >
-        <p><b>Please note that this <span style="color: #ff0000">@code-status@</span> release
-          of the proxy software is not intended for production systems!
-          <br>Use at your own risk. See the <a href="http://www.gnu.org/copyleft/gpl.html">license</a> for details.</b>
-        </p>
-
-        <p>Feel free to <a href="mailto:ijbswa-developers@lists.sourceforge.net">mail the developers</a>
-          with any problems you encounter.
-        </p>
-      </td>
-    </tr>
-<!-- if-unstable-end@ -->
-
     <tr>
       <td class="light">
         <h2>Edit Actions
-          <input type="hidden" name="filename" value="@filename@">
-          <input type="hidden" name="ver" value="@ver@">
-          <input type="hidden" name="section" value="@section@">
+          <input type="hidden" name="f" value="@f@">
+          <input type="hidden" name="v" value="@v@">
+          <input type="hidden" name="s" value="@s@">
         </h2>
       </td>
     </tr>
   </table>
 
-  <table border="0" width="100%" cellspacing="0" class="wide">
+  <table border="0" width="100%" cellspacing="2" class="wide">
     <tr class="hdr" align="left">
-      <th>Action
-      </th>
-      <th>Description</th>
       <th class="enh" align="center">Enable</th>
       <th class="dish" align="center">Disable</th>
       <th class="noch" align="center">No Change</th>
+      <th>Action</th>
+      <th>Description</th>
     </tr>
     <tr class="bg1" align="left" valign="top">
-      <td class="action">+add-header</td>
-      <td>Adds HTTP headers.</td>
       <td class="en1" align="center" valign="middle"><input type="radio"
         name="add_header" id="add_header_y" value="Y" @add-header-y@
         onclick="show_add_header_opts(true)"></td>
@@ -344,16 +348,19 @@ function show_wafer_opts(tf)
       <td class="noc1" align="center" valign="middle"><input type="radio"
         name="add_header" value="X" @add-header-x@
         onclick="show_add_header_opts(false)"></td>
+      <td class="action">+add-header</td>
+      <td>Adds HTTP headers.</td>
     </tr>
     <tr class="bg1" align="left" valign="top" id="add_header_opts">
+      <td class="en1">&nbsp;</td>
+      <td class="dis1">&nbsp;</td>
+      <td class="noc1">&nbsp;</td>
       <td>&nbsp;</td>
-      <td colspan="4">Editing the settings for this option, or turning
+      <td>Editing the settings for this option, or turning
         it on if it was off, is not yet supported using this web-based
         editor.</td>
     </tr>
     <tr class="bg2" align="left" valign="top">
-      <td class="action">+block</td>
-      <td>Block the request</td>
       <td class="en2" align="center" valign="middle"><input type="radio"
         name="block" value="Y" @block-y@
         ></td>
@@ -363,10 +370,10 @@ function show_wafer_opts(tf)
       <td class="noc2" align="center" valign="middle"><input type="radio"
         name="block" value="X" @block-x@
         ></td>
+      <td class="action">+block</td>
+      <td>Block the request</td>
     </tr>
     <tr class="bg1" align="left" valign="top">
-      <td class="action">+deanimate-gifs</td>
-      <td>Replace animated GIFs with their (first/last) frame.</td>
       <td class="en1" align="center" valign="middle"><input type="radio"
         name="deanimate_gifs" id="deanimate_gifs_y" value="Y" @deanimate-gifs-y@
         onclick="show_deanimate_opts(true)"></td>
@@ -376,10 +383,15 @@ function show_wafer_opts(tf)
       <td class="noc1" align="center" valign="middle"><input type="radio"
         name="deanimate_gifs" value="X" @deanimate-gifs-x@
         onclick="show_deanimate_opts(false)"></td>
+      <td class="action">+deanimate-gifs</td>
+      <td>Replace animated GIFs with their (first/last) frame.</td>
     </tr>
     <tr class="bg1" align="left" valign="top" id="deanimate_opts">
+      <td class="en1">&nbsp;</td>
+      <td class="dis1">&nbsp;</td>
+      <td class="noc1">&nbsp;</td>
       <td>&nbsp;</td>
-      <td colspan="4">Use the <input type="radio" name="deanimate_gifs_mode"
+      <td>Use the <input type="radio" name="deanimate_gifs_mode"
         value="first" id="deanimate_first" @deanimate-gifs-param-first@><label
         for="deanimate_first">first frame</label>&nbsp;&nbsp; <input
         type="radio" name="deanimate_gifs_mode" value="last" 
@@ -387,8 +399,6 @@ function show_wafer_opts(tf)
         for="deanimate_last">last frame</label></td>
     </tr>
     <tr class="bg2" align="left" valign="top">
-      <td class="action">+fast-redirects</td>
-      <td>Bypass some tracking URLs.</td>
       <td class="en2" align="center" valign="middle"><input type="radio"
         name="fast_redirects" value="Y" @fast-redirects-y@
         ></td>
@@ -398,34 +408,39 @@ function show_wafer_opts(tf)
       <td class="noc2" align="center" valign="middle"><input type="radio"
         name="fast_redirects" value="X" @fast-redirects-x@
         ></td>
+      <td class="action">+fast-redirects</td>
+      <td>Bypass some tracking URLs.</td>
     </tr>
     <tr class="bg1" align="left" valign="top">
-      <td class="action">+downgrade</td>
-      <td>Change HTTP/1.1 requests to HTTP/1.0.  Only change if you know
-        what you're doing!</td>
       <td class="en1" align="center" valign="middle"><input type="radio"
         name="downgrade" value="Y" @downgrade-y@></td>
       <td class="dis1" align="center" valign="middle"><input type="radio"
         name="downgrade" value="N" @downgrade-n@></td>
       <td class="noc1" align="center" valign="middle"><input type="radio"
         name="downgrade" value="X" @downgrade-x@></td>
+      <td class="action">+downgrade</td>
+      <td>Change HTTP/1.1 requests to HTTP/1.0.  Only change if you know
+        what you're doing!</td>
     </tr>
     <tr class="bg2" align="left" valign="top">
+      <td class="en2">&nbsp;</td>
+      <td class="dis2">&nbsp;</td>
+      <td class="noc2">&nbsp;</td>
       <td class="action">+filter</td>
-      <td>Filter the website through the re_filterfile</td>
-      <td class="en2" align="center" valign="middle"><input type="radio"
-        name="filter" value="Y" @filter-y@
-        ></td>
+      <td>Filter the website through regular expression filters.
+        You can enable or disable the filters individually.</td>
+    </tr>
+
+    <tr class="bg2" align="left" valign="top">
+      <td class="en2">&nbsp;</td>
       <td class="dis2" align="center" valign="middle"><input type="radio"
-        name="filter" value="N" @filter-n@ 
-        ></td>
+        name="filter_all" id="filter_all_n" value="N" @filter-all-n@ ></td>
       <td class="noc2" align="center" valign="middle"><input type="radio"
-        name="filter" value="X" @filter-x@
-         ></td>
+        name="filter_all" id="filter_all_x" value="X" @filter-all-x@ ></td>
+      <td class="subaction" colspan="2">&nbsp;&nbsp;All filters applied by previous rules</td>
     </tr>
+@filter-params@
     <tr class="bg1" align="left" valign="top">
-      <td class="action">+hide-forwarded</td>
-      <td>Block any existing X-Forwarded-for header, and do not add a new one.</td>
       <td class="en1" align="center" valign="middle"><input type="radio"
         name="hide_forwarded" value="Y" @hide-forwarded-y@
         ></td>
@@ -435,11 +450,10 @@ function show_wafer_opts(tf)
       <td class="noc1" align="center" valign="middle"><input type="radio"
         name="hide_forwarded" value="X" @hide-forwarded-x@
         ></td>
+      <td class="action">+hide-forwarded</td>
+      <td>Block any existing X-Forwarded-for header, and do not add a new one.</td>
     </tr>
     <tr class="bg2" align="left" valign="top">
-      <td class="action">+hide-from</td>
-      <td>Stop old web browsers from sending the user's e-mail address with
-        every request.</td>
       <td class="en2" align="center" valign="middle"><input type="radio"
         name="hide_from" id="hide_from_y" value="Y" @hide-from-y@
         onclick="show_hide_from_opts(true)"></td>
@@ -449,10 +463,16 @@ function show_wafer_opts(tf)
       <td class="noc2" align="center" valign="middle"><input type="radio"
         name="hide_from" value="X" @hide-from-x@
         onclick="show_hide_from_opts(false)"></td>
+      <td class="action">+hide-from</td>
+      <td>Stop old web browsers from sending the user's e-mail address with
+        every request.</td>
     </tr>
     <tr class="bg2" align="left" valign="top" id="hide_from_opts">
+      <td class="en2">&nbsp;</td>
+      <td class="dis2">&nbsp;</td>
+      <td class="noc2">&nbsp;</td>
       <td>&nbsp;</td>
-      <td colspan="4"><input type="radio" name="hide_from_mode" value="block"
+      <td><input type="radio" name="hide_from_mode" value="block"
         onclick="hide_from_param_disable(true);"
         @hide-from-param-block@ id="from_mode_block"><label
         for="from_mode_block">Remove completely</label><br>
@@ -464,9 +484,6 @@ function show_wafer_opts(tf)
         size="40" value="@hide-from-param@"></td>
     </tr>
     <tr class="bg1" align="left" valign="top">
-      <td class="action">+hide-referer</td>
-      <td>Helps prevent tracking by not sending the URL of the previous web
-        page.&nbsp;</td>
       <td class="en1" align="center" valign="middle"><input type="radio"
         name="hide_referer" id="hide_referer_y" value="Y" @hide-referer-y@
         onclick="show_hide_referer_opts(true)"></td>
@@ -477,10 +494,16 @@ function show_wafer_opts(tf)
         name="hide_referer" id="hide_referer_x" value="X" @hide-referer-x@
         onclick="show_hide_referer_opts(false)"
         ></td>
+      <td class="action">+hide-referer</td>
+      <td>Helps prevent tracking by not sending the URL of the previous web
+        page.&nbsp;</td>
     </tr>
     <tr class="bg1" align="left" valign="top" id="hide_referer_opts">
+      <td class="en1">&nbsp;</td>
+      <td class="dis1">&nbsp;</td>
+      <td class="noc1">&nbsp;</td>
       <td>&nbsp;</td>
-      <td colspan="4"><input type="radio" name="hide_referer_mode" value="block"
+      <td><input type="radio" name="hide_referer_mode" value="block"
         onclick="hide_referer_param_disable(true)"
         @hide-referer-param-block@ id="referer_mode_block"><label
         for="referer_mode_block">Remove completely</label> (breaks images
@@ -499,9 +522,6 @@ function show_wafer_opts(tf)
         value="@hide-referer-param@"></td>
     </tr>
     <tr class="bg2" align="left" valign="top">
-      <td class="action">+hide-user-agent</td>
-      <td>Pretend to be using a different web browser.&nbsp; (Breaks many web
-        sites).</td>
       <td class="en2" align="center" valign="middle"><input type="radio"
         name="hide_user_agent" id="hide_user_agent_y" value="Y" @hide-user-agent-y@
         onclick="show_user_agent_opts(true)"></td>
@@ -511,17 +531,20 @@ function show_wafer_opts(tf)
       <td class="noc2" align="center" valign="middle"><input type="radio"
         name="hide_user_agent" value="X" @hide-user-agent-x@
         onclick="show_user_agent_opts(false)"></td>
+      <td class="action">+hide-user-agent</td>
+      <td>Pretend to be using a different web browser.&nbsp; (Breaks many web
+        sites).</td>
     </tr>
     <tr class="bg2" align="left" valign="top" id="user_agent_opts">
+      <td class="en2">&nbsp;</td>
+      <td class="dis2">&nbsp;</td>
+      <td class="noc2">&nbsp;</td>
       <td>&nbsp;</td>
-      <td colspan="4">User Agent string to send:<br>
+      <td>User Agent string to send:<br>
         <input type="text" name="hide_user_agent_mode" size="40"
         value="@hide-user-agent-param@"></td>
     </tr>
     <tr class="bg1" align="left" valign="top">
-      <td class="action">+image</td>
-      <td>Request is for an image (only useful in conjunction with the <i><b>+block</b></i>
-        and <i><b>+image-blocker</b></i> options).</td>
       <td class="en1" align="center" valign="middle"><input type="radio"
         name="image" value="Y" @image-y@
         ></td>
@@ -531,11 +554,11 @@ function show_wafer_opts(tf)
       <td class="noc1" align="center" valign="middle"><input type="radio"
         name="image" value="X" @image-x@
         ></td>
+      <td class="action">+image</td>
+      <td>Request is for an image (only useful in conjunction with the <i><b>+block</b></i>
+        and <i><b>+image-blocker</b></i> options).</td>
     </tr>
     <tr class="bg2" align="left" valign="top">
-      <td class="action">+image-blocker</td>
-      <td>Specifies how to block images.&nbsp; Disable to always send a HTML
-        &quot;blocked&quot; page.</td>
       <td class="en2" align="center" valign="middle"><input type="radio"
         name="image_blocker" id="image_blocker_y" value="Y" @image-blocker-y@
         onclick="show_image_blocker_opts(true)"></td>
@@ -545,13 +568,27 @@ function show_wafer_opts(tf)
       <td class="noc2" align="center" valign="middle"><input type="radio"
         name="image_blocker" value="X" @image-blocker-x@
         onclick="show_image_blocker_opts(false)"></td>
+      <td class="action">+image-blocker</td>
+      <td>Specifies how to block images.&nbsp; Disable to always send a HTML
+        &quot;blocked&quot; page.</td>
     </tr>
     <tr class="bg2" align="left" valign="top" id="image_blocker_opts">
+      <td class="en2">&nbsp;</td>
+      <td class="dis2">&nbsp;</td>
+      <td class="noc2">&nbsp;</td>
       <td>&nbsp;</td>
-      <td colspan="4"><input type="radio" name="image_blocker_mode"
+      <td><input type="radio" name="image_blocker_mode"
+        onclick="image_blocker_param_disable(true)"
+        value="pattern" id="image_blocker_mode_pattern"
+        @image-blocker-param-pattern@><label
+        for="image_blocker_mode_pattern">Send a pattern (<img
+        src="send-banner?type=p" width="12" height="12"
+        alt="pattern">)</label><br>
+        <input type="radio" name="image_blocker_mode"
         onclick="image_blocker_param_disable(true)"
         value="logo" id="image_blocker_mode_logo" @image-blocker-param-logo@><label
-        for="image_blocker_mode_logo">Send Junkbuster logo</label><br>
+        for="image_blocker_mode_logo">Send Junkbuster logo
+        (<img src="send-banner?type=l" alt="logo">)</label><br>
         <input type="radio" name="image_blocker_mode" value="blank"
         onclick="image_blocker_param_disable(true)"
         id="image_blocker_mode_blank" @image-blocker-param-blank@><label 
@@ -565,10 +602,6 @@ function show_wafer_opts(tf)
         size="40" value="@image-blocker-param@"></td>
     </tr>
     <tr class="bg1" align="left" valign="top">
-      <td class="action">+limit-connect</td>
-      <td>Specify which ports are allowed for SSL (HTTP CONNECT) access.
-        Note that this allows arbitrary tunnelling, so opening all
-        ports would be a security hole.</td>
       <td class="en1" align="center" valign="middle"><input type="radio"
         name="limit_connect" id="limit_connect_y" value="Y" @limit-connect-y@
         onclick="show_limit_connect_opts(true)"></td>
@@ -578,19 +611,21 @@ function show_wafer_opts(tf)
       <td class="noc1" align="center" valign="middle"><input type="radio"
         name="limit_connect" value="X" @limit-connect-x@
         onclick="show_limit_connect_opts(false)"></td>
+      <td class="action">+limit-connect</td>
+      <td>Specify which ports are allowed for SSL (HTTP CONNECT) access.
+        Note that this allows arbitrary tunnelling, so opening all
+        ports would be a security hole.</td>
     </tr>
     <tr class="bg1" align="left" valign="top" id="limit_connect_opts">
+      <td class="en1">&nbsp;</td>
+      <td class="dis1">&nbsp;</td>
+      <td class="noc1">&nbsp;</td>
       <td>&nbsp;</td>
-      <td colspan="4">Legal SSL ports (comma separated, ranges allowed):<br>
+      <td>Legal SSL ports (comma separated, ranges allowed):<br>
         <input type="text" name="limit_connect_mode" size="40"
         value="@limit-connect-param@"></td>
     </tr>
     <tr class="bg2" align="left" valign="top">
-      <td class="action">+no-compression</td>
-      <td>Disables compression.  Compressed web pages are faster to
-        download, but cannot be filtered with +filter or +no-popups.
-        This setting only affects the few web sites which support
-        compression.</td>
       <td class="en2" align="center" valign="middle"><input type="radio"
         name="no_compression" value="Y" @no-compression-y@
         ></td>
@@ -600,15 +635,13 @@ function show_wafer_opts(tf)
       <td class="noc2" align="center" valign="middle"><input type="radio"
         name="no_compression" value="X" @no-compression-x@
         ></td>
+      <td class="action">+no-compression</td>
+      <td>Disables compression.  Compressed web pages are faster to
+        download, but cannot be filtered with +filter or +no-popups.
+        This setting only affects the few web sites which support
+        compression.</td>
     </tr>
     <tr class="bg1" align="left" valign="top">
-      <td class="action">+no-cookies-keep</td>
-      <td>Any cookies set by the website are changed to temporary
-        ("per-session") ones, which only last until you close your web
-        browser.  This will allow you to use sites that require cookies, but
-        sites will not be able to track you across sessions.  For this to
-        be useful, you should disable <b><i>no-cookies-read</i></b> and
-        <b><i>no-cookies-set</i></b>.</td>
       <td class="en1" align="center" valign="middle"><input type="radio"
         name="no_cookies_keep" value="Y" @no-cookies-keep-y@
         ></td>
@@ -618,10 +651,15 @@ function show_wafer_opts(tf)
       <td class="noc1" align="center" valign="middle"><input type="radio"
         name="no_cookies_keep" value="X" @no-cookies-keep-x@
         ></td>
+      <td class="action">+no-cookies-keep</td>
+      <td>Any cookies set by the website are changed to temporary
+        ("per-session") ones, which only last until you close your web
+        browser.  This will allow you to use sites that require cookies, but
+        sites will not be able to track you across sessions.  For this to
+        be useful, you should disable <b><i>no-cookies-read</i></b> and
+        <b><i>no-cookies-set</i></b>.</td>
     </tr>
     <tr class="bg2" align="left" valign="top">
-      <td class="action">+no-cookies-read</td>
-      <td>Prevent the website from reading cookies.</td>
       <td class="en2" align="center" valign="middle"><input type="radio"
         name="no_cookies_read" value="Y" @no-cookies-read-y@
         ></td>
@@ -631,10 +669,10 @@ function show_wafer_opts(tf)
       <td class="noc2" align="center" valign="middle"><input type="radio"
         name="no_cookies_read" value="X" @no-cookies-read-x@
         ></td>
+      <td class="action">+no-cookies-read</td>
+      <td>Prevent the website from reading cookies.</td>
     </tr>
     <tr class="bg1" align="left" valign="top">
-      <td class="action">+no-cookies-set</td>
-      <td>Prevent the website from setting cookies.</td>
       <td class="en1" align="center" valign="middle"><input type="radio"
         name="no_cookies_set" value="Y" @no-cookies-set-y@
         ></td>
@@ -644,11 +682,10 @@ function show_wafer_opts(tf)
       <td class="noc1" align="center" valign="middle"><input type="radio"
         name="no_cookies_set" value="X" @no-cookies-set-x@
         ></td>
+      <td class="action">+no-cookies-set</td>
+      <td>Prevent the website from setting cookies.</td>
     </tr>
     <tr class="bg2" align="left" valign="top">
-      <td class="action">+no-popups</td>
-      <td>Filter the website through a built-in filter to disable JavaScript
-        pop-up windows.</td>
       <td class="en2" align="center" valign="middle"><input type="radio"
         name="no_popups" value="Y" @no-popups-y@
         ></td>
@@ -658,10 +695,11 @@ function show_wafer_opts(tf)
       <td class="noc2" align="center" valign="middle"><input type="radio"
         name="no_popups" value="X" @no-popups-x@
         ></td>
+      <td class="action">+no-popups</td>
+      <td>Filter the website through a built-in filter to disable JavaScript
+        pop-up windows.</td>
     </tr>
     <tr class="bg1" align="left" valign="top">
-      <td class="action">+vanilla-wafer</td>
-      <td>If you use a jarfile, automatically adds a special wafer.</td>
       <td class="en1" align="center" valign="middle"><input type="radio"
         name="vanilla_wafer" value="Y" @vanilla-wafer-y@
         ></td>
@@ -671,10 +709,10 @@ function show_wafer_opts(tf)
       <td class="noc1" align="center" valign="middle"><input type="radio"
         name="vanilla_wafer" value="X" @vanilla-wafer-x@
         ></td>
+      <td class="action">+vanilla-wafer</td>
+      <td>If you use a jarfile, automatically adds a special wafer.</td>
     </tr>
     <tr class="bg2" align="left" valign="top">
-      <td class="action">+wafer</td>
-      <td>Adds user-specified cookies.</td>
       <td class="en2" align="center" valign="middle"><input type="radio"
         name="wafer" id="wafer_y" value="Y" @wafer-y@
         onclick="show_wafer_opts(true)"></td>
@@ -684,10 +722,15 @@ function show_wafer_opts(tf)
       <td class="noc2" align="center" valign="middle"><input type="radio"
         name="wafer" id="wafer_x" value="X" @wafer-x@
         onclick="show_wafer_opts(false)"></td>
+      <td class="action">+wafer</td>
+      <td>Adds user-specified cookies.</td>
     </tr>
     <tr class="bg2" align="left" valign="top" id="wafer_opts">
+      <td class="en2">&nbsp;</td>
+      <td class="dis2">&nbsp;</td>
+      <td class="noc2">&nbsp;</td>
       <td>&nbsp;</td>
-      <td colspan="4">Editing the settings for this option, or turning
+      <td>Editing the settings for this option, or turning
         it on if it was off, is not yet supported using this web-based
         editor.</td>
     </tr>
@@ -745,6 +788,37 @@ if (document.getElementById) {
       </td>
     </tr>
 
+<!-- @if-unstable-start -->
+# This will only appear if CODE_STATUS is "alpha" or "beta". See configure.in
+    <tr>
+      <td style="background-color: #ffdddd" >
+        <p><b>Please note that this <span style="color: #ff0000">@code-status@</span> release
+          of the proxy software is not intended for production systems!
+          <br>Use at your own risk. See the <a href="http://www.gnu.org/copyleft/gpl.html">license</a> for details.</b>
+        </p>
+
+       <p>
+<h2>Support and Service via Sourceforge</h2>
+<p>
+We value your feedback. However, to provide you with the best support,
+please note:
+<ul>
+  <li>Use the <a href="http://sourceforge.net/tracker/?group_id=11118&atid=211118">support forum</a> to get
+  help.</li>
+  <li>Submit bugs only thru our <a href="http://sourceforge.net/tracker/?group_id=11118&atid=111118">bug
+      forum</a>. Make sure that the bug has not yet been submitted.</li>
+  <li>Submit feature requests only thru our <a
+      href="http://sourceforge.net/tracker/?atid=361118&group_id=11118&func=browse">feature request forum</a>.</li>
+</ul>
+</p>
+<p>
+For any other issues, feel free to use the <a
+href="http://sourceforge.net/mail/?group_id=11118">mailing lists</a>.
+</p>
+      </td>
+    </tr>
+<!-- if-unstable-end@ -->
+
 <!-- @if-have-help-info-start -->
     <tr>
       <td class="light">