Have hide-if-modified-since interpret the random
[privoxy.git] / templates / edit-actions-for-url
1 ##############################################################################
2 #
3 # File        :  $Source: /cvsroot/ijbswa/current/templates/edit-actions-for-url,v $
4 #
5 # Purpose     :  Template used to edit the actions associated with a
6 #                particular section in an actions file.
7
8 #
9 # Copyright   :  Written by and Copyright (C) 2001 the SourceForge
10 #                Privoxy team. http://www.privoxy.org/
11 #
12 #                Original Author: Copyright (C) 2001 Jonathan Foster
13 #                http://www.jon-foster.co.uk/
14 #
15 #                This program is free software; you can redistribute it 
16 #                and/or modify it under the terms of the GNU General
17 #                Public License as published by the Free Software
18 #                Foundation; either version 2 of the License, or (at
19 #                your option) any later version.
20 #
21 #                This program is distributed in the hope that it will
22 #                be useful, but WITHOUT ANY WARRANTY; without even the
23 #                implied warranty of MERCHANTABILITY or FITNESS FOR A
24 #                PARTICULAR PURPOSE.  See the GNU General Public
25 #                License for more details.
26 #
27 #                The GNU General Public License should be included with
28 #                this file.  If not, you can view it at
29 #                http://www.gnu.org/copyleft/gpl.html
30 #                or write to the Free Software Foundation, Inc., 59
31 #                Temple Place - Suite 330, Boston, MA  02111-1307, USA.
32 #
33 # Revisions   :
34 #    $Log: edit-actions-for-url,v $
35 #    Revision 1.37  2006/09/05 18:20:14  fabiankeil
36 #    Sorted alphabetically, fixed spelling mistakes
37 #    and shortened some descriptions.
38 #
39 #    Revision 1.36  2006/08/14 08:29:17  fabiankeil
40 #    Split filter-headers{} into filter-client-headers{}
41 #    and filter-server-headers{}.
42 #
43 #    Revision 1.35  2006/08/03 02:46:42  david__schmidt
44 #    Incorporate Fabian Keil's patch work:\rhttp://www.fabiankeil.de/sourcecode/privoxy/
45 #
46 #    Revision 1.34  2006/07/18 14:49:13  david__schmidt
47 #    Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch)
48 #    with what was really the latest development (the v_3_0_branch branch)
49 #
50 #    Revision 1.29.2.5  2004/10/05 03:17:26  david__schmidt
51 #    Typo: inspect_jpegs, not inspect-jpegs in form
52 #
53 #    Revision 1.29.2.4  2004/10/03 12:53:46  david__schmidt
54 #    Add the ability to check jpeg images for invalid
55 #    lengths of comment blocks.  Defensive strategy
56 #    against the exploit:
57 #       Microsoft Security Bulletin MS04-028
58 #       Buffer Overrun in JPEG Processing (GDI+) Could
59 #       Allow Code Execution (833987)
60 #    Enabled with +inspect-jpegs in actions files.
61 #
62 #    Revision 1.29.2.3  2002/08/23 02:22:53  hal9
63 #    Fix a perl brain fart with <li> in comments.
64 #
65 #    Revision 1.29.2.1  2002/08/02 12:51:42  oes
66 #    Added top submit button; Consistency with docs: Change default name for action from hide-referer to hide-referrer
67 #
68 #    Revision 1.29  2002/05/21 19:10:57  oes
69 #    Fixed JavaScript error
70 #
71 #    Revision 1.28  2002/05/14 21:36:38  oes
72 #     - Renamed prevent-(setting/reading)-cookies to
73 #       crunch-(incoming/outgoing)-cookies
74 #     - Renamed helplink export to actions-help-prefix
75 #     - Restored alphabetical order of actions
76 #
77 #    Revision 1.27  2002/04/26 22:55:26  jongfoster
78 #    Removing the alternating colors because they've been wrong
79 #    since the actions renames, they're high maintenance, they
80 #    don't look particularly good, and now there are gaps between
81 #    the table cells we don't need them.
82 #
83 #    Revision 1.26  2002/04/26 21:55:17  jongfoster
84 #    Cosmetic change: Making the +filter UI look the same as
85 #    the other actions.
86 #
87 #    Revision 1.25  2002/04/26 21:37:50  jongfoster
88 #    Fixing all(?) the substitutions that were broken in the
89 #    recent actions rename.
90 #
91 #    Revision 1.24  2002/04/26 18:24:28  jongfoster
92 #    Fixing typos in help hyperlinks
93 #
94 #    Revision 1.23  2002/04/26 12:57:02  oes
95 #    Actions renamed, alphabetically sorted, comments fixed, and names linked to help
96 #
97 #    Revision 1.22  2002/04/10 13:32:53  oes
98 #    Made templates modular
99 #
100 #    Revision 1.21  2002/04/08 17:05:18  oes
101 #    Inline a style exception
102 #
103 #    Revision 1.20  2002/04/05 16:01:30  oes
104 #    Correct HTML, external Stylesheets, eye candy, some fixes
105 #
106 #    Revision 1.19  2002/03/26 22:29:56  swa
107 #    we have a new homepage!
108 #
109 #    Revision 1.18  2002/03/24 16:32:08  jongfoster
110 #    Removing logo option
111 #
112 #    Revision 1.17  2002/03/24 15:23:33  jongfoster
113 #    Name changes
114 #
115 #    Revision 1.16  2002/03/24 11:01:06  swa
116 #    name change
117 #
118 #    Revision 1.15  2002/03/23 16:18:15  swa
119 #    renamed every reference to the old name with foobar.
120 #    fixed "application foobar application" tag, fixed
121 #    "the foobar" with "foobar". left junkbuster in cvs
122 #    comments and remarks to history untouched. should
123 #    make final rename easier.
124 #
125 #    Revision 1.14  2002/03/16 15:22:19  jongfoster
126 #    Moving 'alpha' warning to the end of the page
127 #
128 #    Revision 1.13  2002/03/16 14:28:38  jongfoster
129 #    First version of modular filters support
130 #
131 #    Revision 1.12  2002/03/12 01:42:50  oes
132 #    Introduced modular filters
133 #
134 #    Revision 1.11  2002/03/08 18:19:14  jongfoster
135 #    Adding +image-blocker{pattern} option to edit interface
136 #
137 #    Revision 1.10  2002/03/03 10:29:12  swa
138 #    point users to the right feedback forms,
139 #    not necessarily the developer list.
140 #
141 #    Revision 1.9  2002/01/23 00:26:45  jongfoster
142 #    Reducing length of URLs
143 #    Where encoded and unencoded versions of a string existed, removing
144 #    the unencoded one.
145 #
146 #    Revision 1.8  2002/01/17 21:33:00  jongfoster
147 #    Replacing all references to the URL of the config interface
148 #    with @default-cgi@
149 #
150 #    Revision 1.7  2002/01/17 21:21:03  jongfoster
151 #    DOS->Unix line endings
152 #
153 #    Revision 1.6  2001/11/22 21:58:41  jongfoster
154 #    Adding action +no-cookies-keep
155 #
156 #    Revision 1.5  2001/11/13 21:12:17  jongfoster
157 #    Added support for the following actions:
158 #    +downgrade, +limit-connect, +no-compression
159 #
160 #    Revision 1.4  2001/11/13 00:58:18  jongfoster
161 #    New version of actions file editor templates
162 #
163 #
164 ##############################################################################
165 #
166 # Browser support for the JavaScript on this page:
167 #   MS Internet Explorer 5.5 - Tested,   Yes
168 #   Netscape 6.0             - Tested,   Yes
169 #   Netscape 4.75            - Tested,   NO
170 #   Opera 5.12               - Tested,   NO
171 #   MS Internet Explorer 4+  - Untested, Yes
172 #   MS IE 3.x, NS3.x         - Untested, NO
173 #   Mozilla >=0.6            - Untested, Yes
174 #
175 # All browsers should work, you just might not get the pretty DHTML effects.
176 #
177 # The effects that only work under the browsers marked "Yes" above are:
178 #  - Text edit boxes that won't have any effect are disabled.
179 #  - Table rows containing additional settings are hidden if the feature in
180 #    question is disabled.
181 #
182 # There are major kludges to get around these problems with NS4, but they
183 # screw up the HTML too much for other browsers.  If anyone wants to try,
184 # here's some descriptions of the kludges:
185 #    http://www.webreference.com/js/tips/991114.html
186 #    http://www.webreference.com/dhtml/column12/outDisplay.html
187 #
188 # If you're favorite browser isn't listed, please test and add it.
189 #
190 #
191 #############################################################################
192 #
193 # Standard support:
194 #
195 # This file currently produces valid HTML 4.01 Strict.
196 #
197 # If you change it, please save the generated page from your web browser
198 # and then upload it to http://validator.w3.org/ for checking.
199 #
200 #############################################################################
201 #
202 # Available variables include:
203 #
204 # action-name-y
205 # action-name-n
206 # action-name-x
207 #
208 # deanimate-gifs-param-first
209 # deanimate-gifs-param-last
210 # hide-from-param-block
211 # hide-from-param-custom
212 # hide-from-param
213 # hide-referrer-param-forge
214 # hide-referrer-param-block
215 # hide-referrer-param-custom
216 # hide-referrer-param
217 # hide-user-agent-param
218 # image-blocker-param-pattern
219 # image-blocker-param-blank
220 # image-blocker-param-custom
221 #
222 #
223 #############################################################################
224 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
225 <html>
226
227 <head>
228   <meta http-equiv="Content-Style-Type" content="text/css">
229   <meta http-equiv="Content-Script-Type" content="text/javascript">
230   <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
231   <meta name="robots" content="noindex,nofollow">
232   <link rel="stylesheet" type="text/css" href="@default-cgi@send-stylesheet">
233
234   <title>Privoxy@@my-hostname@: Edit actions</title>
235
236 <style type="text/css">
237 td.action    { font-weight: bold;
238                font-style: italic;
239                white-space: nowrap       }
240 td.subaction { font-style: italic        }
241 th           { font-weight: bold;        }
242 # This is the key to the color names below:
243 # bg=background, en="Enable", dis="Disable", noc="No Change", hdr=header
244 # 1=odd rows, 2=even rows, h=Table header
245 tr.hdr       { background-color: #999999 }
246 tr.bg1       { background-color: #eeeeee }
247 td.en1       { background-color: #ddffdd }
248 td.dis1      { background-color: #ffdddd }
249 td.noc1      { background-color: #ddddff }
250 th.enh       { background-color: #99ff99 }
251 th.dish      { background-color: #ff9999 }
252 th.noch      { background-color: #9999ff }
253 table.wide   { padding: 5px; }
254 td.green     { border: solid black 1px; background-color: #ddffdd; }
255 </style>
256
257 <!--
258 border-color: white;
259                border-style: solid;
260                border-left-width: 10px;
261                border-right-width: 10px;
262                border-top-width: 0px;
263                border-bottom-width: 0px  }
264 -->
265
266 <script type="text/javascript">
267 <!--
268
269 function hide_from_header_param_disable(tf)
270 {
271     if (document.getElementById) {
272         // NS6 or IE5
273         document.getElementById("hide_from_header_param").disabled = tf;
274     } else if (document.all) {
275         // IE4
276         document.myform.hide_from_header_param.disabled = tf;
277     }
278 }
279
280 function hide_referrer_param_disable(tf)
281 {
282     if (document.getElementById) {
283         document.getElementById("hide_referrer_param").disabled = tf;
284     } else if (document.all) {
285         document.myform.hide_referrer_param.disabled = tf;
286     }
287 }
288
289 function set_image_blocker_param_disable(tf)
290 {
291     if (document.getElementById) {
292         document.getElementById("set_image_blocker_param").disabled = tf;
293     } else if (document.all) {
294         document.myform.set_image_blocker_param.disabled = tf;
295     }
296 }
297
298 function show_add_header_opts(tf)
299 {
300     if (document.getElementById) {
301         target = document.getElementById("add_header_opts");
302     } else if (document.all) {
303         target = document.add_header_opts;
304     } else {
305         return;
306     }
307     target.style.display = (tf ? "" : "none");
308 }
309
310 function show_deanimate_opts(tf)
311 {
312     if (document.getElementById) {
313         target = document.getElementById("deanimate_opts");
314     } else if (document.all) {
315         target = document.deanimate_opts;
316     } else {
317         return;
318     }
319     target.style.display = (tf ? "" : "none");
320 }
321
322 function show_hide_from_header_opts(tf)
323 {
324     if (document.getElementById) {
325         target = document.getElementById("hide_from_header_opts");
326     } else if (document.all) {
327         target = document.hide_from_header_opts;
328     } else {
329         return;
330     }
331     target.style.display = (tf ? "" : "none");
332 }
333
334 function show_hide_referrer_opts(tf)
335 {
336     if (document.getElementById) {
337         target = document.getElementById("hide_referrer_opts");
338     } else if (document.all) {
339         target = document.hide_referrer_opts;
340     } else {
341         return;
342     }
343     target.style.display = (tf ? "" : "none");
344 }
345
346 function show_user_agent_opts(tf)
347 {
348     if (document.getElementById) {
349         target = document.getElementById("user_agent_opts");
350     } else if (document.all) {
351         target = document.user_agent_opts;
352     } else {
353         return;
354     }
355     target.style.display = (tf ? "" : "none");
356 }
357
358 function show_set_image_blocker_opts(tf)
359 {
360     if (document.getElementById) {
361         target = document.getElementById("set_image_blocker_opts");
362     } else if (document.all) {
363         target = document.set_image_blocker_opts;
364     } else {
365         return;
366     }
367     target.style.display = (tf ? "" : "none");
368 }
369
370 function show_limit_connect_opts(tf)
371 {
372     if (document.getElementById) {
373         target = document.getElementById("limit_connect_opts");
374     } else if (document.all) {
375         target = document.limit_connect_opts;
376     } else {
377         return;
378     }
379     target.style.display = (tf ? "" : "none");
380 }
381
382 function show_send_wafer_opts(tf)
383 {
384     if (document.getElementById) {
385         target = document.getElementById("send_wafer_opts");
386     } else if (document.all) {
387         target = document.send_wafer_opts;
388     } else {
389         return;
390     }
391     target.style.display = (tf ? "" : "none");
392 }
393
394 //-->
395 </script>
396 </head>
397
398 <body>
399
400 <form method="GET" action="edit-actions-submit" id="myform" name="myform">
401
402   <table cellpadding="20" cellspacing="10" border="0" width="100%">
403     <tr>
404       <td class="title">
405
406 #include mod-title
407
408       </td>
409     </tr>
410
411 <!-- @if-unstable-start -->
412 # This will only appear if CODE_STATUS is "alpha" or "beta". See configure.in
413     <tr>
414       <td class="warning">
415
416 #include mod-unstable-warning
417
418       </td>
419     </tr>
420 <!-- if-unstable-end@ -->
421
422     <tr>
423       <td class="box">
424         <h2>Edit Actions
425           <input type="hidden" name="f" value="@f@">
426           <input type="hidden" name="v" value="@v@">
427           <input type="hidden" name="s" value="@s@">
428         </h2>
429       </td>
430     </tr>
431
432     <tr>
433       <td class="green" align="center">
434         <p><input type="submit" value="Submit" name="Submit"></p>
435       </td>
436     </tr>
437
438 <tr><td class="wrapbox">
439
440   <table border="0" cellspacing="2" width="100%" class="wide">
441     <tr class="hdr" align="left">
442       <th class="enh" align="center">Enable</th>
443       <th class="dish" align="center">Disable</th>
444       <th class="noch" align="center">No Change</th>
445       <th>Action</th>
446       <th>Description</th>
447     </tr>
448     <tr class="bg1" align="left" valign="top">
449       <td class="en1" align="center" valign="middle"><input type="radio"
450         name="add_header" id="add_header_y" value="Y" @add-header-y@
451         onclick="show_add_header_opts(true)"></td>
452       <td class="dis1" align="center" valign="middle"><input type="radio"
453         name="add_header" value="N" @add-header-n@
454         onclick="show_add_header_opts(false)"></td>
455       <td class="noc1" align="center" valign="middle"><input type="radio"
456         name="add_header" value="X" @add-header-x@
457         onclick="show_add_header_opts(false)"></td>
458       <td class="action"><a href="@user-manual@@actions-help-prefix@ADD-HEADER">add-header</a></td>
459       <td>Adds HTTP headers.</td>
460     </tr>
461     <tr class="bg1" align="left" valign="top" id="add_header_opts">
462       <td class="en1">&nbsp;</td>
463       <td class="dis1">&nbsp;</td>
464       <td class="noc1">&nbsp;</td>
465       <td>&nbsp;</td>
466       <td>Editing the settings for this option, or turning
467         it on if it was off, is not yet supported using this web-based
468         editor.</td>
469     </tr>
470     <tr class="bg1" align="left" valign="top">
471       <td class="en1" align="center" valign="middle"><input type="radio"
472         name="block" value="Y" @block-y@
473         ></td>
474       <td class="dis1" align="center" valign="middle"><input type="radio"
475         name="block" value="N" @block-n@
476         ></td>
477       <td class="noc1" align="center" valign="middle"><input type="radio"
478         name="block" value="X" @block-x@
479         ></td>
480       <td class="action"><a href="@user-manual@@actions-help-prefix@BLOCK">block</a></td>
481       <td>Block the request</td>
482     </tr>
483    <tr class="bg1" align="left" valign="top">
484       <td class="en1" align="center" valign="middle"><input type="radio"
485         name="content_type_overwrite" value="Y" @content-type-overwrite-y@
486         ></td>
487       <td class="dis1" align="center" valign="middle"><input type="radio"
488         name="content_type_overwrite" value="N" @content-type-overwrite-n@
489         ></td>
490       <td class="noc1" align="center" valign="middle"><input type="radio"
491         name="content_type_overwrite" value="X" @content-type-overwrite-x@
492         ></td>
493       <td class="action"><a href="@user-manual@@actions-help-prefix@CONTENT_TYPE_OVERWRITE">content-type-overwrite</a></td>
494       <td>Replace Content-Type header. By default it only applies to
495          text documents, but if you know what you're doing you
496          can enable force-text-mode to modify binary content types as well.</td>
497     </tr>
498     <tr class="bg1" align="left" valign="top" id="content_type_overwrite_opts">
499       <td class="en1">&nbsp;</td>
500       <td class="dis1">&nbsp;</td>
501       <td class="noc1">&nbsp;</td>
502       <td>&nbsp;</td>
503       <td>New Content-Type:<br>
504         <input type="text" name="content_type_overwrite_mode" size="40"
505         value="@content-type-overwrite-param@"></td>
506     </tr>
507     <tr class="bg1" align="left" valign="top">
508       <td class="en1" align="center" valign="middle"><input type="radio"
509         name="crunch_client_header" id="crunch_client_header_y" value="Y" @crunch-client-header-y@
510         ></td>
511       <td class="dis1" align="center" valign="middle"><input type="radio"
512         name="crunch_client_header" value="N" @crunch-client-header-n@
513         ></td>
514       <td class="noc1" align="center" valign="middle"><input type="radio"
515         name="crunch_client_header" value="X" @crunch-client-header-x@
516         ></td>
517       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-CLIENT-HEADER">crunch-client-header</a></td>
518       <td>Remove header(s) matching the supplied pattern.</td>
519     </tr>
520     <tr class="bg1" align="left" valign="top" id="crunch_client_header_opts">
521       <td class="en1">&nbsp;</td>
522       <td class="dis1">&nbsp;</td>
523       <td class="noc1">&nbsp;</td>
524       <td>&nbsp;</td>
525       <td>Header string to suppress:<br>
526         <input type="text" name="crunch_client_header_mode" size="40"
527         value="@crunch-client-header-param@"></td>
528     </tr>
529     <tr class="bg1" align="left" valign="top">
530       <td class="en1" align="center" valign="middle"><input type="radio"
531         name="crunch_if_none_match" value="Y" @crunch-if-none-match-y@
532         ></td>
533       <td class="dis1" align="center" valign="middle"><input type="radio"
534         name="crunch_if_none_match" value="N" @crunch-if-none-match-n@
535         ></td>
536       <td class="noc1" align="center" valign="middle"><input type="radio"
537         name="crunch_if_none_match" value="X" @crunch-if-none-match-x@
538         ></td>
539       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH_IF_NONE_MATCH">crunch-if-none-match</a></td>
540       <td>Remove If-None-Match header. Useful for filter testing
541          and to make sure the header can't be used to track your visits.</td>
542     </tr>
543
544     <tr class="bg1" align="left" valign="top">
545       <td class="en1" align="center" valign="middle"><input type="radio"
546         name="crunch_incoming_cookies" value="Y" @crunch-incoming-cookies-y@
547         ></td>
548       <td class="dis1" align="center" valign="middle"><input type="radio"
549         name="crunch_incoming_cookies" value="N" @crunch-incoming-cookies-n@
550         ></td>
551       <td class="noc1" align="center" valign="middle"><input type="radio"
552         name="crunch_incoming_cookies" value="X" @crunch-incoming-cookies-x@
553         ></td>
554       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES">crunch-incoming-cookies</a></td>
555       <td>Prevent the website from setting cookies on your system.</td>
556     </tr>
557     <tr class="bg1" align="left" valign="top">
558       <td class="en1" align="center" valign="middle"><input type="radio"
559         name="crunch_outgoing_cookies" value="Y" @crunch-outgoing-cookies-y@
560         ></td>
561       <td class="dis1" align="center" valign="middle"><input type="radio"
562         name="crunch_outgoing_cookies" value="N" @crunch-outgoing-cookies-n@
563         ></td>
564       <td class="noc1" align="center" valign="middle"><input type="radio"
565         name="crunch_outgoing_cookies" value="X" @crunch-outgoing-cookies-x@
566         ></td>
567       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES">crunch-outgoing-cookies</a></td>
568       <td>Prevent the website from reading cookies from your system.</td>
569     </tr>
570     <tr class="bg1" align="left" valign="top">
571       <td class="en1" align="center" valign="middle"><input type="radio"
572         name="crunch_server_header" id="crunch_server_header_y" value="Y" @crunch-server-header-y@
573         ></td>
574       <td class="dis1" align="center" valign="middle"><input type="radio"
575         name="crunch_server_header" value="N" @crunch-server-header-n@
576         ></td>
577       <td class="noc1" align="center" valign="middle"><input type="radio"
578         name="crunch_server_header" value="X" @crunch-server-header-x@
579         ></td>
580       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-SERVER-HEADER">crunch-server-header</a></td>
581       <td>Remove server header(s) matching the supplied pattern.</td>
582     </tr>
583     <tr class="bg1" align="left" valign="top" id="crunch_server_header_opts">
584       <td class="en1">&nbsp;</td>
585       <td class="dis1">&nbsp;</td>
586       <td class="noc1">&nbsp;</td>
587       <td>&nbsp;</td>
588       <td>Header string to suppress:<br>
589         <input type="text" name="crunch_server_header_mode" size="40"
590         value="@crunch-server-header-param@"></td>
591     </tr>
592
593     <tr class="bg1" align="left" valign="top">
594       <td class="en1" align="center" valign="middle"><input type="radio"
595         name="deanimate_gifs" id="deanimate_gifs_y" value="Y" @deanimate-gifs-y@
596         onclick="show_deanimate_opts(true)"></td>
597       <td class="dis1" align="center" valign="middle"><input type="radio"
598         name="deanimate_gifs" value="N" @deanimate-gifs-n@
599         onclick="show_deanimate_opts(false)"></td>
600       <td class="noc1" align="center" valign="middle"><input type="radio"
601         name="deanimate_gifs" value="X" @deanimate-gifs-x@
602         onclick="show_deanimate_opts(false)"></td>
603       <td class="action"><a href="@user-manual@@actions-help-prefix@DEANIMATE-GIFS">deanimate-gifs</a></td>
604       <td>Replace animated GIFs with their (first/last) frame.</td>
605     </tr>
606     <tr class="bg1" align="left" valign="top" id="deanimate_opts">
607       <td class="en1">&nbsp;</td>
608       <td class="dis1">&nbsp;</td>
609       <td class="noc1">&nbsp;</td>
610       <td>&nbsp;</td>
611       <td>Use the <input type="radio" name="deanimate_gifs_mode"
612         value="first" id="deanimate_first" @deanimate-gifs-param-first@><label
613         for="deanimate_first">first frame</label>&nbsp;&nbsp; <input
614         type="radio" name="deanimate_gifs_mode" value="last" 
615         id="deanimate_last" @deanimate-gifs-param-last@><label
616         for="deanimate_last">last frame</label></td>
617     </tr>
618     <tr class="bg1" align="left" valign="top">
619       <td class="en1" align="center" valign="middle"><input type="radio"
620         name="downgrade_http_version" value="Y" @downgrade-http-version-y@></td>
621       <td class="dis1" align="center" valign="middle"><input type="radio"
622         name="downgrade_http_version" value="N" @downgrade-http-version-n@></td>
623       <td class="noc1" align="center" valign="middle"><input type="radio"
624         name="downgrade_http_version" value="X" @downgrade-http-version-x@></td>
625       <td class="action"><a href="@user-manual@@actions-help-prefix@DOWNGRADE-HTTP-VERSION"
626        >downgrade-http-version</a></td>
627       <td>Change HTTP/1.1 requests to HTTP/1.0.  Only change if you know
628         what you're doing!</td>
629     </tr>
630     <tr class="bg1" align="left" valign="top">
631       <td class="en1" align="center" valign="middle"><input type="radio"
632         name="fast_redirects" value="Y" @fast-redirects-y@
633         ></td>
634       <td class="dis1" align="center" valign="middle"><input type="radio"
635         name="fast_redirects" value="N" @fast-redirects-n@
636         ></td>
637       <td class="noc1" align="center" valign="middle"><input type="radio"
638         name="fast_redirects" value="X" @fast-redirects-x@
639         ></td>
640       <td class="action"><a href="@user-manual@@actions-help-prefix@FAST-REDIRECTS">fast-redirects</a></td>
641       <td>Bypass some click-tracking URLs.</td>
642     </tr>
643     <tr class="bg1" align="left" valign="top" id="fast-redirects_opts">
644       <td class="en1">&nbsp;</td>
645       <td class="dis1">&nbsp;</td>
646       <td class="noc1">&nbsp;</td>
647       <td>&nbsp;</td>
648       <td>
649        <input type="radio" name="fast_redirects_mode"
650         value="simple-check" id="fast_redirects_simple_check" @fast-redirects-param-simple-check@><label
651         for="fast_redirects_simple_check">Simple check.</label>
652        <br>
653        <input type="radio" name="fast_redirects_mode" value="check-decoded-url" 
654         id="fast_redirects_check_decoded_url" @fast-redirects-param-check-decoded-url@><label
655         for="fast_redirects_check_decoded_url">Decode URL before checking.</label></td>
656     </tr>
657     <tr class="bg1" align="left" valign="top">
658       <td class="en1">&nbsp;</td>
659       <td class="dis1" align="center" valign="middle"><input type="radio"
660         name="filter_all" id="filter_all_n" value="N" @filter-all-n@ ></td>
661       <td class="noc1" align="center" valign="middle"><input type="radio"
662         name="filter_all" id="filter_all_x" value="X" @filter-all-x@ ></td>
663       <td class="action"><a href="@user-manual@@actions-help-prefix@FILTER">filter</a> *</td>
664       <td>Filter the website through regular expression
665         filters.  You can use the radio buttons on this line to disable
666         all filters applied by previous rules, and/or you can enable or
667         disable the filters individually below.</td>
668     </tr>
669 @filter-params@
670     <tr class="bg1" align="left" valign="top">
671       <td class="en1" align="center" valign="middle"><input type="radio"
672         name="filter_client_headers" value="Y" @filter-client-headers-y@
673         ></td>
674       <td class="dis1" align="center" valign="middle"><input type="radio"
675         name="filter_client_headers" value="N" @filter-client-headers-n@
676         ></td>
677       <td class="noc1" align="center" valign="middle"><input type="radio"
678         name="filter_client_headers" value="X" @filter-client-headers-x@
679         ></td>
680       <td class="action"><a href="@user-manual@@actions-help-prefix@FILTER-CLIENT-HEADERS">filter-client-headers</a></td>
681       <td>Apply filters to the client headers as well. Only enable this if you know what you're doing.</td>
682     </tr>
683     <tr class="bg1" align="left" valign="top">
684       <td class="en1" align="center" valign="middle"><input type="radio"
685         name="filter_server_headers" value="Y" @filter-server-headers-y@
686         ></td>
687       <td class="dis1" align="center" valign="middle"><input type="radio"
688         name="filter_server_headers" value="N" @filter-server-headers-n@
689         ></td>
690       <td class="noc1" align="center" valign="middle"><input type="radio"
691         name="filter_server_headers" value="X" @filter-server-headers-x@
692         ></td>
693       <td class="action"><a href="@user-manual@@actions-help-prefix@FILTER-SERVER-HEADERS">filter-server-headers</a></td>
694       <td>Apply filters to the server headers as well. Only enable this if you know what you're doing.</td>
695     </tr>
696
697    <tr class="bg1" align="left" valign="top">
698       <td class="en1" align="center" valign="middle"><input type="radio"
699         name="force_text_mode" value="Y" @force-text-mode-y@
700         ></td>
701       <td class="dis1" align="center" valign="middle"><input type="radio"
702         name="force_text_mode" value="N" @force-text-mode-n@
703         ></td>
704       <td class="noc1" align="center" valign="middle"><input type="radio"
705         name="force_text_mode" value="X" @force-text-mode-x@
706         ></td>
707       <td class="action"><a href="@user-manual@@actions-help-prefix@FORCE_TEXT_MODE">force-text-mode</a></td>
708       <td>
709        Enable filtering on documents whose Content-Type wasn't recognized as text.
710        Do think twice, nothing is alright.
711      </td>
712     </tr>
713    <tr class="bg1" align="left" valign="top">
714       <td class="en1" align="center" valign="middle"><input type="radio"
715         name="handle_as_empty_document" value="Y" @handle-as-empty-document-y@
716         ></td>
717       <td class="dis1" align="center" valign="middle"><input type="radio"
718         name="handle_as_empty_document" value="N" @handle-as-empty-document-n@
719         ></td>
720       <td class="noc1" align="center" valign="middle"><input type="radio"
721         name="handle_as_empty_document" value="X" @handle-as-empty-document-x@
722         ></td>
723       <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE_AS_EMPTY_DOCUMENT">handle-as-empty-document</a></td>
724       <td>
725        Block with an <em>empty</em> document instead of an Image or HTML message.
726        The <em>empty</em> document contains only a space and can safely be parsed
727        as JavaScript or Style Sheet. Use content-type-overwrite to specify the
728        Content-Type, default is <q>text/html</q>.
729      </td>
730     </tr>
731     <tr class="bg1" align="left" valign="top">
732       <td class="en1" align="center" valign="middle"><input type="radio"
733         name="handle_as_image" value="Y" @handle-as-image-y@
734         ></td>
735       <td class="dis1" align="center" valign="middle"><input type="radio"
736         name="handle_as_image" value="N" @handle-as-image-n@
737         ></td>
738       <td class="noc1" align="center" valign="middle"><input type="radio"
739         name="handle_as_image" value="X" @handle-as-image-x@
740         ></td>
741       <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE-AS-IMAGE">handle-as-image</a></td>
742       <td>Request is for an image (only useful in conjunction with the <i><b><a href="@user-manual@@actions-help-prefix@BLOCK">block</a></b></i>
743         and <i><b><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></b></i> actions).</td>
744     </tr>
745     <tr class="bg1" align="left" valign="top">
746       <td class="en1" align="center" valign="middle"><input type="radio"
747         name="hide_accept_language" id="hide_accept_language_y" value="Y" @hide-accept-language-y@
748         onclick="show_hide_accept_language_opts(true)"></td>
749       <td class="dis1" align="center" valign="middle"><input type="radio"
750         name="hide_accept_language" id="hide_accept_language_n" value="N" @hide-accept-language-n@
751         onclick="show_hide_accept_language_opts(false)"></td>
752       <td class="noc1" align="center" valign="middle"><input type="radio"
753         name="hide_accept_language" id="hide_accept_language_x" value="X" @hide-accept-language-x@
754         onclick="show_hide_accept_language_opts(false)"
755         ></td>
756       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-ACCEPT-LANGUAGE">hide-accept-language</a></td>
757       <td>Pretend to have different language settings. (Makes a fake User-Agent more believable,
758           but can lead to foreign content.)</td>
759     </tr>
760     <tr class="bg1" align="left" valign="top" id="hide_accept-language_opts">
761       <td class="en1">&nbsp;</td>
762       <td class="dis1">&nbsp;</td>
763       <td class="noc1">&nbsp;</td>
764       <td>&nbsp;</td>
765       <td><input type="radio" name="hide_accept_language_mode" value="block"
766         onclick="hide_accept_language_param_disable(true)"
767         @hide-accept-language-param-block@ id="hide_accept_language_mode_block"><label
768         for="hide_accept_language_mode_block">Remove Accept-Language header without replacement.</label>
769         <br>
770         <input type="radio" name="hide_accept_language_mode" value="CUSTOM"
771         onclick="hide_accept_language_param_disable(false)"
772         @hide-accept-language-param-custom@ id="hide_accept_language_mode_set"><label
773         for="hide_accept_language_mode_set">Fake these language settings:</label><br>
774         <input type="text" name="hide_accept_language_param" 
775         id="hide_accept_language_param" size="40"
776         value="@hide-accept-language-param@"><br>
777      </td>
778     </tr>
779     <tr class="bg1" align="left" valign="top">
780       <td class="en1" align="center" valign="middle"><input type="radio"
781         name="hide_content_disposition" id="hide_content_disposition_y" value="Y" @hide-content-disposition-y@
782         onclick="show_hide_content_disposition_opts(true)"></td>
783       <td class="dis1" align="center" valign="middle"><input type="radio"
784         name="hide_content_disposition" id="hide_content_disposition_n" value="N" @hide-content-disposition-n@
785         onclick="show_hide_content_disposition_opts(false)"></td>
786       <td class="noc1" align="center" valign="middle"><input type="radio"
787         name="hide_content_disposition" id="hide_content_disposition_x" value="X" @hide-content-disposition-x@
788         onclick="show_hide_content_disposition_opts(false)"
789         ></td>
790       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-CONTENT-DISPOSITION">hide-content-disposition</a></td>
791       <td>Block or overwrite the content-disposition header. Useful to view a document inside the browser,
792        even if you were supposed to save it first, or to change the suggested file name.</td>
793     </tr>
794     <tr class="bg1" align="left" valign="top" id="hide_content_disposition_opts">
795       <td class="en1">&nbsp;</td>
796       <td class="dis1">&nbsp;</td>
797       <td class="noc1">&nbsp;</td>
798       <td>&nbsp;</td>
799       <td><input type="radio" name="hide_content_disposition_mode" value="block"
800         onclick="hide_content_disposition_param_disable(true)"
801         @hide-content-disposition-param-block@ id="hide_content_disposition_mode_block"><label
802         for="hide_content_disposition_mode_block">Remove content-disposition header without replacement.</label>
803         <br>
804         <input type="radio" name="hide_content_disposition_mode" value="CUSTOM"
805         onclick="hide_content_disposition_param_disable(false)"
806         @hide-content-disposition-param-custom@ id="hide_content_disposition_mode_set"><label
807         for="hide_content_disposition_mode_set">Overwrite content-dispostion header with:</label><br>
808         <input type="text" name="hide_content_disposition_param" 
809         id="hide_content_disposition_param" size="40"
810         value="@hide-content-disposition-param@"><br>
811      </td>
812     </tr>
813
814     <tr class="bg1" align="left" valign="top">
815       <td class="en1" align="center" valign="middle"><input type="radio"
816         name="hide_forwarded_for_headers" value="Y" @hide-forwarded-for-headers-y@
817         ></td>
818       <td class="dis1" align="center" valign="middle"><input type="radio"
819         name="hide_forwarded_for_headers" value="N" @hide-forwarded-for-headers-n@
820         ></td>
821       <td class="noc1" align="center" valign="middle"><input type="radio"
822         name="hide_forwarded_for_headers" value="X" @hide-forwarded-for-headers-x@
823         ></td>
824       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FORWARDED-FOR-HEADERS">hide-forwarded-for-headers</a></td>
825       <td>Block any existing X-Forwarded-for header, and do not add a new one.</td>
826     </tr>
827     <tr class="bg1" align="left" valign="top">
828       <td class="en1" align="center" valign="middle"><input type="radio"
829         name="hide_from_header" id="hide_from_header_y" value="Y" @hide-from-header-y@
830         onclick="show_hide_from_header_opts(true)"></td>
831       <td class="dis1" align="center" valign="middle"><input type="radio"
832         name="hide_from_header" value="N" @hide-from-header-n@
833         onclick="show_hide_from_header_opts(false)"></td>
834       <td class="noc1" align="center" valign="middle"><input type="radio"
835         name="hide_from_header" value="X" @hide-from-header-x@
836         onclick="show_hide_from_header_opts(false)"></td>
837       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FROM-HEADER">hide-from-header</a></td>
838       <td>Stop old web browsers from sending the user's e-mail address with
839         every request.</td>
840     </tr>
841     <tr class="bg1" align="left" valign="top" id="hide_from_header_opts">
842       <td class="en1">&nbsp;</td>
843       <td class="dis1">&nbsp;</td>
844       <td class="noc1">&nbsp;</td>
845       <td>&nbsp;</td>
846       <td><input type="radio" name="hide_from_header_mode" value="block"
847         onclick="hide_from_header_param_disable(true);"
848         @hide-from-header-param-block@ id="hide_from_header_mode_block"><label
849         for="hide_from_header_mode_block">Remove completely</label><br>
850         <input type="radio" name="hide_from_header_mode" value="CUSTOM" 
851         onclick="hide_from_header_param_disable(false);"
852         @hide-from-header-param-custom@ id="hide_from_header_mode_set"><label
853         for="hide_from_header_mode_set">Fake e-mail address:</label><br>
854         <input type="text" name="hide_from_header_param" id="hide_from_header_param"
855         size="40" value="@hide-from-header-param@"></td>
856     </tr>
857
858    <tr class="bg1" align="left" valign="top">
859       <td class="en1" align="center" valign="middle"><input type="radio"
860         name="hide_if_modified_since" value="Y" @hide-if-modified-since-y@
861         ></td>
862       <td class="dis1" align="center" valign="middle"><input type="radio"
863         name="hide_if_modified_since" value="N" @hide-if-modified-since-n@
864         ></td>
865       <td class="noc1" align="center" valign="middle"><input type="radio"
866         name="hide_if_modified_since" value="X" @hide-if-modified-since-x@
867         ></td>
868       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE_IF_MODIFIED_SINCE">hide-if-modified-since</a></td>
869       <td>Remove or randomize If-Modified-Since header.</td>
870     </tr>
871     <tr class="bg1" align="left" valign="top" id="hide_if-modifed-since_opts">
872       <td class="en1">&nbsp;</td>
873       <td class="dis1">&nbsp;</td>
874       <td class="noc1">&nbsp;</td>
875       <td>&nbsp;</td>
876       <td><input type="radio" name="hide_if_modified_since_mode" value="block"
877         onclick="hide_if_modified_since_param_disable(true)"
878         @hide-if-modified-since-param-block@ id="hide_if_modified_since_mode_block"><label
879         for="hide_if_modified_since_mode_block">Remove without replacement.</label>
880         Useful for filter testing.<br>
881         <input type="radio" name="hide_if_modified_since_mode" value="CUSTOM"
882         onclick="hide_if_modified_since_param_disable(true)"
883         @hide-if-modified-since-param-custom@ id="hide_if_modified_since_mode_set"><label
884         for="hide_if_modified_since_mode_set">Add random amount of seconds in the range of</label>
885         <input type="text" name="hide_if_modified_since_param" 
886         id="hide_if_modified_since_param" size="4"
887         value="@hide-if-modified-since-param@"> minute(s).
888         To appreciate this option a small amount of paranoia is required,
889         but at least in theory the If-Modified-Since header could be used
890         to keep track of your visits.
891      </td>
892     </tr>
893
894     <tr class="bg1" align="left" valign="top">
895       <td class="en1" align="center" valign="middle"><input type="radio"
896         name="hide_referrer" id="hide_referrer_y" value="Y" @hide-referrer-y@
897         onclick="show_hide_referrer_opts(true)"></td>
898       <td class="dis1" align="center" valign="middle"><input type="radio"
899         name="hide_referrer" id="hide_referrer_n" value="N" @hide-referrer-n@
900         onclick="show_hide_referrer_opts(false)"></td>
901       <td class="noc1" align="center" valign="middle"><input type="radio"
902         name="hide_referrer" id="hide_referrer_x" value="X" @hide-referrer-x@
903         onclick="show_hide_referrer_opts(false)"
904         ></td>
905       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-REFERRER">hide-referrer</a></td>
906       <td>Helps prevent tracking by not sending the URL of the previous web
907         page.&nbsp;</td>
908     </tr>
909     <tr class="bg1" align="left" valign="top" id="hide_referrer_opts">
910       <td class="en1">&nbsp;</td>
911       <td class="dis1">&nbsp;</td>
912       <td class="noc1">&nbsp;</td>
913       <td>&nbsp;</td>
914       <td><input type="radio" name="hide_referrer_mode" value="block"
915         onclick="hide_referrer_param_disable(true)"
916         @hide-referrer-param-block@ id="hide_referrer_mode_block"><label
917         for="hide_referrer_mode_block">Remove completely</label> (breaks images
918         on some free web hosts).<br>
919         <input type="radio" name="hide_referrer_mode" value="forge"
920         onclick="hide_referrer_param_disable(true)"
921         @hide-referrer-param-forge@ id="hide_referrer_mode_forge"><label
922         for="hide_referrer_mode_forge">Fake as the root directory of the
923         site</label> (fools checks for in-site links.)<br>
924         <input type="radio" name="hide_referrer_mode" value="CUSTOM"
925         onclick="hide_referrer_param_disable(false)"
926         @hide-referrer-param-custom@ id="hide_referrer_mode_set"><label
927         for="hide_referrer_mode_set">Fake as this web address:</label><br>
928         <input type="text" name="hide_referrer_param" 
929         id="hide_referrer_param" size="40"
930         value="@hide-referrer-param@"><br>
931         <input type="radio" name="hide_referrer_mode" value="conditional-block"
932         onclick="hide_referrer_param_disable(true)"
933         @hide-referrer-param-conditional-block@ id="hide_referrer_mode_conditional-block"><label
934         for="hide_referrer_mode_conditional-block">Remove completely if host has changed,
935         but don't touch in-site referrers.
936         Less suspicious than the options above.</label><br></td>
937     </tr>
938     <tr class="bg1" align="left" valign="top">
939       <td class="en1" align="center" valign="middle"><input type="radio"
940         name="hide_user_agent" id="hide_user_agent_y" value="Y" @hide-user-agent-y@
941         onclick="show_user_agent_opts(true)"></td>
942       <td class="dis1" align="center" valign="middle"><input type="radio"
943         name="hide_user_agent" value="N" @hide-user-agent-n@
944         onclick="show_user_agent_opts(false)"></td>
945       <td class="noc1" align="center" valign="middle"><input type="radio"
946         name="hide_user_agent" value="X" @hide-user-agent-x@
947         onclick="show_user_agent_opts(false)"></td>
948       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-USER-AGENT">hide-user-agent</a></td>
949       <td>Pretend to be using a different web browser.&nbsp; (Breaks many web
950         sites).</td>
951     </tr>
952     <tr class="bg1" align="left" valign="top" id="user_agent_opts">
953       <td class="en1">&nbsp;</td>
954       <td class="dis1">&nbsp;</td>
955       <td class="noc1">&nbsp;</td>
956       <td>&nbsp;</td>
957       <td>User Agent string to send:<br>
958         <input type="text" name="hide_user_agent_mode" size="40"
959         value="@hide-user-agent-param@"></td>
960     </tr>
961     <tr class="bg1" align="left" valign="top">
962       <td class="en1" align="center" valign="middle"><input type="radio"
963         name="inspect_jpegs" value="Y" @inspect-jpegs-y@
964         ></td>
965       <td class="dis1" align="center" valign="middle"><input type="radio"
966         name="inspect_jpegs" value="N" @inspect-jpegs-n@
967         ></td>
968       <td class="noc1" align="center" valign="middle"><input type="radio"
969         name="inspect_jpegs" value="X" @inspect-jpegs-x@
970         ></td>
971       <td class="action"><a href="@user-manual@@actions-help-prefix@INSPECT-JPEGS">inspect-jpegs</a></td>
972       <td>Checks jpeg images for malicious content.</td>
973     </tr>
974     <tr class="bg1" align="left" valign="top">
975       <td class="en1" align="center" valign="middle"><input type="radio"
976         name="kill_popups" value="Y" @kill-popups-y@
977         ></td>
978       <td class="dis1" align="center" valign="middle"><input type="radio"
979         name="kill_popups" value="N" @kill-popups-n@
980         ></td>
981       <td class="noc1" align="center" valign="middle"><input type="radio"
982         name="kill_popups" value="X" @kill-popups-x@
983         ></td>
984       <td class="action"><a href="@user-manual@@actions-help-prefix@KILL-POPUPS">kill-popups</a></td>
985       <td>Filter the website through a built-in filter to disable many JavaScript
986         pop-up windows.</td>
987     </tr>
988     <tr class="bg1" align="left" valign="top">
989       <td class="en1" align="center" valign="middle"><input type="radio"
990         name="limit_connect" id="limit_connect_y" value="Y" @limit-connect-y@
991         onclick="show_limit_connect_opts(true)"></td>
992       <td class="dis1" align="center" valign="middle"><input type="radio"
993         name="limit_connect" value="N" @limit-connect-n@
994         onclick="show_limit_connect_opts(false)"></td>
995       <td class="noc1" align="center" valign="middle"><input type="radio"
996         name="limit_connect" value="X" @limit-connect-x@
997         onclick="show_limit_connect_opts(false)"></td>
998       <td class="action"><a href="@user-manual@@actions-help-prefix@LIMIT-CONNECT">limit-connect</a></td>
999       <td>Specify which ports are allowed for SSL (HTTP CONNECT) access.
1000         Note that this allows arbitrary tunnelling, so opening all
1001         ports would be a security hole.</td>
1002     </tr>
1003     <tr class="bg1" align="left" valign="top" id="limit_connect_opts">
1004       <td class="en1">&nbsp;</td>
1005       <td class="dis1">&nbsp;</td>
1006       <td class="noc1">&nbsp;</td>
1007       <td>&nbsp;</td>
1008       <td>Legal SSL ports (comma separated, ranges allowed):<br>
1009         <input type="text" name="limit_connect_mode" size="40"
1010         value="@limit-connect-param@"></td>
1011     </tr>
1012     <tr class="bg1" align="left" valign="top">
1013       <td class="en1" align="center" valign="middle"><input type="radio"
1014         name="overwrite_last_modified" value="Y" @overwrite-last-modified-y@
1015         ></td>
1016       <td class="dis1" align="center" valign="middle"><input type="radio"
1017         name="overwrite_last_modified" value="N" @overwrite-last-modified-n@
1018         ></td>
1019       <td class="noc1" align="center" valign="middle"><input type="radio"
1020         name="overwrite_last_modified" value="X" @overwrite-last-modified-x@
1021         ></td>
1022       <td class="action"><a href="@user-manual@@actions-help-prefix@OVERWRITE_LAST_MODIFIED">overwrite-last-modified</a></td>
1023       <td>Remove or randomize If-Modified-Since header.</td>
1024     </tr>
1025     <tr class="bg1" align="left" valign="top" id="overwrite_last_modified_opts">
1026       <td class="en1">&nbsp;</td>
1027       <td class="dis1">&nbsp;</td>
1028       <td class="noc1">&nbsp;</td>
1029       <td>&nbsp;</td>
1030       <td><input type="radio" name="overwrite_last_modified_mode" value="block"
1031         onclick="overwrite_last_modified_param_disable(true)"
1032         @overwrite-last-modified-param-block@ id="overwrite_last_modified_mode_block"><label
1033         for="overwrite_last_modified_mode_block">Remove without replacement.</label>
1034         <br>
1035         <input type="radio" name="overwrite_last_modified_mode" value="reset-to-request-time"
1036         onclick="overwrite_last_modified_param_disable(true)"
1037         @overwrite-last-modified-param-reset-to-request-time@
1038          id="overwrite_last_modified_mode_reset-to-request-time"><label
1039         for="overwrite_last_modified_mode_reset-to-request-time">Reset to the time of the request.</label>
1040         <br>
1041         <input type="radio" name="overwrite_last_modified_mode" value="randomize"
1042         onclick="overwrite_last_modified_param_disable(true)"
1043         @overwrite-last-modified-param-randomize@
1044          id="overwrite_last_modified_mode_randomize"><label
1045         for="overwrite_last_modified_mode_randomize">Overwrite with random value
1046         between original header value and the time of the request.</label>
1047      </td>
1048     </tr>
1049
1050     <tr class="bg1" align="left" valign="top">
1051       <td class="en1" align="center" valign="middle"><input type="radio"
1052         name="prevent_compression" value="Y" @prevent-compression-y@
1053         ></td>
1054       <td class="dis1" align="center" valign="middle"><input type="radio"
1055         name="prevent_compression" value="N" @prevent-compression-n@
1056         ></td>
1057       <td class="noc1" align="center" valign="middle"><input type="radio"
1058         name="prevent_compression" value="X" @prevent-compression-x@
1059         ></td>
1060       <td class="action"><a href="@user-manual@@actions-help-prefix@PREVENT-COMPRESSION">prevent-compression</a></td>
1061       <td>Disables compression.  Compressed web pages are faster to
1062         download, but cannot be filtered with <a href="@user-manual@@actions-help-prefix@FILTER"><b>filter</b></a>
1063         or <a href="@user-manual@@actions-help-prefix@KILL-POPUPS"><b>kill-popups</b></a>.
1064         This setting only affects the few web sites which support
1065         compression.</td>
1066     </tr>
1067    <tr class="bg1" align="left" valign="top">
1068       <td class="en1" align="center" valign="middle"><input type="radio"
1069         name="redirect" value="Y" @redirect-y@
1070         ></td>
1071       <td class="dis1" align="center" valign="middle"><input type="radio"
1072         name="redirect" value="N" @redirect-n@
1073         ></td>
1074       <td class="noc1" align="center" valign="middle"><input type="radio"
1075         name="redirect" value="X" @redirect-x@
1076         ></td>
1077       <td class="action"><a href="@user-manual@@actions-help-prefix@REDIRECT">redirect</a></td>
1078       <td>Redirect to another address.
1079     </tr>
1080     <tr class="bg1" align="left" valign="top" id="redirect_opts">
1081       <td class="en1">&nbsp;</td>
1082       <td class="dis1">&nbsp;</td>
1083       <td class="noc1">&nbsp;</td>
1084       <td>&nbsp;</td>
1085       <td>Address to redirect to:<br>
1086         <input type="text" name="redirect_mode" size="40"
1087         value="@redirect-param@"></td>
1088     </tr>
1089
1090     <tr class="bg1" align="left" valign="top">
1091       <td class="en1" align="center" valign="middle"><input type="radio"
1092         name="send_vanilla_wafer" value="Y" @send-vanilla-wafer-y@
1093         ></td>
1094       <td class="dis1" align="center" valign="middle"><input type="radio"
1095         name="send_vanilla_wafer" value="N" @send-vanilla-wafer-n@
1096         ></td>
1097       <td class="noc1" align="center" valign="middle"><input type="radio"
1098         name="send_vanilla_wafer" value="X" @send-vanilla-wafer-x@
1099         ></td>
1100       <td class="action"><a href="@user-manual@@actions-help-prefix@SEND-VANILLA-WAFER">send-vanilla-wafer</a></td>
1101       <td>Adds a special wafer (standard cookie) to all your requests.</td>
1102     </tr>
1103     <tr class="bg1" align="left" valign="top">
1104       <td class="en1" align="center" valign="middle"><input type="radio"
1105         name="send_wafer" id="send_wafer_y" value="Y" @send-wafer-y@
1106         onclick="show_send_wafer_opts(true)"></td>
1107       <td class="dis1" align="center" valign="middle"><input type="radio"
1108         name="send_wafer" id="send_wafer_n" value="N" @send-wafer-n@
1109         onclick="show_send_wafer_opts(false)"></td>
1110       <td class="noc1" align="center" valign="middle"><input type="radio"
1111         name="send_wafer" id="send_wafer_x" value="X" @send-wafer-x@
1112         onclick="show_send_wafer_opts(false)"></td>
1113       <td class="action"><a href="@user-manual@@actions-help-prefix@SEND-WAFER">send-wafer</a></td>
1114       <td>Adds user-specified cookies.</td>
1115     </tr>
1116     <tr class="bg1" align="left" valign="top" id="send_wafer_opts">
1117       <td class="en1">&nbsp;</td>
1118       <td class="dis1">&nbsp;</td>
1119       <td class="noc1">&nbsp;</td>
1120       <td>&nbsp;</td>
1121       <td>Editing the settings for this option, or turning
1122         it on if it was off, is not yet supported using this web-based
1123         editor.</td>
1124     </tr>
1125     <tr class="bg1" align="left" valign="top">
1126       <td class="en1" align="center" valign="middle"><input type="radio"
1127         name="session_cookies_only" value="Y" @session-cookies-only-y@
1128         ></td>
1129       <td class="dis1" align="center" valign="middle"><input type="radio"
1130         name="session_cookies_only" value="N" @session-cookies-only-n@
1131         ></td>
1132       <td class="noc1" align="center" valign="middle"><input type="radio"
1133         name="session_cookies_only" value="X" @session-cookies-only-x@
1134         ></td>
1135       <td class="action"><a href="@user-manual@@actions-help-prefix@SESSION-COOKIES-ONLY">session-cookies-only</a></td>
1136       <td>Any cookies set by the website are changed to temporary
1137         ("per-session") ones, which only last until you close your web
1138         browser.  This will allow you to use sites that require cookies, but
1139         sites will not be able to track you across sessions.  For this to
1140         be useful, you should disable 
1141         <a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES"><b>crunch-outgoing-cookies</b></a> and
1142         <a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES"><b>crunch-incoming-cookies</b></a>.</td>
1143     </tr>
1144     <tr class="bg1" align="left" valign="top">
1145       <td class="en1" align="center" valign="middle"><input type="radio"
1146         name="set_image_blocker" id="set_image_blocker_y" value="Y" @set-image-blocker-y@
1147         onclick="show_set_image_blocker_opts(true)"></td>
1148       <td class="dis1" align="center" valign="middle"><input type="radio"
1149         name="set_image_blocker" value="N" @set-image-blocker-n@
1150         onclick="show_set_image_blocker_opts(false)"></td>
1151       <td class="noc1" align="center" valign="middle"><input type="radio"
1152         name="set_image_blocker" value="X" @set-image-blocker-x@
1153         onclick="show_set_image_blocker_opts(false)"></td>
1154       <td class="action"><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></td>
1155       <td>Specifies how to block images.</td>
1156     </tr>
1157     <tr class="bg1" align="left" valign="top" id="set_image_blocker_opts">
1158       <td class="en1">&nbsp;</td>
1159       <td class="dis1">&nbsp;</td>
1160       <td class="noc1">&nbsp;</td>
1161       <td>&nbsp;</td>
1162       <td><input type="radio" name="set_image_blocker_mode"
1163         onclick="set_image_blocker_param_disable(true)"
1164         value="pattern" id="set_image_blocker_mode_pattern"
1165         @set-image-blocker-param-pattern@><label
1166         for="set_image_blocker_mode_pattern">Send a pattern (<img
1167         src="send-banner?type=p" width="12" height="12"
1168         alt="pattern">)</label><br>
1169         <input type="radio" name="set_image_blocker_mode" value="blank"
1170         onclick="set_image_blocker_param_disable(true)"
1171         id="set_image_blocker_mode_blank" @set-image-blocker-param-blank@><label 
1172         for="set_image_blocker_mode_blank">Send a 1x1 transparent GIF</label><br>
1173         <input type="radio" name="set_image_blocker_mode" value="CUSTOM"
1174         onclick="set_image_blocker_param_disable(false)"
1175         id="set_image_blocker_mode_set" @set-image-blocker-param-custom@><label
1176         for="set_image_blocker_mode_set">Redirect
1177         the browser to this image URL:</label><br>
1178         <input type="text" name="set_image_blocker_param" id="set_image_blocker_param"
1179         size="40" value="@set-image-blocker-param@"></td>
1180     </tr>
1181    <tr class="bg1" align="left" valign="top">
1182       <td class="en1" align="center" valign="middle"><input type="radio"
1183         name="treat_forbidden_connects_like_blocks" value="Y" @treat-forbidden-connects-like-blocks-y@
1184         ></td>
1185       <td class="dis1" align="center" valign="middle"><input type="radio"
1186         name="treat_forbidden_connects_like_blocks" value="N" @treat-forbidden-connects-like-blocks-n@
1187         ></td>
1188       <td class="noc1" align="center" valign="middle"><input type="radio"
1189         name="treat_forbidden_connects_like_blocks" value="X" @treat-forbidden-connects-like-blocks-x@
1190         ></td>
1191       <td class="action"><a href="@user-manual@@actions-help-prefix@TREAT_FORBIDDEN_CONNECTS_LIKE_BLOCKS">treat-forbidden-connects-like-blocks</a></td>
1192       <td>
1193        Answer forbidden Connect requests with the usual block message.
1194        Makes unblocking easier, but the <q>go there anyway</q> link will not work
1195        as expected.
1196      </td>
1197     </tr>
1198   </table>
1199
1200 </td></tr>
1201
1202     <tr>
1203       <td class="green" align="center">
1204         <p><input type="submit" value="Submit" name="Submit"></p>
1205       </td>
1206     </tr>
1207
1208     <tr>
1209       <td class="box">
1210         <h2>More Privoxy:</h2>
1211         <ul>@menu@<li><a href="@user-manual@">Documentation</a></li></ul>
1212       </td>
1213     </tr>
1214
1215     <tr>
1216       <td class="info">
1217
1218 #include mod-support-and-service
1219
1220       </td>
1221     </tr>
1222
1223 <!-- @if-have-help-info-start -->
1224     <tr>
1225       <td class="info">
1226
1227 #include mod-local-help
1228
1229       </td>
1230     </tr>
1231 <!-- if-have-help-info-end@ -->
1232
1233     <tr>
1234       <td>
1235         <small><small>Valid <a href="http://validator.w3.org/">HTML 4.01 Strict</a></small></small>
1236       </td>
1237     </tr>
1238
1239   </table>
1240 </form>
1241
1242
1243 <script type="text/javascript">
1244 <!--
1245
1246 if (document.getElementById) {
1247     // alert("Netscape 6 or IE5");
1248     document.getElementById("hide_from_header_param").disabled = !(document.getElementById("hide_from_header_mode_set").checked);
1249     document.getElementById("hide_referrer_param").disabled = !(document.getElementById("hide_referrer_mode_set").checked);
1250     document.getElementById("set_image_blocker_param").disabled = !(document.getElementById("set_image_blocker_mode_set").checked);
1251
1252     show_add_header_opts    (document.getElementById("add_header_y").checked);
1253     show_deanimate_opts     (document.getElementById("deanimate_gifs_y").checked);
1254     show_hide_from_header_opts(document.getElementById("hide_from_header_y").checked);
1255     show_hide_referrer_opts (document.getElementById("hide_referrer_y").checked);
1256     show_user_agent_opts    (document.getElementById("hide_user_agent_y").checked);
1257     show_set_image_blocker_opts (document.getElementById("set_image_blocker_y").checked);
1258     show_limit_connect_opts (document.getElementById("limit_connect_y").checked);
1259     show_send_wafer_opts    (document.getElementById("wafer_y").checked);
1260 } else if (document.all) {
1261     // alert("IE4");
1262     document.myform.hide_from_header_param.disabled = !(document.myform.hide_from_header_mode_set.checked);
1263     document.myform.hide_referrer_param.disabled = !(document.myform.hide_referrer_mode_set.checked);
1264     document.myform.set_image_blocker_param.disabled = !(document.myform.set_image_blocker_mode_set.checked);
1265
1266     show_add_header_opts    (document.myform.add_header_y.checked);
1267     show_deanimate_opts     (document.myform.deanimate_gifs_y.checked);
1268     show_hide_from_header_opts (document.myform.hide_from_header_y.checked);
1269     show_hide_referrer_opts (document.myform.hide_referrer_y.checked);
1270     show_user_agent_opts    (document.myform.hide_user_agent_y.checked);
1271     show_set_image_blocker_opts (document.myform.set_image_blocker_y.checked);
1272     show_limit_connect_opts (document.myform.limit_connect_y.checked);
1273     show_send_wafer_opts    (document.myform.wafer_y.checked);
1274 } else if (document.layers) {
1275     // alert("Netscape 4");
1276 }
1277 //-->
1278 </script>
1279
1280
1281 </body>
1282
1283 </html>