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