Created
August 28, 2012 15:33
-
-
Save darkfrog26/3499165 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.projectspeaker.pages | |
import com.projectspeaker.ProjectSpeakerPage | |
import org.powerscala.Color | |
import org.hyperscala.html._ | |
import org.hyperscala.html | |
import org.hyperscala.html.tag._ | |
import org.powerscala.property._ | |
import org.hyperscala.html.attributes.Target | |
import org.hyperscala.web.Scope | |
/** | |
* @author Matt Hicks <mhicks@powerscala.org> | |
*/ | |
class PrivacyPage extends ProjectSpeakerPage { | |
// Cache the entire static content in application scope | |
pageContent.contents += cached[Div]("privacyContent", scope = Scope.Application) { | |
new Div(id = "app", clazz = List("container", "content")) { | |
contents += new Div() { | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new A() { | |
name := "0.2__GoBack" | |
} | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 24.0.pt | |
contents += """ProjectSpeaker.com Privacy Policy""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Last | |
modified: June 14, 2012""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """There | |
are many different ways you can use""" | |
contents += new A(target = Target.Blank, href = "http://projectspeaker.com/", content = "projectspeaker.com") | |
contents += """and the services made | |
available through our website (collectively, "our services"), including to | |
share information or to create new content. Sometimes, when using our services | |
you provide us with certain information. As you use our services, we want you | |
to be clear how we're using information and the ways in which you can protect | |
your privacy.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Our | |
Privacy Policy explains:""" | |
} | |
} | |
contents += new Ul() { | |
style.list.style.styleType := "disc" | |
contents += new Li() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """What | |
information we collect and why we collect it.""" | |
} | |
} | |
contents += new Li() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """How | |
we use that information.""" | |
} | |
} | |
contents += new Li() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """The | |
choices we offer, including how to access and update information.""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Your | |
privacy matters to ProjectSpeaker.com. Since we want you to understand this | |
policy, we've tried to keep things simple.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Information | |
we collect""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """We | |
may collect the following information:""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Name""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Contact information including | |
email address, and Phone Number""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Job title""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Demographic information such as | |
postal code""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Information provided to us when | |
you communicate with us for any reason""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """What we do with the information we gather""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Internal record keeping""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """We use your personal information | |
such as your name, email, address, and telephone number, in order for us to | |
assist in creating a publically visible profile""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """We administer your account and | |
customize the services we provide to you and other users""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Enable you to share your | |
information and communicate with other users""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Storing your personal details""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """The data that you provide is stored on our secure | |
servers. While we take every precaution to ensure your information is secure, | |
any information that is transmitted over the internet is not completely secure, | |
therefore data sent to us electronically is done entirely at your own risk. | |
Where we have provided you with a password, or you have chosen your own | |
password, you are responsible for keeping this password confidential.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Disclosure of your personal details""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Any personal information that you provide us with is | |
held in strict confidence. However, in certain circumstances we may be required | |
to. Circumstances where we will be required to divulge your personal details | |
include:""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 0.px | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 38.25.px | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.size := 12.0.pt | |
contents += """When | |
we are required or authorized by law to do so;""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 38.25.px | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.size := 12.0.pt | |
contents += """When | |
you have consented to the disclosure;""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 38.25.px | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """The information is already | |
publically known;""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 38.25.px | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.size := 12.0.pt | |
contents += """When | |
the services we are providing to you require us to give your information to | |
third parties your consent will be implied, unless you tell us otherwise.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.left := 38.25.px | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.size := 12.0.pt | |
contents += """In | |
order to protect against harm to the rights, property or safety of | |
ProjectSpeaker.com, other users or the public as required or permitted by law.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Accessing | |
and updating your personal information""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Whenever | |
you use our services, we aim to provide you with access to your personal | |
information. If that information is wrong, we strive to give you ways to update | |
it quickly or to delete it - unless we have to keep that information for | |
legitimate business or legal purposes. When updating your personal information, | |
we may ask you to verify your identity before we can act on your request.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """We | |
may reject requests that are unreasonably repetitive, require disproportionate | |
technical effort (for example, developing a new system or fundamentally | |
changing an existing practice), risk the privacy of others, or would be | |
extremely impractical.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Where | |
we can provide information access and correction, we will do so for free, | |
except where it would require a disproportionate effort. We aim to maintain our | |
services in a manner that protects information from accidental or malicious | |
destruction. Because of this, after you delete information from our services, | |
we may not immediately delete residual copies from our active servers and may | |
not remove information from our backup systems.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Controlling | |
your personal information""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """We | |
will not sell, distribute, or lease your personal information to third parties | |
unless we have your permission or are required by law to do so. We may use your | |
personal information to send you promotional information about third parties | |
which we think you may find interesting if you inform us that you wish for this | |
to happen.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Third | |
Party Links""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """On | |
our website you may find links to third party websites. These websites should | |
have their own privacy policies which is your sole responsibility to review. We | |
do not accept any responsibility or liability whatsoever for their policies.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Obligation | |
to other users""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """We | |
ask that you do not abuse the service offered by ProjectSpeaker.com, and that | |
you refrain from harassing, or sending spam to other users. We ask that you do | |
not violate the Privacy Policy.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Application""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Our | |
Privacy Policy applies to all of the services offered by ProjectSpeaker.com and | |
its affiliates, including services offered on other sites (such as our | |
advertising services), but excludes services that have separate privacy | |
policies that do not incorporate this Privacy Policy.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Our | |
Privacy Policy does not apply to services offered by other companies or | |
individuals.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Information | |
you share""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Many | |
of our services let you share information with others. Remember that when you | |
share information publicly, it may be viewable by search engines. Our services | |
provide you with different options on sharing and removing your content.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Enforcement""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """We | |
regularly review our compliance with our Privacy Policy. When we receive formal | |
written complaints, we will contact the person who made the complaint to follow | |
up. We work with the appropriate regulatory authorities, including local data | |
protection authorities, to resolve any complaints regarding the transfer of | |
personal data that we cannot resolve with our users directly.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Cookie | |
Information""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.background := "white" | |
style.font.size := 12.0.pt | |
contents += """We use "cookies" (small pieces of data we store for | |
an extended period of time on your computer, mobile phone, or other device) to | |
make ProjectSpeaker.com easier to use, to make our advertising better, and to | |
protect both you and ProjectSpeaker.com. For example, we use them to store your | |
login ID (but never your password) to make it easier for you to login whenever | |
you come back to ProjectSpeaker.com We also use them to confirm that you are | |
logged into ProjectSpeaker.com. You can remove or block cookies using the | |
settings in your browser, but in some cases that may impact your ability to use | |
ProjectSpeaker.com""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span(lang = "EN-US", content = "Your privacy responsibilities") { | |
style.color := Color.immutable("#111111") | |
style.font.size := 13.5.pt | |
} | |
} | |
} | |
contents += new P() { | |
style.background := "white" | |
style.line.height := "18.0pt" | |
style.margin.bottom := 12.0.px | |
contents += new Span(lang = "EN-US") { | |
style.font.size := 12.0.pt | |
contents += """To help protect your privacy, | |
be sure:""" | |
} | |
} | |
contents += new P() { | |
style.background := "white" | |
style.line.height := "18.0pt" | |
style.margin.bottom := 12.0.px | |
contents += new Span(lang = "EN-US") { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span(lang = "EN-US") { | |
style.font.size := 12.0.pt | |
contents += """not to share your user | |
ID or password with anyone else;""" | |
} | |
} | |
contents += new P() { | |
style.background := "white" | |
style.line.height := "18.0pt" | |
style.margin.bottom := 12.0.px | |
contents += new Span(lang = "EN-US") { | |
style.font.size := 12.0.pt | |
contents += "-" | |
contents += new Span() { | |
style.font := "7.0pt Times New Roman" | |
} | |
} | |
contents += new Span(lang = "EN-US") { | |
style.font.size := 12.0.pt | |
contents += """to log off the | |
ProjectSpeaker.com Web site when you are finished.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """Changes""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.font.size := 12.0.pt | |
contents += """Our | |
Privacy Policy may change from time to time. We will not reduce your rights | |
under this Privacy Policy without your explicit consent. We will post any | |
privacy policy changes on this page and, if the changes are significant, we | |
will provide a more prominent notice (including, for certain services, email | |
notification of privacy policy changes). We will also keep prior versions of | |
this Privacy Policy in an archive for your review.""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new B() { | |
contents += new Span() { | |
style.font.size := 13.5.pt | |
contents += """How | |
to contact us""" | |
} | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.size := 12.0.pt | |
contents += """If you have questions or comments about this | |
Privacy Policy, please contact by email at""" | |
contents += new A(target = Target.Blank, href = "mailto:privacy@projectspeaker.com") { | |
contents += """privacy@projectspeaker.com""" | |
} | |
contents += """in the | |
alternative you may contact us at:""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.bottom := 0.0001.px | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.size := 12.0.pt | |
contents += """Attention: | |
Privacy Policy Issues""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.bottom := 0.0001.px | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.size := 12.0.pt | |
contents += """21 Regent | |
Street, Suite #1""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.bottom := 0.0001.px | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.size := 12.0.pt | |
contents += """Ottawa | |
Ontario""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.bottom := 0.0001.px | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.size := 12.0.pt | |
contents += """K1S 2R4""" | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.bottom := 0.0001.px | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.size := 12.0.pt | |
} | |
} | |
contents += new P() { | |
style.line.height := "normal" | |
style.margin.bottom := 0.0001.px | |
contents += new Span() { | |
style.background := "white" | |
style.color := Color.Black | |
style.font.family := "Times New Roman,serif" | |
style.font.size := 12.0.pt | |
} | |
} | |
} | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment