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