Add delay-response{} action
[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-2014 the
10 #                Privoxy team. https://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 ##############################################################################
34 #
35 # Standard support:
36 #
37 # This file currently produces valid HTML 4.01 Strict.
38 #
39 # If you change it, please save the generated page from your web browser
40 # and then upload it to http://validator.w3.org/ for checking.
41 #
42 ##############################################################################
43 #
44 # Available variables include:
45 #
46 # action-name-y
47 # action-name-n
48 # action-name-x
49 #
50 # deanimate-gifs-param-first
51 # deanimate-gifs-param-last
52 # hide-from-param-block
53 # hide-from-param-custom
54 # hide-from-param
55 # hide-referrer-param-forge
56 # hide-referrer-param-block
57 # hide-referrer-param-custom
58 # hide-referrer-param
59 # hide-user-agent-param
60 # image-blocker-param-pattern
61 # image-blocker-param-blank
62 # image-blocker-param-custom
63 #
64 #
65 ##############################################################################
66 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
67 <html>
68
69 <head>
70   <meta http-equiv="Content-Style-Type" content="text/css">
71   <meta http-equiv="Content-Script-Type" content="text/javascript">
72   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
73   <meta name="robots" content="noindex,nofollow">
74   <link rel="stylesheet" type="text/css" href="@default-cgi@send-stylesheet">
75   <link rel="shortcut icon" href="@default-cgi@favicon.ico" type="image/x-icon">
76
77   <title>Privoxy@@my-hostname@: Edit actions</title>
78
79 <style type="text/css">
80 td.action    { font-weight: bold;
81                font-style: italic;
82                white-space: nowrap       }
83 td.subaction { font-style: italic        }
84 th           { font-weight: bold;        }
85 # This is the key to the color names below:
86 # bg=background, en="Enable", dis="Disable", noc="No Change", hdr=header
87 # 1=odd rows, 2=even rows, h=Table header
88 tr.hdr       { background-color: #999999 }
89 tr.bg1       { background-color: #eeeeee }
90 td.en1       { background-color: #ddffdd }
91 td.dis1      { background-color: #ffdddd }
92 td.noc1      { background-color: #ddddff }
93 th.enh       { background-color: #99ff99 }
94 th.dish      { background-color: #ff9999 }
95 th.noch      { background-color: #9999ff }
96 table.wide   { padding: 5px; }
97 td.green     { border: solid black 1px; background-color: #ddffdd; }
98 </style>
99
100 <!--
101 border-color: white;
102                border-style: solid;
103                border-left-width: 10px;
104                border-right-width: 10px;
105                border-top-width: 0px;
106                border-bottom-width: 0px  }
107 -->
108
109 <script type="text/javascript">
110 <!--
111
112 function hide_from_header_param_disable(tf)
113 {
114     if (document.getElementById) {
115         // NS6 or IE5
116         document.getElementById("hide_from_header_param").disabled = tf;
117     } else if (document.all) {
118         // IE4
119         document.myform.hide_from_header_param.disabled = tf;
120     }
121 }
122
123 function hide_referrer_param_disable(tf)
124 {
125     if (document.getElementById) {
126         document.getElementById("hide_referrer_param").disabled = tf;
127     } else if (document.all) {
128         document.myform.hide_referrer_param.disabled = tf;
129     }
130 }
131
132 function set_image_blocker_param_disable(tf)
133 {
134     if (document.getElementById) {
135         document.getElementById("set_image_blocker_param").disabled = tf;
136     } else if (document.all) {
137         document.myform.set_image_blocker_param.disabled = tf;
138     }
139 }
140
141 function show_add_header_opts(tf)
142 {
143     if (document.getElementById) {
144         target = document.getElementById("add_header_opts");
145     } else if (document.all) {
146         target = document.add_header_opts;
147     } else {
148         return;
149     }
150     target.style.display = (tf ? "" : "none");
151 }
152
153 function show_deanimate_opts(tf)
154 {
155     if (document.getElementById) {
156         target = document.getElementById("deanimate_opts");
157     } else if (document.all) {
158         target = document.deanimate_opts;
159     } else {
160         return;
161     }
162     target.style.display = (tf ? "" : "none");
163 }
164
165 function show_hide_from_header_opts(tf)
166 {
167     if (document.getElementById) {
168         target = document.getElementById("hide_from_header_opts");
169     } else if (document.all) {
170         target = document.hide_from_header_opts;
171     } else {
172         return;
173     }
174     target.style.display = (tf ? "" : "none");
175 }
176
177 function show_hide_referrer_opts(tf)
178 {
179     if (document.getElementById) {
180         target = document.getElementById("hide_referrer_opts");
181     } else if (document.all) {
182         target = document.hide_referrer_opts;
183     } else {
184         return;
185     }
186     target.style.display = (tf ? "" : "none");
187 }
188
189 function show_user_agent_opts(tf)
190 {
191     if (document.getElementById) {
192         target = document.getElementById("user_agent_opts");
193     } else if (document.all) {
194         target = document.user_agent_opts;
195     } else {
196         return;
197     }
198     target.style.display = (tf ? "" : "none");
199 }
200
201 function show_set_image_blocker_opts(tf)
202 {
203     if (document.getElementById) {
204         target = document.getElementById("set_image_blocker_opts");
205     } else if (document.all) {
206         target = document.set_image_blocker_opts;
207     } else {
208         return;
209     }
210     target.style.display = (tf ? "" : "none");
211 }
212
213 function show_limit_connect_opts(tf)
214 {
215     if (document.getElementById) {
216         target = document.getElementById("limit_connect_opts");
217     } else if (document.all) {
218         target = document.limit_connect_opts;
219     } else {
220         return;
221     }
222     target.style.display = (tf ? "" : "none");
223 }
224
225 //-->
226 </script>
227 </head>
228
229 <body>
230
231 <!-- @if-one-form-only-start -->
232 <form method="GET" action="edit-actions-submit" id="myform" name="myform">
233 <!-- if-one-form-only-end@ -->
234
235   <table summary="" cellpadding="20" cellspacing="10" border="0" width="100%">
236     <tr>
237       <td class="title">
238
239 #include mod-title
240
241       </td>
242     </tr>
243
244 <!-- @if-unstable-start -->
245 # This will only appear if CODE_STATUS is "alpha" or "beta". See configure.in
246     <tr>
247       <td class="warning">
248
249 #include mod-unstable-warning
250
251       </td>
252     </tr>
253 <!-- if-unstable-end@ -->
254
255 <!-- @if-one-form-only-start -->
256     <tr>
257       <td class="box">
258         <h2>Edit Actions
259           <input type="hidden" name="f" value="@f@">
260           <input type="hidden" name="v" value="@v@">
261           <input type="hidden" name="s" value="@s@">
262         </h2>
263       </td>
264     </tr>
265
266     <tr>
267       <td class="green" align="center">
268         <p><input type="submit" value="Submit" name="Submit"></p>
269       </td>
270     </tr>
271 <!-- if-one-form-only-end@ -->
272
273 <tr><td class="wrapbox">
274
275 <!-- @if-multiple-forms-start -->
276 <form method="GET" action="edit-actions-submit" id="myform" name="myform">
277   <h2>Edit Actions (Section 1)</h2>
278 <!-- if-multiple-forms-end@ -->
279
280   <table summary="Action section 1" border="0" cellspacing="2" width="100%" class="wide">
281     <tr class="hdr" align="left">
282       <th class="enh" align="center">Enable</th>
283       <th class="dish" align="center">Disable</th>
284       <th class="noch" align="center">No Change</th>
285       <th>Action</th>
286       <th>Description</th>
287     </tr>
288     <tr class="bg1" align="left" valign="top">
289       <td class="en1" align="center" valign="middle"><input type="radio"
290         name="add_header" id="add_header_y" value="Y" @add-header-y@
291         onclick="show_add_header_opts(true)"></td>
292       <td class="dis1" align="center" valign="middle"><input type="radio"
293         name="add_header" value="N" @add-header-n@
294         onclick="show_add_header_opts(false)"></td>
295       <td class="noc1" align="center" valign="middle"><input type="radio"
296         name="add_header" value="X" @add-header-x@
297         onclick="show_add_header_opts(false)"></td>
298       <td class="action"><a href="@user-manual@@actions-help-prefix@ADD-HEADER">add-header</a></td>
299       <td>Adds HTTP headers.</td>
300     </tr>
301     <tr class="bg1" align="left" valign="top" id="add_header_opts">
302       <td class="en1">&nbsp;</td>
303       <td class="dis1">&nbsp;</td>
304       <td class="noc1">&nbsp;</td>
305       <td>&nbsp;</td>
306       <td>Editing the settings for this option, or turning
307         it on if it was off, is not yet supported using this web-based
308         editor.</td>
309     </tr>
310     <tr class="bg1" align="left" valign="top">
311       <td class="en1" align="center" valign="middle"><input type="radio"
312         name="block" value="Y" @block-y@
313         ></td>
314       <td class="dis1" align="center" valign="middle"><input type="radio"
315         name="block" value="N" @block-n@
316         ></td>
317       <td class="noc1" align="center" valign="middle"><input type="radio"
318         name="block" value="X" @block-x@
319         ></td>
320       <td class="action"><a href="@user-manual@@actions-help-prefix@BLOCK">block</a></td>
321       <td>Block the request.</td>
322     </tr>
323     <tr class="bg1" align="left" valign="top" id="block_opts">
324       <td class="en1">&nbsp;</td>
325       <td class="dis1">&nbsp;</td>
326       <td class="noc1">&nbsp;</td>
327       <td>&nbsp;</td>
328       <td>Block reason to tell the user:<br>
329         <input type="text" name="block_mode" size="40" value="@block-param@">
330       </td>
331     </tr>
332     <tr class="bg1" align="left" valign="top">
333       <td class="en1" align="center" valign="middle"><input type="radio"
334         name="change_x_forwarded_for" id="change_x_forwarded_for_y" value="Y" @change-x-forwarded-for-y@
335         onclick="show_change_x_forwarded_for_opts(true)"></td>
336       <td class="dis1" align="center" valign="middle"><input type="radio"
337         name="change_x_forwarded_for" value="N" @change-x-forwarded-for-n@
338         onclick="show_change_x_forwarded_for_opts(false)"></td>
339       <td class="noc1" align="center" valign="middle"><input type="radio"
340         name="change_x_forwarded_for" value="X" @change-x-forwarded-for-x@
341         onclick="show_change_x_forwarded_for_opts(false)"></td>
342       <td class="action"><a href="@user-manual@@actions-help-prefix@CHANGE-X-FORWARDED-FOR">change-x-forwarded-for</a></td>
343       <td>Specifies whether to block or add X-Forwarded-For headers.</td>
344     </tr>
345     <tr class="bg1" align="left" valign="top" id="change_x_forwarded_for_opts">
346       <td class="en1">&nbsp;</td>
347       <td class="dis1">&nbsp;</td>
348       <td class="noc1">&nbsp;</td>
349       <td>&nbsp;</td>
350       <td><input type="radio" name="change_x_forwarded_for_mode" value="block"
351         id="change_x_forwarded_for_mode_block" @change-x-forwarded-for-param-block@><label
352         for="change_x_forwarded_for_mode_block">Block the header.</label><br>
353         <input type="radio" name="change_x_forwarded_for_mode" value="add"
354         id="change_x_forwarded_for_mode_add" @change-x-forwarded-for-param-add@><label
355         for="change_x_forwarded_for_mode_add">Add the header.</label><br>
356     </tr>
357     <tr class="bg1" align="left" valign="top">
358       <td class="en1">&nbsp;</td>
359       <td class="dis1" align="center" valign="middle"><input type="radio"
360         name="client_header_filter_all" id="client_header_filter_all_n" value="N" @client-header-filter-all-n@ ></td>
361       <td class="noc1" align="center" valign="middle"><input type="radio"
362         name="client_header_filter_all" id="client_header_filter_all_x" value="X" @client-header-filter-all-x@ ></td>
363       <td class="action"><a href="@user-manual@@actions-help-prefix@CLIENT-HEADER-FILTER">client-header-filter</a> *</td>
364       <td>Filter the client headers.
365         You can use the radio buttons on this line to disable
366         all client-header filters applied by previous rules, and/or
367         you can enable or disable the filters individually below.</td>
368     </tr>
369 @client-header-filter-params@
370     <tr class="bg1" align="left" valign="top">
371       <td class="en1">&nbsp;</td>
372       <td class="dis1" align="center" valign="middle"><input type="radio"
373         name="client_header_tagger_all" id="client_header_tagger_all_n" value="N" @client-header-tagger-all-n@ ></td>
374       <td class="noc1" align="center" valign="middle"><input type="radio"
375         name="client_header_tagger_all" id="client_header_tagger_all_x" value="X" @client-header-tagger-all-x@ ></td>
376       <td class="action"><a href="@user-manual@@actions-help-prefix@CLIENT-HEADER-TAGGER">client-header-tagger</a> *</td>
377       <td>Create tags based on the client headers.
378         You can use the radio buttons on this line to disable
379         all client-header taggers applied by previous rules, and/or
380         you can enable or disable the taggers individually below.</td>
381     </tr>
382 @client-header-tagger-params@
383    <tr class="bg1" align="left" valign="top">
384       <td class="en1" align="center" valign="middle"><input type="radio"
385         name="content_type_overwrite" value="Y" @content-type-overwrite-y@
386         ></td>
387       <td class="dis1" align="center" valign="middle"><input type="radio"
388         name="content_type_overwrite" value="N" @content-type-overwrite-n@
389         ></td>
390       <td class="noc1" align="center" valign="middle"><input type="radio"
391         name="content_type_overwrite" value="X" @content-type-overwrite-x@
392         ></td>
393       <td class="action"><a href="@user-manual@@actions-help-prefix@CONTENT-TYPE-OVERWRITE">content-type-overwrite</a></td>
394       <td>Replace Content-Type header. By default it only applies to
395          text documents, but if you know what you're doing you
396          can enable force-text-mode to modify binary content types as well.</td>
397     </tr>
398     <tr class="bg1" align="left" valign="top" id="content_type_overwrite_opts">
399       <td class="en1">&nbsp;</td>
400       <td class="dis1">&nbsp;</td>
401       <td class="noc1">&nbsp;</td>
402       <td>&nbsp;</td>
403       <td>New Content-Type:<br>
404         <input type="text" name="content_type_overwrite_mode" size="40"
405         value="@content-type-overwrite-param@"></td>
406     </tr>
407     <tr class="bg1" align="left" valign="top">
408       <td class="en1" align="center" valign="middle"><input type="radio"
409         name="crunch_client_header" id="crunch_client_header_y" value="Y" @crunch-client-header-y@
410         ></td>
411       <td class="dis1" align="center" valign="middle"><input type="radio"
412         name="crunch_client_header" value="N" @crunch-client-header-n@
413         ></td>
414       <td class="noc1" align="center" valign="middle"><input type="radio"
415         name="crunch_client_header" value="X" @crunch-client-header-x@
416         ></td>
417       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-CLIENT-HEADER">crunch-client-header</a></td>
418       <td>Remove header(s) matching the supplied pattern.</td>
419     </tr>
420     <tr class="bg1" align="left" valign="top" id="crunch_client_header_opts">
421       <td class="en1">&nbsp;</td>
422       <td class="dis1">&nbsp;</td>
423       <td class="noc1">&nbsp;</td>
424       <td>&nbsp;</td>
425       <td>Header string to suppress:<br>
426         <input type="text" name="crunch_client_header_mode" size="40"
427         value="@crunch-client-header-param@"></td>
428     </tr>
429     <tr class="bg1" align="left" valign="top">
430       <td class="en1" align="center" valign="middle"><input type="radio"
431         name="crunch_if_none_match" value="Y" @crunch-if-none-match-y@
432         ></td>
433       <td class="dis1" align="center" valign="middle"><input type="radio"
434         name="crunch_if_none_match" value="N" @crunch-if-none-match-n@
435         ></td>
436       <td class="noc1" align="center" valign="middle"><input type="radio"
437         name="crunch_if_none_match" value="X" @crunch-if-none-match-x@
438         ></td>
439       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-IF-NONE-MATCH">crunch-if-none-match</a></td>
440       <td>Remove If-None-Match header. Useful for filter testing
441          and to make sure the header can't be used to track your visits.</td>
442     </tr>
443
444     <tr class="bg1" align="left" valign="top">
445       <td class="en1" align="center" valign="middle"><input type="radio"
446         name="crunch_incoming_cookies" value="Y" @crunch-incoming-cookies-y@
447         ></td>
448       <td class="dis1" align="center" valign="middle"><input type="radio"
449         name="crunch_incoming_cookies" value="N" @crunch-incoming-cookies-n@
450         ></td>
451       <td class="noc1" align="center" valign="middle"><input type="radio"
452         name="crunch_incoming_cookies" value="X" @crunch-incoming-cookies-x@
453         ></td>
454       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES">crunch-incoming-cookies</a></td>
455       <td>Prevent the website from setting HTTP cookies on your system.</td>
456     </tr>
457     <tr class="bg1" align="left" valign="top">
458       <td class="en1" align="center" valign="middle"><input type="radio"
459         name="crunch_outgoing_cookies" value="Y" @crunch-outgoing-cookies-y@
460         ></td>
461       <td class="dis1" align="center" valign="middle"><input type="radio"
462         name="crunch_outgoing_cookies" value="N" @crunch-outgoing-cookies-n@
463         ></td>
464       <td class="noc1" align="center" valign="middle"><input type="radio"
465         name="crunch_outgoing_cookies" value="X" @crunch-outgoing-cookies-x@
466         ></td>
467       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES">crunch-outgoing-cookies</a></td>
468       <td>Prevent the website from reading HTTP cookies from your system.</td>
469     </tr>
470     <tr class="bg1" align="left" valign="top">
471       <td class="en1" align="center" valign="middle"><input type="radio"
472         name="crunch_server_header" id="crunch_server_header_y" value="Y" @crunch-server-header-y@
473         ></td>
474       <td class="dis1" align="center" valign="middle"><input type="radio"
475         name="crunch_server_header" value="N" @crunch-server-header-n@
476         ></td>
477       <td class="noc1" align="center" valign="middle"><input type="radio"
478         name="crunch_server_header" value="X" @crunch-server-header-x@
479         ></td>
480       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-SERVER-HEADER">crunch-server-header</a></td>
481       <td>Remove server header(s) matching the supplied pattern.</td>
482     </tr>
483     <tr class="bg1" align="left" valign="top" id="crunch_server_header_opts">
484       <td class="en1">&nbsp;</td>
485       <td class="dis1">&nbsp;</td>
486       <td class="noc1">&nbsp;</td>
487       <td>&nbsp;</td>
488       <td>Header string to suppress:<br>
489         <input type="text" name="crunch_server_header_mode" size="40"
490         value="@crunch-server-header-param@"></td>
491     </tr>
492
493     <tr class="bg1" align="left" valign="top">
494       <td class="en1" align="center" valign="middle"><input type="radio"
495         name="deanimate_gifs" id="deanimate_gifs_y" value="Y" @deanimate-gifs-y@
496         onclick="show_deanimate_opts(true)"></td>
497       <td class="dis1" align="center" valign="middle"><input type="radio"
498         name="deanimate_gifs" value="N" @deanimate-gifs-n@
499         onclick="show_deanimate_opts(false)"></td>
500       <td class="noc1" align="center" valign="middle"><input type="radio"
501         name="deanimate_gifs" value="X" @deanimate-gifs-x@
502         onclick="show_deanimate_opts(false)"></td>
503       <td class="action"><a href="@user-manual@@actions-help-prefix@DEANIMATE-GIFS">deanimate-gifs</a></td>
504       <td>Replace animated GIFs with their (first/last) frame.</td>
505     </tr>
506     <tr class="bg1" align="left" valign="top" id="deanimate_opts">
507       <td class="en1">&nbsp;</td>
508       <td class="dis1">&nbsp;</td>
509       <td class="noc1">&nbsp;</td>
510       <td>&nbsp;</td>
511       <td>Use the <input type="radio" name="deanimate_gifs_mode"
512         value="first" id="deanimate_first" @deanimate-gifs-param-first@><label
513         for="deanimate_first">first frame</label>&nbsp;&nbsp; <input
514         type="radio" name="deanimate_gifs_mode" value="last"
515         id="deanimate_last" @deanimate-gifs-param-last@><label
516         for="deanimate_last">last frame</label></td>
517     </tr>
518     <tr class="bg1" align="left" valign="top">
519       <td class="en1" align="center" valign="middle"><input type="radio"
520         name="delay_response" value="Y" @delay-response-y@
521         ></td>
522       <td class="dis1" align="center" valign="middle"><input type="radio"
523         name="delay_response" value="N" @delay-response-n@
524         ></td>
525       <td class="noc1" align="center" valign="middle"><input type="radio"
526         name="delay_response" value="X" @delay-response-x@
527         ></td>
528       <td class="action"><a href="@user-manual@@actions-help-prefix@DELAY-RESPONSE">delay-response</a></td>
529       <td>Send the response in ca. 10 byte chunks and delay each chunk.</td>
530     </tr>
531     <tr class="bg1" align="left" valign="top" id="delay-response_opts">
532       <td class="en1">&nbsp;</td>
533       <td class="dis1">&nbsp;</td>
534       <td class="noc1">&nbsp;</td>
535       <td>&nbsp;</td>
536       <td>Number of milliseconds to delay chunks:<br>
537         <input type="text" name="delay_response_mode" size="40" value="@delay-response-param@">
538       </td>
539     </tr>
540     <tr class="bg1" align="left" valign="top">
541       <td class="en1" align="center" valign="middle"><input type="radio"
542         name="downgrade_http_version" value="Y" @downgrade-http-version-y@></td>
543       <td class="dis1" align="center" valign="middle"><input type="radio"
544         name="downgrade_http_version" value="N" @downgrade-http-version-n@></td>
545       <td class="noc1" align="center" valign="middle"><input type="radio"
546         name="downgrade_http_version" value="X" @downgrade-http-version-x@></td>
547       <td class="action"><a href="@user-manual@@actions-help-prefix@DOWNGRADE-HTTP-VERSION"
548        >downgrade-http-version</a></td>
549       <td>Change HTTP/1.1 requests to HTTP/1.0.  Only change if you know
550         what you're doing!</td>
551     </tr>
552
553 <!-- @if-external-content-filters-start -->
554     <tr class="bg1" align="left" valign="top">
555       <td class="en1">&nbsp;</td>
556       <td class="dis1" align="center" valign="middle"><input type="radio"
557         name="external_content_filter_all" id="external_content_filter_all_n" value="N" @external-content-filter-all-n@ ></td>
558       <td class="noc1" align="center" valign="middle"><input type="radio"
559         name="external_content_filter_all" id="external_content_filter_all_x" value="X" @external-content-filter-all-x@ ></td>
560       <td class="action"><a href="@user-manual@@actions-help-prefix@EXTERNAL_FILTER">external-filter</a> *</td>
561       <td>Filter the website through external scripts or programs.
562         You can use the radio buttons on this line to disable
563         all filters applied by previous rules, and/or you can enable or
564         disable the filters individually below.</td>
565     </tr>
566
567 @external-content-filter-params@
568 <!-- if-external-content-filters-end@ -->
569
570     <tr class="bg1" align="left" valign="top">
571       <td class="en1" align="center" valign="middle"><input type="radio"
572         name="fast_redirects" value="Y" @fast-redirects-y@
573         ></td>
574       <td class="dis1" align="center" valign="middle"><input type="radio"
575         name="fast_redirects" value="N" @fast-redirects-n@
576         ></td>
577       <td class="noc1" align="center" valign="middle"><input type="radio"
578         name="fast_redirects" value="X" @fast-redirects-x@
579         ></td>
580       <td class="action"><a href="@user-manual@@actions-help-prefix@FAST-REDIRECTS">fast-redirects</a></td>
581       <td>Bypass some click-tracking URLs.</td>
582     </tr>
583     <tr class="bg1" align="left" valign="top" id="fast-redirects_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>
589        <input type="radio" name="fast_redirects_mode"
590         value="simple-check" id="fast_redirects_simple_check" @fast-redirects-param-simple-check@><label
591         for="fast_redirects_simple_check">Simple check.</label>
592        <br>
593        <input type="radio" name="fast_redirects_mode" value="check-decoded-url"
594         id="fast_redirects_check_decoded_url" @fast-redirects-param-check-decoded-url@><label
595         for="fast_redirects_check_decoded_url">Decode URL before checking.</label></td>
596     </tr>
597 <!-- @if-multiple-forms-start -->
598    </table>
599    <p>
600     <input type="hidden" name="f" value="@f@">
601     <input type="hidden" name="v" value="@v@">
602     <input type="hidden" name="s" value="@s@">
603     <input type="submit" value="Submit changes in Section 1" name="Submit">
604   </p>
605   </form>
606  </td></tr>
607  <tr><td class="wrapbox">
608   <form method="GET" action="edit-actions-submit" id="myform-2" name="myform">
609   <h2>Edit Actions (Section 2)</h2>
610   <table summary="Action section 2" border="0" cellspacing="2" width="100%" class="wide">
611     <tr class="hdr" align="left">
612       <th class="enh" align="center">Enable</th>
613       <th class="dish" align="center">Disable</th>
614       <th class="noch" align="center">No Change</th>
615       <th>Action</th>
616       <th>Description</th>
617     </tr>
618 <!-- if-multiple-forms-end@ -->
619     <tr class="bg1" align="left" valign="top">
620       <td class="en1">&nbsp;</td>
621       <td class="dis1" align="center" valign="middle"><input type="radio"
622         name="filter_all" id="filter_all_n" value="N" @filter-all-n@ ></td>
623       <td class="noc1" align="center" valign="middle"><input type="radio"
624         name="filter_all" id="filter_all_x" value="X" @filter-all-x@ ></td>
625       <td class="action"><a href="@user-manual@@actions-help-prefix@FILTER">filter</a> *</td>
626       <td>Filter the website through regular expression
627         filters.  You can use the radio buttons on this line to disable
628         all filters applied by previous rules, and/or you can enable or
629         disable the filters individually below.</td>
630     </tr>
631
632 @content-filter-params@
633
634 <!-- @if-multiple-forms-start -->
635    </table>
636    <p>
637     <input type="hidden" name="f" value="@f@">
638     <input type="hidden" name="v" value="@v@">
639     <input type="hidden" name="s" value="@s@">
640     <input type="submit" value="Submit changes in Section 2" name="Submit">
641    </p>
642   </form>
643  </td></tr>
644  <tr><td class="wrapbox">
645   <form method="GET" action="edit-actions-submit" id="myform-3" name="myform">
646   <h2>Edit Actions (Section 3)</h2>
647   <table summary="Action section 3" border="0" cellspacing="2" width="100%" class="wide">
648     <tr class="hdr" align="left">
649       <th class="enh" align="center">Enable</th>
650       <th class="dish" align="center">Disable</th>
651       <th class="noch" align="center">No Change</th>
652       <th>Action</th>
653       <th>Description</th>
654     </tr>
655 <!-- if-multiple-forms-end@ -->
656    <tr class="bg1" align="left" valign="top">
657       <td class="en1" align="center" valign="middle"><input type="radio"
658         name="force_text_mode" value="Y" @force-text-mode-y@
659         ></td>
660       <td class="dis1" align="center" valign="middle"><input type="radio"
661         name="force_text_mode" value="N" @force-text-mode-n@
662         ></td>
663       <td class="noc1" align="center" valign="middle"><input type="radio"
664         name="force_text_mode" value="X" @force-text-mode-x@
665         ></td>
666       <td class="action"><a href="@user-manual@@actions-help-prefix@FORCE-TEXT-MODE">force-text-mode</a></td>
667       <td>
668        Enable filtering on documents whose Content-Type wasn't recognized as text.
669        Do think twice, nothing is alright.
670      </td>
671     </tr>
672     <tr class="bg1" align="left" valign="top">
673       <td class="en1" align="center" valign="middle"><input type="radio"
674         name="forward_override" id="forward_override_y" value="Y" @forward-override-y@
675         ></td>
676       <td class="dis1" align="center" valign="middle"><input type="radio"
677         name="forward_override" id="forward_override_n" value="N" @forward-override-n@
678         ></td>
679       <td class="noc1" align="center" valign="middle"><input type="radio"
680         name="forward_override" id="forward_override_x" value="X" @forward-override-x@
681         ></td>
682       <td class="action"><a href="@user-manual@@actions-help-prefix@FORWARD-OVERRIDE">forward-override</a></td>
683       <td>Override forward directives in the configuration file.
684           Note that the <a href="@user-manual@actions-file.html#FORWARD-OVERRIDE">parameter syntax</a>
685           isn't checked until the action is used. <strong class="warning">Syntax errors
686           will cause Privoxy to exit.</strong></td>
687     </tr>
688     <tr class="bg1" align="left" valign="top" id="forward_override_language_opts">
689       <td class="en1">&nbsp;</td>
690       <td class="dis1">&nbsp;</td>
691       <td class="noc1">&nbsp;</td>
692       <td>&nbsp;</td>
693       <td>
694         Overriding forward directive:<br>
695         <input type="text" name="forward_override_param"
696         id="forward_override_param" size="40"
697         value="@forward-override-param@"><br>
698      </td>
699     </tr>
700    <tr class="bg1" align="left" valign="top">
701       <td class="en1" align="center" valign="middle"><input type="radio"
702         name="handle_as_empty_document" value="Y" @handle-as-empty-document-y@
703         ></td>
704       <td class="dis1" align="center" valign="middle"><input type="radio"
705         name="handle_as_empty_document" value="N" @handle-as-empty-document-n@
706         ></td>
707       <td class="noc1" align="center" valign="middle"><input type="radio"
708         name="handle_as_empty_document" value="X" @handle-as-empty-document-x@
709         ></td>
710       <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE-AS-EMPTY-DOCUMENT">handle-as-empty-document</a></td>
711       <td>
712        Block with an <em>empty</em> document instead of an Image or HTML message.
713        The <em>empty</em> document contains only a space and can safely be parsed
714        as JavaScript or Style Sheet. Use content-type-overwrite to specify the
715        Content-Type, default is <q>text/html</q>.
716      </td>
717     </tr>
718     <tr class="bg1" align="left" valign="top">
719       <td class="en1" align="center" valign="middle"><input type="radio"
720         name="handle_as_image" value="Y" @handle-as-image-y@
721         ></td>
722       <td class="dis1" align="center" valign="middle"><input type="radio"
723         name="handle_as_image" value="N" @handle-as-image-n@
724         ></td>
725       <td class="noc1" align="center" valign="middle"><input type="radio"
726         name="handle_as_image" value="X" @handle-as-image-x@
727         ></td>
728       <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE-AS-IMAGE">handle-as-image</a></td>
729       <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>
730         and <i><b><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></b></i> actions).</td>
731     </tr>
732     <tr class="bg1" align="left" valign="top">
733       <td class="en1" align="center" valign="middle"><input type="radio"
734         name="hide_accept_language" id="hide_accept_language_y" value="Y" @hide-accept-language-y@
735         onclick="show_hide_accept_language_opts(true)"></td>
736       <td class="dis1" align="center" valign="middle"><input type="radio"
737         name="hide_accept_language" id="hide_accept_language_n" value="N" @hide-accept-language-n@
738         onclick="show_hide_accept_language_opts(false)"></td>
739       <td class="noc1" align="center" valign="middle"><input type="radio"
740         name="hide_accept_language" id="hide_accept_language_x" value="X" @hide-accept-language-x@
741         onclick="show_hide_accept_language_opts(false)"
742         ></td>
743       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-ACCEPT-LANGUAGE">hide-accept-language</a></td>
744       <td>Pretend to have different language settings. (Makes a fake User-Agent more believable,
745           but you may end up with content in the language you pretended to understand.)</td>
746     </tr>
747     <tr class="bg1" align="left" valign="top" id="hide_accept-language_opts">
748       <td class="en1">&nbsp;</td>
749       <td class="dis1">&nbsp;</td>
750       <td class="noc1">&nbsp;</td>
751       <td>&nbsp;</td>
752       <td><input type="radio" name="hide_accept_language_mode" value="block"
753         onclick="hide_accept_language_param_disable(true)"
754         @hide-accept-language-param-block@ id="hide_accept_language_mode_block"><label
755         for="hide_accept_language_mode_block">Remove Accept-Language header without replacement.</label>
756         <br>
757         <input type="radio" name="hide_accept_language_mode" value="CUSTOM"
758         onclick="hide_accept_language_param_disable(false)"
759         @hide-accept-language-param-custom@ id="hide_accept_language_mode_set"><label
760         for="hide_accept_language_mode_set">Fake these language settings:</label><br>
761         <input type="text" name="hide_accept_language_param"
762         id="hide_accept_language_param" size="40"
763         value="@hide-accept-language-param@"><br>
764      </td>
765     </tr>
766     <tr class="bg1" align="left" valign="top">
767       <td class="en1" align="center" valign="middle"><input type="radio"
768         name="hide_content_disposition" id="hide_content_disposition_y" value="Y" @hide-content-disposition-y@
769         onclick="show_hide_content_disposition_opts(true)"></td>
770       <td class="dis1" align="center" valign="middle"><input type="radio"
771         name="hide_content_disposition" id="hide_content_disposition_n" value="N" @hide-content-disposition-n@
772         onclick="show_hide_content_disposition_opts(false)"></td>
773       <td class="noc1" align="center" valign="middle"><input type="radio"
774         name="hide_content_disposition" id="hide_content_disposition_x" value="X" @hide-content-disposition-x@
775         onclick="show_hide_content_disposition_opts(false)"
776         ></td>
777       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-CONTENT-DISPOSITION">hide-content-disposition</a></td>
778       <td>Block or overwrite the content-disposition header. Useful to view a document inside the browser,
779        even if you were supposed to save it first, or to change the suggested file name.</td>
780     </tr>
781     <tr class="bg1" align="left" valign="top" id="hide_content_disposition_opts">
782       <td class="en1">&nbsp;</td>
783       <td class="dis1">&nbsp;</td>
784       <td class="noc1">&nbsp;</td>
785       <td>&nbsp;</td>
786       <td><input type="radio" name="hide_content_disposition_mode" value="block"
787         onclick="hide_content_disposition_param_disable(true)"
788         @hide-content-disposition-param-block@ id="hide_content_disposition_mode_block"><label
789         for="hide_content_disposition_mode_block">Remove content-disposition header without replacement.</label>
790         <br>
791         <input type="radio" name="hide_content_disposition_mode" value="CUSTOM"
792         onclick="hide_content_disposition_param_disable(false)"
793         @hide-content-disposition-param-custom@ id="hide_content_disposition_mode_set"><label
794         for="hide_content_disposition_mode_set">Overwrite content-dispostion header with:</label><br>
795         <input type="text" name="hide_content_disposition_param"
796         id="hide_content_disposition_param" size="40"
797         value="@hide-content-disposition-param@"><br>
798      </td>
799     </tr>
800     <tr class="bg1" align="left" valign="top">
801       <td class="en1" align="center" valign="middle"><input type="radio"
802         name="hide_from_header" id="hide_from_header_y" value="Y" @hide-from-header-y@
803         onclick="show_hide_from_header_opts(true)"></td>
804       <td class="dis1" align="center" valign="middle"><input type="radio"
805         name="hide_from_header" value="N" @hide-from-header-n@
806         onclick="show_hide_from_header_opts(false)"></td>
807       <td class="noc1" align="center" valign="middle"><input type="radio"
808         name="hide_from_header" value="X" @hide-from-header-x@
809         onclick="show_hide_from_header_opts(false)"></td>
810       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FROM-HEADER">hide-from-header</a></td>
811       <td>Stop old web browsers from sending the user's e-mail address with
812         every request.</td>
813     </tr>
814     <tr class="bg1" align="left" valign="top" id="hide_from_header_opts">
815       <td class="en1">&nbsp;</td>
816       <td class="dis1">&nbsp;</td>
817       <td class="noc1">&nbsp;</td>
818       <td>&nbsp;</td>
819       <td><input type="radio" name="hide_from_header_mode" value="block"
820         onclick="hide_from_header_param_disable(true);"
821         @hide-from-header-param-block@ id="hide_from_header_mode_block"><label
822         for="hide_from_header_mode_block">Remove completely</label><br>
823         <input type="radio" name="hide_from_header_mode" value="CUSTOM"
824         onclick="hide_from_header_param_disable(false);"
825         @hide-from-header-param-custom@ id="hide_from_header_mode_set"><label
826         for="hide_from_header_mode_set">Fake e-mail address:</label><br>
827         <input type="text" name="hide_from_header_param" id="hide_from_header_param"
828         size="40" value="@hide-from-header-param@"></td>
829     </tr>
830
831    <tr class="bg1" align="left" valign="top">
832       <td class="en1" align="center" valign="middle"><input type="radio"
833         name="hide_if_modified_since" value="Y" @hide-if-modified-since-y@
834         ></td>
835       <td class="dis1" align="center" valign="middle"><input type="radio"
836         name="hide_if_modified_since" value="N" @hide-if-modified-since-n@
837         ></td>
838       <td class="noc1" align="center" valign="middle"><input type="radio"
839         name="hide_if_modified_since" value="X" @hide-if-modified-since-x@
840         ></td>
841       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-IF-MODIFIED-SINCE">hide-if-modified-since</a></td>
842       <td>Remove or randomize the If-Modified-Since header.</td>
843     </tr>
844     <tr class="bg1" align="left" valign="top" id="hide_if-modifed-since_opts">
845       <td class="en1">&nbsp;</td>
846       <td class="dis1">&nbsp;</td>
847       <td class="noc1">&nbsp;</td>
848       <td>&nbsp;</td>
849       <td><input type="radio" name="hide_if_modified_since_mode" value="block"
850         onclick="hide_if_modified_since_param_disable(true)"
851         @hide-if-modified-since-param-block@ id="hide_if_modified_since_mode_block"><label
852         for="hide_if_modified_since_mode_block">Remove without replacement.</label>
853         Useful for filter testing.<br>
854         <input type="radio" name="hide_if_modified_since_mode" value="CUSTOM"
855         onclick="hide_if_modified_since_param_disable(true)"
856         @hide-if-modified-since-param-custom@ id="hide_if_modified_since_mode_set"><label
857         for="hide_if_modified_since_mode_set">Add random amount of seconds in the range of</label>
858         <input type="text" name="hide_if_modified_since_param"
859         id="hide_if_modified_since_param" size="4"
860         value="@hide-if-modified-since-param@"> minute(s).
861         To appreciate this option a small amount of paranoia is required,
862         but at least in theory the If-Modified-Since header could be used
863         to keep track of your visits.
864      </td>
865     </tr>
866 <!-- @if-multiple-forms-start -->
867    </table>
868    <p>
869     <input type="hidden" name="f" value="@f@">
870     <input type="hidden" name="v" value="@v@">
871     <input type="hidden" name="s" value="@s@">
872     <input type="submit" value="Submit changes in Section 3" name="Submit">
873    </p>
874   </form>
875  </td></tr>
876  <tr><td class="wrapbox">
877   <form method="GET" action="edit-actions-submit" id="myform-4" name="myform">
878   <h2>Edit Actions (Section 4)</h2>
879   <table summary="Action section 4" border="0" cellspacing="2" width="100%" class="wide">
880     <tr class="hdr" align="left">
881       <th class="enh" align="center">Enable</th>
882       <th class="dish" align="center">Disable</th>
883       <th class="noch" align="center">No Change</th>
884       <th>Action</th>
885       <th>Description</th>
886     </tr>
887 <!-- if-multiple-forms-end@ -->
888     <tr class="bg1" align="left" valign="top">
889       <td class="en1" align="center" valign="middle"><input type="radio"
890         name="hide_referrer" id="hide_referrer_y" value="Y" @hide-referrer-y@
891         onclick="show_hide_referrer_opts(true)"></td>
892       <td class="dis1" align="center" valign="middle"><input type="radio"
893         name="hide_referrer" id="hide_referrer_n" value="N" @hide-referrer-n@
894         onclick="show_hide_referrer_opts(false)"></td>
895       <td class="noc1" align="center" valign="middle"><input type="radio"
896         name="hide_referrer" id="hide_referrer_x" value="X" @hide-referrer-x@
897         onclick="show_hide_referrer_opts(false)"
898         ></td>
899       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-REFERRER">hide-referrer</a></td>
900       <td>Helps prevent tracking by not sending the URL of the previous web
901         page.&nbsp;</td>
902     </tr>
903     <tr class="bg1" align="left" valign="top" id="hide_referrer_opts">
904       <td class="en1">&nbsp;</td>
905       <td class="dis1">&nbsp;</td>
906       <td class="noc1">&nbsp;</td>
907       <td>&nbsp;</td>
908       <td><input type="radio" name="hide_referrer_mode" value="block"
909         onclick="hide_referrer_param_disable(true)"
910         @hide-referrer-param-block@ id="hide_referrer_mode_block"><label
911         for="hide_referrer_mode_block">Remove completely</label> (breaks images
912         on some free web hosts).<br>
913         <input type="radio" name="hide_referrer_mode" value="forge"
914         onclick="hide_referrer_param_disable(true)"
915         @hide-referrer-param-forge@ id="hide_referrer_mode_forge"><label
916         for="hide_referrer_mode_forge">Fake as the root directory of the
917         site</label> (fools checks for in-site links.)<br>
918         <input type="radio" name="hide_referrer_mode" value="CUSTOM"
919         onclick="hide_referrer_param_disable(false)"
920         @hide-referrer-param-custom@ id="hide_referrer_mode_set"><label
921         for="hide_referrer_mode_set">Fake as this web address:</label><br>
922         <input type="text" name="hide_referrer_param"
923         id="hide_referrer_param" size="40"
924         value="@hide-referrer-param@"><br>
925         <input type="radio" name="hide_referrer_mode" value="conditional-block"
926         onclick="hide_referrer_param_disable(true)"
927         @hide-referrer-param-conditional-block@ id="hide_referrer_mode_conditional-block"><label
928         for="hide_referrer_mode_conditional-block">Remove completely if host has changed,
929         but don't touch in-site referrers.
930         Less suspicious than the options above.</label><br>
931         <input type="radio" name="hide_referrer_mode" value="conditional-forge"
932         onclick="hide_referrer_param_disable(true)"
933         @hide-referrer-param-conditional-forge@ id="hide_referrer_mode_conditional-forge"><label
934         for="hide_referrer_mode_conditional-forge">Forge referrer if host has
935         changed, but don't touch in-site referrers.</label><br>
936       </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; (May cause problems with broken web sites).</td>
950     </tr>
951     <tr class="bg1" align="left" valign="top" id="user_agent_opts">
952       <td class="en1">&nbsp;</td>
953       <td class="dis1">&nbsp;</td>
954       <td class="noc1">&nbsp;</td>
955       <td>&nbsp;</td>
956       <td>User Agent string to send:<br>
957         <input type="text" name="hide_user_agent_mode" size="40"
958         value="@hide-user-agent-param@"></td>
959     </tr>
960     <tr class="bg1" align="left" valign="top">
961       <td class="en1" align="center" valign="middle"><input type="radio"
962         name="limit_connect" id="limit_connect_y" value="Y" @limit-connect-y@
963         onclick="show_limit_connect_opts(true)"></td>
964       <td class="dis1" align="center" valign="middle"><input type="radio"
965         name="limit_connect" value="N" @limit-connect-n@
966         onclick="show_limit_connect_opts(false)"></td>
967       <td class="noc1" align="center" valign="middle"><input type="radio"
968         name="limit_connect" value="X" @limit-connect-x@
969         onclick="show_limit_connect_opts(false)"></td>
970       <td class="action"><a href="@user-manual@@actions-help-prefix@LIMIT-CONNECT">limit-connect</a></td>
971       <td>Limit which ports are allowed in HTTP CONNECT requests. These requests are
972         used to tunnel SSL and other protocols through HTTP proxies.</td>
973     </tr>
974     <tr class="bg1" align="left" valign="top" id="limit_connect_opts">
975       <td class="en1">&nbsp;</td>
976       <td class="dis1">&nbsp;</td>
977       <td class="noc1">&nbsp;</td>
978       <td>&nbsp;</td>
979       <td>Legal ports (comma separated, ranges allowed):<br>
980         <input type="text" name="limit_connect_mode" size="40"
981         value="@limit-connect-param@"></td>
982     </tr>
983     <tr class="bg1" align="left" valign="top">
984       <td class="en1" align="center" valign="middle"><input type="radio"
985         name="limit_cookie_lifetime" id="limit_cookie_lifetime_y" value="Y" @limit-cookie-lifetime-y@
986         onclick="show_limit_cookie_lifetime_opts(true)"></td>
987       <td class="dis1" align="center" valign="middle"><input type="radio"
988         name="limit_cookie_lifetime" value="N" @limit-cookie-lifetime-n@
989         onclick="show_limit_cookie_lifetime_opts(false)"></td>
990       <td class="noc1" align="center" valign="middle"><input type="radio"
991         name="limit_cookie_lifetime" value="X" @limit-cookie-lifetime-x@
992         onclick="show_limit_cookie_lifetime_opts(false)"></td>
993       <td class="action"><a href="@user-manual@@actions-help-prefix@LIMIT-COOKIE-LIFETIME">limit-cookie-lifetime</a></td>
994       <td>Limit the cookie lifetime specified in Set-Cookie headers.</td>
995     </tr>
996     <tr class="bg1" align="left" valign="top" id="limit_cookie_lifetime_opts">
997       <td class="en1">&nbsp;</td>
998       <td class="dis1">&nbsp;</td>
999       <td class="noc1">&nbsp;</td>
1000       <td>&nbsp;</td>
1001       <td>Lifetime limit in minutes (or 0 to behave like
1002         <a href="@user-manual@@actions-help-prefix@LIMIT-COOKIE-LIFETIME">session-cookies-only</a>):<br>
1003         <input type="text" name="limit_cookie_lifetime_mode" size="40"
1004         value="@limit-cookie-lifetime-param@"></td>
1005     </tr>
1006     <tr class="bg1" align="left" valign="top">
1007       <td class="en1" align="center" valign="middle"><input type="radio"
1008         name="overwrite_last_modified" value="Y" @overwrite-last-modified-y@
1009         ></td>
1010       <td class="dis1" align="center" valign="middle"><input type="radio"
1011         name="overwrite_last_modified" value="N" @overwrite-last-modified-n@
1012         ></td>
1013       <td class="noc1" align="center" valign="middle"><input type="radio"
1014         name="overwrite_last_modified" value="X" @overwrite-last-modified-x@
1015         ></td>
1016       <td class="action"><a href="@user-manual@@actions-help-prefix@OVERWRITE-LAST-MODIFIED">overwrite-last-modified</a></td>
1017       <td>Remove or randomize the Last-Modified header.</td>
1018     </tr>
1019     <tr class="bg1" align="left" valign="top" id="overwrite_last_modified_opts">
1020       <td class="en1">&nbsp;</td>
1021       <td class="dis1">&nbsp;</td>
1022       <td class="noc1">&nbsp;</td>
1023       <td>&nbsp;</td>
1024       <td><input type="radio" name="overwrite_last_modified_mode" value="block"
1025         onclick="overwrite_last_modified_param_disable(true)"
1026         @overwrite-last-modified-param-block@ id="overwrite_last_modified_mode_block"><label
1027         for="overwrite_last_modified_mode_block">Remove without replacement.</label>
1028         <br>
1029         <input type="radio" name="overwrite_last_modified_mode" value="reset-to-request-time"
1030         onclick="overwrite_last_modified_param_disable(true)"
1031         @overwrite-last-modified-param-reset-to-request-time@
1032          id="overwrite_last_modified_mode_reset-to-request-time"><label
1033         for="overwrite_last_modified_mode_reset-to-request-time">Reset to the time of the request.</label>
1034         <br>
1035         <input type="radio" name="overwrite_last_modified_mode" value="randomize"
1036         onclick="overwrite_last_modified_param_disable(true)"
1037         @overwrite-last-modified-param-randomize@
1038          id="overwrite_last_modified_mode_randomize"><label
1039         for="overwrite_last_modified_mode_randomize">Overwrite with random value
1040         between original header value and the time of the request.</label>
1041      </td>
1042     </tr>
1043
1044     <tr class="bg1" align="left" valign="top">
1045       <td class="en1" align="center" valign="middle"><input type="radio"
1046         name="prevent_compression" value="Y" @prevent-compression-y@
1047         ></td>
1048       <td class="dis1" align="center" valign="middle"><input type="radio"
1049         name="prevent_compression" value="N" @prevent-compression-n@
1050         ></td>
1051       <td class="noc1" align="center" valign="middle"><input type="radio"
1052         name="prevent_compression" value="X" @prevent-compression-x@
1053         ></td>
1054       <td class="action"><a href="@user-manual@@actions-help-prefix@PREVENT-COMPRESSION">prevent-compression</a></td>
1055       <td>Disables compression.  Compressed web pages are faster to
1056         download, but cannot be filtered with <a href="@user-manual@@actions-help-prefix@FILTER"><b>filter</b></a>
1057         or <a href="@user-manual@@actions-help-prefix@KILL-POPUPS"><b>kill-popups</b></a>
1058         if your Privoxy version was build without zlib support.</td>
1059     </tr>
1060    <tr class="bg1" align="left" valign="top">
1061       <td class="en1" align="center" valign="middle"><input type="radio"
1062         name="redirect" value="Y" @redirect-y@
1063         ></td>
1064       <td class="dis1" align="center" valign="middle"><input type="radio"
1065         name="redirect" value="N" @redirect-n@
1066         ></td>
1067       <td class="noc1" align="center" valign="middle"><input type="radio"
1068         name="redirect" value="X" @redirect-x@
1069         ></td>
1070       <td class="action"><a href="@user-manual@@actions-help-prefix@REDIRECT">redirect</a></td>
1071       <td>Redirect to another address.
1072     </tr>
1073     <tr class="bg1" align="left" valign="top" id="redirect_opts">
1074       <td class="en1">&nbsp;</td>
1075       <td class="dis1">&nbsp;</td>
1076       <td class="noc1">&nbsp;</td>
1077       <td>&nbsp;</td>
1078       <td>Static address or a single pcrs command to redirect to a rewritten version of the original URL:<br>
1079         <input type="text" name="redirect_mode" size="40"
1080         value="@redirect-param@"></td>
1081     </tr>
1082
1083     <tr class="bg1" align="left" valign="top">
1084       <td class="en1">&nbsp;</td>
1085       <td class="dis1" align="center" valign="middle"><input type="radio"
1086         name="server_header_filter_all" id="server_header_filter_all_n" value="N" @server-header-filter-all-n@ ></td>
1087       <td class="noc1" align="center" valign="middle"><input type="radio"
1088         name="server_header_filter_all" id="server_header_filter_all_x" value="X" @server-header-filter-all-x@ ></td>
1089       <td class="action"><a href="@user-manual@@actions-help-prefix@SERVER-HEADER-FILTER">server-header-filter</a> *</td>
1090       <td>Filter the server headers.
1091         You can use the radio buttons on this line to disable
1092         all server-header filters applied by previous rules, and/or
1093         you can enable or disable the filters individually below.</td>
1094     </tr>
1095 @server-header-filter-params@
1096     <tr class="bg1" align="left" valign="top">
1097       <td class="en1">&nbsp;</td>
1098       <td class="dis1" align="center" valign="middle"><input type="radio"
1099         name="server_header_tagger_all" id="server_header_tagger_all_n" value="N" @server-header-tagger-all-n@ ></td>
1100       <td class="noc1" align="center" valign="middle"><input type="radio"
1101         name="server_header_tagger_all" id="server_header_tagger_all_x" value="X" @server-header-tagger-all-x@ ></td>
1102       <td class="action"><a href="@user-manual@@actions-help-prefix@SERVER-HEADER-TAGGER">server-header-tagger</a> *</td>
1103       <td>Create tags based on the server headers.
1104         You can use the radio buttons on this line to disable
1105         all server-header taggers applied by previous rules, and/or
1106         you can enable or disable the taggers individually below.</td>
1107     </tr>
1108 @server-header-tagger-params@
1109     <tr class="bg1" align="left" valign="top">
1110       <td class="en1" align="center" valign="middle"><input type="radio"
1111         name="session_cookies_only" value="Y" @session-cookies-only-y@
1112         ></td>
1113       <td class="dis1" align="center" valign="middle"><input type="radio"
1114         name="session_cookies_only" value="N" @session-cookies-only-n@
1115         ></td>
1116       <td class="noc1" align="center" valign="middle"><input type="radio"
1117         name="session_cookies_only" value="X" @session-cookies-only-x@
1118         ></td>
1119       <td class="action"><a href="@user-manual@@actions-help-prefix@SESSION-COOKIES-ONLY">session-cookies-only</a></td>
1120       <td>HTTP cookies set by the website are changed to temporary
1121         ("per-session") ones, which only last until you close your web
1122         browser.  This will allow you to use sites that require cookies, but
1123         sites will not be able to track you across sessions.  For this to
1124         be useful, you should disable
1125         <a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES"><b>crunch-outgoing-cookies</b></a> and
1126         <a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES"><b>crunch-incoming-cookies</b></a>.</td>
1127     </tr>
1128     <tr class="bg1" align="left" valign="top">
1129       <td class="en1" align="center" valign="middle"><input type="radio"
1130         name="set_image_blocker" id="set_image_blocker_y" value="Y" @set-image-blocker-y@
1131         onclick="show_set_image_blocker_opts(true)"></td>
1132       <td class="dis1" align="center" valign="middle"><input type="radio"
1133         name="set_image_blocker" value="N" @set-image-blocker-n@
1134         onclick="show_set_image_blocker_opts(false)"></td>
1135       <td class="noc1" align="center" valign="middle"><input type="radio"
1136         name="set_image_blocker" value="X" @set-image-blocker-x@
1137         onclick="show_set_image_blocker_opts(false)"></td>
1138       <td class="action"><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></td>
1139       <td>Specifies how to block images.</td>
1140     </tr>
1141     <tr class="bg1" align="left" valign="top" id="set_image_blocker_opts">
1142       <td class="en1">&nbsp;</td>
1143       <td class="dis1">&nbsp;</td>
1144       <td class="noc1">&nbsp;</td>
1145       <td>&nbsp;</td>
1146       <td><input type="radio" name="set_image_blocker_mode"
1147         onclick="set_image_blocker_param_disable(true)"
1148         value="pattern" id="set_image_blocker_mode_pattern"
1149         @set-image-blocker-param-pattern@><label
1150         for="set_image_blocker_mode_pattern">Send a pattern (<img
1151         src="send-banner?type=p" width="12" height="12"
1152         alt="pattern">)</label><br>
1153         <input type="radio" name="set_image_blocker_mode" value="blank"
1154         onclick="set_image_blocker_param_disable(true)"
1155         id="set_image_blocker_mode_blank" @set-image-blocker-param-blank@><label
1156         for="set_image_blocker_mode_blank">Send a 1x1 transparent GIF</label><br>
1157         <input type="radio" name="set_image_blocker_mode" value="CUSTOM"
1158         onclick="set_image_blocker_param_disable(false)"
1159         id="set_image_blocker_mode_set" @set-image-blocker-param-custom@><label
1160         for="set_image_blocker_mode_set">Redirect
1161         the browser to this image URL:</label><br>
1162         <input type="text" name="set_image_blocker_param" id="set_image_blocker_param"
1163         size="40" value="@set-image-blocker-param@"></td>
1164     </tr>
1165   </table>
1166
1167 <!-- @if-multiple-forms-start -->
1168   <p>
1169    <input type="hidden" name="f" value="@f@">
1170    <input type="hidden" name="v" value="@v@">
1171    <input type="hidden" name="s" value="@s@">
1172    <input type="submit" value="Submit changes in Section 4" name="Submit">
1173   </p>
1174  </form>
1175 <!-- if-multiple-forms-end@ -->
1176 </td></tr>
1177 <!-- @if-one-form-only-start -->
1178     <tr>
1179       <td class="green" align="center">
1180         <p><input type="submit" value="Submit" name="Submit"></p>
1181       </td>
1182     </tr>
1183 <!-- if-one-form-only-end@ -->
1184     <tr>
1185       <td class="box">
1186         <h2>More Privoxy:</h2>
1187         <ul>@menu@<li><a href="@user-manual@">Documentation</a></li></ul>
1188       </td>
1189     </tr>
1190
1191 <!-- @if-have-help-info-start -->
1192     <tr>
1193       <td class="info">
1194
1195 #include mod-local-help
1196
1197       </td>
1198     </tr>
1199 <!-- if-have-help-info-end@ -->
1200
1201     <tr>
1202       <td class="info">
1203
1204 #include mod-support-and-service
1205
1206       </td>
1207     </tr>
1208
1209   </table>
1210 <!-- @if-one-form-only-start -->
1211 </form>
1212 <!-- if-one-form-only-end@ -->
1213
1214 <script type="text/javascript">
1215 <!--
1216
1217 if (document.getElementById) {
1218     // alert("Netscape 6 or IE5");
1219     document.getElementById("hide_from_header_param").disabled = !(document.getElementById("hide_from_header_mode_set").checked);
1220     document.getElementById("hide_referrer_param").disabled = !(document.getElementById("hide_referrer_mode_set").checked);
1221     document.getElementById("set_image_blocker_param").disabled = !(document.getElementById("set_image_blocker_mode_set").checked);
1222
1223     show_add_header_opts    (document.getElementById("add_header_y").checked);
1224     show_deanimate_opts     (document.getElementById("deanimate_gifs_y").checked);
1225     show_hide_from_header_opts(document.getElementById("hide_from_header_y").checked);
1226     show_hide_referrer_opts (document.getElementById("hide_referrer_y").checked);
1227     show_user_agent_opts    (document.getElementById("hide_user_agent_y").checked);
1228     show_set_image_blocker_opts (document.getElementById("set_image_blocker_y").checked);
1229     show_limit_connect_opts (document.getElementById("limit_connect_y").checked);
1230     show_send_wafer_opts    (document.getElementById("send_wafer_y").checked);
1231 } else if (document.all) {
1232     // alert("IE4");
1233     document.myform.hide_from_header_param.disabled = !(document.myform.hide_from_header_mode_set.checked);
1234     document.myform.hide_referrer_param.disabled = !(document.myform.hide_referrer_mode_set.checked);
1235     document.myform.set_image_blocker_param.disabled = !(document.myform.set_image_blocker_mode_set.checked);
1236
1237     show_add_header_opts    (document.myform.add_header_y.checked);
1238     show_deanimate_opts     (document.myform.deanimate_gifs_y.checked);
1239     show_hide_from_header_opts (document.myform.hide_from_header_y.checked);
1240     show_hide_referrer_opts (document.myform.hide_referrer_y.checked);
1241     show_user_agent_opts    (document.myform.hide_user_agent_y.checked);
1242     show_set_image_blocker_opts (document.myform.set_image_blocker_y.checked);
1243     show_limit_connect_opts (document.myform.limit_connect_y.checked);
1244     show_send_wafer_opts    (document.myform.send_wafer_y.checked);
1245 } else if (document.layers) {
1246     // alert("Netscape 4");
1247 }
1248 //-->
1249 </script>
1250
1251
1252 </body>
1253
1254 </html>