-##############################################################################\r
-#\r
-# File : $Source: /cvsroot/ijbswa/current/templates/edit-actions-for-url,v $\r
-#\r
-# Purpose : Template used to edit the actions associated with a\r
-# particular section in an actions file.\r
-# \r
-#\r
-# Copyright : Written by and Copyright (C) 2001 the SourceForge\r
-# IJBSWA team. http://ijbswa.sourceforge.net\r
-#\r
-# Original Author: Copyright (C) 2001 Jonathan Foster\r
-# http://www.jon-foster.co.uk/\r
-#\r
-# This program is free software; you can redistribute it \r
-# and/or modify it under the terms of the GNU General\r
-# Public License as published by the Free Software\r
-# Foundation; either version 2 of the License, or (at\r
-# your option) any later version.\r
-#\r
-# This program is distributed in the hope that it will\r
-# be useful, but WITHOUT ANY WARRANTY; without even the\r
-# implied warranty of MERCHANTABILITY or FITNESS FOR A\r
-# PARTICULAR PURPOSE. See the GNU General Public\r
-# License for more details.\r
-#\r
-# The GNU General Public License should be included with\r
-# this file. If not, you can view it at\r
-# http://www.gnu.org/copyleft/gpl.html\r
-# or write to the Free Software Foundation, Inc., 59\r
-# Temple Place - Suite 330, Boston, MA 02111-1307, USA.\r
-#\r
-# Revisions :\r
-# $Log: edit-actions-for-url,v $\r
-# Revision 1.4 2001/11/13 00:58:18 jongfoster\r
-# New version of actions file editor templates\r
-#\r
-#\r
-##############################################################################\r
-#\r
-# Browser support for the JavaScript on this page:\r
-# MS Internet Explorer 5.5 - Tested, Yes\r
-# Netscape 6.0 - Tested, Yes\r
-# Netscape 4.75 - Tested, NO\r
-# Opera 5.12 - Tested, NO\r
-# MS Internet Explorer 4+ - Untested, Yes\r
-# MS IE 3.x, NS3.x - Untested, NO\r
-# Mozilla >=0.6 - Untested, Yes\r
-#\r
-# All browsers should work, you just might not get the pretty DHTML effects.\r
-#\r
-# The effects that only work under the browsers marked "Yes" above are:\r
-# - Text edit boxes that won't have any effect are disabled.\r
-# - Table rows containing additional settings are hidden if the feature in\r
-# question is disabled.\r
-#\r
-# There are major kludges to get around these problems with NS4, but they\r
-# screw up the HTML too much for other browsers. If anyone wants to try,\r
-# here's some descriptions of the kludges:\r
-# http://www.webreference.com/js/tips/991114.html\r
-# http://www.webreference.com/dhtml/column12/outDisplay.html\r
-#\r
-# If you're favorite browser isn't listed, please test and add it.\r
-#\r
-#\r
-#############################################################################\r
-#\r
-# Standard support:\r
-#\r
-# This file currently produces valid HTML 4.01 Strict.\r
-#\r
-# If you change it, please save the generated page from your web browser\r
-# and then upload it to http://validator.w3.org/ for checking.\r
-#\r
-#############################################################################\r
-#\r
-# Available variables include:\r
-#\r
-# action-name-y\r
-# action-name-n\r
-# action-name-x\r
-#\r
-# deanimate-gifs-param-first\r
-# deanimate-gifs-param-last\r
-# hide-from-param-block\r
-# hide-from-param-custom\r
-# hide-from-param\r
-# hide-referer-param-forge\r
-# hide-referer-param-block\r
-# hide-referer-param-custom\r
-# hide-referer-param\r
-# hide-user-agent-param\r
-# image-blocker-param-logo\r
-# image-blocker-param-blank\r
-# image-blocker-param-custom\r
-# image-blocker-param-logo\r
-#\r
-#\r
-#############################################################################\r
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">\r
-<html>\r
-\r
-<head>\r
-<meta http-equiv="Content-Style-Type" content="text/css">\r
-<meta http-equiv="Content-Script-Type" content="text/javascript">\r
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">\r
-<meta name="robots" content="noindex,nofollow">\r
-\r
-<title>JunkBuster: Edit actions</title>\r
-\r
-<style type="text/css">\r
-body { font-family: Helvetica, Helv, Arial, Sans-Serif, sans-serif;\r
- background-color: #ffffff;\r
- color: #000000 }\r
-td.action { font-weight: bold;\r
- font-style: italic;\r
- white-space: nowrap }\r
-th { font-weight: bold; }\r
-# This is the key to the color names below:\r
-# bg=background, en="Enable", dis="Disable", noc="No Change", hdr=header\r
-# 1=odd rows, 2=even rows, h=Table header\r
-tr.hdr { background-color: #999999 }\r
-tr.bg1 { background-color: #eeeeee }\r
-td.en1 { background-color: #eeffee }\r
-td.dis1 { background-color: #ffeeee }\r
-td.noc1 { background-color: #eeeeff }\r
-tr.bg2 { background-color: #dddddd }\r
-td.en2 { background-color: #ddffdd }\r
-td.dis2 { background-color: #ffdddd }\r
-td.noc2 { background-color: #ddddff }\r
-th.enh { background-color: #99ff99 }\r
-th.dish { background-color: #ff9999 }\r
-th.noch { background-color: #9999ff }\r
-table.wide { border-color: white;\r
- border-style: solid;\r
- border-left-width: 10px;\r
- border-right-width: 10px;\r
- border-top-width: 0px;\r
- border-bottom-width: 0px }\r
-td.light { background-color: #eeeeee }\r
-td.dark { background-color: #dddddd }\r
-td.green { background-color: #ddffdd }\r
-</style>\r
-\r
-<script type="text/javascript">\r
-<!--\r
-\r
-function hide_from_param_disable(tf)\r
-{\r
- if (document.getElementById) {\r
- // NS6 or IE5\r
- document.getElementById("hide_from_param").disabled = tf;\r
- } else if (document.all) {\r
- // IE4\r
- document.myform.hide_from_param.disabled = tf;\r
- }\r
-}\r
-\r
-function hide_referer_param_disable(tf)\r
-{\r
- if (document.getElementById) {\r
- document.getElementById("hide_referer_param").disabled = tf;\r
- } else if (document.all) {\r
- document.myform.hide_referer_param.disabled = tf;\r
- }\r
-}\r
-\r
-function image_blocker_param_disable(tf)\r
-{\r
- if (document.getElementById) {\r
- document.getElementById("image_blocker_param").disabled = tf;\r
- } else if (document.all) {\r
- document.myform.image_blocker_param.disabled = tf;\r
- }\r
-}\r
-\r
-function show_add_header_opts(tf)\r
-{\r
- if (document.getElementById) {\r
- target = document.getElementById("add_header_opts");\r
- } else if (document.all) {\r
- target = document.add_header_opts;\r
- } else {\r
- return;\r
- }\r
- target.style.display = (tf ? "" : "none");\r
-}\r
-\r
-function show_deanimate_opts(tf)\r
-{\r
- if (document.getElementById) {\r
- target = document.getElementById("deanimate_opts");\r
- } else if (document.all) {\r
- target = document.deanimate_opts;\r
- } else {\r
- return;\r
- }\r
- target.style.display = (tf ? "" : "none");\r
-}\r
-\r
-function show_hide_from_opts(tf)\r
-{\r
- if (document.getElementById) {\r
- target = document.getElementById("hide_from_opts");\r
- } else if (document.all) {\r
- target = document.hide_from_opts;\r
- } else {\r
- return;\r
- }\r
- target.style.display = (tf ? "" : "none");\r
-}\r
-\r
-function show_hide_referer_opts(tf)\r
-{\r
- if (document.getElementById) {\r
- target = document.getElementById("hide_referer_opts");\r
- } else if (document.all) {\r
- target = document.hide_referer_opts;\r
- } else {\r
- return;\r
- }\r
- target.style.display = (tf ? "" : "none");\r
-}\r
-\r
-function show_user_agent_opts(tf)\r
-{\r
- if (document.getElementById) {\r
- target = document.getElementById("user_agent_opts");\r
- } else if (document.all) {\r
- target = document.user_agent_opts;\r
- } else {\r
- return;\r
- }\r
- target.style.display = (tf ? "" : "none");\r
-}\r
-\r
-function show_image_blocker_opts(tf)\r
-{\r
- if (document.getElementById) {\r
- target = document.getElementById("image_blocker_opts");\r
- } else if (document.all) {\r
- target = document.image_blocker_opts;\r
- } else {\r
- return;\r
- }\r
- target.style.display = (tf ? "" : "none");\r
-}\r
-\r
-function show_limit_connect_opts(tf)\r
-{\r
- if (document.getElementById) {\r
- target = document.getElementById("limit_connect_opts");\r
- } else if (document.all) {\r
- target = document.limit_connect_opts;\r
- } else {\r
- return;\r
- }\r
- target.style.display = (tf ? "" : "none");\r
-}\r
-\r
-function show_wafer_opts(tf)\r
-{\r
- if (document.getElementById) {\r
- target = document.getElementById("wafer_opts");\r
- } else if (document.all) {\r
- target = document.wafer_opts;\r
- } else {\r
- return;\r
- }\r
- target.style.display = (tf ? "" : "none");\r
-}\r
-\r
-//-->\r
-</script>\r
-</head>\r
-\r
-<body>\r
-\r
-<form method="GET" action="http://i.j.b/edit-actions-submit" id="myform" name="myform">\r
-\r
- <table cellpadding="20" cellspacing="10" border="0" width="100%">\r
- <tr>\r
- <td class="dark">\r
- <p><b><big><big>This is the Internet \r
- J</big>UNK</big><i style="color: #ff0000">BUSTER</i><big><big>\r
- @version@ on @my-hostname@ (@my-ip-address@),\r
- port @my-port@, \r
- @if-enabled-display-then@Enabled@else-not-enabled-display@Disabled@endif-enabled-display@</big></big></b></p>\r
- </td>\r
- </tr>\r
-\r
-<!-- @if-unstable-start -->\r
-# This will only appear if CODE_STATUS is "alpha" or "beta". See configure.in\r
- <tr>\r
- <td style="background-color: #ffdddd" >\r
- <p><b>Please note that this <span style="color: #ff0000">@code-status@</span> release\r
- of the proxy software is not intended for production systems!\r
- <br>Use at your own risk. See the <a href="http://www.gnu.org/copyleft/gpl.html">license</a> for details.</b>\r
- </p>\r
-\r
- <p>Feel free to <a href="mailto:ijbswa-developers@lists.sourceforge.net">mail the developers</a>\r
- with any problems you encounter.\r
- </p>\r
- </td>\r
- </tr>\r
-<!-- if-unstable-end@ -->\r
-\r
- <tr>\r
- <td class="light">\r
- <h2>Edit Actions\r
- <input type="hidden" name="filename" value="@filename@">\r
- <input type="hidden" name="ver" value="@ver@">\r
- <input type="hidden" name="section" value="@section@">\r
- </h2>\r
- </td>\r
- </tr>\r
- </table>\r
-\r
- <table border="0" width="100%" cellspacing="0" class="wide">\r
- <tr class="hdr" align="left">\r
- <th>Action\r
- </th>\r
- <th>Description</th>\r
- <th class="enh" align="center">Enable</th>\r
- <th class="dish" align="center">Disable</th>\r
- <th class="noch" align="center">No Change</th>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top">\r
- <td class="action">+add-header</td>\r
- <td>Adds HTTP headers.</td>\r
- <td class="en1" align="center" valign="middle"><input type="radio"\r
- name="add_header" id="add_header_y" value="Y" @add-header-y@\r
- onclick="show_add_header_opts(true)"></td>\r
- <td class="dis1" align="center" valign="middle"><input type="radio"\r
- name="add_header" value="N" @add-header-n@\r
- onclick="show_add_header_opts(false)"></td>\r
- <td class="noc1" align="center" valign="middle"><input type="radio"\r
- name="add_header" value="X" @add-header-x@\r
- onclick="show_add_header_opts(false)"></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top" id="add_header_opts">\r
- <td> </td>\r
- <td colspan="4">Editing the settings for this option, or turning\r
- it on if it was off, is not yet supported using this web-based\r
- editor.</td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top">\r
- <td class="action">+block</td>\r
- <td>Block the request</td>\r
- <td class="en2" align="center" valign="middle"><input type="radio"\r
- name="block" value="Y" @block-y@\r
- ></td>\r
- <td class="dis2" align="center" valign="middle"><input type="radio"\r
- name="block" value="N" @block-n@\r
- ></td>\r
- <td class="noc2" align="center" valign="middle"><input type="radio"\r
- name="block" value="X" @block-x@\r
- ></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top">\r
- <td class="action">+deanimate-gifs</td>\r
- <td>Replace animated GIFs with their (first/last) frame.</td>\r
- <td class="en1" align="center" valign="middle"><input type="radio"\r
- name="deanimate_gifs" id="deanimate_gifs_y" value="Y" @deanimate-gifs-y@\r
- onclick="show_deanimate_opts(true)"></td>\r
- <td class="dis1" align="center" valign="middle"><input type="radio"\r
- name="deanimate_gifs" value="N" @deanimate-gifs-n@\r
- onclick="show_deanimate_opts(false)"></td>\r
- <td class="noc1" align="center" valign="middle"><input type="radio"\r
- name="deanimate_gifs" value="X" @deanimate-gifs-x@\r
- onclick="show_deanimate_opts(false)"></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top" id="deanimate_opts">\r
- <td> </td>\r
- <td colspan="4">Use the <input type="radio" name="deanimate_gifs_mode"\r
- value="first" id="deanimate_first" @deanimate-gifs-param-first@><label\r
- for="deanimate_first">first frame</label> <input\r
- type="radio" name="deanimate_gifs_mode" value="last" \r
- id="deanimate_last" @deanimate-gifs-param-last@><label\r
- for="deanimate_last">last frame</label></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top">\r
- <td class="action">+fast-redirects</td>\r
- <td>Bypass some tracking URLs.</td>\r
- <td class="en2" align="center" valign="middle"><input type="radio"\r
- name="fast_redirects" value="Y" @fast-redirects-y@\r
- ></td>\r
- <td class="dis2" align="center" valign="middle"><input type="radio"\r
- name="fast_redirects" value="N" @fast-redirects-n@\r
- ></td>\r
- <td class="noc2" align="center" valign="middle"><input type="radio"\r
- name="fast_redirects" value="X" @fast-redirects-x@\r
- ></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top">\r
- <td class="action">+downgrade</td>\r
- <td>Change HTTP/1.1 requests to HTTP/1.0. Only change if you know\r
- what you're doing!</td>\r
- <td class="en1" align="center" valign="middle"><input type="radio"\r
- name="downgrade" value="Y" @downgrade-y@></td>\r
- <td class="dis1" align="center" valign="middle"><input type="radio"\r
- name="downgrade" value="N" @downgrade-n@></td>\r
- <td class="noc1" align="center" valign="middle"><input type="radio"\r
- name="downgrade" value="X" @downgrade-x@></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top">\r
- <td class="action">+filter</td>\r
- <td>Filter the website through the re_filterfile</td>\r
- <td class="en2" align="center" valign="middle"><input type="radio"\r
- name="filter" value="Y" @filter-y@\r
- ></td>\r
- <td class="dis2" align="center" valign="middle"><input type="radio"\r
- name="filter" value="N" @filter-n@ \r
- ></td>\r
- <td class="noc2" align="center" valign="middle"><input type="radio"\r
- name="filter" value="X" @filter-x@\r
- ></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top">\r
- <td class="action">+hide-forwarded</td>\r
- <td>Block any existing X-Forwarded-for header, and do not add a new one.</td>\r
- <td class="en1" align="center" valign="middle"><input type="radio"\r
- name="hide_forwarded" value="Y" @hide-forwarded-y@\r
- ></td>\r
- <td class="dis1" align="center" valign="middle"><input type="radio"\r
- name="hide_forwarded" value="N" @hide-forwarded-n@\r
- ></td>\r
- <td class="noc1" align="center" valign="middle"><input type="radio"\r
- name="hide_forwarded" value="X" @hide-forwarded-x@\r
- ></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top">\r
- <td class="action">+hide-from</td>\r
- <td>Stop old web browsers from sending the user's e-mail address with\r
- every request.</td>\r
- <td class="en2" align="center" valign="middle"><input type="radio"\r
- name="hide_from" id="hide_from_y" value="Y" @hide-from-y@\r
- onclick="show_hide_from_opts(true)"></td>\r
- <td class="dis2" align="center" valign="middle"><input type="radio"\r
- name="hide_from" value="N" @hide-from-n@\r
- onclick="show_hide_from_opts(false)"></td>\r
- <td class="noc2" align="center" valign="middle"><input type="radio"\r
- name="hide_from" value="X" @hide-from-x@\r
- onclick="show_hide_from_opts(false)"></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top" id="hide_from_opts">\r
- <td> </td>\r
- <td colspan="4"><input type="radio" name="hide_from_mode" value="block"\r
- onclick="hide_from_param_disable(true);"\r
- @hide-from-param-block@ id="from_mode_block"><label\r
- for="from_mode_block">Remove completely</label><br>\r
- <input type="radio" name="hide_from_mode" value="CUSTOM" \r
- onclick="hide_from_param_disable(false);"\r
- @hide-from-param-custom@ id="from_mode_set"><label\r
- for="from_mode_set">Fake e-mail address:</label><br>\r
- <input type="text" name="hide_from_param" id="hide_from_param"\r
- size="40" value="@hide-from-param@"></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top">\r
- <td class="action">+hide-referer</td>\r
- <td>Helps prevent tracking by not sending the URL of the previous web\r
- page. </td>\r
- <td class="en1" align="center" valign="middle"><input type="radio"\r
- name="hide_referer" id="hide_referer_y" value="Y" @hide-referer-y@\r
- onclick="show_hide_referer_opts(true)"></td>\r
- <td class="dis1" align="center" valign="middle"><input type="radio"\r
- name="hide_referer" id="hide_referer_n" value="N" @hide-referer-n@\r
- onclick="show_hide_referer_opts(false)"></td>\r
- <td class="noc1" align="center" valign="middle"><input type="radio"\r
- name="hide_referer" id="hide_referer_x" value="X" @hide-referer-x@\r
- onclick="show_hide_referer_opts(false)"\r
- ></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top" id="hide_referer_opts">\r
- <td> </td>\r
- <td colspan="4"><input type="radio" name="hide_referer_mode" value="block"\r
- onclick="hide_referer_param_disable(true)"\r
- @hide-referer-param-block@ id="referer_mode_block"><label\r
- for="referer_mode_block">Remove completely</label> (breaks images\r
- on some free web hosts).<br>\r
- <input type="radio" name="hide_referer_mode" value="forge"\r
- onclick="hide_referer_param_disable(true)"\r
- @hide-referer-param-forge@ id="referer_mode_forge"><label\r
- for="referer_mode_forge">Fake as the root directory of the\r
- site</label> (fools checks for in-site links.)<br>\r
- <input type="radio" name="hide_referer_mode" value="CUSTOM"\r
- onclick="hide_referer_param_disable(false)"\r
- @hide-referer-param-custom@ id="referer_mode_set"><label\r
- for="referer_mode_set">Fake as this web address:</label><br>\r
- <input type="text" name="hide_referer_param" \r
- id="hide_referer_param" size="40"\r
- value="@hide-referer-param@"></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top">\r
- <td class="action">+hide-user-agent</td>\r
- <td>Pretend to be using a different web browser. (Breaks many web\r
- sites).</td>\r
- <td class="en2" align="center" valign="middle"><input type="radio"\r
- name="hide_user_agent" id="hide_user_agent_y" value="Y" @hide-user-agent-y@\r
- onclick="show_user_agent_opts(true)"></td>\r
- <td class="dis2" align="center" valign="middle"><input type="radio"\r
- name="hide_user_agent" value="N" @hide-user-agent-n@\r
- onclick="show_user_agent_opts(false)"></td>\r
- <td class="noc2" align="center" valign="middle"><input type="radio"\r
- name="hide_user_agent" value="X" @hide-user-agent-x@\r
- onclick="show_user_agent_opts(false)"></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top" id="user_agent_opts">\r
- <td> </td>\r
- <td colspan="4">User Agent string to send:<br>\r
- <input type="text" name="hide_user_agent_mode" size="40"\r
- value="@hide-user-agent-param@"></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top">\r
- <td class="action">+image</td>\r
- <td>Request is for an image (only useful in conjunction with the <i><b>+block</b></i>\r
- and <i><b>+image-blocker</b></i> options).</td>\r
- <td class="en1" align="center" valign="middle"><input type="radio"\r
- name="image" value="Y" @image-y@\r
- ></td>\r
- <td class="dis1" align="center" valign="middle"><input type="radio"\r
- name="image" value="N" @image-n@\r
- ></td>\r
- <td class="noc1" align="center" valign="middle"><input type="radio"\r
- name="image" value="X" @image-x@\r
- ></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top">\r
- <td class="action">+image-blocker</td>\r
- <td>Specifies how to block images. Disable to always send a HTML\r
- "blocked" page.</td>\r
- <td class="en2" align="center" valign="middle"><input type="radio"\r
- name="image_blocker" id="image_blocker_y" value="Y" @image-blocker-y@\r
- onclick="show_image_blocker_opts(true)"></td>\r
- <td class="dis2" align="center" valign="middle"><input type="radio"\r
- name="image_blocker" value="N" @image-blocker-n@\r
- onclick="show_image_blocker_opts(false)"></td>\r
- <td class="noc2" align="center" valign="middle"><input type="radio"\r
- name="image_blocker" value="X" @image-blocker-x@\r
- onclick="show_image_blocker_opts(false)"></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top" id="image_blocker_opts">\r
- <td> </td>\r
- <td colspan="4"><input type="radio" name="image_blocker_mode"\r
- onclick="image_blocker_param_disable(true)"\r
- value="logo" id="image_blocker_mode_logo" @image-blocker-param-logo@><label\r
- for="image_blocker_mode_logo">Send Junkbuster logo</label><br>\r
- <input type="radio" name="image_blocker_mode" value="blank"\r
- onclick="image_blocker_param_disable(true)"\r
- id="image_blocker_mode_blank" @image-blocker-param-blank@><label \r
- for="image_blocker_mode_blank">Send a 1x1 transparent GIF</label><br>\r
- <input type="radio" name="image_blocker_mode" value="CUSTOM"\r
- onclick="image_blocker_param_disable(false)"\r
- id="image_blocker_mode_set" @image-blocker-param-custom@><label\r
- for="image_blocker_mode_set">Redirect\r
- the browser to this image URL:</label><br>\r
- <input type="text" name="image_blocker_param" id="image_blocker_param"\r
- size="40" value="@image-blocker-param@"></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top">\r
- <td class="action">+limit-connect</td>\r
- <td>Specify which ports are allowed for SSL (HTTP CONNECT) access.\r
- Note that this allows arbitrary tunnelling, so opening all\r
- ports would be a security hole.</td>\r
- <td class="en1" align="center" valign="middle"><input type="radio"\r
- name="limit_connect" id="limit_connect_y" value="Y" @limit-connect-y@\r
- onclick="show_limit_connect_opts(true)"></td>\r
- <td class="dis1" align="center" valign="middle"><input type="radio"\r
- name="limit_connect" value="N" @limit-connect-n@\r
- onclick="show_limit_connect_opts(false)"></td>\r
- <td class="noc1" align="center" valign="middle"><input type="radio"\r
- name="limit_connect" value="X" @limit-connect-x@\r
- onclick="show_limit_connect_opts(false)"></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top" id="limit_connect_opts">\r
- <td> </td>\r
- <td colspan="4">Legal SSL ports (comma separated, ranges allowed):<br>\r
- <input type="text" name="limit_connect_mode" size="40"\r
- value="@limit-connect-param@"></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top">\r
- <td class="action">+no-compression</td>\r
- <td>Disables compression. Compressed web pages are faster to\r
- download, but cannot be filtered with +filter or +no-popups.\r
- This setting only affects the few web sites which support\r
- compression.</td>\r
- <td class="en2" align="center" valign="middle"><input type="radio"\r
- name="no_compression" value="Y" @no-compression-y@\r
- ></td>\r
- <td class="dis2" align="center" valign="middle"><input type="radio"\r
- name="no_compression" value="N" @no-compression-n@\r
- ></td>\r
- <td class="noc2" align="center" valign="middle"><input type="radio"\r
- name="no_compression" value="X" @no-compression-x@\r
- ></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top">\r
- <td class="action">+no-cookies-read</td>\r
- <td>Prevent the website from reading cookies</td>\r
- <td class="en1" align="center" valign="middle"><input type="radio"\r
- name="no_cookies_read" value="Y" @no-cookies-read-y@\r
- ></td>\r
- <td class="dis1" align="center" valign="middle"><input type="radio"\r
- name="no_cookies_read" value="N" @no-cookies-read-n@\r
- ></td>\r
- <td class="noc1" align="center" valign="middle"><input type="radio"\r
- name="no_cookies_read" value="X" @no-cookies-read-x@\r
- ></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top">\r
- <td class="action">+no-cookies-set</td>\r
- <td>Prevent the website from setting cookies</td>\r
- <td class="en2" align="center" valign="middle"><input type="radio"\r
- name="no_cookies_set" value="Y" @no-cookies-set-y@\r
- ></td>\r
- <td class="dis2" align="center" valign="middle"><input type="radio"\r
- name="no_cookies_set" value="N" @no-cookies-set-n@\r
- ></td>\r
- <td class="noc2" align="center" valign="middle"><input type="radio"\r
- name="no_cookies_set" value="X" @no-cookies-set-x@\r
- ></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top">\r
- <td class="action">+no-popups</td>\r
- <td>Filter the website through a built-in filter to disable JavaScript\r
- pop-up windows.</td>\r
- <td class="en1" align="center" valign="middle"><input type="radio"\r
- name="no_popups" value="Y" @no-popups-y@\r
- ></td>\r
- <td class="dis1" align="center" valign="middle"><input type="radio"\r
- name="no_popups" value="N" @no-popups-n@\r
- ></td>\r
- <td class="noc1" align="center" valign="middle"><input type="radio"\r
- name="no_popups" value="X" @no-popups-x@\r
- ></td>\r
- </tr>\r
- <tr class="bg2" align="left" valign="top">\r
- <td class="action">+vanilla-wafer</td>\r
- <td>If you use a jarfile, automatically adds a special wafer.</td>\r
- <td class="en2" align="center" valign="middle"><input type="radio"\r
- name="vanilla_wafer" value="Y" @vanilla-wafer-y@\r
- ></td>\r
- <td class="dis2" align="center" valign="middle"><input type="radio"\r
- name="vanilla_wafer" value="N" @vanilla-wafer-n@\r
- ></td>\r
- <td class="noc2" align="center" valign="middle"><input type="radio"\r
- name="vanilla_wafer" value="X" @vanilla-wafer-x@\r
- ></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top">\r
- <td class="action">+wafer</td>\r
- <td>Adds user-specified cookies.</td>\r
- <td class="en1" align="center" valign="middle"><input type="radio"\r
- name="wafer" id="wafer_y" value="Y" @wafer-y@\r
- onclick="show_wafer_opts(true)"></td>\r
- <td class="dis1" align="center" valign="middle"><input type="radio"\r
- name="wafer" id="wafer_n" value="N" @wafer-n@\r
- onclick="show_wafer_opts(false)"></td>\r
- <td class="noc1" align="center" valign="middle"><input type="radio"\r
- name="wafer" id="wafer_x" value="X" @wafer-x@\r
- onclick="show_wafer_opts(false)"></td>\r
- </tr>\r
- <tr class="bg1" align="left" valign="top" id="wafer_opts">\r
- <td> </td>\r
- <td colspan="4">Editing the settings for this option, or turning\r
- it on if it was off, is not yet supported using this web-based\r
- editor.</td>\r
- </tr>\r
- </table>\r
-\r
-\r
-<script type="text/javascript">\r
-<!--\r
-\r
-if (document.getElementById) {\r
- // alert("Netscape 6 or IE5");\r
- document.getElementById("hide_from_param").disabled = !(document.getElementById("from_mode_set").checked);\r
- document.getElementById("hide_referer_param").disabled = !(document.getElementById("referer_mode_set").checked);\r
- document.getElementById("image_blocker_param").disabled = !(document.getElementById("image_blocker_mode_set").checked);\r
-\r
- show_add_header_opts (document.getElementById("add_header_y").checked);\r
- show_deanimate_opts (document.getElementById("deanimate_gifs_y").checked);\r
- show_hide_from_opts (document.getElementById("hide_from_y").checked);\r
- show_hide_referer_opts (document.getElementById("hide_referer_y").checked);\r
- show_user_agent_opts (document.getElementById("hide_user_agent_y").checked);\r
- show_image_blocker_opts (document.getElementById("image_blocker_y").checked);\r
- show_limit_connect_opts (document.getElementById("limit_connect_y").checked);\r
- show_wafer_opts (document.getElementById("wafer_y").checked);\r
-} else if (document.all) {\r
- // alert("IE4");\r
- document.myform.hide_from_param.disabled = !(document.myform.from_mode_set.checked);\r
- document.myform.hide_referer_param.disabled = !(document.myform.referer_mode_set.checked);\r
- document.myform.image_blocker_param.disabled = !(document.myform.image_blocker_mode_set.checked);\r
-\r
- show_add_header_opts (document.myform.add_header_y.checked);\r
- show_deanimate_opts (document.myform.deanimate_gifs_y.checked);\r
- show_hide_from_opts (document.myform.hide_from_y.checked);\r
- show_hide_referer_opts (document.myform.hide_referer_y.checked);\r
- show_user_agent_opts (document.myform.hide_user_agent_y.checked);\r
- show_image_blocker_opts (document.myform.image_blocker_y.checked);\r
- show_limit_connect_opts (document.myform.limit_connect_y.checked);\r
- show_wafer_opts (document.myform.wafer_y.checked);\r
-} else if (document.layers) {\r
- // alert("Netscape 4");\r
-}\r
-//-->\r
-</script>\r
-\r
- <table cellpadding="20" cellspacing="10" border="0" width="100%">\r
- <tr>\r
- <td class="green" align="center">\r
- <p><input type="submit" value="Submit" name="Submit"></p>\r
- </td>\r
- </tr>\r
-\r
- <tr>\r
- <td class="dark">\r
- <h2>More Junkbuster:</h2>\r
- <ul>@menu@</ul>\r
- </td>\r
- </tr>\r
-\r
-<!-- @if-have-help-info-start -->\r
- <tr>\r
- <td class="light">\r
- <h2>Local Junkbuster support:</h2>\r
-\r
-<!-- @if-have-proxy-info-start -->\r
- <p>You can consult the <a href="@proxy-info-url@">online documentation</a> for more information about this Junkbuster installation.\r
-<!-- if-have-proxy-info-end@ -->\r
-\r
-<!-- @if-have-adminaddr-info-start -->\r
- <p>Address e-mail questions about this service to\r
- <a href="mailto:@admin-address@"><code>@admin-address@</code></a>,\r
- who will be glad to help you.\r
-<!-- if-have-adminaddr-info-end@ -->\r
-\r
- </p>\r
- </td>\r
- </tr>\r
-<!-- if-have-help-info-end@ -->\r
- \r
- <tr>\r
- <td>\r
- <small><small>Valid <a href="http://validator.w3.org/">HTML 4.01 Strict</a></small></small>\r
- </td>\r
- </tr>\r
-\r
- </table>\r
-</form>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+##############################################################################
+#
+# File : $Source: /cvsroot/ijbswa/current/templates/edit-actions-for-url,v $
+#
+# Purpose : Template used to edit the actions associated with a
+# particular section in an actions file.
+#
+#
+# Copyright : Written by and Copyright (C) 2001 the SourceForge
+# Privoxy team. http://www.privoxy.org/
+#
+# Original Author: Copyright (C) 2001 Jonathan Foster
+# http://www.jon-foster.co.uk/
+#
+# This program is free software; you can redistribute it
+# and/or modify it under the terms of the GNU General
+# Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at
+# your option) any later version.
+#
+# This program is distributed in the hope that it will
+# be useful, but WITHOUT ANY WARRANTY; without even the
+# implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE. See the GNU General Public
+# License for more details.
+#
+# The GNU General Public License should be included with
+# this file. If not, you can view it at
+# http://www.gnu.org/copyleft/gpl.html
+# or write to the Free Software Foundation, Inc., 59
+# Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# Revisions :
+# $Log: edit-actions-for-url,v $
+# Revision 1.35 2006/08/03 02:46:42 david__schmidt
+# Incorporate Fabian Keil's patch work:\rhttp://www.fabiankeil.de/sourcecode/privoxy/
+#
+# Revision 1.34 2006/07/18 14:49:13 david__schmidt
+# Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch)
+# with what was really the latest development (the v_3_0_branch branch)
+#
+# Revision 1.29.2.5 2004/10/05 03:17:26 david__schmidt
+# Typo: inspect_jpegs, not inspect-jpegs in form
+#
+# Revision 1.29.2.4 2004/10/03 12:53:46 david__schmidt
+# Add the ability to check jpeg images for invalid
+# lengths of comment blocks. Defensive strategy
+# against the exploit:
+# Microsoft Security Bulletin MS04-028
+# Buffer Overrun in JPEG Processing (GDI+) Could
+# Allow Code Execution (833987)
+# Enabled with +inspect-jpegs in actions files.
+#
+# Revision 1.29.2.3 2002/08/23 02:22:53 hal9
+# Fix a perl brain fart with <li> in comments.
+#
+# Revision 1.29.2.1 2002/08/02 12:51:42 oes
+# Added top submit button; Consistency with docs: Change default name for action from hide-referer to hide-referrer
+#
+# Revision 1.29 2002/05/21 19:10:57 oes
+# Fixed JavaScript error
+#
+# Revision 1.28 2002/05/14 21:36:38 oes
+# - Renamed prevent-(setting/reading)-cookies to
+# crunch-(incoming/outgoing)-cookies
+# - Renamed helplink export to actions-help-prefix
+# - Restored alphabetical order of actions
+#
+# Revision 1.27 2002/04/26 22:55:26 jongfoster
+# Removing the alternating colors because they've been wrong
+# since the actions renames, they're high maintenance, they
+# don't look particularly good, and now there are gaps between
+# the table cells we don't need them.
+#
+# Revision 1.26 2002/04/26 21:55:17 jongfoster
+# Cosmetic change: Making the +filter UI look the same as
+# the other actions.
+#
+# Revision 1.25 2002/04/26 21:37:50 jongfoster
+# Fixing all(?) the substitutions that were broken in the
+# recent actions rename.
+#
+# Revision 1.24 2002/04/26 18:24:28 jongfoster
+# Fixing typos in help hyperlinks
+#
+# Revision 1.23 2002/04/26 12:57:02 oes
+# Actions renamed, alphabetically sorted, comments fixed, and names linked to help
+#
+# Revision 1.22 2002/04/10 13:32:53 oes
+# Made templates modular
+#
+# Revision 1.21 2002/04/08 17:05:18 oes
+# Inline a style exception
+#
+# Revision 1.20 2002/04/05 16:01:30 oes
+# Correct HTML, external Stylesheets, eye candy, some fixes
+#
+# Revision 1.19 2002/03/26 22:29:56 swa
+# we have a new homepage!
+#
+# Revision 1.18 2002/03/24 16:32:08 jongfoster
+# Removing logo option
+#
+# Revision 1.17 2002/03/24 15:23:33 jongfoster
+# Name changes
+#
+# Revision 1.16 2002/03/24 11:01:06 swa
+# name change
+#
+# Revision 1.15 2002/03/23 16:18:15 swa
+# renamed every reference to the old name with foobar.
+# fixed "application foobar application" tag, fixed
+# "the foobar" with "foobar". left junkbuster in cvs
+# comments and remarks to history untouched. should
+# make final rename easier.
+#
+# Revision 1.14 2002/03/16 15:22:19 jongfoster
+# Moving 'alpha' warning to the end of the page
+#
+# Revision 1.13 2002/03/16 14:28:38 jongfoster
+# First version of modular filters support
+#
+# Revision 1.12 2002/03/12 01:42:50 oes
+# Introduced modular filters
+#
+# Revision 1.11 2002/03/08 18:19:14 jongfoster
+# Adding +image-blocker{pattern} option to edit interface
+#
+# Revision 1.10 2002/03/03 10:29:12 swa
+# point users to the right feedback forms,
+# not necessarily the developer list.
+#
+# Revision 1.9 2002/01/23 00:26:45 jongfoster
+# Reducing length of URLs
+# Where encoded and unencoded versions of a string existed, removing
+# the unencoded one.
+#
+# Revision 1.8 2002/01/17 21:33:00 jongfoster
+# Replacing all references to the URL of the config interface
+# with @default-cgi@
+#
+# Revision 1.7 2002/01/17 21:21:03 jongfoster
+# DOS->Unix line endings
+#
+# Revision 1.6 2001/11/22 21:58:41 jongfoster
+# Adding action +no-cookies-keep
+#
+# Revision 1.5 2001/11/13 21:12:17 jongfoster
+# Added support for the following actions:
+# +downgrade, +limit-connect, +no-compression
+#
+# Revision 1.4 2001/11/13 00:58:18 jongfoster
+# New version of actions file editor templates
+#
+#
+##############################################################################
+#
+# Browser support for the JavaScript on this page:
+# MS Internet Explorer 5.5 - Tested, Yes
+# Netscape 6.0 - Tested, Yes
+# Netscape 4.75 - Tested, NO
+# Opera 5.12 - Tested, NO
+# MS Internet Explorer 4+ - Untested, Yes
+# MS IE 3.x, NS3.x - Untested, NO
+# Mozilla >=0.6 - Untested, Yes
+#
+# All browsers should work, you just might not get the pretty DHTML effects.
+#
+# The effects that only work under the browsers marked "Yes" above are:
+# - Text edit boxes that won't have any effect are disabled.
+# - Table rows containing additional settings are hidden if the feature in
+# question is disabled.
+#
+# There are major kludges to get around these problems with NS4, but they
+# screw up the HTML too much for other browsers. If anyone wants to try,
+# here's some descriptions of the kludges:
+# http://www.webreference.com/js/tips/991114.html
+# http://www.webreference.com/dhtml/column12/outDisplay.html
+#
+# If you're favorite browser isn't listed, please test and add it.
+#
+#
+#############################################################################
+#
+# Standard support:
+#
+# This file currently produces valid HTML 4.01 Strict.
+#
+# If you change it, please save the generated page from your web browser
+# and then upload it to http://validator.w3.org/ for checking.
+#
+#############################################################################
+#
+# Available variables include:
+#
+# action-name-y
+# action-name-n
+# action-name-x
+#
+# deanimate-gifs-param-first
+# deanimate-gifs-param-last
+# hide-from-param-block
+# hide-from-param-custom
+# hide-from-param
+# hide-referrer-param-forge
+# hide-referrer-param-block
+# hide-referrer-param-custom
+# hide-referrer-param
+# hide-user-agent-param
+# image-blocker-param-pattern
+# image-blocker-param-blank
+# image-blocker-param-custom
+#
+#
+#############################################################################
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+
+<head>
+ <meta http-equiv="Content-Style-Type" content="text/css">
+ <meta http-equiv="Content-Script-Type" content="text/javascript">
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <meta name="robots" content="noindex,nofollow">
+ <link rel="stylesheet" type="text/css" href="@default-cgi@send-stylesheet">
+
+ <title>Privoxy@@my-hostname@: Edit actions</title>
+
+<style type="text/css">
+td.action { font-weight: bold;
+ font-style: italic;
+ white-space: nowrap }
+td.subaction { font-style: italic }
+th { font-weight: bold; }
+# This is the key to the color names below:
+# bg=background, en="Enable", dis="Disable", noc="No Change", hdr=header
+# 1=odd rows, 2=even rows, h=Table header
+tr.hdr { background-color: #999999 }
+tr.bg1 { background-color: #eeeeee }
+td.en1 { background-color: #ddffdd }
+td.dis1 { background-color: #ffdddd }
+td.noc1 { background-color: #ddddff }
+th.enh { background-color: #99ff99 }
+th.dish { background-color: #ff9999 }
+th.noch { background-color: #9999ff }
+table.wide { padding: 5px; }
+td.green { border: solid black 1px; background-color: #ddffdd; }
+</style>
+
+<!--
+border-color: white;
+ border-style: solid;
+ border-left-width: 10px;
+ border-right-width: 10px;
+ border-top-width: 0px;
+ border-bottom-width: 0px }
+-->
+
+<script type="text/javascript">
+<!--
+
+function hide_from_header_param_disable(tf)
+{
+ if (document.getElementById) {
+ // NS6 or IE5
+ document.getElementById("hide_from_header_param").disabled = tf;
+ } else if (document.all) {
+ // IE4
+ document.myform.hide_from_header_param.disabled = tf;
+ }
+}
+
+function hide_referrer_param_disable(tf)
+{
+ if (document.getElementById) {
+ document.getElementById("hide_referrer_param").disabled = tf;
+ } else if (document.all) {
+ document.myform.hide_referrer_param.disabled = tf;
+ }
+}
+
+function set_image_blocker_param_disable(tf)
+{
+ if (document.getElementById) {
+ document.getElementById("set_image_blocker_param").disabled = tf;
+ } else if (document.all) {
+ document.myform.set_image_blocker_param.disabled = tf;
+ }
+}
+
+function show_add_header_opts(tf)
+{
+ if (document.getElementById) {
+ target = document.getElementById("add_header_opts");
+ } else if (document.all) {
+ target = document.add_header_opts;
+ } else {
+ return;
+ }
+ target.style.display = (tf ? "" : "none");
+}
+
+function show_deanimate_opts(tf)
+{
+ if (document.getElementById) {
+ target = document.getElementById("deanimate_opts");
+ } else if (document.all) {
+ target = document.deanimate_opts;
+ } else {
+ return;
+ }
+ target.style.display = (tf ? "" : "none");
+}
+
+function show_hide_from_header_opts(tf)
+{
+ if (document.getElementById) {
+ target = document.getElementById("hide_from_header_opts");
+ } else if (document.all) {
+ target = document.hide_from_header_opts;
+ } else {
+ return;
+ }
+ target.style.display = (tf ? "" : "none");
+}
+
+function show_hide_referrer_opts(tf)
+{
+ if (document.getElementById) {
+ target = document.getElementById("hide_referrer_opts");
+ } else if (document.all) {
+ target = document.hide_referrer_opts;
+ } else {
+ return;
+ }
+ target.style.display = (tf ? "" : "none");
+}
+
+function show_user_agent_opts(tf)
+{
+ if (document.getElementById) {
+ target = document.getElementById("user_agent_opts");
+ } else if (document.all) {
+ target = document.user_agent_opts;
+ } else {
+ return;
+ }
+ target.style.display = (tf ? "" : "none");
+}
+
+function show_set_image_blocker_opts(tf)
+{
+ if (document.getElementById) {
+ target = document.getElementById("set_image_blocker_opts");
+ } else if (document.all) {
+ target = document.set_image_blocker_opts;
+ } else {
+ return;
+ }
+ target.style.display = (tf ? "" : "none");
+}
+
+function show_limit_connect_opts(tf)
+{
+ if (document.getElementById) {
+ target = document.getElementById("limit_connect_opts");
+ } else if (document.all) {
+ target = document.limit_connect_opts;
+ } else {
+ return;
+ }
+ target.style.display = (tf ? "" : "none");
+}
+
+function show_send_wafer_opts(tf)
+{
+ if (document.getElementById) {
+ target = document.getElementById("send_wafer_opts");
+ } else if (document.all) {
+ target = document.send_wafer_opts;
+ } else {
+ return;
+ }
+ target.style.display = (tf ? "" : "none");
+}
+
+//-->
+</script>
+</head>
+
+<body>
+
+<form method="GET" action="edit-actions-submit" id="myform" name="myform">
+
+ <table cellpadding="20" cellspacing="10" border="0" width="100%">
+ <tr>
+ <td class="title">
+
+#include mod-title
+
+ </td>
+ </tr>
+
+<!-- @if-unstable-start -->
+# This will only appear if CODE_STATUS is "alpha" or "beta". See configure.in
+ <tr>
+ <td class="warning">
+
+#include mod-unstable-warning
+
+ </td>
+ </tr>
+<!-- if-unstable-end@ -->
+
+ <tr>
+ <td class="box">
+ <h2>Edit Actions
+ <input type="hidden" name="f" value="@f@">
+ <input type="hidden" name="v" value="@v@">
+ <input type="hidden" name="s" value="@s@">
+ </h2>
+ </td>
+ </tr>
+
+ <tr>
+ <td class="green" align="center">
+ <p><input type="submit" value="Submit" name="Submit"></p>
+ </td>
+ </tr>
+
+<tr><td class="wrapbox">
+
+ <table border="0" cellspacing="2" width="100%" class="wide">
+ <tr class="hdr" align="left">
+ <th class="enh" align="center">Enable</th>
+ <th class="dish" align="center">Disable</th>
+ <th class="noch" align="center">No Change</th>
+ <th>Action</th>
+ <th>Description</th>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="add_header" id="add_header_y" value="Y" @add-header-y@
+ onclick="show_add_header_opts(true)"></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="add_header" value="N" @add-header-n@
+ onclick="show_add_header_opts(false)"></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="add_header" value="X" @add-header-x@
+ onclick="show_add_header_opts(false)"></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@ADD-HEADER">add-header</a></td>
+ <td>Adds HTTP headers.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="add_header_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td>Editing the settings for this option, or turning
+ it on if it was off, is not yet supported using this web-based
+ editor.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="block" value="Y" @block-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="block" value="N" @block-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="block" value="X" @block-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@BLOCK">block</a></td>
+ <td>Block the request</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="crunch_incoming_cookies" value="Y" @crunch-incoming-cookies-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="crunch_incoming_cookies" value="N" @crunch-incoming-cookies-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="crunch_incoming_cookies" value="X" @crunch-incoming-cookies-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES">crunch-incoming-cookies</a></td>
+ <td>Prevent the website from setting cookies on your system.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="crunch_outgoing_cookies" value="Y" @crunch-outgoing-cookies-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="crunch_outgoing_cookies" value="N" @crunch-outgoing-cookies-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="crunch_outgoing_cookies" value="X" @crunch-outgoing-cookies-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES">crunch-outgoing-cookies</a></td>
+ <td>Prevent the website from reading cookies from your system.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="deanimate_gifs" id="deanimate_gifs_y" value="Y" @deanimate-gifs-y@
+ onclick="show_deanimate_opts(true)"></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="deanimate_gifs" value="N" @deanimate-gifs-n@
+ onclick="show_deanimate_opts(false)"></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="deanimate_gifs" value="X" @deanimate-gifs-x@
+ onclick="show_deanimate_opts(false)"></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@DEANIMATE-GIFS">deanimate-gifs</a></td>
+ <td>Replace animated GIFs with their (first/last) frame.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="deanimate_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td>Use the <input type="radio" name="deanimate_gifs_mode"
+ value="first" id="deanimate_first" @deanimate-gifs-param-first@><label
+ for="deanimate_first">first frame</label> <input
+ type="radio" name="deanimate_gifs_mode" value="last"
+ id="deanimate_last" @deanimate-gifs-param-last@><label
+ for="deanimate_last">last frame</label></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="inspect_jpegs" value="Y" @inspect-jpegs-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="inspect_jpegs" value="N" @inspect-jpegs-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="inspect_jpegs" value="X" @inspect-jpegs-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@INSPECT-JPEGS">inspect-jpegs</a></td>
+ <td>Checks jpeg images for malicious content.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="downgrade_http_version" value="Y" @downgrade-http-version-y@></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="downgrade_http_version" value="N" @downgrade-http-version-n@></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="downgrade_http_version" value="X" @downgrade-http-version-x@></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@DOWNGRADE-HTTP-VERSION"
+ >downgrade-http-version</a></td>
+ <td>Change HTTP/1.1 requests to HTTP/1.0. Only change if you know
+ what you're doing!</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="fast_redirects" value="Y" @fast-redirects-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="fast_redirects" value="N" @fast-redirects-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="fast_redirects" value="X" @fast-redirects-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@FAST-REDIRECTS">fast-redirects</a></td>
+ <td>Bypass some click-tracking URLs.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="fast-redirects_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td>
+ <input type="radio" name="fast_redirects_mode"
+ value="simple-check" id="fast_redirects_simple_check" @fast-redirects-param-simple-check@><label
+ for="fast_redirects_simple_check">Simple check.</label>
+ <br>
+ <input type="radio" name="fast_redirects_mode" value="check-decoded-url"
+ id="fast_redirects_check_decoded_url" @fast-redirects-param-check-decoded-url@><label
+ for="fast_redirects_check_decoded_url">Decode URL before checking.</label></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1"> </td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="filter_all" id="filter_all_n" value="N" @filter-all-n@ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="filter_all" id="filter_all_x" value="X" @filter-all-x@ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@FILTER">filter</a> *</td>
+ <td>Filter the website through regular expression
+ filters. You can use the radio buttons on this line to disable
+ all filters applied by previous rules, and/or you can enable or
+ disable the filters individually below.</td>
+ </tr>
+@filter-params@
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="handle_as_image" value="Y" @handle-as-image-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="handle_as_image" value="N" @handle-as-image-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="handle_as_image" value="X" @handle-as-image-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE-AS-IMAGE">handle-as-image</a></td>
+ <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>
+ and <i><b><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></b></i> actions).</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="hide_forwarded_for_headers" value="Y" @hide-forwarded-for-headers-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="hide_forwarded_for_headers" value="N" @hide-forwarded-for-headers-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="hide_forwarded_for_headers" value="X" @hide-forwarded-for-headers-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FORWARDED-FOR-HEADERS">hide-forwarded-for-headers</a></td>
+ <td>Block any existing X-Forwarded-for header, and do not add a new one.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="hide_if_modified_since" value="Y" @hide-if-modified-since-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="hide_if_modified_since" value="N" @hide-if-modified-since-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="hide_if_modified_since" value="X" @hide-if-modified-since-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE_IF_MODIFIED_SINCE">hide-if-modified-since</a></td>
+ <td>Remove or randomize If-Modified-Since header.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="hide_if-modifed-since_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td><input type="radio" name="hide_if_modified_since_mode" value="block"
+ onclick="hide_if_modified_since_param_disable(true)"
+ @hide-if-modified-since-param-block@ id="hide_if_modified_since_mode_block"><label
+ for="hide_if_modified_since_mode_block">Remove without replacement.</label>
+ Useful for filter testing.<br>
+ <input type="radio" name="hide_if_modified_since_mode" value="CUSTOM"
+ onclick="hide_if_modified_since_param_disable(true)"
+ @hide-if-modified-since-param-custom@ id="hide_if_modified_since_mode_set"><label
+ for="hide_if_modified_since_mode_set">Add random amount of seconds in the range of</label>
+ <input type="text" name="hide_if_modified_since_param"
+ id="hide_if_modified_since_param" size="4"
+ value="@hide-if-modified-since-param@"> hour(s).
+ To appreciate this option a small amount of paranoia is required,
+ but at least in theory the If-Modified-Since header could be used
+ to keep track of your visits.
+ </td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="overwrite_last_modified" value="Y" @overwrite-last-modified-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="overwrite_last_modified" value="N" @overwrite-last-modified-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="overwrite_last_modified" value="X" @overwrite-last-modified-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@OVERWRITE_LAST_MODIFIED">overwrite-last-modified</a></td>
+ <td>Remove or randomize If-Modified-Since header.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="overwrite_last_modified_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td><input type="radio" name="overwrite_last_modified_mode" value="block"
+ onclick="overwrite_last_modified_param_disable(true)"
+ @overwrite-last-modified-param-block@ id="overwrite_last_modified_mode_block"><label
+ for="overwrite_last_modified_mode_block">Remove without replacement.</label>
+ <strong>Useless</strong>.<br>
+ <input type="radio" name="overwrite_last_modified_mode" value="reset-to-request-time"
+ onclick="overwrite_last_modified_param_disable(true)"
+ @overwrite-last-modified-param-reset-to-request-time@
+ id="overwrite_last_modified_mode_reset-to-request-time"><label
+ for="overwrite_last_modified_mode_reset-to-request-time">Reset to the time of the request.</label>
+ <br>
+ <input type="radio" name="overwrite_last_modified_mode" value="randomize"
+ onclick="overwrite_last_modified_param_disable(true)"
+ @overwrite-last-modified-param-randomize@
+ id="overwrite_last_modified_mode_randomize"><label
+ for="overwrite_last_modified_mode_randomize">Overwrite with random value
+ between original header value and the time of the request.</label>
+ <br>
+ <!--
+ <input type="radio" name="overwrite_last_modified_mode" value="CUSTOM"
+ onclick="overwrite_last_modified_param_disable(true)"
+ @overwrite-last-modified-param-custom@ id="overwrite_last_modified_mode_set"><label
+ for="overwrite_last_modified_mode_set">Add random amount of seconds in the range of</label>
+ <input type="text" name="overwrite_last_modified_param"
+ id="overwrite_last_modified_param" size="4"
+ value="@overwrite-last-modified-param@"> hour(s).
+ To appreciate this option a small amount of paranoia is required,
+ but at least in theory the If-Modified-Since header could be used
+ to keep track of your visits.-->
+ </td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="crunch_if_none_match" value="Y" @crunch-if-none-match-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="crunch_if_none_match" value="N" @crunch-if-none-match-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="crunch_if_none_match" value="X" @crunch-if-none-match-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH_IF_NONE_MATCH">crunch-if-none-match</a></td>
+ <td>Remove If-None-Match header to circumvent browser cache. Useful for filter testing,
+ but hurts performance.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="content_type_overwrite" value="Y" @content-type-overwrite-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="content_type_overwrite" value="N" @content-type-overwrite-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="content_type_overwrite" value="X" @content-type-overwrite-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@CONTENT_TYPE_OVERWRITE">content-type-overwrite</a></td>
+ <td>Replace Content-Type header. Useful to let the browser render broken
+ <abbr title="EXtensible HyperText Markup Language">XHTML</abbr> as broken
+ <abbr title="HyperText Markup Language">HTML</abbr>. By default it only applies to
+ text documents, if you know what you're doing you
+ can enable force-text-mode to modify binary content types as well.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="content_type_overwrite_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td>New Content-Type:<br>
+ <input type="text" name="content_type_overwrite_mode" size="40"
+ value="@content-type-overwrite-param@"></td>
+ </tr>
+
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="force_text_mode" value="Y" @force-text-mode-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="force_text_mode" value="N" @force-text-mode-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="force_text_mode" value="X" @force-text-mode-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@FORCE_TEXT_MODE">force-text-mode</a></td>
+ <td>
+ Enable filtering on documents whose Content-Type wasn't recognized as text.
+ Do think twice, nothing is alright.
+ </td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="handle_as_empty_document" value="Y" @handle-as-empty-document-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="handle_as_empty_document" value="N" @handle-as-empty-document-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="handle_as_empty_document" value="X" @handle-as-empty-document-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@HANDLE_AS_EMPTY_DOCUMENT">handle-as-empty-document</a></td>
+ <td>
+ Block with an <em>empty</em> document instead of an Image or HTML message.
+ The <em>empty</em> document contains only a space and can safely be parsed
+ as JavaScript or Style Sheet. Use content-type-overwrite to specify the
+ Content-Type, default is <q>test/html</q>.
+ </td>
+ </tr>
+<!--TODO: Document-->
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="treat_forbidden_connects_like_blocks" value="Y" @treat-forbidden-connects-like-blocks-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="treat_forbidden_connects_like_blocks" value="N" @treat-forbidden-connects-like-blocks-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="treat_forbidden_connects_like_blocks" value="X" @treat-forbidden-connects-like-blocks-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@TREAT_FORBIDDEN_CONNECTS_LIKE_BLOCKS">treat-forbidden-connects-like-blocks</a></td>
+ <td>
+ Answer forbidden Connect requests with the usual block message.
+ May be a protocol violation, but makes unblocking easier.
+ </td>
+ </tr>
+<!--/TODO: Document-->
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="crunch_client_header" id="crunch_client_header_y" value="Y" @crunch-client-header-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="crunch_client_header" value="N" @crunch-client-header-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="crunch_client_header" value="X" @crunch-client-header-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-CLIENT-HEADER">crunch-client-header</a></td>
+ <td>Remove header(s) matching the supplied pattern. Together with add-header you can
+ build a custom header replacement action.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="crunch_client_header_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td>Header string to suppress:<br>
+ <input type="text" name="crunch_client_header_mode" size="40"
+ value="@crunch-client-header-param@"></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="crunch_server_header" id="crunch_server_header_y" value="Y" @crunch-server-header-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="crunch_server_header" value="N" @crunch-server-header-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="crunch_server_header" value="X" @crunch-server-header-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@CRUNCH-SERVER-HEADER">crunch-server-header</a></td>
+ <td>Remove server header(s) matching the supplied pattern.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="crunch_server_header_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td>Header string to suppress:<br>
+ <input type="text" name="crunch_server_header_mode" size="40"
+ value="@crunch-server-header-param@"></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="hide_accept_language" id="hide_accept_language_y" value="Y" @hide-accept-language-y@
+ onclick="show_hide_accept_language_opts(true)"></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="hide_accept_language" id="hide_accept_language_n" value="N" @hide-accept-language-n@
+ onclick="show_hide_accept_language_opts(false)"></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="hide_accept_language" id="hide_accept_language_x" value="X" @hide-accept-language-x@
+ onclick="show_hide_accept_language_opts(false)"
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-ACCEPT-LANGUAGE">hide-accept-language</a></td>
+ <td>Pretend to have different language settings. (Makes a fake User-Agent more believable,
+ but can lead to foreign content.)</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="hide_accept-language_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td><input type="radio" name="hide_accept_language_mode" value="block"
+ onclick="hide_accept_language_param_disable(true)"
+ @hide-accept-language-param-block@ id="hide_accept_language_mode_block"><label
+ for="hide_accept_language_mode_block">Remove Accept-Language header without replacement.</label>
+ This isn't the option you're looking for.<br>
+ <input type="radio" name="hide_accept_language_mode" value="CUSTOM"
+ onclick="hide_accept_language_param_disable(false)"
+ @hide-accept-language-param-custom@ id="hide_accept_language_mode_set"><label
+ for="hide_accept_language_mode_set">Fake these language settings:</label><br>
+ <input type="text" name="hide_accept_language_param"
+ id="hide_accept_language_param" size="40"
+ value="@hide-accept-language-param@"><br>
+ </td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="hide_content_disposition" id="hide_content_disposition_y" value="Y" @hide-content-disposition-y@
+ onclick="show_hide_content_disposition_opts(true)"></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="hide_content_disposition" id="hide_content_disposition_n" value="N" @hide-content-disposition-n@
+ onclick="show_hide_content_disposition_opts(false)"></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="hide_content_disposition" id="hide_content_disposition_x" value="X" @hide-content-disposition-x@
+ onclick="show_hide_content_disposition_opts(false)"
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-CONTENT-DISPOSITION">hide-content-disposition</a></td>
+ <td>Block or overwrite the content-disposition header. Useful to view a document inside the browser,
+ even if you were supposed to save it first, or to change the suggested file name.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="hide_content_disposition_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td><input type="radio" name="hide_content_disposition_mode" value="block"
+ onclick="hide_content_disposition_param_disable(true)"
+ @hide-content-disposition-param-block@ id="hide_content_disposition_mode_block"><label
+ for="hide_content_disposition_mode_block">Remove content-disposition header without replacement.</label>
+ <br>
+ <input type="radio" name="hide_content_disposition_mode" value="CUSTOM"
+ onclick="hide_content_disposition_param_disable(false)"
+ @hide-content-disposition-param-custom@ id="hide_content_disposition_mode_set"><label
+ for="hide_content_disposition_mode_set">Overwrite content-dispostion header with:</label><br>
+ <input type="text" name="hide_content_disposition_param"
+ id="hide_content_disposition_param" size="40"
+ value="@hide-content-disposition-param@"><br>
+ </td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="redirect" value="Y" @redirect-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="redirect" value="N" @redirect-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="redirect" value="X" @redirect-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@REDIRECT">redirect</a></td>
+ <td>Redirect to another address.
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="redirect_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td>Address to redirect to:<br>
+ <input type="text" name="redirect_mode" size="40"
+ value="@redirect-param@"></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="filter_client_headers" value="Y" @filter-client-headers-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="filter_client_headers" value="N" @filter-client-headers-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="filter_client_headers" value="X" @filter-client-headers-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@FILTER-CLIENT-HEADERS">filter-client-headers</a></td>
+ <td>Apply filters to the client headers as well. <strong>Only enable this if you know what you're doing.</strong></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="filter_server_headers" value="Y" @filter-server-headers-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="filter_server_headers" value="N" @filter-server-headers-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="filter_server_headers" value="X" @filter-server-headers-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@FILTER-SERVER-HEADERS">filter-server-headers</a></td>
+ <td>Apply filters to the server headers as well. <strong>Only enable this if you know what you're doing.</strong></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="hide_from_header" id="hide_from_header_y" value="Y" @hide-from-header-y@
+ onclick="show_hide_from_header_opts(true)"></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="hide_from_header" value="N" @hide-from-header-n@
+ onclick="show_hide_from_header_opts(false)"></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="hide_from_header" value="X" @hide-from-header-x@
+ onclick="show_hide_from_header_opts(false)"></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-FROM-HEADER">hide-from-header</a></td>
+ <td>Stop old web browsers from sending the user's e-mail address with
+ every request.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="hide_from_header_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td><input type="radio" name="hide_from_header_mode" value="block"
+ onclick="hide_from_header_param_disable(true);"
+ @hide-from-header-param-block@ id="hide_from_header_mode_block"><label
+ for="hide_from_header_mode_block">Remove completely</label><br>
+ <input type="radio" name="hide_from_header_mode" value="CUSTOM"
+ onclick="hide_from_header_param_disable(false);"
+ @hide-from-header-param-custom@ id="hide_from_header_mode_set"><label
+ for="hide_from_header_mode_set">Fake e-mail address:</label><br>
+ <input type="text" name="hide_from_header_param" id="hide_from_header_param"
+ size="40" value="@hide-from-header-param@"></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="hide_referrer" id="hide_referrer_y" value="Y" @hide-referrer-y@
+ onclick="show_hide_referrer_opts(true)"></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="hide_referrer" id="hide_referrer_n" value="N" @hide-referrer-n@
+ onclick="show_hide_referrer_opts(false)"></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="hide_referrer" id="hide_referrer_x" value="X" @hide-referrer-x@
+ onclick="show_hide_referrer_opts(false)"
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-REFERRER">hide-referrer</a></td>
+ <td>Helps prevent tracking by not sending the URL of the previous web
+ page. </td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="hide_referrer_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td><input type="radio" name="hide_referrer_mode" value="block"
+ onclick="hide_referrer_param_disable(true)"
+ @hide-referrer-param-block@ id="hide_referrer_mode_block"><label
+ for="hide_referrer_mode_block">Remove completely</label> (breaks images
+ on some free web hosts).<br>
+ <input type="radio" name="hide_referrer_mode" value="forge"
+ onclick="hide_referrer_param_disable(true)"
+ @hide-referrer-param-forge@ id="hide_referrer_mode_forge"><label
+ for="hide_referrer_mode_forge">Fake as the root directory of the
+ site</label> (fools checks for in-site links.)<br>
+ <input type="radio" name="hide_referrer_mode" value="CUSTOM"
+ onclick="hide_referrer_param_disable(false)"
+ @hide-referrer-param-custom@ id="hide_referrer_mode_set"><label
+ for="hide_referrer_mode_set">Fake as this web address:</label><br>
+ <input type="text" name="hide_referrer_param"
+ id="hide_referrer_param" size="40"
+ value="@hide-referrer-param@"><br>
+ <input type="radio" name="hide_referrer_mode" value="conditional-block"
+ onclick="hide_referrer_param_disable(true)"
+ @hide-referrer-param-conditional-block@ id="hide_referrer_mode_conditional-block"><label
+ for="hide_referrer_mode_conditional-block">Remove completely if host has changed,
+ but don't touch in-site referrers.
+ Less suspicious than the options above.</label><br></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="hide_user_agent" id="hide_user_agent_y" value="Y" @hide-user-agent-y@
+ onclick="show_user_agent_opts(true)"></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="hide_user_agent" value="N" @hide-user-agent-n@
+ onclick="show_user_agent_opts(false)"></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="hide_user_agent" value="X" @hide-user-agent-x@
+ onclick="show_user_agent_opts(false)"></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@HIDE-USER-AGENT">hide-user-agent</a></td>
+ <td>Pretend to be using a different web browser. (Breaks many web
+ sites).</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="user_agent_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td>User Agent string to send:<br>
+ <input type="text" name="hide_user_agent_mode" size="40"
+ value="@hide-user-agent-param@"></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="kill_popups" value="Y" @kill-popups-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="kill_popups" value="N" @kill-popups-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="kill_popups" value="X" @kill-popups-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@KILL-POPUPS">kill-popups</a></td>
+ <td>Filter the website through a built-in filter to disable many JavaScript
+ pop-up windows.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="limit_connect" id="limit_connect_y" value="Y" @limit-connect-y@
+ onclick="show_limit_connect_opts(true)"></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="limit_connect" value="N" @limit-connect-n@
+ onclick="show_limit_connect_opts(false)"></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="limit_connect" value="X" @limit-connect-x@
+ onclick="show_limit_connect_opts(false)"></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@LIMIT-CONNECT">limit-connect</a></td>
+ <td>Specify which ports are allowed for SSL (HTTP CONNECT) access.
+ Note that this allows arbitrary tunnelling, so opening all
+ ports would be a security hole.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="limit_connect_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td>Legal SSL ports (comma separated, ranges allowed):<br>
+ <input type="text" name="limit_connect_mode" size="40"
+ value="@limit-connect-param@"></td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="prevent_compression" value="Y" @prevent-compression-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="prevent_compression" value="N" @prevent-compression-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="prevent_compression" value="X" @prevent-compression-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@PREVENT-COMPRESSION">prevent-compression</a></td>
+ <td>Disables compression. Compressed web pages are faster to
+ download, but cannot be filtered with <a href="@user-manual@@actions-help-prefix@FILTER"><b>filter</b></a>
+ or <a href="@user-manual@@actions-help-prefix@KILL-POPUPS"><b>kill-popups</b></a>.
+ This setting only affects the few web sites which support
+ compression.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="send_vanilla_wafer" value="Y" @send-vanilla-wafer-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="send_vanilla_wafer" value="N" @send-vanilla-wafer-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="send_vanilla_wafer" value="X" @send-vanilla-wafer-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@SEND-VANILLA-WAFER">send-vanilla-wafer</a></td>
+ <td>Adds a special wafer (standard cookie) to all your requests.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="send_wafer" id="send_wafer_y" value="Y" @send-wafer-y@
+ onclick="show_send_wafer_opts(true)"></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="send_wafer" id="send_wafer_n" value="N" @send-wafer-n@
+ onclick="show_send_wafer_opts(false)"></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="send_wafer" id="send_wafer_x" value="X" @send-wafer-x@
+ onclick="show_send_wafer_opts(false)"></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@SEND-WAFER">send-wafer</a></td>
+ <td>Adds user-specified cookies.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="send_wafer_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td>Editing the settings for this option, or turning
+ it on if it was off, is not yet supported using this web-based
+ editor.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="session_cookies_only" value="Y" @session-cookies-only-y@
+ ></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="session_cookies_only" value="N" @session-cookies-only-n@
+ ></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="session_cookies_only" value="X" @session-cookies-only-x@
+ ></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@SESSION-COOKIES-ONLY">session-cookies-only</a></td>
+ <td>Any cookies set by the website are changed to temporary
+ ("per-session") ones, which only last until you close your web
+ browser. This will allow you to use sites that require cookies, but
+ sites will not be able to track you across sessions. For this to
+ be useful, you should disable
+ <a href="@user-manual@@actions-help-prefix@CRUNCH-OUTGOING-COOKIES"><b>crunch-outgoing-cookies</b></a> and
+ <a href="@user-manual@@actions-help-prefix@CRUNCH-INCOMING-COOKIES"><b>crunch-incoming-cookies</b></a>.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top">
+ <td class="en1" align="center" valign="middle"><input type="radio"
+ name="set_image_blocker" id="set_image_blocker_y" value="Y" @set-image-blocker-y@
+ onclick="show_set_image_blocker_opts(true)"></td>
+ <td class="dis1" align="center" valign="middle"><input type="radio"
+ name="set_image_blocker" value="N" @set-image-blocker-n@
+ onclick="show_set_image_blocker_opts(false)"></td>
+ <td class="noc1" align="center" valign="middle"><input type="radio"
+ name="set_image_blocker" value="X" @set-image-blocker-x@
+ onclick="show_set_image_blocker_opts(false)"></td>
+ <td class="action"><a href="@user-manual@@actions-help-prefix@SET-IMAGE-BLOCKER">set-image-blocker</a></td>
+ <td>Specifies how to block images.</td>
+ </tr>
+ <tr class="bg1" align="left" valign="top" id="set_image_blocker_opts">
+ <td class="en1"> </td>
+ <td class="dis1"> </td>
+ <td class="noc1"> </td>
+ <td> </td>
+ <td><input type="radio" name="set_image_blocker_mode"
+ onclick="set_image_blocker_param_disable(true)"
+ value="pattern" id="set_image_blocker_mode_pattern"
+ @set-image-blocker-param-pattern@><label
+ for="set_image_blocker_mode_pattern">Send a pattern (<img
+ src="send-banner?type=p" width="12" height="12"
+ alt="pattern">)</label><br>
+ <input type="radio" name="set_image_blocker_mode" value="blank"
+ onclick="set_image_blocker_param_disable(true)"
+ id="set_image_blocker_mode_blank" @set-image-blocker-param-blank@><label
+ for="set_image_blocker_mode_blank">Send a 1x1 transparent GIF</label><br>
+ <input type="radio" name="set_image_blocker_mode" value="CUSTOM"
+ onclick="set_image_blocker_param_disable(false)"
+ id="set_image_blocker_mode_set" @set-image-blocker-param-custom@><label
+ for="set_image_blocker_mode_set">Redirect
+ the browser to this image URL:</label><br>
+ <input type="text" name="set_image_blocker_param" id="set_image_blocker_param"
+ size="40" value="@set-image-blocker-param@"></td>
+ </tr>
+ </table>
+
+</td></tr>
+
+ <tr>
+ <td class="green" align="center">
+ <p><input type="submit" value="Submit" name="Submit"></p>
+ </td>
+ </tr>
+
+ <tr>
+ <td class="box">
+ <h2>More Privoxy:</h2>
+ <ul>@menu@<li><a href="@user-manual@">Documentation</a></li></ul>
+ </td>
+ </tr>
+
+ <tr>
+ <td class="info">
+
+#include mod-support-and-service
+
+ </td>
+ </tr>
+
+<!-- @if-have-help-info-start -->
+ <tr>
+ <td class="info">
+
+#include mod-local-help
+
+ </td>
+ </tr>
+<!-- if-have-help-info-end@ -->
+
+ <tr>
+ <td>
+ <small><small>Valid <a href="http://validator.w3.org/">HTML 4.01 Strict</a></small></small>
+ </td>
+ </tr>
+
+ </table>
+</form>
+
+
+<script type="text/javascript">
+<!--
+
+if (document.getElementById) {
+ // alert("Netscape 6 or IE5");
+ document.getElementById("hide_from_header_param").disabled = !(document.getElementById("hide_from_header_mode_set").checked);
+ document.getElementById("hide_referrer_param").disabled = !(document.getElementById("hide_referrer_mode_set").checked);
+ document.getElementById("set_image_blocker_param").disabled = !(document.getElementById("set_image_blocker_mode_set").checked);
+
+ show_add_header_opts (document.getElementById("add_header_y").checked);
+ show_deanimate_opts (document.getElementById("deanimate_gifs_y").checked);
+ show_hide_from_header_opts(document.getElementById("hide_from_header_y").checked);
+ show_hide_referrer_opts (document.getElementById("hide_referrer_y").checked);
+ show_user_agent_opts (document.getElementById("hide_user_agent_y").checked);
+ show_set_image_blocker_opts (document.getElementById("set_image_blocker_y").checked);
+ show_limit_connect_opts (document.getElementById("limit_connect_y").checked);
+ show_send_wafer_opts (document.getElementById("wafer_y").checked);
+} else if (document.all) {
+ // alert("IE4");
+ document.myform.hide_from_header_param.disabled = !(document.myform.hide_from_header_mode_set.checked);
+ document.myform.hide_referrer_param.disabled = !(document.myform.hide_referrer_mode_set.checked);
+ document.myform.set_image_blocker_param.disabled = !(document.myform.set_image_blocker_mode_set.checked);
+
+ show_add_header_opts (document.myform.add_header_y.checked);
+ show_deanimate_opts (document.myform.deanimate_gifs_y.checked);
+ show_hide_from_header_opts (document.myform.hide_from_header_y.checked);
+ show_hide_referrer_opts (document.myform.hide_referrer_y.checked);
+ show_user_agent_opts (document.myform.hide_user_agent_y.checked);
+ show_set_image_blocker_opts (document.myform.set_image_blocker_y.checked);
+ show_limit_connect_opts (document.myform.limit_connect_y.checked);
+ show_send_wafer_opts (document.myform.wafer_y.checked);
+} else if (document.layers) {
+ // alert("Netscape 4");
+}
+//-->
+</script>
+
+
+</body>
+
+</html>