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