1 ##############################################################################
3 # File : $Source: /cvsroot/ijbswa/current/templates/edit-actions-for-url,v $
5 # Purpose : Template used to edit the actions associated with a
6 # particular section in an actions file.
9 # Copyright : Written by and Copyright (C) 2001-2008 the SourceForge
10 # Privoxy team. http://www.privoxy.org/
12 # Original Author: Copyright (C) 2001 Jonathan Foster
13 # http://www.jon-foster.co.uk/
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.
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.
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.
34 # $Log: edit-actions-for-url,v $
35 # Revision 1.53 2008/03/28 15:13:45 fabiankeil
36 # Remove inspect-jpegs action.
38 # Revision 1.52 2008/03/15 14:52:36 fabiankeil
39 # Add CGI editor support for the "disable all filters of this type"
40 # directives "-client-header-filter", "-server-header-filter",
41 # "-client-header-tagger" and "-server-header-tagger".
43 # Revision 1.51 2008/03/07 16:46:49 fabiankeil
44 # Reword limit-connect{} entry.
46 # Revision 1.50 2008/03/04 18:30:44 fabiankeil
47 # Remove the treat-forbidden-connects-like-blocks action. We now
48 # use the "blocked" page for forbidden CONNECT requests by default.
50 # Revision 1.49 2008/03/01 14:00:47 fabiankeil
51 # Let the block action take the reason for the block
52 # as argument and show it on the "blocked" page.
54 # Revision 1.48 2007/12/11 21:18:55 fabiankeil
55 # Make forward-override accessible through the CGI editor.
57 # Revision 1.47 2007/12/06 18:21:55 fabiankeil
58 # Update hide-forwarded-for-headers description.
60 # Revision 1.46 2007/11/10 15:06:10 fabiankeil
61 # - Add support for +hide-referrer{conditional-forge}.
64 # Revision 1.45 2007/05/24 13:38:45 fabiankeil
67 # Revision 1.44 2007/04/15 16:39:21 fabiankeil
68 # Introduce tags as alternative way to specify which
69 # actions apply to a request. At the moment tags can be
70 # created based on client and server headers.
72 # Revision 1.43 2007/03/29 11:40:34 fabiankeil
73 # Divide @filter-params@ into @client-header-filter-params@
74 # @content-filter-params@ and @server-header-filter-params@.
76 # Revision 1.42 2007/03/20 15:40:00 fabiankeil
77 # Adjust to new world order with dedicated header-filter actions.
79 # Revision 1.41 2007/01/23 16:03:16 fabiankeil
80 # - Add favicon links.
81 # - Remove useless W3C validator links.
83 # Revision 1.40 2006/12/21 13:01:03 fabiankeil
84 # Prepare for "split-large-forms".
86 # Mention that redirect{} now also understands
87 # a single pcrs job as argument.
89 # Add some table summaries and remove useless validator link.
91 # Revision 1.39 2006/10/04 17:37:54 fabiankeil
92 # JavaScript fix for bug report #1570678.
94 # Revision 1.38 2006/09/08 12:06:35 fabiankeil
95 # Have hide-if-modified-since interpret the random
96 # range value as minutes instead of hours. Allows
97 # more fine-grained configuration.
99 # Revision 1.37 2006/09/05 18:20:14 fabiankeil
100 # Sorted alphabetically, fixed spelling mistakes
101 # and shortened some descriptions.
103 # Revision 1.36 2006/08/14 08:29:17 fabiankeil
104 # Split filter-headers{} into filter-client-headers{}
105 # and filter-server-headers{}.
107 # Revision 1.35 2006/08/03 02:46:42 david__schmidt
108 # Incorporate Fabian Keil's patch work:
\rhttp://www.fabiankeil.de/sourcecode/privoxy/
110 # Revision 1.34 2006/07/18 14:49:13 david__schmidt
111 # Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch)
112 # with what was really the latest development (the v_3_0_branch branch)
114 # Revision 1.29.2.5 2004/10/05 03:17:26 david__schmidt
115 # Typo: inspect_jpegs, not inspect-jpegs in form
117 # Revision 1.29.2.4 2004/10/03 12:53:46 david__schmidt
118 # Add the ability to check jpeg images for invalid
119 # lengths of comment blocks. Defensive strategy
120 # against the exploit:
121 # Microsoft Security Bulletin MS04-028
122 # Buffer Overrun in JPEG Processing (GDI+) Could
123 # Allow Code Execution (833987)
124 # Enabled with +inspect-jpegs in actions files.
126 # Revision 1.29.2.3 2002/08/23 02:22:53 hal9
127 # Fix a perl brain fart with <li> in comments.
129 # Revision 1.29.2.1 2002/08/02 12:51:42 oes
130 # Added top submit button; Consistency with docs: Change default name for action from hide-referer to hide-referrer
132 # Revision 1.29 2002/05/21 19:10:57 oes
133 # Fixed JavaScript error
135 # Revision 1.28 2002/05/14 21:36:38 oes
136 # - Renamed prevent-(setting/reading)-cookies to
137 # crunch-(incoming/outgoing)-cookies
138 # - Renamed helplink export to actions-help-prefix
139 # - Restored alphabetical order of actions
141 # Revision 1.27 2002/04/26 22:55:26 jongfoster
142 # Removing the alternating colors because they've been wrong
143 # since the actions renames, they're high maintenance, they
144 # don't look particularly good, and now there are gaps between
145 # the table cells we don't need them.
147 # Revision 1.26 2002/04/26 21:55:17 jongfoster
148 # Cosmetic change: Making the +filter UI look the same as
151 # Revision 1.25 2002/04/26 21:37:50 jongfoster
152 # Fixing all(?) the substitutions that were broken in the
153 # recent actions rename.
155 # Revision 1.24 2002/04/26 18:24:28 jongfoster
156 # Fixing typos in help hyperlinks
158 # Revision 1.23 2002/04/26 12:57:02 oes
159 # Actions renamed, alphabetically sorted, comments fixed, and names linked to help
161 # Revision 1.22 2002/04/10 13:32:53 oes
162 # Made templates modular
164 # Revision 1.21 2002/04/08 17:05:18 oes
165 # Inline a style exception
167 # Revision 1.20 2002/04/05 16:01:30 oes
168 # Correct HTML, external Stylesheets, eye candy, some fixes
170 # Revision 1.19 2002/03/26 22:29:56 swa
171 # we have a new homepage!
173 # Revision 1.18 2002/03/24 16:32:08 jongfoster
174 # Removing logo option
176 # Revision 1.17 2002/03/24 15:23:33 jongfoster
179 # Revision 1.16 2002/03/24 11:01:06 swa
182 # Revision 1.15 2002/03/23 16:18:15 swa
183 # renamed every reference to the old name with foobar.
184 # fixed "application foobar application" tag, fixed
185 # "the foobar" with "foobar". left junkbuster in cvs
186 # comments and remarks to history untouched. should
187 # make final rename easier.
189 # Revision 1.14 2002/03/16 15:22:19 jongfoster
190 # Moving 'alpha' warning to the end of the page
192 # Revision 1.13 2002/03/16 14:28:38 jongfoster
193 # First version of modular filters support
195 # Revision 1.12 2002/03/12 01:42:50 oes
196 # Introduced modular filters
198 # Revision 1.11 2002/03/08 18:19:14 jongfoster
199 # Adding +image-blocker{pattern} option to edit interface
201 # Revision 1.10 2002/03/03 10:29:12 swa
202 # point users to the right feedback forms,
203 # not necessarily the developer list.
205 # Revision 1.9 2002/01/23 00:26:45 jongfoster
206 # Reducing length of URLs
207 # Where encoded and unencoded versions of a string existed, removing
210 # Revision 1.8 2002/01/17 21:33:00 jongfoster
211 # Replacing all references to the URL of the config interface
214 # Revision 1.7 2002/01/17 21:21:03 jongfoster
215 # DOS->Unix line endings
217 # Revision 1.6 2001/11/22 21:58:41 jongfoster
218 # Adding action +no-cookies-keep
220 # Revision 1.5 2001/11/13 21:12:17 jongfoster
221 # Added support for the following actions:
222 # +downgrade, +limit-connect, +no-compression
224 # Revision 1.4 2001/11/13 00:58:18 jongfoster
225 # New version of actions file editor templates
228 ##############################################################################
230 # Browser support for the JavaScript on this page:
231 # MS Internet Explorer 5.5 - Tested, Yes
232 # Netscape 6.0 - Tested, Yes
233 # Netscape 4.75 - Tested, NO
234 # Opera 5.12 - Tested, NO
235 # MS Internet Explorer 4+ - Untested, Yes
236 # MS IE 3.x, NS3.x - Untested, NO
237 # Mozilla >=0.6 - Untested, Yes
239 # All browsers should work, you just might not get the pretty DHTML effects.
241 # The effects that only work under the browsers marked "Yes" above are:
242 # - Text edit boxes that won't have any effect are disabled.
243 # - Table rows containing additional settings are hidden if the feature in
244 # question is disabled.
246 # There are major kludges to get around these problems with NS4, but they
247 # screw up the HTML too much for other browsers. If anyone wants to try,
248 # here's some descriptions of the kludges:
249 # http://www.webreference.com/js/tips/991114.html
250 # http://www.webreference.com/dhtml/column12/outDisplay.html
252 # If you're favorite browser isn't listed, please test and add it.
255 #############################################################################
259 # This file currently produces valid HTML 4.01 Strict.
261 # If you change it, please save the generated page from your web browser
262 # and then upload it to http://validator.w3.org/ for checking.
264 #############################################################################
266 # Available variables include:
272 # deanimate-gifs-param-first
273 # deanimate-gifs-param-last
274 # hide-from-param-block
275 # hide-from-param-custom
277 # hide-referrer-param-forge
278 # hide-referrer-param-block
279 # hide-referrer-param-custom
280 # hide-referrer-param
281 # hide-user-agent-param
282 # image-blocker-param-pattern
283 # image-blocker-param-blank
284 # image-blocker-param-custom
287 #############################################################################
288 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
292 <meta http-equiv="Content-Style-Type" content="text/css">
293 <meta http-equiv="Content-Script-Type" content="text/javascript">
294 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
295 <meta name="robots" content="noindex,nofollow">
296 <link rel="stylesheet" type="text/css" href="@default-cgi@send-stylesheet">
297 <link rel="shortcut icon" href="@default-cgi@favicon.ico" type="image/x-icon">
299 <title>Privoxy@@my-hostname@: Edit actions</title>
301 <style type="text/css">
302 td.action { font-weight: bold;
304 white-space: nowrap }
305 td.subaction { font-style: italic }
306 th { font-weight: bold; }
307 # This is the key to the color names below:
308 # bg=background, en="Enable", dis="Disable", noc="No Change", hdr=header
309 # 1=odd rows, 2=even rows, h=Table header
310 tr.hdr { background-color: #999999 }
311 tr.bg1 { background-color: #eeeeee }
312 td.en1 { background-color: #ddffdd }
313 td.dis1 { background-color: #ffdddd }
314 td.noc1 { background-color: #ddddff }
315 th.enh { background-color: #99ff99 }
316 th.dish { background-color: #ff9999 }
317 th.noch { background-color: #9999ff }
318 table.wide { padding: 5px; }
319 td.green { border: solid black 1px; background-color: #ddffdd; }
325 border-left-width: 10px;
326 border-right-width: 10px;
327 border-top-width: 0px;
328 border-bottom-width: 0px }
331 <script type="text/javascript">
334 function hide_from_header_param_disable(tf)
336 if (document.getElementById) {
338 document.getElementById("hide_from_header_param").disabled = tf;
339 } else if (document.all) {
341 document.myform.hide_from_header_param.disabled = tf;
345 function hide_referrer_param_disable(tf)
347 if (document.getElementById) {
348 document.getElementById("hide_referrer_param").disabled = tf;
349 } else if (document.all) {
350 document.myform.hide_referrer_param.disabled = tf;
354 function set_image_blocker_param_disable(tf)
356 if (document.getElementById) {
357 document.getElementById("set_image_blocker_param").disabled = tf;
358 } else if (document.all) {
359 document.myform.set_image_blocker_param.disabled = tf;
363 function show_add_header_opts(tf)
365 if (document.getElementById) {
366 target = document.getElementById("add_header_opts");
367 } else if (document.all) {
368 target = document.add_header_opts;
372 target.style.display = (tf ? "" : "none");
375 function show_deanimate_opts(tf)
377 if (document.getElementById) {
378 target = document.getElementById("deanimate_opts");
379 } else if (document.all) {
380 target = document.deanimate_opts;
384 target.style.display = (tf ? "" : "none");
387 function show_hide_from_header_opts(tf)
389 if (document.getElementById) {
390 target = document.getElementById("hide_from_header_opts");
391 } else if (document.all) {
392 target = document.hide_from_header_opts;
396 target.style.display = (tf ? "" : "none");
399 function show_hide_referrer_opts(tf)
401 if (document.getElementById) {
402 target = document.getElementById("hide_referrer_opts");
403 } else if (document.all) {
404 target = document.hide_referrer_opts;
408 target.style.display = (tf ? "" : "none");
411 function show_user_agent_opts(tf)
413 if (document.getElementById) {
414 target = document.getElementById("user_agent_opts");
415 } else if (document.all) {
416 target = document.user_agent_opts;
420 target.style.display = (tf ? "" : "none");
423 function show_set_image_blocker_opts(tf)
425 if (document.getElementById) {
426 target = document.getElementById("set_image_blocker_opts");
427 } else if (document.all) {
428 target = document.set_image_blocker_opts;
432 target.style.display = (tf ? "" : "none");
435 function show_limit_connect_opts(tf)
437 if (document.getElementById) {
438 target = document.getElementById("limit_connect_opts");
439 } else if (document.all) {
440 target = document.limit_connect_opts;
444 target.style.display = (tf ? "" : "none");
453 <!-- @if-one-form-only-start -->
454 <form method="GET" action="edit-actions-submit" id="myform" name="myform">
455 <!-- if-one-form-only-end@ -->
457 <table summary="" cellpadding="20" cellspacing="10" border="0" width="100%">
466 <!-- @if-unstable-start -->
467 # This will only appear if CODE_STATUS is "alpha" or "beta". See configure.in
471 #include mod-unstable-warning
475 <!-- if-unstable-end@ -->
477 <!-- @if-one-form-only-start -->
481 <input type="hidden" name="f" value="@f@">
482 <input type="hidden" name="v" value="@v@">
483 <input type="hidden" name="s" value="@s@">
489 <td class="green" align="center">
490 <p><input type="submit" value="Submit" name="Submit"></p>
493 <!-- if-one-form-only-end@ -->
495 <tr><td class="wrapbox">
497 <!-- @if-multiple-forms-start -->
498 <form method="GET" action="edit-actions-submit" id="myform" name="myform">
499 <h2>Edit Actions (Section 1)</h2>
500 <!-- if-multiple-forms-end@ -->
502 <table summary="Action section 1" border="0" cellspacing="2" width="100%" class="wide">
503 <tr class="hdr" align="left">
504 <th class="enh" align="center">Enable</th>
505 <th class="dish" align="center">Disable</th>
506 <th class="noch" align="center">No Change</th>
510 <tr class="bg1" align="left" valign="top">
511 <td class="en1" align="center" valign="middle"><input type="radio"
512 name="add_header" id="add_header_y" value="Y" @add-header-y@
513 onclick="show_add_header_opts(true)"></td>
514 <td class="dis1" align="center" valign="middle"><input type="radio"
515 name="add_header" value="N" @add-header-n@
516 onclick="show_add_header_opts(false)"></td>
517 <td class="noc1" align="center" valign="middle"><input type="radio"
518 name="add_header" value="X" @add-header-x@
519 onclick="show_add_header_opts(false)"></td>
520 <td class="action"><a href="@user-manual@@actions-help-prefix@ADD-HEADER">add-header</a></td>
521 <td>Adds HTTP headers.</td>
523 <tr class="bg1" align="left" valign="top" id="add_header_opts">
524 <td class="en1"> </td>
525 <td class="dis1"> </td>
526 <td class="noc1"> </td>
528 <td>Editing the settings for this option, or turning
529 it on if it was off, is not yet supported using this web-based
532 <tr class="bg1" align="left" valign="top">
533 <td class="en1" align="center" valign="middle"><input type="radio"
534 name="block" value="Y" @block-y@
536 <td class="dis1" align="center" valign="middle"><input type="radio"
537 name="block" value="N" @block-n@
539 <td class="noc1" align="center" valign="middle"><input type="radio"
540 name="block" value="X" @block-x@
542 <td class="action"><a href="@user-manual@@actions-help-prefix@BLOCK">block</a></td>
543 <td>Block the request.</td>
545 <tr class="bg1" align="left" valign="top" id="block_opts">
546 <td class="en1"> </td>
547 <td class="dis1"> </td>
548 <td class="noc1"> </td>
550 <td>Block reason to tell the user:<br>
551 <input type="text" name="block_mode" size="40" value="@block-param@">
554 <tr class="bg1" align="left" valign="top">
555 <td class="en1"> </td>
556 <td class="dis1" align="center" valign="middle"><input type="radio"
557 name="client_header_filter_all" id="client_header_filter_all_n" value="N" @client-header-filter-all-n@ ></td>
558 <td class="noc1" align="center" valign="middle"><input type="radio"
559 name="client_header_filter_all" id="client_header_filter_all_x" value="X" @client-header-filter-all-x@ ></td>
560 <td class="action"><a href="@user-manual@@actions-help-prefix@CLIENT-HEADER-FILTER">client-header-filter</a> *</td>
561 <td>Filter the client headers.
562 You can use the radio buttons on this line to disable
563 all client-header filters applied by previous rules, and/or
564 you can enable or disable the filters individually below.</td>
566 @client-header-filter-params@
567 <tr class="bg1" align="left" valign="top">
568 <td class="en1"> </td>
569 <td class="dis1" align="center" valign="middle"><input type="radio"
570 name="client_header_tagger_all" id="client_header_tagger_all_n" value="N" @client-header-tagger-all-n@ ></td>
571 <td class="noc1" align="center" valign="middle"><input type="radio"
572 name="client_header_tagger_all" id="client_header_tagger_all_x" value="X" @client-header-tagger-all-x@ ></td>
573 <td class="action"><a href="@user-manual@@actions-help-prefix@CLIENT-HEADER-TAGGER">client-header-tagger</a> *</td>
574 <td>Create tags based on the client headers.
575 You can use the radio buttons on this line to disable
576 all client-header taggers applied by previous rules, and/or
577 you can enable or disable the taggers individually below.</td>
579 @client-header-tagger-params@
580 <tr class="bg1" align="left" valign="top">
581 <td class="en1" align="center" valign="middle"><input type="radio"
582 name="content_type_overwrite" value="Y" @content-type-overwrite-y@
584 <td class="dis1" align="center" valign="middle"><input type="radio"
585 name="content_type_overwrite" value="N" @content-type-overwrite-n@
587 <td class="noc1" align="center" valign="middle"><input type="radio"
588 name="content_type_overwrite" value="X" @content-type-overwrite-x@
590 <td class="action"><a href="@user-manual@@actions-help-prefix@CONTENT_TYPE_OVERWRITE">content-type-overwrite</a></td>
591 <td>Replace Content-Type header. By default it only applies to
592 text documents, but if you know what you're doing you
593 can enable force-text-mode to modify binary content types as well.</td>
595 <tr class="bg1" align="left" valign="top" id="content_type_overwrite_opts">
596 <td class="en1"> </td>
597 <td class="dis1"> </td>
598 <td class="noc1"> </td>
600 <td>New Content-Type:<br>
601 <input type="text" name="content_type_overwrite_mode" size="40"
602 value="@content-type-overwrite-param@"></td>
604 <tr class="bg1" align="left" valign="top">
605 <td class="en1" align="center" valign="middle"><input type="radio"
606 name="crunch_client_header" id="crunch_client_header_y" value="Y" @crunch-client-header-y@
608 <td class="dis1" align="center" valign="middle"><input type="radio"
609 name="crunch_client_header" value="N" @crunch-client-header-n@
611 <td class="noc1" align="center" valign="middle"><input type="radio"
612 name="crunch_client_header" value="X" @crunch-client-header-x@
614 <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-CLIENT-HEADER">crunch-client-header</a></td>
615 <td>Remove header(s) matching the supplied pattern.</td>
617 <tr class="bg1" align="left" valign="top" id="crunch_client_header_opts">
618 <td class="en1"> </td>
619 <td class="dis1"> </td>
620 <td class="noc1"> </td>
622 <td>Header string to suppress:<br>
623 <input type="text" name="crunch_client_header_mode" size="40"
624 value="@crunch-client-header-param@"></td>
626 <tr class="bg1" align="left" valign="top">
627 <td class="en1" align="center" valign="middle"><input type="radio"
628 name="crunch_if_none_match" value="Y" @crunch-if-none-match-y@
630 <td class="dis1" align="center" valign="middle"><input type="radio"
631 name="crunch_if_none_match" value="N" @crunch-if-none-match-n@
633 <td class="noc1" align="center" valign="middle"><input type="radio"
634 name="crunch_if_none_match" value="X" @crunch-if-none-match-x@
636 <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH_IF_NONE_MATCH">crunch-if-none-match</a></td>
637 <td>Remove If-None-Match header. Useful for filter testing
638 and to make sure the header can't be used to track your visits.</td>
641 <tr class="bg1" align="left" valign="top">
642 <td class="en1" align="center" valign="middle"><input type="radio"
643 name="crunch_incoming_cookies" value="Y" @crunch-incoming-cookies-y@
645 <td class="dis1" align="center" valign="middle"><input type="radio"
646 name="crunch_incoming_cookies" value="N" @crunch-incoming-cookies-n@
648 <td class="noc1" align="center" valign="middle"><input type="radio"
649 name="crunch_incoming_cookies" value="X" @crunch-incoming-cookies-x@
651 <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES">crunch-incoming-cookies</a></td>
652 <td>Prevent the website from setting HTTP cookies on your system.</td>
654 <tr class="bg1" align="left" valign="top">
655 <td class="en1" align="center" valign="middle"><input type="radio"
656 name="crunch_outgoing_cookies" value="Y" @crunch-outgoing-cookies-y@
658 <td class="dis1" align="center" valign="middle"><input type="radio"
659 name="crunch_outgoing_cookies" value="N" @crunch-outgoing-cookies-n@
661 <td class="noc1" align="center" valign="middle"><input type="radio"
662 name="crunch_outgoing_cookies" value="X" @crunch-outgoing-cookies-x@
664 <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES">crunch-outgoing-cookies</a></td>
665 <td>Prevent the website from reading HTTP cookies from your system.</td>
667 <tr class="bg1" align="left" valign="top">
668 <td class="en1" align="center" valign="middle"><input type="radio"
669 name="crunch_server_header" id="crunch_server_header_y" value="Y" @crunch-server-header-y@
671 <td class="dis1" align="center" valign="middle"><input type="radio"
672 name="crunch_server_header" value="N" @crunch-server-header-n@
674 <td class="noc1" align="center" valign="middle"><input type="radio"
675 name="crunch_server_header" value="X" @crunch-server-header-x@
677 <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-SERVER-HEADER">crunch-server-header</a></td>
678 <td>Remove server header(s) matching the supplied pattern.</td>
680 <tr class="bg1" align="left" valign="top" id="crunch_server_header_opts">
681 <td class="en1"> </td>
682 <td class="dis1"> </td>
683 <td class="noc1"> </td>
685 <td>Header string to suppress:<br>
686 <input type="text" name="crunch_server_header_mode" size="40"
687 value="@crunch-server-header-param@"></td>
690 <tr class="bg1" align="left" valign="top">
691 <td class="en1" align="center" valign="middle"><input type="radio"
692 name="deanimate_gifs" id="deanimate_gifs_y" value="Y" @deanimate-gifs-y@
693 onclick="show_deanimate_opts(true)"></td>
694 <td class="dis1" align="center" valign="middle"><input type="radio"
695 name="deanimate_gifs" value="N" @deanimate-gifs-n@
696 onclick="show_deanimate_opts(false)"></td>
697 <td class="noc1" align="center" valign="middle"><input type="radio"
698 name="deanimate_gifs" value="X" @deanimate-gifs-x@
699 onclick="show_deanimate_opts(false)"></td>
700 <td class="action"><a href="@user-manual@@actions-help-prefix@DEANIMATE-GIFS">deanimate-gifs</a></td>
701 <td>Replace animated GIFs with their (first/last) frame.</td>
703 <tr class="bg1" align="left" valign="top" id="deanimate_opts">
704 <td class="en1"> </td>
705 <td class="dis1"> </td>
706 <td class="noc1"> </td>
708 <td>Use the <input type="radio" name="deanimate_gifs_mode"
709 value="first" id="deanimate_first" @deanimate-gifs-param-first@><label
710 for="deanimate_first">first frame</label> <input
711 type="radio" name="deanimate_gifs_mode" value="last"
712 id="deanimate_last" @deanimate-gifs-param-last@><label
713 for="deanimate_last">last frame</label></td>
715 <tr class="bg1" align="left" valign="top">
716 <td class="en1" align="center" valign="middle"><input type="radio"
717 name="downgrade_http_version" value="Y" @downgrade-http-version-y@></td>
718 <td class="dis1" align="center" valign="middle"><input type="radio"
719 name="downgrade_http_version" value="N" @downgrade-http-version-n@></td>
720 <td class="noc1" align="center" valign="middle"><input type="radio"
721 name="downgrade_http_version" value="X" @downgrade-http-version-x@></td>
722 <td class="action"><a href="@user-manual@@actions-help-prefix@DOWNGRADE-HTTP-VERSION"
723 >downgrade-http-version</a></td>
724 <td>Change HTTP/1.1 requests to HTTP/1.0. Only change if you know
725 what you're doing!</td>
727 <tr class="bg1" align="left" valign="top">
728 <td class="en1" align="center" valign="middle"><input type="radio"
729 name="fast_redirects" value="Y" @fast-redirects-y@
731 <td class="dis1" align="center" valign="middle"><input type="radio"
732 name="fast_redirects" value="N" @fast-redirects-n@
734 <td class="noc1" align="center" valign="middle"><input type="radio"
735 name="fast_redirects" value="X" @fast-redirects-x@
737 <td class="action"><a href="@user-manual@@actions-help-prefix@FAST-REDIRECTS">fast-redirects</a></td>
738 <td>Bypass some click-tracking URLs.</td>
740 <tr class="bg1" align="left" valign="top" id="fast-redirects_opts">
741 <td class="en1"> </td>
742 <td class="dis1"> </td>
743 <td class="noc1"> </td>
746 <input type="radio" name="fast_redirects_mode"
747 value="simple-check" id="fast_redirects_simple_check" @fast-redirects-param-simple-check@><label
748 for="fast_redirects_simple_check">Simple check.</label>
750 <input type="radio" name="fast_redirects_mode" value="check-decoded-url"
751 id="fast_redirects_check_decoded_url" @fast-redirects-param-check-decoded-url@><label
752 for="fast_redirects_check_decoded_url">Decode URL before checking.</label></td>
754 <!-- @if-multiple-forms-start -->
757 <input type="hidden" name="f" value="@f@">
758 <input type="hidden" name="v" value="@v@">
759 <input type="hidden" name="s" value="@s@">
760 <input type="submit" value="Submit changes in Section 1" name="Submit">
764 <tr><td class="wrapbox">
765 <form method="GET" action="edit-actions-submit" id="myform-2" name="myform">
766 <h2>Edit Actions (Section 2)</h2>
767 <table summary="Action section 2" border="0" cellspacing="2" width="100%" class="wide">
768 <tr class="hdr" align="left">
769 <th class="enh" align="center">Enable</th>
770 <th class="dish" align="center">Disable</th>
771 <th class="noch" align="center">No Change</th>
775 <!-- if-multiple-forms-end@ -->
776 <tr class="bg1" align="left" valign="top">
777 <td class="en1"> </td>
778 <td class="dis1" align="center" valign="middle"><input type="radio"
779 name="filter_all" id="filter_all_n" value="N" @filter-all-n@ ></td>
780 <td class="noc1" align="center" valign="middle"><input type="radio"
781 name="filter_all" id="filter_all_x" value="X" @filter-all-x@ ></td>
782 <td class="action"><a href="@user-manual@@actions-help-prefix@FILTER">filter</a> *</td>
783 <td>Filter the website through regular expression
784 filters. You can use the radio buttons on this line to disable
785 all filters applied by previous rules, and/or you can enable or
786 disable the filters individually below.</td>
789 @content-filter-params@
791 <!-- @if-multiple-forms-start -->
794 <input type="hidden" name="f" value="@f@">
795 <input type="hidden" name="v" value="@v@">
796 <input type="hidden" name="s" value="@s@">
797 <input type="submit" value="Submit changes in Section 2" name="Submit">
801 <tr><td class="wrapbox">
802 <form method="GET" action="edit-actions-submit" id="myform-3" name="myform">
803 <h2>Edit Actions (Section 3)</h2>
804 <table summary="Action section 3" border="0" cellspacing="2" width="100%" class="wide">
805 <tr class="hdr" align="left">
806 <th class="enh" align="center">Enable</th>
807 <th class="dish" align="center">Disable</th>
808 <th class="noch" align="center">No Change</th>
812 <!-- if-multiple-forms-end@ -->
813 <tr class="bg1" align="left" valign="top">
814 <td class="en1" align="center" valign="middle"><input type="radio"
815 name="force_text_mode" value="Y" @force-text-mode-y@
817 <td class="dis1" align="center" valign="middle"><input type="radio"
818 name="force_text_mode" value="N" @force-text-mode-n@
820 <td class="noc1" align="center" valign="middle"><input type="radio"
821 name="force_text_mode" value="X" @force-text-mode-x@
823 <td class="action"><a href="@user-manual@@actions-help-prefix@FORCE_TEXT_MODE">force-text-mode</a></td>
825 Enable filtering on documents whose Content-Type wasn't recognized as text.
826 Do think twice, nothing is alright.
829 <tr class="bg1" align="left" valign="top">
830 <td class="en1" align="center" valign="middle"><input type="radio"
831 name="forward_override" id="forward_override_y" value="Y" @forward-override-y@
833 <td class="dis1" align="center" valign="middle"><input type="radio"
834 name="forward_override" id="forward_override_n" value="N" @forward-override-n@
836 <td class="noc1" align="center" valign="middle"><input type="radio"
837 name="forward_override" id="forward_override_x" value="X" @forward-override-x@
839 <td class="action"><a href="@user-manual@@actions-help-prefix@FORWARD-OVERRIDE">forward-override</a></td>
840 <td>Override forward directives in the configuration file.
841 Note that the <a href="@user-manual@actions-file.html#FORWARD-OVERRIDE">parameter syntax</a>
842 isn't checked until the action is used. <strong class="warning">Syntax errors
843 will cause Privoxy to exit.</strong></td>
845 <tr class="bg1" align="left" valign="top" id="forward_override_language_opts">
846 <td class="en1"> </td>
847 <td class="dis1"> </td>
848 <td class="noc1"> </td>
851 Overriding forward directive:<br>
852 <input type="text" name="forward_override_param"
853 id="forward_override_param" size="40"
854 value="@forward-override-param@"><br>
857 <tr class="bg1" align="left" valign="top">
858 <td class="en1" align="center" valign="middle"><input type="radio"
859 name="handle_as_empty_document" value="Y" @handle-as-empty-document-y@
861 <td class="dis1" align="center" valign="middle"><input type="radio"
862 name="handle_as_empty_document" value="N" @handle-as-empty-document-n@
864 <td class="noc1" align="center" valign="middle"><input type="radio"
865 name="handle_as_empty_document" value="X" @handle-as-empty-document-x@
867 <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE_AS_EMPTY_DOCUMENT">handle-as-empty-document</a></td>
869 Block with an <em>empty</em> document instead of an Image or HTML message.
870 The <em>empty</em> document contains only a space and can safely be parsed
871 as JavaScript or Style Sheet. Use content-type-overwrite to specify the
872 Content-Type, default is <q>text/html</q>.
875 <tr class="bg1" align="left" valign="top">
876 <td class="en1" align="center" valign="middle"><input type="radio"
877 name="handle_as_image" value="Y" @handle-as-image-y@
879 <td class="dis1" align="center" valign="middle"><input type="radio"
880 name="handle_as_image" value="N" @handle-as-image-n@
882 <td class="noc1" align="center" valign="middle"><input type="radio"
883 name="handle_as_image" value="X" @handle-as-image-x@
885 <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE-AS-IMAGE">handle-as-image</a></td>
886 <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>
887 and <i><b><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></b></i> actions).</td>
889 <tr class="bg1" align="left" valign="top">
890 <td class="en1" align="center" valign="middle"><input type="radio"
891 name="hide_accept_language" id="hide_accept_language_y" value="Y" @hide-accept-language-y@
892 onclick="show_hide_accept_language_opts(true)"></td>
893 <td class="dis1" align="center" valign="middle"><input type="radio"
894 name="hide_accept_language" id="hide_accept_language_n" value="N" @hide-accept-language-n@
895 onclick="show_hide_accept_language_opts(false)"></td>
896 <td class="noc1" align="center" valign="middle"><input type="radio"
897 name="hide_accept_language" id="hide_accept_language_x" value="X" @hide-accept-language-x@
898 onclick="show_hide_accept_language_opts(false)"
900 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-ACCEPT-LANGUAGE">hide-accept-language</a></td>
901 <td>Pretend to have different language settings. (Makes a fake User-Agent more believable,
902 but you may end up with content in the language you pretended to understand.)</td>
904 <tr class="bg1" align="left" valign="top" id="hide_accept-language_opts">
905 <td class="en1"> </td>
906 <td class="dis1"> </td>
907 <td class="noc1"> </td>
909 <td><input type="radio" name="hide_accept_language_mode" value="block"
910 onclick="hide_accept_language_param_disable(true)"
911 @hide-accept-language-param-block@ id="hide_accept_language_mode_block"><label
912 for="hide_accept_language_mode_block">Remove Accept-Language header without replacement.</label>
914 <input type="radio" name="hide_accept_language_mode" value="CUSTOM"
915 onclick="hide_accept_language_param_disable(false)"
916 @hide-accept-language-param-custom@ id="hide_accept_language_mode_set"><label
917 for="hide_accept_language_mode_set">Fake these language settings:</label><br>
918 <input type="text" name="hide_accept_language_param"
919 id="hide_accept_language_param" size="40"
920 value="@hide-accept-language-param@"><br>
923 <tr class="bg1" align="left" valign="top">
924 <td class="en1" align="center" valign="middle"><input type="radio"
925 name="hide_content_disposition" id="hide_content_disposition_y" value="Y" @hide-content-disposition-y@
926 onclick="show_hide_content_disposition_opts(true)"></td>
927 <td class="dis1" align="center" valign="middle"><input type="radio"
928 name="hide_content_disposition" id="hide_content_disposition_n" value="N" @hide-content-disposition-n@
929 onclick="show_hide_content_disposition_opts(false)"></td>
930 <td class="noc1" align="center" valign="middle"><input type="radio"
931 name="hide_content_disposition" id="hide_content_disposition_x" value="X" @hide-content-disposition-x@
932 onclick="show_hide_content_disposition_opts(false)"
934 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-CONTENT-DISPOSITION">hide-content-disposition</a></td>
935 <td>Block or overwrite the content-disposition header. Useful to view a document inside the browser,
936 even if you were supposed to save it first, or to change the suggested file name.</td>
938 <tr class="bg1" align="left" valign="top" id="hide_content_disposition_opts">
939 <td class="en1"> </td>
940 <td class="dis1"> </td>
941 <td class="noc1"> </td>
943 <td><input type="radio" name="hide_content_disposition_mode" value="block"
944 onclick="hide_content_disposition_param_disable(true)"
945 @hide-content-disposition-param-block@ id="hide_content_disposition_mode_block"><label
946 for="hide_content_disposition_mode_block">Remove content-disposition header without replacement.</label>
948 <input type="radio" name="hide_content_disposition_mode" value="CUSTOM"
949 onclick="hide_content_disposition_param_disable(false)"
950 @hide-content-disposition-param-custom@ id="hide_content_disposition_mode_set"><label
951 for="hide_content_disposition_mode_set">Overwrite content-dispostion header with:</label><br>
952 <input type="text" name="hide_content_disposition_param"
953 id="hide_content_disposition_param" size="40"
954 value="@hide-content-disposition-param@"><br>
958 <tr class="bg1" align="left" valign="top">
959 <td class="en1" align="center" valign="middle"><input type="radio"
960 name="hide_forwarded_for_headers" value="Y" @hide-forwarded-for-headers-y@
962 <td class="dis1" align="center" valign="middle"><input type="radio"
963 name="hide_forwarded_for_headers" value="N" @hide-forwarded-for-headers-n@
965 <td class="noc1" align="center" valign="middle"><input type="radio"
966 name="hide_forwarded_for_headers" value="X" @hide-forwarded-for-headers-x@
968 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FORWARDED-FOR-HEADERS">hide-forwarded-for-headers</a></td>
969 <td>Remove any existing X-Forwarded-for header.</td>
971 <tr class="bg1" align="left" valign="top">
972 <td class="en1" align="center" valign="middle"><input type="radio"
973 name="hide_from_header" id="hide_from_header_y" value="Y" @hide-from-header-y@
974 onclick="show_hide_from_header_opts(true)"></td>
975 <td class="dis1" align="center" valign="middle"><input type="radio"
976 name="hide_from_header" value="N" @hide-from-header-n@
977 onclick="show_hide_from_header_opts(false)"></td>
978 <td class="noc1" align="center" valign="middle"><input type="radio"
979 name="hide_from_header" value="X" @hide-from-header-x@
980 onclick="show_hide_from_header_opts(false)"></td>
981 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FROM-HEADER">hide-from-header</a></td>
982 <td>Stop old web browsers from sending the user's e-mail address with
985 <tr class="bg1" align="left" valign="top" id="hide_from_header_opts">
986 <td class="en1"> </td>
987 <td class="dis1"> </td>
988 <td class="noc1"> </td>
990 <td><input type="radio" name="hide_from_header_mode" value="block"
991 onclick="hide_from_header_param_disable(true);"
992 @hide-from-header-param-block@ id="hide_from_header_mode_block"><label
993 for="hide_from_header_mode_block">Remove completely</label><br>
994 <input type="radio" name="hide_from_header_mode" value="CUSTOM"
995 onclick="hide_from_header_param_disable(false);"
996 @hide-from-header-param-custom@ id="hide_from_header_mode_set"><label
997 for="hide_from_header_mode_set">Fake e-mail address:</label><br>
998 <input type="text" name="hide_from_header_param" id="hide_from_header_param"
999 size="40" value="@hide-from-header-param@"></td>
1002 <tr class="bg1" align="left" valign="top">
1003 <td class="en1" align="center" valign="middle"><input type="radio"
1004 name="hide_if_modified_since" value="Y" @hide-if-modified-since-y@
1006 <td class="dis1" align="center" valign="middle"><input type="radio"
1007 name="hide_if_modified_since" value="N" @hide-if-modified-since-n@
1009 <td class="noc1" align="center" valign="middle"><input type="radio"
1010 name="hide_if_modified_since" value="X" @hide-if-modified-since-x@
1012 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE_IF_MODIFIED_SINCE">hide-if-modified-since</a></td>
1013 <td>Remove or randomize the If-Modified-Since header.</td>
1015 <tr class="bg1" align="left" valign="top" id="hide_if-modifed-since_opts">
1016 <td class="en1"> </td>
1017 <td class="dis1"> </td>
1018 <td class="noc1"> </td>
1020 <td><input type="radio" name="hide_if_modified_since_mode" value="block"
1021 onclick="hide_if_modified_since_param_disable(true)"
1022 @hide-if-modified-since-param-block@ id="hide_if_modified_since_mode_block"><label
1023 for="hide_if_modified_since_mode_block">Remove without replacement.</label>
1024 Useful for filter testing.<br>
1025 <input type="radio" name="hide_if_modified_since_mode" value="CUSTOM"
1026 onclick="hide_if_modified_since_param_disable(true)"
1027 @hide-if-modified-since-param-custom@ id="hide_if_modified_since_mode_set"><label
1028 for="hide_if_modified_since_mode_set">Add random amount of seconds in the range of</label>
1029 <input type="text" name="hide_if_modified_since_param"
1030 id="hide_if_modified_since_param" size="4"
1031 value="@hide-if-modified-since-param@"> minute(s).
1032 To appreciate this option a small amount of paranoia is required,
1033 but at least in theory the If-Modified-Since header could be used
1034 to keep track of your visits.
1037 <!-- @if-multiple-forms-start -->
1040 <input type="hidden" name="f" value="@f@">
1041 <input type="hidden" name="v" value="@v@">
1042 <input type="hidden" name="s" value="@s@">
1043 <input type="submit" value="Submit changes in Section 3" name="Submit">
1047 <tr><td class="wrapbox">
1048 <form method="GET" action="edit-actions-submit" id="myform-4" name="myform">
1049 <h2>Edit Actions (Section 4)</h2>
1050 <table summary="Action section 4" border="0" cellspacing="2" width="100%" class="wide">
1051 <tr class="hdr" align="left">
1052 <th class="enh" align="center">Enable</th>
1053 <th class="dish" align="center">Disable</th>
1054 <th class="noch" align="center">No Change</th>
1056 <th>Description</th>
1058 <!-- if-multiple-forms-end@ -->
1059 <tr class="bg1" align="left" valign="top">
1060 <td class="en1" align="center" valign="middle"><input type="radio"
1061 name="hide_referrer" id="hide_referrer_y" value="Y" @hide-referrer-y@
1062 onclick="show_hide_referrer_opts(true)"></td>
1063 <td class="dis1" align="center" valign="middle"><input type="radio"
1064 name="hide_referrer" id="hide_referrer_n" value="N" @hide-referrer-n@
1065 onclick="show_hide_referrer_opts(false)"></td>
1066 <td class="noc1" align="center" valign="middle"><input type="radio"
1067 name="hide_referrer" id="hide_referrer_x" value="X" @hide-referrer-x@
1068 onclick="show_hide_referrer_opts(false)"
1070 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-REFERRER">hide-referrer</a></td>
1071 <td>Helps prevent tracking by not sending the URL of the previous web
1074 <tr class="bg1" align="left" valign="top" id="hide_referrer_opts">
1075 <td class="en1"> </td>
1076 <td class="dis1"> </td>
1077 <td class="noc1"> </td>
1079 <td><input type="radio" name="hide_referrer_mode" value="block"
1080 onclick="hide_referrer_param_disable(true)"
1081 @hide-referrer-param-block@ id="hide_referrer_mode_block"><label
1082 for="hide_referrer_mode_block">Remove completely</label> (breaks images
1083 on some free web hosts).<br>
1084 <input type="radio" name="hide_referrer_mode" value="forge"
1085 onclick="hide_referrer_param_disable(true)"
1086 @hide-referrer-param-forge@ id="hide_referrer_mode_forge"><label
1087 for="hide_referrer_mode_forge">Fake as the root directory of the
1088 site</label> (fools checks for in-site links.)<br>
1089 <input type="radio" name="hide_referrer_mode" value="CUSTOM"
1090 onclick="hide_referrer_param_disable(false)"
1091 @hide-referrer-param-custom@ id="hide_referrer_mode_set"><label
1092 for="hide_referrer_mode_set">Fake as this web address:</label><br>
1093 <input type="text" name="hide_referrer_param"
1094 id="hide_referrer_param" size="40"
1095 value="@hide-referrer-param@"><br>
1096 <input type="radio" name="hide_referrer_mode" value="conditional-block"
1097 onclick="hide_referrer_param_disable(true)"
1098 @hide-referrer-param-conditional-block@ id="hide_referrer_mode_conditional-block"><label
1099 for="hide_referrer_mode_conditional-block">Remove completely if host has changed,
1100 but don't touch in-site referrers.
1101 Less suspicious than the options above.</label><br>
1102 <input type="radio" name="hide_referrer_mode" value="conditional-forge"
1103 onclick="hide_referrer_param_disable(true)"
1104 @hide-referrer-param-conditional-forge@ id="hide_referrer_mode_conditional-forge"><label
1105 for="hide_referrer_mode_conditional-forge">Forge referrer if host has
1106 changed, but don't touch in-site referrers.</label><br>
1109 <tr class="bg1" align="left" valign="top">
1110 <td class="en1" align="center" valign="middle"><input type="radio"
1111 name="hide_user_agent" id="hide_user_agent_y" value="Y" @hide-user-agent-y@
1112 onclick="show_user_agent_opts(true)"></td>
1113 <td class="dis1" align="center" valign="middle"><input type="radio"
1114 name="hide_user_agent" value="N" @hide-user-agent-n@
1115 onclick="show_user_agent_opts(false)"></td>
1116 <td class="noc1" align="center" valign="middle"><input type="radio"
1117 name="hide_user_agent" value="X" @hide-user-agent-x@
1118 onclick="show_user_agent_opts(false)"></td>
1119 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-USER-AGENT">hide-user-agent</a></td>
1120 <td>Pretend to be using a different web browser. (May cause problems with broken web sites).</td>
1122 <tr class="bg1" align="left" valign="top" id="user_agent_opts">
1123 <td class="en1"> </td>
1124 <td class="dis1"> </td>
1125 <td class="noc1"> </td>
1127 <td>User Agent string to send:<br>
1128 <input type="text" name="hide_user_agent_mode" size="40"
1129 value="@hide-user-agent-param@"></td>
1131 <tr class="bg1" align="left" valign="top">
1132 <td class="en1" align="center" valign="middle"><input type="radio"
1133 name="limit_connect" id="limit_connect_y" value="Y" @limit-connect-y@
1134 onclick="show_limit_connect_opts(true)"></td>
1135 <td class="dis1" align="center" valign="middle"><input type="radio"
1136 name="limit_connect" value="N" @limit-connect-n@
1137 onclick="show_limit_connect_opts(false)"></td>
1138 <td class="noc1" align="center" valign="middle"><input type="radio"
1139 name="limit_connect" value="X" @limit-connect-x@
1140 onclick="show_limit_connect_opts(false)"></td>
1141 <td class="action"><a href="@user-manual@@actions-help-prefix@LIMIT-CONNECT">limit-connect</a></td>
1142 <td>Limit which ports are allowed in HTTP CONNECT requests. These requests are
1143 used to tunnel SSL and other protocols through HTTP proxies.</td>
1145 <tr class="bg1" align="left" valign="top" id="limit_connect_opts">
1146 <td class="en1"> </td>
1147 <td class="dis1"> </td>
1148 <td class="noc1"> </td>
1150 <td>Legal ports (comma separated, ranges allowed):<br>
1151 <input type="text" name="limit_connect_mode" size="40"
1152 value="@limit-connect-param@"></td>
1154 <tr class="bg1" align="left" valign="top">
1155 <td class="en1" align="center" valign="middle"><input type="radio"
1156 name="overwrite_last_modified" value="Y" @overwrite-last-modified-y@
1158 <td class="dis1" align="center" valign="middle"><input type="radio"
1159 name="overwrite_last_modified" value="N" @overwrite-last-modified-n@
1161 <td class="noc1" align="center" valign="middle"><input type="radio"
1162 name="overwrite_last_modified" value="X" @overwrite-last-modified-x@
1164 <td class="action"><a href="@user-manual@@actions-help-prefix@OVERWRITE_LAST_MODIFIED">overwrite-last-modified</a></td>
1165 <td>Remove or randomize the Last-Modified header.</td>
1167 <tr class="bg1" align="left" valign="top" id="overwrite_last_modified_opts">
1168 <td class="en1"> </td>
1169 <td class="dis1"> </td>
1170 <td class="noc1"> </td>
1172 <td><input type="radio" name="overwrite_last_modified_mode" value="block"
1173 onclick="overwrite_last_modified_param_disable(true)"
1174 @overwrite-last-modified-param-block@ id="overwrite_last_modified_mode_block"><label
1175 for="overwrite_last_modified_mode_block">Remove without replacement.</label>
1177 <input type="radio" name="overwrite_last_modified_mode" value="reset-to-request-time"
1178 onclick="overwrite_last_modified_param_disable(true)"
1179 @overwrite-last-modified-param-reset-to-request-time@
1180 id="overwrite_last_modified_mode_reset-to-request-time"><label
1181 for="overwrite_last_modified_mode_reset-to-request-time">Reset to the time of the request.</label>
1183 <input type="radio" name="overwrite_last_modified_mode" value="randomize"
1184 onclick="overwrite_last_modified_param_disable(true)"
1185 @overwrite-last-modified-param-randomize@
1186 id="overwrite_last_modified_mode_randomize"><label
1187 for="overwrite_last_modified_mode_randomize">Overwrite with random value
1188 between original header value and the time of the request.</label>
1192 <tr class="bg1" align="left" valign="top">
1193 <td class="en1" align="center" valign="middle"><input type="radio"
1194 name="prevent_compression" value="Y" @prevent-compression-y@
1196 <td class="dis1" align="center" valign="middle"><input type="radio"
1197 name="prevent_compression" value="N" @prevent-compression-n@
1199 <td class="noc1" align="center" valign="middle"><input type="radio"
1200 name="prevent_compression" value="X" @prevent-compression-x@
1202 <td class="action"><a href="@user-manual@@actions-help-prefix@PREVENT-COMPRESSION">prevent-compression</a></td>
1203 <td>Disables compression. Compressed web pages are faster to
1204 download, but cannot be filtered with <a href="@user-manual@@actions-help-prefix@FILTER"><b>filter</b></a>
1205 or <a href="@user-manual@@actions-help-prefix@KILL-POPUPS"><b>kill-popups</b></a>
1206 if your Privoxy version was build without zlib support.</td>
1208 <tr class="bg1" align="left" valign="top">
1209 <td class="en1" align="center" valign="middle"><input type="radio"
1210 name="redirect" value="Y" @redirect-y@
1212 <td class="dis1" align="center" valign="middle"><input type="radio"
1213 name="redirect" value="N" @redirect-n@
1215 <td class="noc1" align="center" valign="middle"><input type="radio"
1216 name="redirect" value="X" @redirect-x@
1218 <td class="action"><a href="@user-manual@@actions-help-prefix@REDIRECT">redirect</a></td>
1219 <td>Redirect to another address.
1221 <tr class="bg1" align="left" valign="top" id="redirect_opts">
1222 <td class="en1"> </td>
1223 <td class="dis1"> </td>
1224 <td class="noc1"> </td>
1226 <td>Static address or a single pcrs command to redirect to a rewritten version of the original URL:<br>
1227 <input type="text" name="redirect_mode" size="40"
1228 value="@redirect-param@"></td>
1231 <tr class="bg1" align="left" valign="top">
1232 <td class="en1"> </td>
1233 <td class="dis1" align="center" valign="middle"><input type="radio"
1234 name="server_header_filter_all" id="server_header_filter_all_n" value="N" @server-header-filter-all-n@ ></td>
1235 <td class="noc1" align="center" valign="middle"><input type="radio"
1236 name="server_header_filter_all" id="server_header_filter_all_x" value="X" @server-header-filter-all-x@ ></td>
1237 <td class="action"><a href="@user-manual@@actions-help-prefix@SERVER-HEADER-FILTER">server-header-filter</a> *</td>
1238 <td>Filter the server headers.
1239 You can use the radio buttons on this line to disable
1240 all server-header filters applied by previous rules, and/or
1241 you can enable or disable the filters individually below.</td>
1243 @server-header-filter-params@
1244 <tr class="bg1" align="left" valign="top">
1245 <td class="en1"> </td>
1246 <td class="dis1" align="center" valign="middle"><input type="radio"
1247 name="server_header_tagger_all" id="server_header_tagger_all_n" value="N" @server-header-tagger-all-n@ ></td>
1248 <td class="noc1" align="center" valign="middle"><input type="radio"
1249 name="server_header_tagger_all" id="server_header_tagger_all_x" value="X" @server-header-tagger-all-x@ ></td>
1250 <td class="action"><a href="@user-manual@@actions-help-prefix@SERVER-HEADER-TAGGER">server-header-tagger</a> *</td>
1251 <td>Create tags based on the server headers.
1252 You can use the radio buttons on this line to disable
1253 all server-header taggers applied by previous rules, and/or
1254 you can enable or disable the taggers individually below.</td>
1256 @server-header-tagger-params@
1257 <tr class="bg1" align="left" valign="top">
1258 <td class="en1" align="center" valign="middle"><input type="radio"
1259 name="session_cookies_only" value="Y" @session-cookies-only-y@
1261 <td class="dis1" align="center" valign="middle"><input type="radio"
1262 name="session_cookies_only" value="N" @session-cookies-only-n@
1264 <td class="noc1" align="center" valign="middle"><input type="radio"
1265 name="session_cookies_only" value="X" @session-cookies-only-x@
1267 <td class="action"><a href="@user-manual@@actions-help-prefix@SESSION-COOKIES-ONLY">session-cookies-only</a></td>
1268 <td>HTTP cookies set by the website are changed to temporary
1269 ("per-session") ones, which only last until you close your web
1270 browser. This will allow you to use sites that require cookies, but
1271 sites will not be able to track you across sessions. For this to
1272 be useful, you should disable
1273 <a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES"><b>crunch-outgoing-cookies</b></a> and
1274 <a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES"><b>crunch-incoming-cookies</b></a>.</td>
1276 <tr class="bg1" align="left" valign="top">
1277 <td class="en1" align="center" valign="middle"><input type="radio"
1278 name="set_image_blocker" id="set_image_blocker_y" value="Y" @set-image-blocker-y@
1279 onclick="show_set_image_blocker_opts(true)"></td>
1280 <td class="dis1" align="center" valign="middle"><input type="radio"
1281 name="set_image_blocker" value="N" @set-image-blocker-n@
1282 onclick="show_set_image_blocker_opts(false)"></td>
1283 <td class="noc1" align="center" valign="middle"><input type="radio"
1284 name="set_image_blocker" value="X" @set-image-blocker-x@
1285 onclick="show_set_image_blocker_opts(false)"></td>
1286 <td class="action"><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></td>
1287 <td>Specifies how to block images.</td>
1289 <tr class="bg1" align="left" valign="top" id="set_image_blocker_opts">
1290 <td class="en1"> </td>
1291 <td class="dis1"> </td>
1292 <td class="noc1"> </td>
1294 <td><input type="radio" name="set_image_blocker_mode"
1295 onclick="set_image_blocker_param_disable(true)"
1296 value="pattern" id="set_image_blocker_mode_pattern"
1297 @set-image-blocker-param-pattern@><label
1298 for="set_image_blocker_mode_pattern">Send a pattern (<img
1299 src="send-banner?type=p" width="12" height="12"
1300 alt="pattern">)</label><br>
1301 <input type="radio" name="set_image_blocker_mode" value="blank"
1302 onclick="set_image_blocker_param_disable(true)"
1303 id="set_image_blocker_mode_blank" @set-image-blocker-param-blank@><label
1304 for="set_image_blocker_mode_blank">Send a 1x1 transparent GIF</label><br>
1305 <input type="radio" name="set_image_blocker_mode" value="CUSTOM"
1306 onclick="set_image_blocker_param_disable(false)"
1307 id="set_image_blocker_mode_set" @set-image-blocker-param-custom@><label
1308 for="set_image_blocker_mode_set">Redirect
1309 the browser to this image URL:</label><br>
1310 <input type="text" name="set_image_blocker_param" id="set_image_blocker_param"
1311 size="40" value="@set-image-blocker-param@"></td>
1315 <!-- @if-multiple-forms-start -->
1317 <input type="hidden" name="f" value="@f@">
1318 <input type="hidden" name="v" value="@v@">
1319 <input type="hidden" name="s" value="@s@">
1320 <input type="submit" value="Submit changes in Section 4" name="Submit">
1323 <!-- if-multiple-forms-end@ -->
1325 <!-- @if-one-form-only-start -->
1327 <td class="green" align="center">
1328 <p><input type="submit" value="Submit" name="Submit"></p>
1331 <!-- if-one-form-only-end@ -->
1334 <h2>More Privoxy:</h2>
1335 <ul>@menu@<li><a href="@user-manual@">Documentation</a></li></ul>
1342 #include mod-support-and-service
1347 <!-- @if-have-help-info-start -->
1351 #include mod-local-help
1355 <!-- if-have-help-info-end@ -->
1358 <!-- @if-one-form-only-start -->
1360 <!-- if-one-form-only-end@ -->
1362 <script type="text/javascript">
1365 if (document.getElementById) {
1366 // alert("Netscape 6 or IE5");
1367 document.getElementById("hide_from_header_param").disabled = !(document.getElementById("hide_from_header_mode_set").checked);
1368 document.getElementById("hide_referrer_param").disabled = !(document.getElementById("hide_referrer_mode_set").checked);
1369 document.getElementById("set_image_blocker_param").disabled = !(document.getElementById("set_image_blocker_mode_set").checked);
1371 show_add_header_opts (document.getElementById("add_header_y").checked);
1372 show_deanimate_opts (document.getElementById("deanimate_gifs_y").checked);
1373 show_hide_from_header_opts(document.getElementById("hide_from_header_y").checked);
1374 show_hide_referrer_opts (document.getElementById("hide_referrer_y").checked);
1375 show_user_agent_opts (document.getElementById("hide_user_agent_y").checked);
1376 show_set_image_blocker_opts (document.getElementById("set_image_blocker_y").checked);
1377 show_limit_connect_opts (document.getElementById("limit_connect_y").checked);
1378 show_send_wafer_opts (document.getElementById("send_wafer_y").checked);
1379 } else if (document.all) {
1381 document.myform.hide_from_header_param.disabled = !(document.myform.hide_from_header_mode_set.checked);
1382 document.myform.hide_referrer_param.disabled = !(document.myform.hide_referrer_mode_set.checked);
1383 document.myform.set_image_blocker_param.disabled = !(document.myform.set_image_blocker_mode_set.checked);
1385 show_add_header_opts (document.myform.add_header_y.checked);
1386 show_deanimate_opts (document.myform.deanimate_gifs_y.checked);
1387 show_hide_from_header_opts (document.myform.hide_from_header_y.checked);
1388 show_hide_referrer_opts (document.myform.hide_referrer_y.checked);
1389 show_user_agent_opts (document.myform.hide_user_agent_y.checked);
1390 show_set_image_blocker_opts (document.myform.set_image_blocker_y.checked);
1391 show_limit_connect_opts (document.myform.limit_connect_y.checked);
1392 show_send_wafer_opts (document.myform.send_wafer_y.checked);
1393 } else if (document.layers) {
1394 // alert("Netscape 4");