Typo: inspect_jpegs, not inspect-jpegs in form
[privoxy.git] / templates / edit-actions-for-url
1 ##############################################################################
2 #
3 # File        :  $Source: /cvsroot/ijbswa/current/templates/edit-actions-for-url,v $
4 #
5 # Purpose     :  Template used to edit the actions associated with a
6 #                particular section in an actions file.
7
8 #
9 # Copyright   :  Written by and Copyright (C) 2001 the SourceForge
10 #                Privoxy team. http://www.privoxy.org/
11 #
12 #                Original Author: Copyright (C) 2001 Jonathan Foster
13 #                http://www.jon-foster.co.uk/
14 #
15 #                This program is free software; you can redistribute it 
16 #                and/or modify it under the terms of the GNU General
17 #                Public License as published by the Free Software
18 #                Foundation; either version 2 of the License, or (at
19 #                your option) any later version.
20 #
21 #                This program is distributed in the hope that it will
22 #                be useful, but WITHOUT ANY WARRANTY; without even the
23 #                implied warranty of MERCHANTABILITY or FITNESS FOR A
24 #                PARTICULAR PURPOSE.  See the GNU General Public
25 #                License for more details.
26 #
27 #                The GNU General Public License should be included with
28 #                this file.  If not, you can view it at
29 #                http://www.gnu.org/copyleft/gpl.html
30 #                or write to the Free Software Foundation, Inc., 59
31 #                Temple Place - Suite 330, Boston, MA  02111-1307, USA.
32 #
33 # Revisions   :
34 #    $Log: edit-actions-for-url,v $
35 #    Revision 1.32  2004/10/05 02:03:19  david__schmidt
36 #    Add the ability to check jpeg images for invalid
37 #    lengths of comment blocks.  Defensive strategy
38 #    against the exploit:
39 #    Microsoft Security Bulletin MS04-028
40 #       Buffer Overrun in JPEG Processing (GDI+) Could
41 #       Allow Code Execution (833987)
42 #    Enabled with +inspect-jpegs in actions files.
43 #
44 #    Revision 1.31  2003/09/22 00:33:01  david__schmidt
45 #    Enable sending a custom 'blocked' image.  Shows up as
46 #    "image-blocker-custom-file" parameter in config, and
47 #    "+set-image-blocker{custom}" in action files.
48 #
49 #    Revision 1.30  2002/09/05 16:12:02  oes
50 #    Synced with stable branch:
51 #       Revision 1.29.2.3  2002/08/23 02:22:53  hal9
52 #       Fix a perl brain fart with <li> in comments.
53 #
54 #       Revision 1.29.2.1  2002/08/02 12:51:42  oes
55 #       Added top submit button; Consistency with docs: Change default name for action from hide-referer to hide-referrer
56 #
57 #    Revision 1.29.2.3  2002/08/23 02:22:53  hal9
58 #    Fix a perl brain fart with <li> in comments.
59 #
60 #    Revision 1.29.2.1  2002/08/02 12:51:42  oes
61 #    Added top submit button; Consistency with docs: Change default name for action from hide-referer to hide-referrer
62 #
63 #    Revision 1.29  2002/05/21 19:10:57  oes
64 #    Fixed JavaScript error
65 #
66 #    Revision 1.28  2002/05/14 21:36:38  oes
67 #     - Renamed prevent-(setting/reading)-cookies to
68 #       crunch-(incoming/outgoing)-cookies
69 #     - Renamed helplink export to actions-help-prefix
70 #     - Restored alphabetical order of actions
71 #
72 #    Revision 1.27  2002/04/26 22:55:26  jongfoster
73 #    Removing the alternating colors because they've been wrong
74 #    since the actions renames, they're high maintenance, they
75 #    don't look particularly good, and now there are gaps between
76 #    the table cells we don't need them.
77 #
78 #    Revision 1.26  2002/04/26 21:55:17  jongfoster
79 #    Cosmetic change: Making the +filter UI look the same as
80 #    the other actions.
81 #
82 #    Revision 1.25  2002/04/26 21:37:50  jongfoster
83 #    Fixing all(?) the substitutions that were broken in the
84 #    recent actions rename.
85 #
86 #    Revision 1.24  2002/04/26 18:24:28  jongfoster
87 #    Fixing typos in help hyperlinks
88 #
89 #    Revision 1.23  2002/04/26 12:57:02  oes
90 #    Actions renamed, alphabetically sorted, comments fixed, and names linked to help
91 #
92 #    Revision 1.22  2002/04/10 13:32:53  oes
93 #    Made templates modular
94 #
95 #    Revision 1.21  2002/04/08 17:05:18  oes
96 #    Inline a style exception
97 #
98 #    Revision 1.20  2002/04/05 16:01:30  oes
99 #    Correct HTML, external Stylesheets, eye candy, some fixes
100 #
101 #    Revision 1.19  2002/03/26 22:29:56  swa
102 #    we have a new homepage!
103 #
104 #    Revision 1.18  2002/03/24 16:32:08  jongfoster
105 #    Removing logo option
106 #
107 #    Revision 1.17  2002/03/24 15:23:33  jongfoster
108 #    Name changes
109 #
110 #    Revision 1.16  2002/03/24 11:01:06  swa
111 #    name change
112 #
113 #    Revision 1.15  2002/03/23 16:18:15  swa
114 #    renamed every reference to the old name with foobar.
115 #    fixed "application foobar application" tag, fixed
116 #    "the foobar" with "foobar". left junkbuster in cvs
117 #    comments and remarks to history untouched. should
118 #    make final rename easier.
119 #
120 #    Revision 1.14  2002/03/16 15:22:19  jongfoster
121 #    Moving 'alpha' warning to the end of the page
122 #
123 #    Revision 1.13  2002/03/16 14:28:38  jongfoster
124 #    First version of modular filters support
125 #
126 #    Revision 1.12  2002/03/12 01:42:50  oes
127 #    Introduced modular filters
128 #
129 #    Revision 1.11  2002/03/08 18:19:14  jongfoster
130 #    Adding +image-blocker{pattern} option to edit interface
131 #
132 #    Revision 1.10  2002/03/03 10:29:12  swa
133 #    point users to the right feedback forms,
134 #    not necessarily the developer list.
135 #
136 #    Revision 1.9  2002/01/23 00:26:45  jongfoster
137 #    Reducing length of URLs
138 #    Where encoded and unencoded versions of a string existed, removing
139 #    the unencoded one.
140 #
141 #    Revision 1.8  2002/01/17 21:33:00  jongfoster
142 #    Replacing all references to the URL of the config interface
143 #    with @default-cgi@
144 #
145 #    Revision 1.7  2002/01/17 21:21:03  jongfoster
146 #    DOS->Unix line endings
147 #
148 #    Revision 1.6  2001/11/22 21:58:41  jongfoster
149 #    Adding action +no-cookies-keep
150 #
151 #    Revision 1.5  2001/11/13 21:12:17  jongfoster
152 #    Added support for the following actions:
153 #    +downgrade, +limit-connect, +no-compression
154 #
155 #    Revision 1.4  2001/11/13 00:58:18  jongfoster
156 #    New version of actions file editor templates
157 #
158 #
159 ##############################################################################
160 #
161 # Browser support for the JavaScript on this page:
162 #   MS Internet Explorer 5.5 - Tested,   Yes
163 #   Netscape 6.0             - Tested,   Yes
164 #   Netscape 4.75            - Tested,   NO
165 #   Opera 5.12               - Tested,   NO
166 #   MS Internet Explorer 4+  - Untested, Yes
167 #   MS IE 3.x, NS3.x         - Untested, NO
168 #   Mozilla >=0.6            - Untested, Yes
169 #
170 # All browsers should work, you just might not get the pretty DHTML effects.
171 #
172 # The effects that only work under the browsers marked "Yes" above are:
173 #  - Text edit boxes that won't have any effect are disabled.
174 #  - Table rows containing additional settings are hidden if the feature in
175 #    question is disabled.
176 #
177 # There are major kludges to get around these problems with NS4, but they
178 # screw up the HTML too much for other browsers.  If anyone wants to try,
179 # here's some descriptions of the kludges:
180 #    http://www.webreference.com/js/tips/991114.html
181 #    http://www.webreference.com/dhtml/column12/outDisplay.html
182 #
183 # If you're favorite browser isn't listed, please test and add it.
184 #
185 #
186 #############################################################################
187 #
188 # Standard support:
189 #
190 # This file currently produces valid HTML 4.01 Strict.
191 #
192 # If you change it, please save the generated page from your web browser
193 # and then upload it to http://validator.w3.org/ for checking.
194 #
195 #############################################################################
196 #
197 # Available variables include:
198 #
199 # action-name-y
200 # action-name-n
201 # action-name-x
202 #
203 # deanimate-gifs-param-first
204 # deanimate-gifs-param-last
205 # hide-from-param-block
206 # hide-from-param-custom
207 # hide-from-param
208 # hide-referrer-param-forge
209 # hide-referrer-param-block
210 # hide-referrer-param-custom
211 # hide-referrer-param
212 # hide-user-agent-param
213 # image-blocker-param-pattern
214 # image-blocker-param-blank
215 # image-blocker-param-custom
216 #
217 #
218 #############################################################################
219 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
220 <html>
221
222 <head>
223   <meta http-equiv="Content-Style-Type" content="text/css">
224   <meta http-equiv="Content-Script-Type" content="text/javascript">
225   <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
226   <meta name="robots" content="noindex,nofollow">
227   <link rel="stylesheet" type="text/css" href="@default-cgi@send-stylesheet">
228
229   <title>Privoxy@@my-hostname@: Edit actions</title>
230
231 <style type="text/css">
232 td.action    { font-weight: bold;
233                font-style: italic;
234                white-space: nowrap       }
235 td.subaction { font-style: italic        }
236 th           { font-weight: bold;        }
237 # This is the key to the color names below:
238 # bg=background, en="Enable", dis="Disable", noc="No Change", hdr=header
239 # 1=odd rows, 2=even rows, h=Table header
240 tr.hdr       { background-color: #999999 }
241 tr.bg1       { background-color: #eeeeee }
242 td.en1       { background-color: #ddffdd }
243 td.dis1      { background-color: #ffdddd }
244 td.noc1      { background-color: #ddddff }
245 th.enh       { background-color: #99ff99 }
246 th.dish      { background-color: #ff9999 }
247 th.noch      { background-color: #9999ff }
248 table.wide   { padding: 5px; }
249 td.green     { border: solid black 1px; background-color: #ddffdd; }
250 </style>
251
252 <!--
253 border-color: white;
254                border-style: solid;
255                border-left-width: 10px;
256                border-right-width: 10px;
257                border-top-width: 0px;
258                border-bottom-width: 0px  }
259 -->
260
261 <script type="text/javascript">
262 <!--
263
264 function hide_from_header_param_disable(tf)
265 {
266     if (document.getElementById) {
267         // NS6 or IE5
268         document.getElementById("hide_from_header_param").disabled = tf;
269     } else if (document.all) {
270         // IE4
271         document.myform.hide_from_header_param.disabled = tf;
272     }
273 }
274
275 function hide_referrer_param_disable(tf)
276 {
277     if (document.getElementById) {
278         document.getElementById("hide_referrer_param").disabled = tf;
279     } else if (document.all) {
280         document.myform.hide_referrer_param.disabled = tf;
281     }
282 }
283
284 function set_image_blocker_param_disable(tf)
285 {
286     if (document.getElementById) {
287         document.getElementById("set_image_blocker_param").disabled = tf;
288     } else if (document.all) {
289         document.myform.set_image_blocker_param.disabled = tf;
290     }
291 }
292
293 function show_add_header_opts(tf)
294 {
295     if (document.getElementById) {
296         target = document.getElementById("add_header_opts");
297     } else if (document.all) {
298         target = document.add_header_opts;
299     } else {
300         return;
301     }
302     target.style.display = (tf ? "" : "none");
303 }
304
305 function show_deanimate_opts(tf)
306 {
307     if (document.getElementById) {
308         target = document.getElementById("deanimate_opts");
309     } else if (document.all) {
310         target = document.deanimate_opts;
311     } else {
312         return;
313     }
314     target.style.display = (tf ? "" : "none");
315 }
316
317 function show_hide_from_header_opts(tf)
318 {
319     if (document.getElementById) {
320         target = document.getElementById("hide_from_header_opts");
321     } else if (document.all) {
322         target = document.hide_from_header_opts;
323     } else {
324         return;
325     }
326     target.style.display = (tf ? "" : "none");
327 }
328
329 function show_hide_referrer_opts(tf)
330 {
331     if (document.getElementById) {
332         target = document.getElementById("hide_referrer_opts");
333     } else if (document.all) {
334         target = document.hide_referrer_opts;
335     } else {
336         return;
337     }
338     target.style.display = (tf ? "" : "none");
339 }
340
341 function show_user_agent_opts(tf)
342 {
343     if (document.getElementById) {
344         target = document.getElementById("user_agent_opts");
345     } else if (document.all) {
346         target = document.user_agent_opts;
347     } else {
348         return;
349     }
350     target.style.display = (tf ? "" : "none");
351 }
352
353 function show_set_image_blocker_opts(tf)
354 {
355     if (document.getElementById) {
356         target = document.getElementById("set_image_blocker_opts");
357     } else if (document.all) {
358         target = document.set_image_blocker_opts;
359     } else {
360         return;
361     }
362     target.style.display = (tf ? "" : "none");
363 }
364
365 function show_limit_connect_opts(tf)
366 {
367     if (document.getElementById) {
368         target = document.getElementById("limit_connect_opts");
369     } else if (document.all) {
370         target = document.limit_connect_opts;
371     } else {
372         return;
373     }
374     target.style.display = (tf ? "" : "none");
375 }
376
377 function show_send_wafer_opts(tf)
378 {
379     if (document.getElementById) {
380         target = document.getElementById("send_wafer_opts");
381     } else if (document.all) {
382         target = document.send_wafer_opts;
383     } else {
384         return;
385     }
386     target.style.display = (tf ? "" : "none");
387 }
388
389 //-->
390 </script>
391 </head>
392
393 <body>
394
395 <form method="GET" action="edit-actions-submit" id="myform" name="myform">
396
397   <table cellpadding="20" cellspacing="10" border="0" width="100%">
398     <tr>
399       <td class="title">
400
401 #include mod-title
402
403       </td>
404     </tr>
405
406 <!-- @if-unstable-start -->
407 # This will only appear if CODE_STATUS is "alpha" or "beta". See configure.in
408     <tr>
409       <td class="warning">
410
411 #include mod-unstable-warning
412
413       </td>
414     </tr>
415 <!-- if-unstable-end@ -->
416
417     <tr>
418       <td class="box">
419         <h2>Edit Actions
420           <input type="hidden" name="f" value="@f@">
421           <input type="hidden" name="v" value="@v@">
422           <input type="hidden" name="s" value="@s@">
423         </h2>
424       </td>
425     </tr>
426
427     <tr>
428       <td class="green" align="center">
429         <p><input type="submit" value="Submit" name="Submit"></p>
430       </td>
431     </tr>
432
433 <tr><td class="wrapbox">
434
435   <table border="0" cellspacing="2" width="100%" class="wide">
436     <tr class="hdr" align="left">
437       <th class="enh" align="center">Enable</th>
438       <th class="dish" align="center">Disable</th>
439       <th class="noch" align="center">No Change</th>
440       <th>Action</th>
441       <th>Description</th>
442     </tr>
443     <tr class="bg1" align="left" valign="top">
444       <td class="en1" align="center" valign="middle"><input type="radio"
445         name="add_header" id="add_header_y" value="Y" @add-header-y@
446         onclick="show_add_header_opts(true)"></td>
447       <td class="dis1" align="center" valign="middle"><input type="radio"
448         name="add_header" value="N" @add-header-n@
449         onclick="show_add_header_opts(false)"></td>
450       <td class="noc1" align="center" valign="middle"><input type="radio"
451         name="add_header" value="X" @add-header-x@
452         onclick="show_add_header_opts(false)"></td>
453       <td class="action"><a href="@user-manual@@actions-help-prefix@ADD-HEADER">add-header</a></td>
454       <td>Adds HTTP headers.</td>
455     </tr>
456     <tr class="bg1" align="left" valign="top" id="add_header_opts">
457       <td class="en1">&nbsp;</td>
458       <td class="dis1">&nbsp;</td>
459       <td class="noc1">&nbsp;</td>
460       <td>&nbsp;</td>
461       <td>Editing the settings for this option, or turning
462         it on if it was off, is not yet supported using this web-based
463         editor.</td>
464     </tr>
465     <tr class="bg1" align="left" valign="top">
466       <td class="en1" align="center" valign="middle"><input type="radio"
467         name="block" value="Y" @block-y@
468         ></td>
469       <td class="dis1" align="center" valign="middle"><input type="radio"
470         name="block" value="N" @block-n@
471         ></td>
472       <td class="noc1" align="center" valign="middle"><input type="radio"
473         name="block" value="X" @block-x@
474         ></td>
475       <td class="action"><a href="@user-manual@@actions-help-prefix@BLOCK">block</a></td>
476       <td>Block the request</td>
477     </tr>
478     <tr class="bg1" align="left" valign="top">
479       <td class="en1" align="center" valign="middle"><input type="radio"
480         name="crunch_incoming_cookies" value="Y" @crunch-incoming-cookies-y@
481         ></td>
482       <td class="dis1" align="center" valign="middle"><input type="radio"
483         name="crunch_incoming_cookies" value="N" @crunch-incoming-cookies-n@
484         ></td>
485       <td class="noc1" align="center" valign="middle"><input type="radio"
486         name="crunch_incoming_cookies" value="X" @crunch-incoming-cookies-x@
487         ></td>
488       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES">crunch-incoming-cookies</a></td>
489       <td>Prevent the website from setting cookies on your system.</td>
490     </tr>
491     <tr class="bg1" align="left" valign="top">
492       <td class="en1" align="center" valign="middle"><input type="radio"
493         name="crunch_outgoing_cookies" value="Y" @crunch-outgoing-cookies-y@
494         ></td>
495       <td class="dis1" align="center" valign="middle"><input type="radio"
496         name="crunch_outgoing_cookies" value="N" @crunch-outgoing-cookies-n@
497         ></td>
498       <td class="noc1" align="center" valign="middle"><input type="radio"
499         name="crunch_outgoing_cookies" value="X" @crunch-outgoing-cookies-x@
500         ></td>
501       <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES">crunch-outgoing-cookies</a></td>
502       <td>Prevent the website from reading cookies from your system.</td>
503     </tr>
504     <tr class="bg1" align="left" valign="top">
505       <td class="en1" align="center" valign="middle"><input type="radio"
506         name="deanimate_gifs" id="deanimate_gifs_y" value="Y" @deanimate-gifs-y@
507         onclick="show_deanimate_opts(true)"></td>
508       <td class="dis1" align="center" valign="middle"><input type="radio"
509         name="deanimate_gifs" value="N" @deanimate-gifs-n@
510         onclick="show_deanimate_opts(false)"></td>
511       <td class="noc1" align="center" valign="middle"><input type="radio"
512         name="deanimate_gifs" value="X" @deanimate-gifs-x@
513         onclick="show_deanimate_opts(false)"></td>
514       <td class="action"><a href="@user-manual@@actions-help-prefix@DEANIMATE-GIFS">deanimate-gifs</a></td>
515       <td>Replace animated GIFs with their (first/last) frame.</td>
516     </tr>
517     <tr class="bg1" align="left" valign="top" id="deanimate_opts">
518       <td class="en1">&nbsp;</td>
519       <td class="dis1">&nbsp;</td>
520       <td class="noc1">&nbsp;</td>
521       <td>&nbsp;</td>
522       <td>Use the <input type="radio" name="deanimate_gifs_mode"
523         value="first" id="deanimate_first" @deanimate-gifs-param-first@><label
524         for="deanimate_first">first frame</label>&nbsp;&nbsp; <input
525         type="radio" name="deanimate_gifs_mode" value="last" 
526         id="deanimate_last" @deanimate-gifs-param-last@><label
527         for="deanimate_last">last frame</label></td>
528     </tr>
529     <tr class="bg1" align="left" valign="top">
530       <td class="en1" align="center" valign="middle"><input type="radio"
531         name="downgrade_http_version" value="Y" @downgrade-http-version-y@></td>
532       <td class="dis1" align="center" valign="middle"><input type="radio"
533         name="downgrade_http_version" value="N" @downgrade-http-version-n@></td>
534       <td class="noc1" align="center" valign="middle"><input type="radio"
535         name="downgrade_http_version" value="X" @downgrade-http-version-x@></td>
536       <td class="action"><a href="@user-manual@@actions-help-prefix@DOWNGRADE-HTTP-VERSION">downgrade-http-version</td>
537       <td>Change HTTP/1.1 requests to HTTP/1.0.  Only change if you know
538         what you're doing!</td>
539     </tr>
540     <tr class="bg1" align="left" valign="top">
541       <td class="en1" align="center" valign="middle"><input type="radio"
542         name="fast_redirects" value="Y" @fast-redirects-y@
543         ></td>
544       <td class="dis1" align="center" valign="middle"><input type="radio"
545         name="fast_redirects" value="N" @fast-redirects-n@
546         ></td>
547       <td class="noc1" align="center" valign="middle"><input type="radio"
548         name="fast_redirects" value="X" @fast-redirects-x@
549         ></td>
550       <td class="action"><a href="@user-manual@@actions-help-prefix@FAST-REDIRECTS">fast-redirects</a></td>
551       <td>Bypass some click-tracking URLs.</td>
552     </tr>
553
554     <tr class="bg1" align="left" valign="top">
555       <td class="en1">&nbsp;</td>
556       <td class="dis1" align="center" valign="middle"><input type="radio"
557         name="filter_all" id="filter_all_n" value="N" @filter-all-n@ ></td>
558       <td class="noc1" align="center" valign="middle"><input type="radio"
559         name="filter_all" id="filter_all_x" value="X" @filter-all-x@ ></td>
560       <td class="action"><a href="@user-manual@@actions-help-prefix@FILTER">filter</a> *</td>
561       <td>Filter the website through regular expression
562         filters.  You can use the radio buttons on this line to disable
563         all filters applied by previous rules, and/or you can enable or
564         disable the filters individually below.</td>
565     </tr>
566 @filter-params@
567     <tr class="bg1" align="left" valign="top">
568       <td class="en1" align="center" valign="middle"><input type="radio"
569         name="handle_as_image" value="Y" @handle-as-image-y@
570         ></td>
571       <td class="dis1" align="center" valign="middle"><input type="radio"
572         name="handle_as_image" value="N" @handle-as-image-n@
573         ></td>
574       <td class="noc1" align="center" valign="middle"><input type="radio"
575         name="handle_as_image" value="X" @handle-as-image-x@
576         ></td>
577       <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE-AS-IMAGE">handle-as-image</a></td>
578       <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>
579         and <i><b><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></b></i> actions).</td>
580     </tr>
581     <tr class="bg1" align="left" valign="top">
582       <td class="en1" align="center" valign="middle"><input type="radio"
583         name="hide_forwarded_for_headers" value="Y" @hide-forwarded-for-headers-y@
584         ></td>
585       <td class="dis1" align="center" valign="middle"><input type="radio"
586         name="hide_forwarded_for_headers" value="N" @hide-forwarded-for-headers-n@
587         ></td>
588       <td class="noc1" align="center" valign="middle"><input type="radio"
589         name="hide_forwarded_for_headers" value="X" @hide-forwarded-for-headers-x@
590         ></td>
591       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FORWARDED-FOR-HEADERS">hide-forwarded-for-headers</a></td>
592       <td>Block any existing X-Forwarded-for header, and do not add a new one.</td>
593     </tr>
594     <tr class="bg1" align="left" valign="top">
595       <td class="en1" align="center" valign="middle"><input type="radio"
596         name="hide_from_header" id="hide_from_header_y" value="Y" @hide-from-header-y@
597         onclick="show_hide_from_header_opts(true)"></td>
598       <td class="dis1" align="center" valign="middle"><input type="radio"
599         name="hide_from_header" value="N" @hide-from-header-n@
600         onclick="show_hide_from_header_opts(false)"></td>
601       <td class="noc1" align="center" valign="middle"><input type="radio"
602         name="hide_from_header" value="X" @hide-from-header-x@
603         onclick="show_hide_from_header_opts(false)"></td>
604       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FROM-HEADER">hide-from-header</a></td>
605       <td>Stop old web browsers from sending the user's e-mail address with
606         every request.</td>
607     </tr>
608     <tr class="bg1" align="left" valign="top" id="hide_from_header_opts">
609       <td class="en1">&nbsp;</td>
610       <td class="dis1">&nbsp;</td>
611       <td class="noc1">&nbsp;</td>
612       <td>&nbsp;</td>
613       <td><input type="radio" name="hide_from_header_mode" value="block"
614         onclick="hide_from_header_param_disable(true);"
615         @hide-from-header-param-block@ id="hide_from_header_mode_block"><label
616         for="hide_from_header_mode_block">Remove completely</label><br>
617         <input type="radio" name="hide_from_header_mode" value="CUSTOM" 
618         onclick="hide_from_header_param_disable(false);"
619         @hide-from-header-param-custom@ id="hide_from_header_mode_set"><label
620         for="hide_from_header_mode_set">Fake e-mail address:</label><br>
621         <input type="text" name="hide_from_header_param" id="hide_from_header_param"
622         size="40" value="@hide-from-header-param@"></td>
623     </tr>
624     <tr class="bg1" align="left" valign="top">
625       <td class="en1" align="center" valign="middle"><input type="radio"
626         name="hide_referrer" id="hide_referrer_y" value="Y" @hide-referrer-y@
627         onclick="show_hide_referrer_opts(true)"></td>
628       <td class="dis1" align="center" valign="middle"><input type="radio"
629         name="hide_referrer" id="hide_referrer_n" value="N" @hide-referrer-n@
630         onclick="show_hide_referrer_opts(false)"></td>
631       <td class="noc1" align="center" valign="middle"><input type="radio"
632         name="hide_referrer" id="hide_referrer_x" value="X" @hide-referrer-x@
633         onclick="show_hide_referrer_opts(false)"
634         ></td>
635       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-REFERRER">hide-referrer</a></td>
636       <td>Helps prevent tracking by not sending the URL of the previous web
637         page.&nbsp;</td>
638     </tr>
639     <tr class="bg1" align="left" valign="top" id="hide_referrer_opts">
640       <td class="en1">&nbsp;</td>
641       <td class="dis1">&nbsp;</td>
642       <td class="noc1">&nbsp;</td>
643       <td>&nbsp;</td>
644       <td><input type="radio" name="hide_referrer_mode" value="block"
645         onclick="hide_referrer_param_disable(true)"
646         @hide-referrer-param-block@ id="hide_referrer_mode_block"><label
647         for="hide_referrer_mode_block">Remove completely</label> (breaks images
648         on some free web hosts).<br>
649         <input type="radio" name="hide_referrer_mode" value="forge"
650         onclick="hide_referrer_param_disable(true)"
651         @hide-referrer-param-forge@ id="hide_referrer_mode_forge"><label
652         for="hide_referrer_mode_forge">Fake as the root directory of the
653         site</label> (fools checks for in-site links.)<br>
654         <input type="radio" name="hide_referrer_mode" value="CUSTOM"
655         onclick="hide_referrer_param_disable(false)"
656         @hide-referrer-param-custom@ id="hide_referrer_mode_set"><label
657         for="hide_referrer_mode_set">Fake as this web address:</label><br>
658         <input type="text" name="hide_referrer_param" 
659         id="hide_referrer_param" size="40"
660         value="@hide-referrer-param@"></td>
661     </tr>
662     <tr class="bg1" align="left" valign="top">
663       <td class="en1" align="center" valign="middle"><input type="radio"
664         name="hide_user_agent" id="hide_user_agent_y" value="Y" @hide-user-agent-y@
665         onclick="show_user_agent_opts(true)"></td>
666       <td class="dis1" align="center" valign="middle"><input type="radio"
667         name="hide_user_agent" value="N" @hide-user-agent-n@
668         onclick="show_user_agent_opts(false)"></td>
669       <td class="noc1" align="center" valign="middle"><input type="radio"
670         name="hide_user_agent" value="X" @hide-user-agent-x@
671         onclick="show_user_agent_opts(false)"></td>
672       <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-USER-AGENT">hide-user-agent</a></td>
673       <td>Pretend to be using a different web browser.&nbsp; (Breaks many web
674         sites).</td>
675     </tr>
676     <tr class="bg1" align="left" valign="top" id="user_agent_opts">
677       <td class="en1">&nbsp;</td>
678       <td class="dis1">&nbsp;</td>
679       <td class="noc1">&nbsp;</td>
680       <td>&nbsp;</td>
681       <td>User Agent string to send:<br>
682         <input type="text" name="hide_user_agent_mode" size="40"
683         value="@hide-user-agent-param@"></td>
684     </tr>
685     <tr class="bg1" align="left" valign="top">
686       <td class="en1" align="center" valign="middle"><input type="radio"
687         name="inspect_jpegs" value="Y" @inspect-jpegs-y@
688         ></td>
689       <td class="dis1" align="center" valign="middle"><input type="radio"
690         name="inspect_jpegs" value="N" @inspect-jpegs-n@
691         ></td>
692       <td class="noc1" align="center" valign="middle"><input type="radio"
693         name="inspect_jpegs" value="X" @inspect-jpegs-x@
694         ></td>
695       <td class="action"><a href="@user-manual@@actions-help-prefix@INSPECT-JPEGS">inspect-jpegs</a></td>
696       <td>Checks jpeg images for malicious content.</td>
697     </tr>
698     <tr class="bg1" align="left" valign="top">
699       <td class="en1" align="center" valign="middle"><input type="radio"
700         name="kill_popups" value="Y" @kill-popups-y@
701         ></td>
702       <td class="dis1" align="center" valign="middle"><input type="radio"
703         name="kill_popups" value="N" @kill-popups-n@
704         ></td>
705       <td class="noc1" align="center" valign="middle"><input type="radio"
706         name="kill_popups" value="X" @kill-popups-x@
707         ></td>
708       <td class="action"><a href="@user-manual@@actions-help-prefix@KILL-POPUPS">kill-popups</td>
709       <td>Filter the website through a built-in filter to disable many JavaScript
710         pop-up windows.</td>
711     </tr>
712     <tr class="bg1" align="left" valign="top">
713       <td class="en1" align="center" valign="middle"><input type="radio"
714         name="limit_connect" id="limit_connect_y" value="Y" @limit-connect-y@
715         onclick="show_limit_connect_opts(true)"></td>
716       <td class="dis1" align="center" valign="middle"><input type="radio"
717         name="limit_connect" value="N" @limit-connect-n@
718         onclick="show_limit_connect_opts(false)"></td>
719       <td class="noc1" align="center" valign="middle"><input type="radio"
720         name="limit_connect" value="X" @limit-connect-x@
721         onclick="show_limit_connect_opts(false)"></td>
722       <td class="action"><a href="@user-manual@@actions-help-prefix@LIMIT-CONNECT">limit-connect</a></td>
723       <td>Specify which ports are allowed for SSL (HTTP CONNECT) access.
724         Note that this allows arbitrary tunnelling, so opening all
725         ports would be a security hole.</td>
726     </tr>
727     <tr class="bg1" align="left" valign="top" id="limit_connect_opts">
728       <td class="en1">&nbsp;</td>
729       <td class="dis1">&nbsp;</td>
730       <td class="noc1">&nbsp;</td>
731       <td>&nbsp;</td>
732       <td>Legal SSL ports (comma separated, ranges allowed):<br>
733         <input type="text" name="limit_connect_mode" size="40"
734         value="@limit-connect-param@"></td>
735     </tr>
736     <tr class="bg1" align="left" valign="top">
737       <td class="en1" align="center" valign="middle"><input type="radio"
738         name="prevent_compression" value="Y" @prevent-compression-y@
739         ></td>
740       <td class="dis1" align="center" valign="middle"><input type="radio"
741         name="prevent_compression" value="N" @prevent-compression-n@
742         ></td>
743       <td class="noc1" align="center" valign="middle"><input type="radio"
744         name="prevent_compression" value="X" @prevent-compression-x@
745         ></td>
746       <td class="action"><a href="@user-manual@@actions-help-prefix@PREVENT-COMPRESSION">prevent-compression</a></td>
747       <td>Disables compression.  Compressed web pages are faster to
748         download, but cannot be filtered with <a href="@user-manual@@actions-help-prefix@FILTER"><b>filter</b></a>
749         or <a href="@user-manual@@actions-help-prefix@KILL-POPUPS"><b>kill-popups</b></a>.
750         This setting only affects the few web sites which support
751         compression.</td>
752     </tr>
753     <tr class="bg1" align="left" valign="top">
754       <td class="en1" align="center" valign="middle"><input type="radio"
755         name="send_vanilla_wafer" value="Y" @send-vanilla-wafer-y@
756         ></td>
757       <td class="dis1" align="center" valign="middle"><input type="radio"
758         name="send_vanilla_wafer" value="N" @send-vanilla-wafer-n@
759         ></td>
760       <td class="noc1" align="center" valign="middle"><input type="radio"
761         name="send_vanilla_wafer" value="X" @send-vanilla-wafer-x@
762         ></td>
763       <td class="action"><a href="@user-manual@@actions-help-prefix@SEND-VANILLA-WAFER">send-vanilla-wafer</a></td>
764       <td>Adds a special wafer (standard cookie) to all your requests.</td>
765     </tr>
766     <tr class="bg1" align="left" valign="top">
767       <td class="en1" align="center" valign="middle"><input type="radio"
768         name="send_wafer" id="send_wafer_y" value="Y" @send-wafer-y@
769         onclick="show_send_wafer_opts(true)"></td>
770       <td class="dis1" align="center" valign="middle"><input type="radio"
771         name="send_wafer" id="send_wafer_n" value="N" @send-wafer-n@
772         onclick="show_send_wafer_opts(false)"></td>
773       <td class="noc1" align="center" valign="middle"><input type="radio"
774         name="send_wafer" id="send_wafer_x" value="X" @send-wafer-x@
775         onclick="show_send_wafer_opts(false)"></td>
776       <td class="action"><a href="@user-manual@@actions-help-prefix@SEND-WAFER">send-wafer</a></td>
777       <td>Adds user-specified cookies.</td>
778     </tr>
779     <tr class="bg1" align="left" valign="top" id="send_wafer_opts">
780       <td class="en1">&nbsp;</td>
781       <td class="dis1">&nbsp;</td>
782       <td class="noc1">&nbsp;</td>
783       <td>&nbsp;</td>
784       <td>Editing the settings for this option, or turning
785         it on if it was off, is not yet supported using this web-based
786         editor.</td>
787     </tr>
788     <tr class="bg1" align="left" valign="top">
789       <td class="en1" align="center" valign="middle"><input type="radio"
790         name="session_cookies_only" value="Y" @session-cookies-only-y@
791         ></td>
792       <td class="dis1" align="center" valign="middle"><input type="radio"
793         name="session_cookies_only" value="N" @session-cookies-only-n@
794         ></td>
795       <td class="noc1" align="center" valign="middle"><input type="radio"
796         name="session_cookies_only" value="X" @session-cookies-only-x@
797         ></td>
798       <td class="action"><a href="@user-manual@@actions-help-prefix@SESSION-COOKIES-ONLY">session-cookies-only</a></td>
799       <td>Any cookies set by the website are changed to temporary
800         ("per-session") ones, which only last until you close your web
801         browser.  This will allow you to use sites that require cookies, but
802         sites will not be able to track you across sessions.  For this to
803         be useful, you should disable 
804         <a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES"><b>crunch-outgoing-cookies</b></a> and
805         <a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES"><b>crunch-incoming-cookies</b></a>.</td>
806     </tr>
807     <tr class="bg1" align="left" valign="top">
808       <td class="en1" align="center" valign="middle"><input type="radio"
809         name="set_image_blocker" id="set_image_blocker_y" value="Y" @set-image-blocker-y@
810         onclick="show_set_image_blocker_opts(true)"></td>
811       <td class="dis1" align="center" valign="middle"><input type="radio"
812         name="set_image_blocker" value="N" @set-image-blocker-n@
813         onclick="show_set_image_blocker_opts(false)"></td>
814       <td class="noc1" align="center" valign="middle"><input type="radio"
815         name="set_image_blocker" value="X" @set-image-blocker-x@
816         onclick="show_set_image_blocker_opts(false)"></td>
817       <td class="action"><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></td>
818       <td>Specifies how to block images.</td>
819     </tr>
820     <tr class="bg1" align="left" valign="top" id="set_image_blocker_opts">
821       <td class="en1">&nbsp;</td>
822       <td class="dis1">&nbsp;</td>
823       <td class="noc1">&nbsp;</td>
824       <td>&nbsp;</td>
825       <td><input type="radio" name="set_image_blocker_mode"
826         onclick="set_image_blocker_param_disable(true)"
827         value="pattern" id="set_image_blocker_mode_pattern"
828         @set-image-blocker-param-pattern@><label
829         for="set_image_blocker_mode_pattern">Send a pattern (<img
830         src="send-banner?type=p" width="12" height="12"
831         alt="pattern">)</label><br>
832         <input type="radio" name="set_image_blocker_mode" value="blank"
833         onclick="set_image_blocker_param_disable(true)"
834         id="set_image_blocker_mode_blank" @set-image-blocker-param-blank@><label 
835         for="set_image_blocker_mode_blank">Send a 1x1 transparent image</label><br>
836         <input type="radio" name="set_image_blocker_mode" value="custom"
837         onclick="set_image_blocker_param_disable(true)"
838         id="set_image_blocker_mode_custom" @set-image-blocker-param-custom@><label 
839         for="set_image_blocker_mode_custom">Send a custom image</label><br>
840         <input type="radio" name="set_image_blocker_mode" value="CUSTOM"
841         onclick="set_image_blocker_param_disable(false)"
842         id="set_image_blocker_mode_set" @set-image-blocker-param-custom@><label
843         for="set_image_blocker_mode_set">Redirect
844         the browser to this image URL:</label><br>
845         <input type="text" name="set_image_blocker_param" id="set_image_blocker_param"
846         size="40" value="@set-image-blocker-param@"></td>
847     </tr>
848   </table>
849
850 </td></tr>
851
852     <tr>
853       <td class="green" align="center">
854         <p><input type="submit" value="Submit" name="Submit"></p>
855       </td>
856     </tr>
857
858     <tr>
859       <td class="box">
860         <h2>More Privoxy:</h2>
861         <ul>@menu@<li><a href="@user-manual@">Documentation</a></li></ul>
862       </td>
863     </tr>
864
865     <tr>
866       <td class="info">
867
868 #include mod-support-and-service
869
870       </td>
871     </tr>
872
873 <!-- @if-have-help-info-start -->
874     <tr>
875       <td class="info">
876
877 #include mod-local-help
878
879       </td>
880     </tr>
881 <!-- if-have-help-info-end@ -->
882
883     <tr>
884       <td>
885         <small><small>Valid <a href="http://validator.w3.org/">HTML 4.01 Strict</a></small></small>
886       </td>
887     </tr>
888
889   </table>
890 </form>
891
892
893 <script type="text/javascript">
894 <!--
895
896 if (document.getElementById) {
897     // alert("Netscape 6 or IE5");
898     document.getElementById("hide_from_header_param").disabled = !(document.getElementById("hide_from_header_mode_set").checked);
899     document.getElementById("hide_referrer_param").disabled = !(document.getElementById("hide_referrer_mode_set").checked);
900     document.getElementById("set_image_blocker_param").disabled = !(document.getElementById("set_image_blocker_mode_set").checked);
901
902     show_add_header_opts    (document.getElementById("add_header_y").checked);
903     show_deanimate_opts     (document.getElementById("deanimate_gifs_y").checked);
904     show_hide_from_header_opts(document.getElementById("hide_from_header_y").checked);
905     show_hide_referrer_opts (document.getElementById("hide_referrer_y").checked);
906     show_user_agent_opts    (document.getElementById("hide_user_agent_y").checked);
907     show_set_image_blocker_opts (document.getElementById("set_image_blocker_y").checked);
908     show_limit_connect_opts (document.getElementById("limit_connect_y").checked);
909     show_send_wafer_opts    (document.getElementById("wafer_y").checked);
910 } else if (document.all) {
911     // alert("IE4");
912     document.myform.hide_from_header_param.disabled = !(document.myform.hide_from_header_mode_set.checked);
913     document.myform.hide_referrer_param.disabled = !(document.myform.hide_referrer_mode_set.checked);
914     document.myform.set_image_blocker_param.disabled = !(document.myform.set_image_blocker_mode_set.checked);
915
916     show_add_header_opts    (document.myform.add_header_y.checked);
917     show_deanimate_opts     (document.myform.deanimate_gifs_y.checked);
918     show_hide_from_header_opts (document.myform.hide_from_header_y.checked);
919     show_hide_referrer_opts (document.myform.hide_referrer_y.checked);
920     show_user_agent_opts    (document.myform.hide_user_agent_y.checked);
921     show_set_image_blocker_opts (document.myform.set_image_blocker_y.checked);
922     show_limit_connect_opts (document.myform.limit_connect_y.checked);
923     show_send_wafer_opts    (document.myform.wafer_y.checked);
924 } else if (document.layers) {
925     // alert("Netscape 4");
926 }
927 //-->
928 </script>
929
930
931 </body>
932
933 </html>