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.51 2008/03/07 16:46:49 fabiankeil
36 # Reword limit-connect{} entry.
38 # Revision 1.50 2008/03/04 18:30:44 fabiankeil
39 # Remove the treat-forbidden-connects-like-blocks action. We now
40 # use the "blocked" page for forbidden CONNECT requests by default.
42 # Revision 1.49 2008/03/01 14:00:47 fabiankeil
43 # Let the block action take the reason for the block
44 # as argument and show it on the "blocked" page.
46 # Revision 1.48 2007/12/11 21:18:55 fabiankeil
47 # Make forward-override accessible through the CGI editor.
49 # Revision 1.47 2007/12/06 18:21:55 fabiankeil
50 # Update hide-forwarded-for-headers description.
52 # Revision 1.46 2007/11/10 15:06:10 fabiankeil
53 # - Add support for +hide-referrer{conditional-forge}.
56 # Revision 1.45 2007/05/24 13:38:45 fabiankeil
59 # Revision 1.44 2007/04/15 16:39:21 fabiankeil
60 # Introduce tags as alternative way to specify which
61 # actions apply to a request. At the moment tags can be
62 # created based on client and server headers.
64 # Revision 1.43 2007/03/29 11:40:34 fabiankeil
65 # Divide @filter-params@ into @client-header-filter-params@
66 # @content-filter-params@ and @server-header-filter-params@.
68 # Revision 1.42 2007/03/20 15:40:00 fabiankeil
69 # Adjust to new world order with dedicated header-filter actions.
71 # Revision 1.41 2007/01/23 16:03:16 fabiankeil
72 # - Add favicon links.
73 # - Remove useless W3C validator links.
75 # Revision 1.40 2006/12/21 13:01:03 fabiankeil
76 # Prepare for "split-large-forms".
78 # Mention that redirect{} now also understands
79 # a single pcrs job as argument.
81 # Add some table summaries and remove useless validator link.
83 # Revision 1.39 2006/10/04 17:37:54 fabiankeil
84 # JavaScript fix for bug report #1570678.
86 # Revision 1.38 2006/09/08 12:06:35 fabiankeil
87 # Have hide-if-modified-since interpret the random
88 # range value as minutes instead of hours. Allows
89 # more fine-grained configuration.
91 # Revision 1.37 2006/09/05 18:20:14 fabiankeil
92 # Sorted alphabetically, fixed spelling mistakes
93 # and shortened some descriptions.
95 # Revision 1.36 2006/08/14 08:29:17 fabiankeil
96 # Split filter-headers{} into filter-client-headers{}
97 # and filter-server-headers{}.
99 # Revision 1.35 2006/08/03 02:46:42 david__schmidt
100 # Incorporate Fabian Keil's patch work:
\rhttp://www.fabiankeil.de/sourcecode/privoxy/
102 # Revision 1.34 2006/07/18 14:49:13 david__schmidt
103 # Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch)
104 # with what was really the latest development (the v_3_0_branch branch)
106 # Revision 1.29.2.5 2004/10/05 03:17:26 david__schmidt
107 # Typo: inspect_jpegs, not inspect-jpegs in form
109 # Revision 1.29.2.4 2004/10/03 12:53:46 david__schmidt
110 # Add the ability to check jpeg images for invalid
111 # lengths of comment blocks. Defensive strategy
112 # against the exploit:
113 # Microsoft Security Bulletin MS04-028
114 # Buffer Overrun in JPEG Processing (GDI+) Could
115 # Allow Code Execution (833987)
116 # Enabled with +inspect-jpegs in actions files.
118 # Revision 1.29.2.3 2002/08/23 02:22:53 hal9
119 # Fix a perl brain fart with <li> in comments.
121 # Revision 1.29.2.1 2002/08/02 12:51:42 oes
122 # Added top submit button; Consistency with docs: Change default name for action from hide-referer to hide-referrer
124 # Revision 1.29 2002/05/21 19:10:57 oes
125 # Fixed JavaScript error
127 # Revision 1.28 2002/05/14 21:36:38 oes
128 # - Renamed prevent-(setting/reading)-cookies to
129 # crunch-(incoming/outgoing)-cookies
130 # - Renamed helplink export to actions-help-prefix
131 # - Restored alphabetical order of actions
133 # Revision 1.27 2002/04/26 22:55:26 jongfoster
134 # Removing the alternating colors because they've been wrong
135 # since the actions renames, they're high maintenance, they
136 # don't look particularly good, and now there are gaps between
137 # the table cells we don't need them.
139 # Revision 1.26 2002/04/26 21:55:17 jongfoster
140 # Cosmetic change: Making the +filter UI look the same as
143 # Revision 1.25 2002/04/26 21:37:50 jongfoster
144 # Fixing all(?) the substitutions that were broken in the
145 # recent actions rename.
147 # Revision 1.24 2002/04/26 18:24:28 jongfoster
148 # Fixing typos in help hyperlinks
150 # Revision 1.23 2002/04/26 12:57:02 oes
151 # Actions renamed, alphabetically sorted, comments fixed, and names linked to help
153 # Revision 1.22 2002/04/10 13:32:53 oes
154 # Made templates modular
156 # Revision 1.21 2002/04/08 17:05:18 oes
157 # Inline a style exception
159 # Revision 1.20 2002/04/05 16:01:30 oes
160 # Correct HTML, external Stylesheets, eye candy, some fixes
162 # Revision 1.19 2002/03/26 22:29:56 swa
163 # we have a new homepage!
165 # Revision 1.18 2002/03/24 16:32:08 jongfoster
166 # Removing logo option
168 # Revision 1.17 2002/03/24 15:23:33 jongfoster
171 # Revision 1.16 2002/03/24 11:01:06 swa
174 # Revision 1.15 2002/03/23 16:18:15 swa
175 # renamed every reference to the old name with foobar.
176 # fixed "application foobar application" tag, fixed
177 # "the foobar" with "foobar". left junkbuster in cvs
178 # comments and remarks to history untouched. should
179 # make final rename easier.
181 # Revision 1.14 2002/03/16 15:22:19 jongfoster
182 # Moving 'alpha' warning to the end of the page
184 # Revision 1.13 2002/03/16 14:28:38 jongfoster
185 # First version of modular filters support
187 # Revision 1.12 2002/03/12 01:42:50 oes
188 # Introduced modular filters
190 # Revision 1.11 2002/03/08 18:19:14 jongfoster
191 # Adding +image-blocker{pattern} option to edit interface
193 # Revision 1.10 2002/03/03 10:29:12 swa
194 # point users to the right feedback forms,
195 # not necessarily the developer list.
197 # Revision 1.9 2002/01/23 00:26:45 jongfoster
198 # Reducing length of URLs
199 # Where encoded and unencoded versions of a string existed, removing
202 # Revision 1.8 2002/01/17 21:33:00 jongfoster
203 # Replacing all references to the URL of the config interface
206 # Revision 1.7 2002/01/17 21:21:03 jongfoster
207 # DOS->Unix line endings
209 # Revision 1.6 2001/11/22 21:58:41 jongfoster
210 # Adding action +no-cookies-keep
212 # Revision 1.5 2001/11/13 21:12:17 jongfoster
213 # Added support for the following actions:
214 # +downgrade, +limit-connect, +no-compression
216 # Revision 1.4 2001/11/13 00:58:18 jongfoster
217 # New version of actions file editor templates
220 ##############################################################################
222 # Browser support for the JavaScript on this page:
223 # MS Internet Explorer 5.5 - Tested, Yes
224 # Netscape 6.0 - Tested, Yes
225 # Netscape 4.75 - Tested, NO
226 # Opera 5.12 - Tested, NO
227 # MS Internet Explorer 4+ - Untested, Yes
228 # MS IE 3.x, NS3.x - Untested, NO
229 # Mozilla >=0.6 - Untested, Yes
231 # All browsers should work, you just might not get the pretty DHTML effects.
233 # The effects that only work under the browsers marked "Yes" above are:
234 # - Text edit boxes that won't have any effect are disabled.
235 # - Table rows containing additional settings are hidden if the feature in
236 # question is disabled.
238 # There are major kludges to get around these problems with NS4, but they
239 # screw up the HTML too much for other browsers. If anyone wants to try,
240 # here's some descriptions of the kludges:
241 # http://www.webreference.com/js/tips/991114.html
242 # http://www.webreference.com/dhtml/column12/outDisplay.html
244 # If you're favorite browser isn't listed, please test and add it.
247 #############################################################################
251 # This file currently produces valid HTML 4.01 Strict.
253 # If you change it, please save the generated page from your web browser
254 # and then upload it to http://validator.w3.org/ for checking.
256 #############################################################################
258 # Available variables include:
264 # deanimate-gifs-param-first
265 # deanimate-gifs-param-last
266 # hide-from-param-block
267 # hide-from-param-custom
269 # hide-referrer-param-forge
270 # hide-referrer-param-block
271 # hide-referrer-param-custom
272 # hide-referrer-param
273 # hide-user-agent-param
274 # image-blocker-param-pattern
275 # image-blocker-param-blank
276 # image-blocker-param-custom
279 #############################################################################
280 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
284 <meta http-equiv="Content-Style-Type" content="text/css">
285 <meta http-equiv="Content-Script-Type" content="text/javascript">
286 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
287 <meta name="robots" content="noindex,nofollow">
288 <link rel="stylesheet" type="text/css" href="@default-cgi@send-stylesheet">
289 <link rel="shortcut icon" href="@default-cgi@favicon.ico" type="image/x-icon">
291 <title>Privoxy@@my-hostname@: Edit actions</title>
293 <style type="text/css">
294 td.action { font-weight: bold;
296 white-space: nowrap }
297 td.subaction { font-style: italic }
298 th { font-weight: bold; }
299 # This is the key to the color names below:
300 # bg=background, en="Enable", dis="Disable", noc="No Change", hdr=header
301 # 1=odd rows, 2=even rows, h=Table header
302 tr.hdr { background-color: #999999 }
303 tr.bg1 { background-color: #eeeeee }
304 td.en1 { background-color: #ddffdd }
305 td.dis1 { background-color: #ffdddd }
306 td.noc1 { background-color: #ddddff }
307 th.enh { background-color: #99ff99 }
308 th.dish { background-color: #ff9999 }
309 th.noch { background-color: #9999ff }
310 table.wide { padding: 5px; }
311 td.green { border: solid black 1px; background-color: #ddffdd; }
317 border-left-width: 10px;
318 border-right-width: 10px;
319 border-top-width: 0px;
320 border-bottom-width: 0px }
323 <script type="text/javascript">
326 function hide_from_header_param_disable(tf)
328 if (document.getElementById) {
330 document.getElementById("hide_from_header_param").disabled = tf;
331 } else if (document.all) {
333 document.myform.hide_from_header_param.disabled = tf;
337 function hide_referrer_param_disable(tf)
339 if (document.getElementById) {
340 document.getElementById("hide_referrer_param").disabled = tf;
341 } else if (document.all) {
342 document.myform.hide_referrer_param.disabled = tf;
346 function set_image_blocker_param_disable(tf)
348 if (document.getElementById) {
349 document.getElementById("set_image_blocker_param").disabled = tf;
350 } else if (document.all) {
351 document.myform.set_image_blocker_param.disabled = tf;
355 function show_add_header_opts(tf)
357 if (document.getElementById) {
358 target = document.getElementById("add_header_opts");
359 } else if (document.all) {
360 target = document.add_header_opts;
364 target.style.display = (tf ? "" : "none");
367 function show_deanimate_opts(tf)
369 if (document.getElementById) {
370 target = document.getElementById("deanimate_opts");
371 } else if (document.all) {
372 target = document.deanimate_opts;
376 target.style.display = (tf ? "" : "none");
379 function show_hide_from_header_opts(tf)
381 if (document.getElementById) {
382 target = document.getElementById("hide_from_header_opts");
383 } else if (document.all) {
384 target = document.hide_from_header_opts;
388 target.style.display = (tf ? "" : "none");
391 function show_hide_referrer_opts(tf)
393 if (document.getElementById) {
394 target = document.getElementById("hide_referrer_opts");
395 } else if (document.all) {
396 target = document.hide_referrer_opts;
400 target.style.display = (tf ? "" : "none");
403 function show_user_agent_opts(tf)
405 if (document.getElementById) {
406 target = document.getElementById("user_agent_opts");
407 } else if (document.all) {
408 target = document.user_agent_opts;
412 target.style.display = (tf ? "" : "none");
415 function show_set_image_blocker_opts(tf)
417 if (document.getElementById) {
418 target = document.getElementById("set_image_blocker_opts");
419 } else if (document.all) {
420 target = document.set_image_blocker_opts;
424 target.style.display = (tf ? "" : "none");
427 function show_limit_connect_opts(tf)
429 if (document.getElementById) {
430 target = document.getElementById("limit_connect_opts");
431 } else if (document.all) {
432 target = document.limit_connect_opts;
436 target.style.display = (tf ? "" : "none");
439 function show_send_wafer_opts(tf)
441 if (document.getElementById) {
442 target = document.getElementById("send_wafer_opts");
443 } else if (document.all) {
444 target = document.send_wafer_opts;
448 target.style.display = (tf ? "" : "none");
457 <!-- @if-one-form-only-start -->
458 <form method="GET" action="edit-actions-submit" id="myform" name="myform">
459 <!-- if-one-form-only-end@ -->
461 <table summary="" cellpadding="20" cellspacing="10" border="0" width="100%">
470 <!-- @if-unstable-start -->
471 # This will only appear if CODE_STATUS is "alpha" or "beta". See configure.in
475 #include mod-unstable-warning
479 <!-- if-unstable-end@ -->
481 <!-- @if-one-form-only-start -->
485 <input type="hidden" name="f" value="@f@">
486 <input type="hidden" name="v" value="@v@">
487 <input type="hidden" name="s" value="@s@">
493 <td class="green" align="center">
494 <p><input type="submit" value="Submit" name="Submit"></p>
497 <!-- if-one-form-only-end@ -->
499 <tr><td class="wrapbox">
501 <!-- @if-multiple-forms-start -->
502 <form method="GET" action="edit-actions-submit" id="myform" name="myform">
503 <h2>Edit Actions (Section 1)</h2>
504 <!-- if-multiple-forms-end@ -->
506 <table summary="Action section 1" border="0" cellspacing="2" width="100%" class="wide">
507 <tr class="hdr" align="left">
508 <th class="enh" align="center">Enable</th>
509 <th class="dish" align="center">Disable</th>
510 <th class="noch" align="center">No Change</th>
514 <tr class="bg1" align="left" valign="top">
515 <td class="en1" align="center" valign="middle"><input type="radio"
516 name="add_header" id="add_header_y" value="Y" @add-header-y@
517 onclick="show_add_header_opts(true)"></td>
518 <td class="dis1" align="center" valign="middle"><input type="radio"
519 name="add_header" value="N" @add-header-n@
520 onclick="show_add_header_opts(false)"></td>
521 <td class="noc1" align="center" valign="middle"><input type="radio"
522 name="add_header" value="X" @add-header-x@
523 onclick="show_add_header_opts(false)"></td>
524 <td class="action"><a href="@user-manual@@actions-help-prefix@ADD-HEADER">add-header</a></td>
525 <td>Adds HTTP headers.</td>
527 <tr class="bg1" align="left" valign="top" id="add_header_opts">
528 <td class="en1"> </td>
529 <td class="dis1"> </td>
530 <td class="noc1"> </td>
532 <td>Editing the settings for this option, or turning
533 it on if it was off, is not yet supported using this web-based
536 <tr class="bg1" align="left" valign="top">
537 <td class="en1" align="center" valign="middle"><input type="radio"
538 name="block" value="Y" @block-y@
540 <td class="dis1" align="center" valign="middle"><input type="radio"
541 name="block" value="N" @block-n@
543 <td class="noc1" align="center" valign="middle"><input type="radio"
544 name="block" value="X" @block-x@
546 <td class="action"><a href="@user-manual@@actions-help-prefix@BLOCK">block</a></td>
547 <td>Block the request.</td>
549 <tr class="bg1" align="left" valign="top" id="block_opts">
550 <td class="en1"> </td>
551 <td class="dis1"> </td>
552 <td class="noc1"> </td>
554 <td>Block reason to tell the user:<br>
555 <input type="text" name="block_mode" size="40" value="@block-param@">
558 <tr class="bg1" align="left" valign="top">
559 <td class="en1"> </td>
560 <td class="dis1" align="center" valign="middle"><input type="radio"
561 name="client_header_filter_all" id="client_header_filter_all_n" value="N" @client-header-filter-all-n@ ></td>
562 <td class="noc1" align="center" valign="middle"><input type="radio"
563 name="client_header_filter_all" id="client_header_filter_all_x" value="X" @client-header-filter-all-x@ ></td>
564 <td class="action"><a href="@user-manual@@actions-help-prefix@CLIENT-HEADER-FILTER">client-header-filter</a> *</td>
565 <td>Filter the client headers.
566 You can use the radio buttons on this line to disable
567 all client-header filters applied by previous rules, and/or
568 you can enable or disable the filters individually below.</td>
570 @client-header-filter-params@
571 <tr class="bg1" align="left" valign="top">
572 <td class="en1"> </td>
573 <td class="dis1" align="center" valign="middle"><input type="radio"
574 name="client_header_tagger_all" id="client_header_tagger_all_n" value="N" @client-header-tagger-all-n@ ></td>
575 <td class="noc1" align="center" valign="middle"><input type="radio"
576 name="client_header_tagger_all" id="client_header_tagger_all_x" value="X" @client-header-tagger-all-x@ ></td>
577 <td class="action"><a href="@user-manual@@actions-help-prefix@CLIENT-HEADER-TAGGER">client-header-tagger</a> *</td>
578 <td>Create tags based on the client headers.
579 You can use the radio buttons on this line to disable
580 all client-header taggers applied by previous rules, and/or
581 you can enable or disable the taggers individually below.</td>
583 @client-header-tagger-params@
584 <tr class="bg1" align="left" valign="top">
585 <td class="en1" align="center" valign="middle"><input type="radio"
586 name="content_type_overwrite" value="Y" @content-type-overwrite-y@
588 <td class="dis1" align="center" valign="middle"><input type="radio"
589 name="content_type_overwrite" value="N" @content-type-overwrite-n@
591 <td class="noc1" align="center" valign="middle"><input type="radio"
592 name="content_type_overwrite" value="X" @content-type-overwrite-x@
594 <td class="action"><a href="@user-manual@@actions-help-prefix@CONTENT_TYPE_OVERWRITE">content-type-overwrite</a></td>
595 <td>Replace Content-Type header. By default it only applies to
596 text documents, but if you know what you're doing you
597 can enable force-text-mode to modify binary content types as well.</td>
599 <tr class="bg1" align="left" valign="top" id="content_type_overwrite_opts">
600 <td class="en1"> </td>
601 <td class="dis1"> </td>
602 <td class="noc1"> </td>
604 <td>New Content-Type:<br>
605 <input type="text" name="content_type_overwrite_mode" size="40"
606 value="@content-type-overwrite-param@"></td>
608 <tr class="bg1" align="left" valign="top">
609 <td class="en1" align="center" valign="middle"><input type="radio"
610 name="crunch_client_header" id="crunch_client_header_y" value="Y" @crunch-client-header-y@
612 <td class="dis1" align="center" valign="middle"><input type="radio"
613 name="crunch_client_header" value="N" @crunch-client-header-n@
615 <td class="noc1" align="center" valign="middle"><input type="radio"
616 name="crunch_client_header" value="X" @crunch-client-header-x@
618 <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-CLIENT-HEADER">crunch-client-header</a></td>
619 <td>Remove header(s) matching the supplied pattern.</td>
621 <tr class="bg1" align="left" valign="top" id="crunch_client_header_opts">
622 <td class="en1"> </td>
623 <td class="dis1"> </td>
624 <td class="noc1"> </td>
626 <td>Header string to suppress:<br>
627 <input type="text" name="crunch_client_header_mode" size="40"
628 value="@crunch-client-header-param@"></td>
630 <tr class="bg1" align="left" valign="top">
631 <td class="en1" align="center" valign="middle"><input type="radio"
632 name="crunch_if_none_match" value="Y" @crunch-if-none-match-y@
634 <td class="dis1" align="center" valign="middle"><input type="radio"
635 name="crunch_if_none_match" value="N" @crunch-if-none-match-n@
637 <td class="noc1" align="center" valign="middle"><input type="radio"
638 name="crunch_if_none_match" value="X" @crunch-if-none-match-x@
640 <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH_IF_NONE_MATCH">crunch-if-none-match</a></td>
641 <td>Remove If-None-Match header. Useful for filter testing
642 and to make sure the header can't be used to track your visits.</td>
645 <tr class="bg1" align="left" valign="top">
646 <td class="en1" align="center" valign="middle"><input type="radio"
647 name="crunch_incoming_cookies" value="Y" @crunch-incoming-cookies-y@
649 <td class="dis1" align="center" valign="middle"><input type="radio"
650 name="crunch_incoming_cookies" value="N" @crunch-incoming-cookies-n@
652 <td class="noc1" align="center" valign="middle"><input type="radio"
653 name="crunch_incoming_cookies" value="X" @crunch-incoming-cookies-x@
655 <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES">crunch-incoming-cookies</a></td>
656 <td>Prevent the website from setting HTTP cookies on your system.</td>
658 <tr class="bg1" align="left" valign="top">
659 <td class="en1" align="center" valign="middle"><input type="radio"
660 name="crunch_outgoing_cookies" value="Y" @crunch-outgoing-cookies-y@
662 <td class="dis1" align="center" valign="middle"><input type="radio"
663 name="crunch_outgoing_cookies" value="N" @crunch-outgoing-cookies-n@
665 <td class="noc1" align="center" valign="middle"><input type="radio"
666 name="crunch_outgoing_cookies" value="X" @crunch-outgoing-cookies-x@
668 <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES">crunch-outgoing-cookies</a></td>
669 <td>Prevent the website from reading HTTP cookies from your system.</td>
671 <tr class="bg1" align="left" valign="top">
672 <td class="en1" align="center" valign="middle"><input type="radio"
673 name="crunch_server_header" id="crunch_server_header_y" value="Y" @crunch-server-header-y@
675 <td class="dis1" align="center" valign="middle"><input type="radio"
676 name="crunch_server_header" value="N" @crunch-server-header-n@
678 <td class="noc1" align="center" valign="middle"><input type="radio"
679 name="crunch_server_header" value="X" @crunch-server-header-x@
681 <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-SERVER-HEADER">crunch-server-header</a></td>
682 <td>Remove server header(s) matching the supplied pattern.</td>
684 <tr class="bg1" align="left" valign="top" id="crunch_server_header_opts">
685 <td class="en1"> </td>
686 <td class="dis1"> </td>
687 <td class="noc1"> </td>
689 <td>Header string to suppress:<br>
690 <input type="text" name="crunch_server_header_mode" size="40"
691 value="@crunch-server-header-param@"></td>
694 <tr class="bg1" align="left" valign="top">
695 <td class="en1" align="center" valign="middle"><input type="radio"
696 name="deanimate_gifs" id="deanimate_gifs_y" value="Y" @deanimate-gifs-y@
697 onclick="show_deanimate_opts(true)"></td>
698 <td class="dis1" align="center" valign="middle"><input type="radio"
699 name="deanimate_gifs" value="N" @deanimate-gifs-n@
700 onclick="show_deanimate_opts(false)"></td>
701 <td class="noc1" align="center" valign="middle"><input type="radio"
702 name="deanimate_gifs" value="X" @deanimate-gifs-x@
703 onclick="show_deanimate_opts(false)"></td>
704 <td class="action"><a href="@user-manual@@actions-help-prefix@DEANIMATE-GIFS">deanimate-gifs</a></td>
705 <td>Replace animated GIFs with their (first/last) frame.</td>
707 <tr class="bg1" align="left" valign="top" id="deanimate_opts">
708 <td class="en1"> </td>
709 <td class="dis1"> </td>
710 <td class="noc1"> </td>
712 <td>Use the <input type="radio" name="deanimate_gifs_mode"
713 value="first" id="deanimate_first" @deanimate-gifs-param-first@><label
714 for="deanimate_first">first frame</label> <input
715 type="radio" name="deanimate_gifs_mode" value="last"
716 id="deanimate_last" @deanimate-gifs-param-last@><label
717 for="deanimate_last">last frame</label></td>
719 <tr class="bg1" align="left" valign="top">
720 <td class="en1" align="center" valign="middle"><input type="radio"
721 name="downgrade_http_version" value="Y" @downgrade-http-version-y@></td>
722 <td class="dis1" align="center" valign="middle"><input type="radio"
723 name="downgrade_http_version" value="N" @downgrade-http-version-n@></td>
724 <td class="noc1" align="center" valign="middle"><input type="radio"
725 name="downgrade_http_version" value="X" @downgrade-http-version-x@></td>
726 <td class="action"><a href="@user-manual@@actions-help-prefix@DOWNGRADE-HTTP-VERSION"
727 >downgrade-http-version</a></td>
728 <td>Change HTTP/1.1 requests to HTTP/1.0. Only change if you know
729 what you're doing!</td>
731 <tr class="bg1" align="left" valign="top">
732 <td class="en1" align="center" valign="middle"><input type="radio"
733 name="fast_redirects" value="Y" @fast-redirects-y@
735 <td class="dis1" align="center" valign="middle"><input type="radio"
736 name="fast_redirects" value="N" @fast-redirects-n@
738 <td class="noc1" align="center" valign="middle"><input type="radio"
739 name="fast_redirects" value="X" @fast-redirects-x@
741 <td class="action"><a href="@user-manual@@actions-help-prefix@FAST-REDIRECTS">fast-redirects</a></td>
742 <td>Bypass some click-tracking URLs.</td>
744 <tr class="bg1" align="left" valign="top" id="fast-redirects_opts">
745 <td class="en1"> </td>
746 <td class="dis1"> </td>
747 <td class="noc1"> </td>
750 <input type="radio" name="fast_redirects_mode"
751 value="simple-check" id="fast_redirects_simple_check" @fast-redirects-param-simple-check@><label
752 for="fast_redirects_simple_check">Simple check.</label>
754 <input type="radio" name="fast_redirects_mode" value="check-decoded-url"
755 id="fast_redirects_check_decoded_url" @fast-redirects-param-check-decoded-url@><label
756 for="fast_redirects_check_decoded_url">Decode URL before checking.</label></td>
758 <!-- @if-multiple-forms-start -->
761 <input type="hidden" name="f" value="@f@">
762 <input type="hidden" name="v" value="@v@">
763 <input type="hidden" name="s" value="@s@">
764 <input type="submit" value="Submit changes in Section 1" name="Submit">
768 <tr><td class="wrapbox">
769 <form method="GET" action="edit-actions-submit" id="myform-2" name="myform">
770 <h2>Edit Actions (Section 2)</h2>
771 <table summary="Action section 2" border="0" cellspacing="2" width="100%" class="wide">
772 <tr class="hdr" align="left">
773 <th class="enh" align="center">Enable</th>
774 <th class="dish" align="center">Disable</th>
775 <th class="noch" align="center">No Change</th>
779 <!-- if-multiple-forms-end@ -->
780 <tr class="bg1" align="left" valign="top">
781 <td class="en1"> </td>
782 <td class="dis1" align="center" valign="middle"><input type="radio"
783 name="filter_all" id="filter_all_n" value="N" @filter-all-n@ ></td>
784 <td class="noc1" align="center" valign="middle"><input type="radio"
785 name="filter_all" id="filter_all_x" value="X" @filter-all-x@ ></td>
786 <td class="action"><a href="@user-manual@@actions-help-prefix@FILTER">filter</a> *</td>
787 <td>Filter the website through regular expression
788 filters. You can use the radio buttons on this line to disable
789 all filters applied by previous rules, and/or you can enable or
790 disable the filters individually below.</td>
793 @content-filter-params@
795 <!-- @if-multiple-forms-start -->
798 <input type="hidden" name="f" value="@f@">
799 <input type="hidden" name="v" value="@v@">
800 <input type="hidden" name="s" value="@s@">
801 <input type="submit" value="Submit changes in Section 2" name="Submit">
805 <tr><td class="wrapbox">
806 <form method="GET" action="edit-actions-submit" id="myform-3" name="myform">
807 <h2>Edit Actions (Section 3)</h2>
808 <table summary="Action section 3" border="0" cellspacing="2" width="100%" class="wide">
809 <tr class="hdr" align="left">
810 <th class="enh" align="center">Enable</th>
811 <th class="dish" align="center">Disable</th>
812 <th class="noch" align="center">No Change</th>
816 <!-- if-multiple-forms-end@ -->
817 <tr class="bg1" align="left" valign="top">
818 <td class="en1" align="center" valign="middle"><input type="radio"
819 name="force_text_mode" value="Y" @force-text-mode-y@
821 <td class="dis1" align="center" valign="middle"><input type="radio"
822 name="force_text_mode" value="N" @force-text-mode-n@
824 <td class="noc1" align="center" valign="middle"><input type="radio"
825 name="force_text_mode" value="X" @force-text-mode-x@
827 <td class="action"><a href="@user-manual@@actions-help-prefix@FORCE_TEXT_MODE">force-text-mode</a></td>
829 Enable filtering on documents whose Content-Type wasn't recognized as text.
830 Do think twice, nothing is alright.
833 <tr class="bg1" align="left" valign="top">
834 <td class="en1" align="center" valign="middle"><input type="radio"
835 name="forward_override" id="forward_override_y" value="Y" @forward-override-y@
837 <td class="dis1" align="center" valign="middle"><input type="radio"
838 name="forward_override" id="forward_override_n" value="N" @forward-override-n@
840 <td class="noc1" align="center" valign="middle"><input type="radio"
841 name="forward_override" id="forward_override_x" value="X" @forward-override-x@
843 <td class="action"><a href="@user-manual@@actions-help-prefix@FORWARD-OVERRIDE">forward-override</a></td>
844 <td>Override forward directives in the configuration file.
845 Note that the <a href="@user-manual@actions-file.html#FORWARD-OVERRIDE">parameter syntax</a>
846 isn't checked until the action is used. <strong class="warning">Syntax errors
847 will cause Privoxy to exit.</strong></td>
849 <tr class="bg1" align="left" valign="top" id="forward_override_language_opts">
850 <td class="en1"> </td>
851 <td class="dis1"> </td>
852 <td class="noc1"> </td>
855 Overriding forward directive:<br>
856 <input type="text" name="forward_override_param"
857 id="forward_override_param" size="40"
858 value="@forward-override-param@"><br>
861 <tr class="bg1" align="left" valign="top">
862 <td class="en1" align="center" valign="middle"><input type="radio"
863 name="handle_as_empty_document" value="Y" @handle-as-empty-document-y@
865 <td class="dis1" align="center" valign="middle"><input type="radio"
866 name="handle_as_empty_document" value="N" @handle-as-empty-document-n@
868 <td class="noc1" align="center" valign="middle"><input type="radio"
869 name="handle_as_empty_document" value="X" @handle-as-empty-document-x@
871 <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE_AS_EMPTY_DOCUMENT">handle-as-empty-document</a></td>
873 Block with an <em>empty</em> document instead of an Image or HTML message.
874 The <em>empty</em> document contains only a space and can safely be parsed
875 as JavaScript or Style Sheet. Use content-type-overwrite to specify the
876 Content-Type, default is <q>text/html</q>.
879 <tr class="bg1" align="left" valign="top">
880 <td class="en1" align="center" valign="middle"><input type="radio"
881 name="handle_as_image" value="Y" @handle-as-image-y@
883 <td class="dis1" align="center" valign="middle"><input type="radio"
884 name="handle_as_image" value="N" @handle-as-image-n@
886 <td class="noc1" align="center" valign="middle"><input type="radio"
887 name="handle_as_image" value="X" @handle-as-image-x@
889 <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE-AS-IMAGE">handle-as-image</a></td>
890 <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>
891 and <i><b><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></b></i> actions).</td>
893 <tr class="bg1" align="left" valign="top">
894 <td class="en1" align="center" valign="middle"><input type="radio"
895 name="hide_accept_language" id="hide_accept_language_y" value="Y" @hide-accept-language-y@
896 onclick="show_hide_accept_language_opts(true)"></td>
897 <td class="dis1" align="center" valign="middle"><input type="radio"
898 name="hide_accept_language" id="hide_accept_language_n" value="N" @hide-accept-language-n@
899 onclick="show_hide_accept_language_opts(false)"></td>
900 <td class="noc1" align="center" valign="middle"><input type="radio"
901 name="hide_accept_language" id="hide_accept_language_x" value="X" @hide-accept-language-x@
902 onclick="show_hide_accept_language_opts(false)"
904 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-ACCEPT-LANGUAGE">hide-accept-language</a></td>
905 <td>Pretend to have different language settings. (Makes a fake User-Agent more believable,
906 but you may end up with content in the language you pretended to understand.)</td>
908 <tr class="bg1" align="left" valign="top" id="hide_accept-language_opts">
909 <td class="en1"> </td>
910 <td class="dis1"> </td>
911 <td class="noc1"> </td>
913 <td><input type="radio" name="hide_accept_language_mode" value="block"
914 onclick="hide_accept_language_param_disable(true)"
915 @hide-accept-language-param-block@ id="hide_accept_language_mode_block"><label
916 for="hide_accept_language_mode_block">Remove Accept-Language header without replacement.</label>
918 <input type="radio" name="hide_accept_language_mode" value="CUSTOM"
919 onclick="hide_accept_language_param_disable(false)"
920 @hide-accept-language-param-custom@ id="hide_accept_language_mode_set"><label
921 for="hide_accept_language_mode_set">Fake these language settings:</label><br>
922 <input type="text" name="hide_accept_language_param"
923 id="hide_accept_language_param" size="40"
924 value="@hide-accept-language-param@"><br>
927 <tr class="bg1" align="left" valign="top">
928 <td class="en1" align="center" valign="middle"><input type="radio"
929 name="hide_content_disposition" id="hide_content_disposition_y" value="Y" @hide-content-disposition-y@
930 onclick="show_hide_content_disposition_opts(true)"></td>
931 <td class="dis1" align="center" valign="middle"><input type="radio"
932 name="hide_content_disposition" id="hide_content_disposition_n" value="N" @hide-content-disposition-n@
933 onclick="show_hide_content_disposition_opts(false)"></td>
934 <td class="noc1" align="center" valign="middle"><input type="radio"
935 name="hide_content_disposition" id="hide_content_disposition_x" value="X" @hide-content-disposition-x@
936 onclick="show_hide_content_disposition_opts(false)"
938 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-CONTENT-DISPOSITION">hide-content-disposition</a></td>
939 <td>Block or overwrite the content-disposition header. Useful to view a document inside the browser,
940 even if you were supposed to save it first, or to change the suggested file name.</td>
942 <tr class="bg1" align="left" valign="top" id="hide_content_disposition_opts">
943 <td class="en1"> </td>
944 <td class="dis1"> </td>
945 <td class="noc1"> </td>
947 <td><input type="radio" name="hide_content_disposition_mode" value="block"
948 onclick="hide_content_disposition_param_disable(true)"
949 @hide-content-disposition-param-block@ id="hide_content_disposition_mode_block"><label
950 for="hide_content_disposition_mode_block">Remove content-disposition header without replacement.</label>
952 <input type="radio" name="hide_content_disposition_mode" value="CUSTOM"
953 onclick="hide_content_disposition_param_disable(false)"
954 @hide-content-disposition-param-custom@ id="hide_content_disposition_mode_set"><label
955 for="hide_content_disposition_mode_set">Overwrite content-dispostion header with:</label><br>
956 <input type="text" name="hide_content_disposition_param"
957 id="hide_content_disposition_param" size="40"
958 value="@hide-content-disposition-param@"><br>
962 <tr class="bg1" align="left" valign="top">
963 <td class="en1" align="center" valign="middle"><input type="radio"
964 name="hide_forwarded_for_headers" value="Y" @hide-forwarded-for-headers-y@
966 <td class="dis1" align="center" valign="middle"><input type="radio"
967 name="hide_forwarded_for_headers" value="N" @hide-forwarded-for-headers-n@
969 <td class="noc1" align="center" valign="middle"><input type="radio"
970 name="hide_forwarded_for_headers" value="X" @hide-forwarded-for-headers-x@
972 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FORWARDED-FOR-HEADERS">hide-forwarded-for-headers</a></td>
973 <td>Remove any existing X-Forwarded-for header.</td>
975 <tr class="bg1" align="left" valign="top">
976 <td class="en1" align="center" valign="middle"><input type="radio"
977 name="hide_from_header" id="hide_from_header_y" value="Y" @hide-from-header-y@
978 onclick="show_hide_from_header_opts(true)"></td>
979 <td class="dis1" align="center" valign="middle"><input type="radio"
980 name="hide_from_header" value="N" @hide-from-header-n@
981 onclick="show_hide_from_header_opts(false)"></td>
982 <td class="noc1" align="center" valign="middle"><input type="radio"
983 name="hide_from_header" value="X" @hide-from-header-x@
984 onclick="show_hide_from_header_opts(false)"></td>
985 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FROM-HEADER">hide-from-header</a></td>
986 <td>Stop old web browsers from sending the user's e-mail address with
989 <tr class="bg1" align="left" valign="top" id="hide_from_header_opts">
990 <td class="en1"> </td>
991 <td class="dis1"> </td>
992 <td class="noc1"> </td>
994 <td><input type="radio" name="hide_from_header_mode" value="block"
995 onclick="hide_from_header_param_disable(true);"
996 @hide-from-header-param-block@ id="hide_from_header_mode_block"><label
997 for="hide_from_header_mode_block">Remove completely</label><br>
998 <input type="radio" name="hide_from_header_mode" value="CUSTOM"
999 onclick="hide_from_header_param_disable(false);"
1000 @hide-from-header-param-custom@ id="hide_from_header_mode_set"><label
1001 for="hide_from_header_mode_set">Fake e-mail address:</label><br>
1002 <input type="text" name="hide_from_header_param" id="hide_from_header_param"
1003 size="40" value="@hide-from-header-param@"></td>
1006 <tr class="bg1" align="left" valign="top">
1007 <td class="en1" align="center" valign="middle"><input type="radio"
1008 name="hide_if_modified_since" value="Y" @hide-if-modified-since-y@
1010 <td class="dis1" align="center" valign="middle"><input type="radio"
1011 name="hide_if_modified_since" value="N" @hide-if-modified-since-n@
1013 <td class="noc1" align="center" valign="middle"><input type="radio"
1014 name="hide_if_modified_since" value="X" @hide-if-modified-since-x@
1016 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE_IF_MODIFIED_SINCE">hide-if-modified-since</a></td>
1017 <td>Remove or randomize the If-Modified-Since header.</td>
1019 <tr class="bg1" align="left" valign="top" id="hide_if-modifed-since_opts">
1020 <td class="en1"> </td>
1021 <td class="dis1"> </td>
1022 <td class="noc1"> </td>
1024 <td><input type="radio" name="hide_if_modified_since_mode" value="block"
1025 onclick="hide_if_modified_since_param_disable(true)"
1026 @hide-if-modified-since-param-block@ id="hide_if_modified_since_mode_block"><label
1027 for="hide_if_modified_since_mode_block">Remove without replacement.</label>
1028 Useful for filter testing.<br>
1029 <input type="radio" name="hide_if_modified_since_mode" value="CUSTOM"
1030 onclick="hide_if_modified_since_param_disable(true)"
1031 @hide-if-modified-since-param-custom@ id="hide_if_modified_since_mode_set"><label
1032 for="hide_if_modified_since_mode_set">Add random amount of seconds in the range of</label>
1033 <input type="text" name="hide_if_modified_since_param"
1034 id="hide_if_modified_since_param" size="4"
1035 value="@hide-if-modified-since-param@"> minute(s).
1036 To appreciate this option a small amount of paranoia is required,
1037 but at least in theory the If-Modified-Since header could be used
1038 to keep track of your visits.
1041 <!-- @if-multiple-forms-start -->
1044 <input type="hidden" name="f" value="@f@">
1045 <input type="hidden" name="v" value="@v@">
1046 <input type="hidden" name="s" value="@s@">
1047 <input type="submit" value="Submit changes in Section 3" name="Submit">
1051 <tr><td class="wrapbox">
1052 <form method="GET" action="edit-actions-submit" id="myform-4" name="myform">
1053 <h2>Edit Actions (Section 4)</h2>
1054 <table summary="Action section 4" border="0" cellspacing="2" width="100%" class="wide">
1055 <tr class="hdr" align="left">
1056 <th class="enh" align="center">Enable</th>
1057 <th class="dish" align="center">Disable</th>
1058 <th class="noch" align="center">No Change</th>
1060 <th>Description</th>
1062 <!-- if-multiple-forms-end@ -->
1063 <tr class="bg1" align="left" valign="top">
1064 <td class="en1" align="center" valign="middle"><input type="radio"
1065 name="hide_referrer" id="hide_referrer_y" value="Y" @hide-referrer-y@
1066 onclick="show_hide_referrer_opts(true)"></td>
1067 <td class="dis1" align="center" valign="middle"><input type="radio"
1068 name="hide_referrer" id="hide_referrer_n" value="N" @hide-referrer-n@
1069 onclick="show_hide_referrer_opts(false)"></td>
1070 <td class="noc1" align="center" valign="middle"><input type="radio"
1071 name="hide_referrer" id="hide_referrer_x" value="X" @hide-referrer-x@
1072 onclick="show_hide_referrer_opts(false)"
1074 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-REFERRER">hide-referrer</a></td>
1075 <td>Helps prevent tracking by not sending the URL of the previous web
1078 <tr class="bg1" align="left" valign="top" id="hide_referrer_opts">
1079 <td class="en1"> </td>
1080 <td class="dis1"> </td>
1081 <td class="noc1"> </td>
1083 <td><input type="radio" name="hide_referrer_mode" value="block"
1084 onclick="hide_referrer_param_disable(true)"
1085 @hide-referrer-param-block@ id="hide_referrer_mode_block"><label
1086 for="hide_referrer_mode_block">Remove completely</label> (breaks images
1087 on some free web hosts).<br>
1088 <input type="radio" name="hide_referrer_mode" value="forge"
1089 onclick="hide_referrer_param_disable(true)"
1090 @hide-referrer-param-forge@ id="hide_referrer_mode_forge"><label
1091 for="hide_referrer_mode_forge">Fake as the root directory of the
1092 site</label> (fools checks for in-site links.)<br>
1093 <input type="radio" name="hide_referrer_mode" value="CUSTOM"
1094 onclick="hide_referrer_param_disable(false)"
1095 @hide-referrer-param-custom@ id="hide_referrer_mode_set"><label
1096 for="hide_referrer_mode_set">Fake as this web address:</label><br>
1097 <input type="text" name="hide_referrer_param"
1098 id="hide_referrer_param" size="40"
1099 value="@hide-referrer-param@"><br>
1100 <input type="radio" name="hide_referrer_mode" value="conditional-block"
1101 onclick="hide_referrer_param_disable(true)"
1102 @hide-referrer-param-conditional-block@ id="hide_referrer_mode_conditional-block"><label
1103 for="hide_referrer_mode_conditional-block">Remove completely if host has changed,
1104 but don't touch in-site referrers.
1105 Less suspicious than the options above.</label><br>
1106 <input type="radio" name="hide_referrer_mode" value="conditional-forge"
1107 onclick="hide_referrer_param_disable(true)"
1108 @hide-referrer-param-conditional-forge@ id="hide_referrer_mode_conditional-forge"><label
1109 for="hide_referrer_mode_conditional-forge">Forge referrer if host has
1110 changed, but don't touch in-site referrers.</label><br>
1113 <tr class="bg1" align="left" valign="top">
1114 <td class="en1" align="center" valign="middle"><input type="radio"
1115 name="hide_user_agent" id="hide_user_agent_y" value="Y" @hide-user-agent-y@
1116 onclick="show_user_agent_opts(true)"></td>
1117 <td class="dis1" align="center" valign="middle"><input type="radio"
1118 name="hide_user_agent" value="N" @hide-user-agent-n@
1119 onclick="show_user_agent_opts(false)"></td>
1120 <td class="noc1" align="center" valign="middle"><input type="radio"
1121 name="hide_user_agent" value="X" @hide-user-agent-x@
1122 onclick="show_user_agent_opts(false)"></td>
1123 <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-USER-AGENT">hide-user-agent</a></td>
1124 <td>Pretend to be using a different web browser. (May cause problems with broken web sites).</td>
1126 <tr class="bg1" align="left" valign="top" id="user_agent_opts">
1127 <td class="en1"> </td>
1128 <td class="dis1"> </td>
1129 <td class="noc1"> </td>
1131 <td>User Agent string to send:<br>
1132 <input type="text" name="hide_user_agent_mode" size="40"
1133 value="@hide-user-agent-param@"></td>
1135 <tr class="bg1" align="left" valign="top">
1136 <td class="en1" align="center" valign="middle"><input type="radio"
1137 name="inspect_jpegs" value="Y" @inspect-jpegs-y@
1139 <td class="dis1" align="center" valign="middle"><input type="radio"
1140 name="inspect_jpegs" value="N" @inspect-jpegs-n@
1142 <td class="noc1" align="center" valign="middle"><input type="radio"
1143 name="inspect_jpegs" value="X" @inspect-jpegs-x@
1145 <td class="action"><a href="@user-manual@@actions-help-prefix@INSPECT-JPEGS">inspect-jpegs</a></td>
1146 <td>Checks jpeg images for malicious content.</td>
1148 <tr class="bg1" align="left" valign="top">
1149 <td class="en1" align="center" valign="middle"><input type="radio"
1150 name="kill_popups" value="Y" @kill-popups-y@
1152 <td class="dis1" align="center" valign="middle"><input type="radio"
1153 name="kill_popups" value="N" @kill-popups-n@
1155 <td class="noc1" align="center" valign="middle"><input type="radio"
1156 name="kill_popups" value="X" @kill-popups-x@
1158 <td class="action"><a href="@user-manual@@actions-help-prefix@KILL-POPUPS">kill-popups</a></td>
1159 <td>Filter the website through a built-in filter to disable many JavaScript
1160 pop-up windows. Not recommended.</td>
1162 <tr class="bg1" align="left" valign="top">
1163 <td class="en1" align="center" valign="middle"><input type="radio"
1164 name="limit_connect" id="limit_connect_y" value="Y" @limit-connect-y@
1165 onclick="show_limit_connect_opts(true)"></td>
1166 <td class="dis1" align="center" valign="middle"><input type="radio"
1167 name="limit_connect" value="N" @limit-connect-n@
1168 onclick="show_limit_connect_opts(false)"></td>
1169 <td class="noc1" align="center" valign="middle"><input type="radio"
1170 name="limit_connect" value="X" @limit-connect-x@
1171 onclick="show_limit_connect_opts(false)"></td>
1172 <td class="action"><a href="@user-manual@@actions-help-prefix@LIMIT-CONNECT">limit-connect</a></td>
1173 <td>Limit which ports are allowed in HTTP CONNECT requests. These requests are
1174 used to tunnel SSL and other protocols through HTTP proxies.</td>
1176 <tr class="bg1" align="left" valign="top" id="limit_connect_opts">
1177 <td class="en1"> </td>
1178 <td class="dis1"> </td>
1179 <td class="noc1"> </td>
1181 <td>Legal ports (comma separated, ranges allowed):<br>
1182 <input type="text" name="limit_connect_mode" size="40"
1183 value="@limit-connect-param@"></td>
1185 <tr class="bg1" align="left" valign="top">
1186 <td class="en1" align="center" valign="middle"><input type="radio"
1187 name="overwrite_last_modified" value="Y" @overwrite-last-modified-y@
1189 <td class="dis1" align="center" valign="middle"><input type="radio"
1190 name="overwrite_last_modified" value="N" @overwrite-last-modified-n@
1192 <td class="noc1" align="center" valign="middle"><input type="radio"
1193 name="overwrite_last_modified" value="X" @overwrite-last-modified-x@
1195 <td class="action"><a href="@user-manual@@actions-help-prefix@OVERWRITE_LAST_MODIFIED">overwrite-last-modified</a></td>
1196 <td>Remove or randomize the Last-Modified header.</td>
1198 <tr class="bg1" align="left" valign="top" id="overwrite_last_modified_opts">
1199 <td class="en1"> </td>
1200 <td class="dis1"> </td>
1201 <td class="noc1"> </td>
1203 <td><input type="radio" name="overwrite_last_modified_mode" value="block"
1204 onclick="overwrite_last_modified_param_disable(true)"
1205 @overwrite-last-modified-param-block@ id="overwrite_last_modified_mode_block"><label
1206 for="overwrite_last_modified_mode_block">Remove without replacement.</label>
1208 <input type="radio" name="overwrite_last_modified_mode" value="reset-to-request-time"
1209 onclick="overwrite_last_modified_param_disable(true)"
1210 @overwrite-last-modified-param-reset-to-request-time@
1211 id="overwrite_last_modified_mode_reset-to-request-time"><label
1212 for="overwrite_last_modified_mode_reset-to-request-time">Reset to the time of the request.</label>
1214 <input type="radio" name="overwrite_last_modified_mode" value="randomize"
1215 onclick="overwrite_last_modified_param_disable(true)"
1216 @overwrite-last-modified-param-randomize@
1217 id="overwrite_last_modified_mode_randomize"><label
1218 for="overwrite_last_modified_mode_randomize">Overwrite with random value
1219 between original header value and the time of the request.</label>
1223 <tr class="bg1" align="left" valign="top">
1224 <td class="en1" align="center" valign="middle"><input type="radio"
1225 name="prevent_compression" value="Y" @prevent-compression-y@
1227 <td class="dis1" align="center" valign="middle"><input type="radio"
1228 name="prevent_compression" value="N" @prevent-compression-n@
1230 <td class="noc1" align="center" valign="middle"><input type="radio"
1231 name="prevent_compression" value="X" @prevent-compression-x@
1233 <td class="action"><a href="@user-manual@@actions-help-prefix@PREVENT-COMPRESSION">prevent-compression</a></td>
1234 <td>Disables compression. Compressed web pages are faster to
1235 download, but cannot be filtered with <a href="@user-manual@@actions-help-prefix@FILTER"><b>filter</b></a>
1236 or <a href="@user-manual@@actions-help-prefix@KILL-POPUPS"><b>kill-popups</b></a>
1237 if your Privoxy version was build without zlib support.</td>
1239 <tr class="bg1" align="left" valign="top">
1240 <td class="en1" align="center" valign="middle"><input type="radio"
1241 name="redirect" value="Y" @redirect-y@
1243 <td class="dis1" align="center" valign="middle"><input type="radio"
1244 name="redirect" value="N" @redirect-n@
1246 <td class="noc1" align="center" valign="middle"><input type="radio"
1247 name="redirect" value="X" @redirect-x@
1249 <td class="action"><a href="@user-manual@@actions-help-prefix@REDIRECT">redirect</a></td>
1250 <td>Redirect to another address.
1252 <tr class="bg1" align="left" valign="top" id="redirect_opts">
1253 <td class="en1"> </td>
1254 <td class="dis1"> </td>
1255 <td class="noc1"> </td>
1257 <td>Static address or a single pcrs command to redirect to a rewritten version of the original URL:<br>
1258 <input type="text" name="redirect_mode" size="40"
1259 value="@redirect-param@"></td>
1262 <tr class="bg1" align="left" valign="top">
1263 <td class="en1" align="center" valign="middle"><input type="radio"
1264 name="send_vanilla_wafer" value="Y" @send-vanilla-wafer-y@
1266 <td class="dis1" align="center" valign="middle"><input type="radio"
1267 name="send_vanilla_wafer" value="N" @send-vanilla-wafer-n@
1269 <td class="noc1" align="center" valign="middle"><input type="radio"
1270 name="send_vanilla_wafer" value="X" @send-vanilla-wafer-x@
1272 <td class="action"><a href="@user-manual@@actions-help-prefix@SEND-VANILLA-WAFER">send-vanilla-wafer</a></td>
1273 <td>Adds a special wafer (standard cookie) to all your requests. Not recommended.</td>
1275 <tr class="bg1" align="left" valign="top">
1276 <td class="en1" align="center" valign="middle"><input type="radio"
1277 name="send_wafer" id="send_wafer_y" value="Y" @send-wafer-y@
1278 onclick="show_send_wafer_opts(true)"></td>
1279 <td class="dis1" align="center" valign="middle"><input type="radio"
1280 name="send_wafer" id="send_wafer_n" value="N" @send-wafer-n@
1281 onclick="show_send_wafer_opts(false)"></td>
1282 <td class="noc1" align="center" valign="middle"><input type="radio"
1283 name="send_wafer" id="send_wafer_x" value="X" @send-wafer-x@
1284 onclick="show_send_wafer_opts(false)"></td>
1285 <td class="action"><a href="@user-manual@@actions-help-prefix@SEND-WAFER">send-wafer</a></td>
1286 <td>Adds user-specified cookies.</td>
1288 <tr class="bg1" align="left" valign="top" id="send_wafer_opts">
1289 <td class="en1"> </td>
1290 <td class="dis1"> </td>
1291 <td class="noc1"> </td>
1293 <td>Editing the settings for this option, or turning
1294 it on if it was off, is not yet supported using this web-based
1297 <tr class="bg1" align="left" valign="top">
1298 <td class="en1"> </td>
1299 <td class="dis1" align="center" valign="middle"><input type="radio"
1300 name="server_header_filter_all" id="server_header_filter_all_n" value="N" @server-header-filter-all-n@ ></td>
1301 <td class="noc1" align="center" valign="middle"><input type="radio"
1302 name="server_header_filter_all" id="server_header_filter_all_x" value="X" @server-header-filter-all-x@ ></td>
1303 <td class="action"><a href="@user-manual@@actions-help-prefix@SERVER-HEADER-FILTER">server-header-filter</a> *</td>
1304 <td>Filter the server headers.
1305 You can use the radio buttons on this line to disable
1306 all server-header filters applied by previous rules, and/or
1307 you can enable or disable the filters individually below.</td>
1309 @server-header-filter-params@
1310 <tr class="bg1" align="left" valign="top">
1311 <td class="en1"> </td>
1312 <td class="dis1" align="center" valign="middle"><input type="radio"
1313 name="server_header_tagger_all" id="server_header_tagger_all_n" value="N" @server-header-tagger-all-n@ ></td>
1314 <td class="noc1" align="center" valign="middle"><input type="radio"
1315 name="server_header_tagger_all" id="server_header_tagger_all_x" value="X" @server-header-tagger-all-x@ ></td>
1316 <td class="action"><a href="@user-manual@@actions-help-prefix@SERVER-HEADER-TAGGER">server-header-tagger</a> *</td>
1317 <td>Create tags based on the server headers.
1318 You can use the radio buttons on this line to disable
1319 all server-header taggers applied by previous rules, and/or
1320 you can enable or disable the taggers individually below.</td>
1322 @server-header-tagger-params@
1323 <tr class="bg1" align="left" valign="top">
1324 <td class="en1" align="center" valign="middle"><input type="radio"
1325 name="session_cookies_only" value="Y" @session-cookies-only-y@
1327 <td class="dis1" align="center" valign="middle"><input type="radio"
1328 name="session_cookies_only" value="N" @session-cookies-only-n@
1330 <td class="noc1" align="center" valign="middle"><input type="radio"
1331 name="session_cookies_only" value="X" @session-cookies-only-x@
1333 <td class="action"><a href="@user-manual@@actions-help-prefix@SESSION-COOKIES-ONLY">session-cookies-only</a></td>
1334 <td>HTTP cookies set by the website are changed to temporary
1335 ("per-session") ones, which only last until you close your web
1336 browser. This will allow you to use sites that require cookies, but
1337 sites will not be able to track you across sessions. For this to
1338 be useful, you should disable
1339 <a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES"><b>crunch-outgoing-cookies</b></a> and
1340 <a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES"><b>crunch-incoming-cookies</b></a>.</td>
1342 <tr class="bg1" align="left" valign="top">
1343 <td class="en1" align="center" valign="middle"><input type="radio"
1344 name="set_image_blocker" id="set_image_blocker_y" value="Y" @set-image-blocker-y@
1345 onclick="show_set_image_blocker_opts(true)"></td>
1346 <td class="dis1" align="center" valign="middle"><input type="radio"
1347 name="set_image_blocker" value="N" @set-image-blocker-n@
1348 onclick="show_set_image_blocker_opts(false)"></td>
1349 <td class="noc1" align="center" valign="middle"><input type="radio"
1350 name="set_image_blocker" value="X" @set-image-blocker-x@
1351 onclick="show_set_image_blocker_opts(false)"></td>
1352 <td class="action"><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></td>
1353 <td>Specifies how to block images.</td>
1355 <tr class="bg1" align="left" valign="top" id="set_image_blocker_opts">
1356 <td class="en1"> </td>
1357 <td class="dis1"> </td>
1358 <td class="noc1"> </td>
1360 <td><input type="radio" name="set_image_blocker_mode"
1361 onclick="set_image_blocker_param_disable(true)"
1362 value="pattern" id="set_image_blocker_mode_pattern"
1363 @set-image-blocker-param-pattern@><label
1364 for="set_image_blocker_mode_pattern">Send a pattern (<img
1365 src="send-banner?type=p" width="12" height="12"
1366 alt="pattern">)</label><br>
1367 <input type="radio" name="set_image_blocker_mode" value="blank"
1368 onclick="set_image_blocker_param_disable(true)"
1369 id="set_image_blocker_mode_blank" @set-image-blocker-param-blank@><label
1370 for="set_image_blocker_mode_blank">Send a 1x1 transparent GIF</label><br>
1371 <input type="radio" name="set_image_blocker_mode" value="CUSTOM"
1372 onclick="set_image_blocker_param_disable(false)"
1373 id="set_image_blocker_mode_set" @set-image-blocker-param-custom@><label
1374 for="set_image_blocker_mode_set">Redirect
1375 the browser to this image URL:</label><br>
1376 <input type="text" name="set_image_blocker_param" id="set_image_blocker_param"
1377 size="40" value="@set-image-blocker-param@"></td>
1381 <!-- @if-multiple-forms-start -->
1383 <input type="hidden" name="f" value="@f@">
1384 <input type="hidden" name="v" value="@v@">
1385 <input type="hidden" name="s" value="@s@">
1386 <input type="submit" value="Submit changes in Section 4" name="Submit">
1389 <!-- if-multiple-forms-end@ -->
1391 <!-- @if-one-form-only-start -->
1393 <td class="green" align="center">
1394 <p><input type="submit" value="Submit" name="Submit"></p>
1397 <!-- if-one-form-only-end@ -->
1400 <h2>More Privoxy:</h2>
1401 <ul>@menu@<li><a href="@user-manual@">Documentation</a></li></ul>
1408 #include mod-support-and-service
1413 <!-- @if-have-help-info-start -->
1417 #include mod-local-help
1421 <!-- if-have-help-info-end@ -->
1424 <!-- @if-one-form-only-start -->
1426 <!-- if-one-form-only-end@ -->
1428 <script type="text/javascript">
1431 if (document.getElementById) {
1432 // alert("Netscape 6 or IE5");
1433 document.getElementById("hide_from_header_param").disabled = !(document.getElementById("hide_from_header_mode_set").checked);
1434 document.getElementById("hide_referrer_param").disabled = !(document.getElementById("hide_referrer_mode_set").checked);
1435 document.getElementById("set_image_blocker_param").disabled = !(document.getElementById("set_image_blocker_mode_set").checked);
1437 show_add_header_opts (document.getElementById("add_header_y").checked);
1438 show_deanimate_opts (document.getElementById("deanimate_gifs_y").checked);
1439 show_hide_from_header_opts(document.getElementById("hide_from_header_y").checked);
1440 show_hide_referrer_opts (document.getElementById("hide_referrer_y").checked);
1441 show_user_agent_opts (document.getElementById("hide_user_agent_y").checked);
1442 show_set_image_blocker_opts (document.getElementById("set_image_blocker_y").checked);
1443 show_limit_connect_opts (document.getElementById("limit_connect_y").checked);
1444 show_send_wafer_opts (document.getElementById("send_wafer_y").checked);
1445 } else if (document.all) {
1447 document.myform.hide_from_header_param.disabled = !(document.myform.hide_from_header_mode_set.checked);
1448 document.myform.hide_referrer_param.disabled = !(document.myform.hide_referrer_mode_set.checked);
1449 document.myform.set_image_blocker_param.disabled = !(document.myform.set_image_blocker_mode_set.checked);
1451 show_add_header_opts (document.myform.add_header_y.checked);
1452 show_deanimate_opts (document.myform.deanimate_gifs_y.checked);
1453 show_hide_from_header_opts (document.myform.hide_from_header_y.checked);
1454 show_hide_referrer_opts (document.myform.hide_referrer_y.checked);
1455 show_user_agent_opts (document.myform.hide_user_agent_y.checked);
1456 show_set_image_blocker_opts (document.myform.set_image_blocker_y.checked);
1457 show_limit_connect_opts (document.myform.limit_connect_y.checked);
1458 show_send_wafer_opts (document.myform.send_wafer_y.checked);
1459 } else if (document.layers) {
1460 // alert("Netscape 4");