Mercurial Hosting > nabble
diff src/nabble/view/web/w3c/PolicyHTML.jtp @ 0:7ecd1a4ef557
add content
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 21 Mar 2019 19:15:52 -0600 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/nabble/view/web/w3c/PolicyHTML.jtp Thu Mar 21 19:15:52 2019 -0600 @@ -0,0 +1,214 @@ +<% +package nabble.view.web.w3c; + +import fschmidt.util.servlet.JtpContext; +import nabble.view.lib.Cache; +import nabble.view.lib.UrlMappable; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.io.PrintWriter; +import java.util.HashMap; +import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public final class PolicyHTML extends HttpServlet implements UrlMappable { + + private static final Pattern URL_PATTERN = Pattern.compile("/w3c/policy.html$"); + + public Map<String, String[]> getParameterMapFromUrl(HttpServletRequest request,String mappedUrl) { + Matcher m = URL_PATTERN.matcher(mappedUrl); + if (!m.find()) + throw new RuntimeException(); + Map<String,String[]> params = new HashMap<String,String[]>(); + return params; + } + + public Pattern getUrlPattern() { + return URL_PATTERN; + } + + protected void service(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + + JtpContext jtpContext = (JtpContext)getServletContext().getAttribute(JtpContext.attrName); + jtpContext.setEtag(request,response); + PrintWriter out = response.getWriter(); + response.setContentType("text/html"); + %> + <html> + <head> + <STYLE type="text/css"> + title { color: #3333FF} + </STYLE> + <title>Privacy Statement for Nabble</title> + </head> + <body> + <h1 class="title">Privacy Policy</h1> + <!-- "About Us" section of privacy policy --> + <h2>About Us</h2> + <p>This is a privacy policy for Nabble. + Our homepage on the Web is located at <a href="https://www.nabble.com"> + https://www.nabble.com</a>. + The full text of our privacy policy is available on the Web at + <a href="https://www.nabble.com/w3c/policy.html"> + https://www.nabble.com/w3c/policy.html</a> + Users may go to <a href=""> + </a> for information on how to opt-in or opt-out of use of their information. + <p>We invite you to contact us if you have questions about this policy. + You may contact us by email at + <a href="mailto:support@nabble.com"> + support@nabble.com</a>. + <!-- "Privacy Seals" section of privacy policy --> + <h2>Dispute Resolution and Privacy Seals</h2> + <p>We have the following privacy seals and/or dispute resolution mechanisms. + If you think we have not followed our privacy policy in some way, they can help you resolve your concern. + <ul> + <li> + <b>Disputes</b>: + If any question arises regarding the user experience, ability or inability to perform actions with the site, a user is advised to contact Nabble Support. + </ul> + <!-- "Additional information" section of privacy policy --> + <h2>Additional Information</h2> + <p> + This policy is valid for 1 day from the time that it is loaded by a client. + </p> + <!-- "Data Collection" section of privacy policy --> + <h2>Data Collection</h2> + <p>P3P policies declare the data they collect in groups (also referred to as "statements"). + This policy contains 2 data groups. + The data practices of each group will be explained separately. + <hr width="50%" align="center"> + <h3>Group "User Information"</h3> + <p>At the user's option, we will collect the following data: + <ul> + <li>User's Name</li> + <li>Preference data</li> + <li>Home email address</li> + <li>Work email address</li> + </ul> + <p>This data will be used for the following purposes:</p> + <ul> + <li>Other purposes<p>Display the user name</p> The user must <b>opt-in</b> to this usage.</li> + </ul> + <p>This data will be used by ourselves and our agents. + <hr width="50%" align="center"> + <h3>Group "Cookies"</h3> + <p>At the user's option, we will collect the following data: + <ul> + <li>HTTP cookies</li> + </ul> + <p>This data will be used for the following purposes:</p> + <ul> + <li>One-time tailoring. The user must <b>opt-in</b> to this usage.</li> + <li>Anonymous user analysis. The user must <b>opt-in</b> to this usage.</li> + <li>Anonymous user profiling and decision-making. The user must <b>opt-in</b> to this usage.</li> + </ul> + <p>This data will be used by ourselves and our agents. + <p>The following explanation is provided for why this data is collected:</p> + <blockquote>To keep users logged in and apply their preferences.</blockquote> + <!-- "Use of Cookies" section of privacy policy --> + <hr width="50%" align="center"> + <h2>Cookies</h2> + <p>Cookies are a technology which can be used to provide you with tailored information from a Web site. A cookie is an element of data that a Web site can send to your browser, which may then store it on your system. You can set your browser to notify you when you receive a cookie, giving you the chance to decide whether to accept it. + <p>Our site makes use of cookies. + Cookies are used for the following purposes: + <ul> + <li>User targeting + <li>Pseudononymous analysis + <li>Pseudonym-based decision-making + </ul> + <!-- "Compact Policy Explanation" section of privacy policy --> + <hr width="50%" align="center"> + <h2>Compact Policy Summary</h2> + <p>The compact policy which corresponds to this policy is: + <pre> + CP="IDC DSP TAIi PSAi PSDi OTPi OUR IND PHY ONL UNI NAV DEM PRE LOC" + </pre> + <p>The following table explains the meaning of each field in the compact policy. + <center><table width="80%" border="1" cols="2"> + <tr><td align="center" valign="top" width="20%"><b>Field</b></td><td align="center" valign="top" width="80%"><b>Meaning</b></td></tr> + <tr><td align="left" valign="top" width="20%"><tt>CP=</tt></td> + <td align="left" valign="top" width="80%">This is the compact policy header; it indicates that what follows is a P3P compact policy.</td></tr> + <tr><td align="left" valign="top" width="20%"><tt>IDC</tt></td> + <td align="left" valign="top" width="80%"> + Access is available to contact information. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>DSP</tt></td> + <td align="left" valign="top" width="80%"> + The policy contains at least one dispute-resolution mechanism. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>TAIi</tt></td> + <td align="left" valign="top" width="80%"> + The data is used for tailoring the site, if the user selects it. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>PSAi</tt></td> + <td align="left" valign="top" width="80%"> + The data is used for pseudononymous analysis, if the user selects it. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>PSDi</tt></td> + <td align="left" valign="top" width="80%"> + The data is used for pseudononymous decision-making, if the user selects it. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>OTPi</tt></td> + <td align="left" valign="top" width="80%"> + The data is used for other purposes, if the user selects it. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>OUR</tt></td> + <td align="left" valign="top" width="80%"> + The data is given to ourselves and our agents. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>IND</tt></td> + <td align="left" valign="top" width="80%"> + The data will be kept indefinitely. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>PHY</tt></td> + <td align="left" valign="top" width="80%"> + Physical contact information is collected. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>ONL</tt></td> + <td align="left" valign="top" width="80%"> + Online contact information is collected. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>UNI</tt></td> + <td align="left" valign="top" width="80%"> + Unique identifiers are collected. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>NAV</tt></td> + <td align="left" valign="top" width="80%"> + Navigation and clickstream data is collected. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>DEM</tt></td> + <td align="left" valign="top" width="80%"> + Demographic and socioeconomic data is collected. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>PRE</tt></td> + <td align="left" valign="top" width="80%"> + Preference information is collected. + </td></tr> + <tr><td align="left" valign="top" width="20%"><tt>LOC</tt></td> + <td align="left" valign="top" width="80%"> + Current location information is collected. + </td></tr> + </table></center> + <p>The compact policy is sent by the Web server along with the cookies it describes. + For more information, see the P3P deployment guide at <a href="http://www.w3.org/TR/p3pdeployment">http://www.w3.org/TR/p3pdeployment</a>. + <!-- "Policy Evaluation" section of privacy policy --> + <hr width="50%" align="center"> + <h2>Policy Evaluation</h2> + <p>Microsoft Internet Explorer 6 will evaluate this policy's compact policy whenever it is used with a cookie. + The actions IE will take depend on what privacy level the user has selected in their browser (Low, Medium, Medium High, or High; the default is Medium. + In addition, IE will examine whether the cookie's policy is considered satisfactory or unsatisfactory, whether the cookie is a session cookie or a persistent cookie, and whether the cookie is used in a first-party or third-party context. + This section will attempt to evaluate this policy's compact policy against Microsoft's stated behavior for IE6. + <p><b>Note:</b> this evaluation is currently experimental and should not be considered a substitute for testing with a real Web browser. + <p><b>Satisfactory policy</b>: this compact policy is considered <em>satisfactory</em> according to the rules defined by Internet Explorer 6. + IE6 will accept cookies accompanied by this policy under the High, Medium High, Medium, Low, and Accept All Cookies settings. + </body></html> + <% + } + } +%> \ No newline at end of file