Added Terms and Privacy plus Analytics and Adsense

Started move to PHP
This commit is contained in:
Robbie Antenesse 2015-11-02 10:28:43 -07:00
parent 6a8d74c6f9
commit 75bd9ec216
8 changed files with 127 additions and 28 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
php/google/

45
PRIVACY.md Normal file
View File

@ -0,0 +1,45 @@
## Privacy Policy
This document was last updated on November 02, 2015.
This Privacy Policy governs the manner in which Lexiconga Dictionary Builder collects, uses, maintains and discloses information collected from users (each, a "User") of the http://lexicon.ga website ("Site").
### Personal identification information
We may collect personal identification information from Users in a variety of ways, including, but not limited to, when Users visit our site, register on the site, and in connection with other activities, services, features or resources we make available on our Site. Users may be asked for, as appropriate, their email address. Users may, however, use our Site anonymously. We will collect personal identification information from Users only if they voluntarily submit such information to us. Users can always refuse to supply personal identification information, except that it may prevent them from engaging in certain Site-related activities.
### Non-personal identification information
We may collect non-personal identification information about Users whenever they interact with our Site. Non-personal identification information may include the browser name, the type of computer and technical information about Users means of connection to our Site, such as the operating system and the Internet service providers utilized and other similar information.
### Web browser cookies
Our Site does not use "cookies" to enhance User experience, but it does use "local storage". User's web browser places local storage on their hard drive for record-keeping purposes and sometimes to track information about them, but we only use this to store your current dictionary. User may choose to set their web browser to refuse local storage usage, but if they do so, the Site will not function properly.
### How we use collected information
Lexiconga Dictionary Builder may collect and use Users personal information for the following purposes:
- **To run and operate our Site and personalize user experience:** We need your input to display content on the Site correctly, because it is a tool built entirely to display the content that you enter.
### How we protect your information
We protect your information by keeping your information right on your own computer where it belongs. As mentioned previously, all data is stored in your browser's "local storage".
### Sharing your personal information
We do not sell, trade, or rent Users personal identification information to others. We may share generic aggregated demographic information not linked to any personal identification information regarding visitors and users with our business partners, trusted affiliates and advertisers for the purposes outlined above.
### Electronic newsletters
If User decides to opt-in to our mailing list, they will receive emails that may include company news, updates, related product or service information, etc. We may use third party service providers to help us operate our business and the Site or administer activities on our behalf, such as sending out newsletters or surveys. We may share your information with these third parties for those limited purposes provided that you have given us your permission.
### Third party websites
Users may find advertising or other content on our Site that link to the sites and services of our partners, suppliers, advertisers, sponsors, licencors and other third parties. We do not control the content or links that appear on these sites and are not responsible for the practices employed by websites linked to or from our Site. In addition, these sites or services, including their content and links, may be constantly changing. These sites and services may have their own privacy policies and customer service policies. Browsing and interaction on any other website, including websites which have a link to our Site, is subject to that website's own terms and policies.
### Advertising
Ads appearing on our site may be delivered to Users by advertising partners, who may set cookies. These cookies allow the ad server to recognize your computer each time they send you an online advertisement to compile non personal identification information about you or others who use your computer. This information allows ad networks to, among other things, deliver targeted advertisements that they believe will be of most interest to you. This privacy policy does not cover the use of cookies by any advertisers.
### Google Adsense
Some of the ads may be served by Google. Google's use of the DART cookie enables it to serve ads to Users based on their visit to our Site and other sites on the Internet. DART uses "non personally identifiable information" and does NOT track personal information about you, such as your name, email address, physical address, etc. You may opt out of the use of the DART cookie by visiting the Google ad and content network privacy policy at [http://www.google.com/policies/technologies/ads/](http://www.google.com/policies/technologies/ads/)
### Changes to this privacy policy
Lexiconga Dictionary Builder has the discretion to update this privacy policy at any time. When we do, we will post a notification on the main page of our Site. We encourage Users to frequently check this page for any changes to stay informed about how we are helping to protect the personal information we collect. You acknowledge and agree that it is your responsibility to review this privacy policy periodically and become aware of modifications.
###Your acceptance of these terms
By using this Site, you signify your acceptance of this policy. If you do not agree to this policy, please do not use our Site. Your continued use of the Site following the posting of changes to this policy will be deemed your acceptance of those changes. This policy was originally generated using PrivacyPolicies.com and modified for our use.
### Contacting us
If you have any questions about this Privacy Policy, the practices of this site, or your dealings with this site, please contact us by email at gamedev (at) alamantus (dot) com or follow us Twitter @alamantus.

View File

@ -53,7 +53,7 @@ In the future, I'm planning to add the ability to save more than one dictionary
## Thanks!
I hope you enjoy Lexiconga and that it helps you build some awesome languages.
- Robbie Antenesse
Robbie Antenesse
### Libraries Used
* [Markdown.js](https://github.com/evilstreak/markdown-js) by Dominic Baggott (a.k.a. evilstreak)

28
TERMS.md Normal file
View File

@ -0,0 +1,28 @@
## Terms of Service ("Terms")
Last updated: November 1, 2015.
Please read these Terms of Service ("Terms", "Terms of Service") carefully before using the http://lexicon.ga website (the "Service") operated by Robbie Antenesse and Alamantus GameDev ("us", "we", or "our").
Your access to and use of the Service is conditioned on your acceptance of and compliance with these Terms. These Terms apply to all visitors, users and others who access or use the Service. By accessing or using the Service you agree to be bound by these Terms. If you disagree with any part of the terms then you may not access the Service.
### Termination
We may terminate or suspend access to our Service immediately, without prior notice or liability, for any reason whatsoever, including without limitation if you breach the Terms. All provisions of the Terms which by their nature should survive termination shall survive termination, including, without limitation, ownership provisions, warranty disclaimers, indemnity and limitations of liability.
### Links To Other Web Sites
Our Service may contain links to third-party web sites or services that are not owned or controlled by Robbie Antenesse and Alamantus GameDev.
Robbie Antenesse and Alamantus GameDev has no control over, and assumes no responsibility for, the content, privacy policies, or practices of any third party web sites or services. You further acknowledge and agree that Robbie Antenesse and Alamantus GameDev shall not be responsible or liable, directly or indirectly, for any damage or loss caused or alleged to be caused by or in connection with use of or reliance on any such content, goods or services available on or through any such web sites or services.
We strongly advise you to read the terms and conditions and privacy policies of any third-party web sites or services that you visit.
### Governing Law
These Terms shall be governed and construed in accordance with the laws of the United States of America, without regard to its conflict of law provisions. Our failure to enforce any right or provision of these Terms will not be considered a waiver of those rights. If any provision of these Terms is held to be invalid or unenforceable by a court, the remaining provisions of these Terms will remain in effect. These Terms constitute the entire agreement between us regarding our Service, and supersede and replace any prior agreements we might have between us regarding the Service.
### Changes
We reserve the right, at our sole discretion, to modify or replace these Terms at any time. If a revision is material we will try to provide at least 5 days notice prior to any new terms taking effect. What constitutes a material change will be determined at our sole discretion.
By continuing to access or use our Service after those revisions become effective, you agree to be bound by the revised terms. If you do not agree to the new terms, please stop using the Service.
### Contact Us
If you have any questions about these Terms, please contact us by email at gamedev (at) alamantus (dot) com or follow us on Twitter @alamantus.

View File

@ -80,7 +80,7 @@ input, textarea, select, option, button {
border-color: #d09b84 #915237 #915237 #d09b84;
}
#dictionaryDescription, .management, #settingsOptions, #aboutPage {
#dictionaryDescription, .management, #settingsOptions, #infoPage {
background: #f2d5b2;
}
@ -100,7 +100,7 @@ input, textarea, select, option, button {
#loginLink, #logoutLink,
#descriptionToggle, #settingsButton,
.deleteCancelButton, .deleteConfirmButton,
#settingsScreenCloseButton, #aboutScreenCloseButton {
#settingsScreenCloseButton, #infoScreenCloseButton {
background: #e0c19c;
}

View File

@ -237,7 +237,7 @@ searchTerm {
margin: 10px;
}
#settingsBackgroundFade, #aboutBackgroundFade {
#settingsBackgroundFade, #infoBackgroundFade {
position: fixed;
top: 0;
left: 0;
@ -247,7 +247,7 @@ searchTerm {
opacity: 0.75;
}
#settingsOptions, #aboutPage {
#settingsOptions, #infoPage {
position: fixed;
top: 6%;
left: 6%;
@ -264,7 +264,7 @@ searchTerm {
}
#settingsButton, #settingsScreenCloseButton,
#settingsSaveButtons button, #aboutScreenCloseButton {
#settingsSaveButtons button, #infoScreenCloseButton {
float: right;
font-size: 12px;
}

View File

@ -8,21 +8,13 @@
<link href="css/styles.css" rel="stylesheet" />
<link href="css/lexiconga.css" rel="stylesheet" />
<!-- Markdown Parser -->
<script src="js/markdown-js/markdown.min.js"></script>
<!-- JSON Search -->
<script src="js/defiant-js/defiant-latest.min.js"></script>
<script src="js/dictionaryBuilder.js"></script>
</head>
<body>
<header>
<div id="headerPadder">
<a href="/" id="siteLogo">Lexiconga Dictionary Builder</a>
<div style="float:right;margin: 16px 8px;font-size:12px;">
<span id="aboutButton" class="clickable" onclick="ShowAbout()">About Lexiconga</span>
<span id="aboutButton" class="clickable" onclick="ShowInfo('about')">About Lexiconga</span>
</div>
<div id="loginoutArea" style="display:none;">
<a href="?login" id="loginLink" class="clickable">Log In</a>
@ -88,6 +80,10 @@
<div id="theDictionary"></div>
</div>
<div id="rightColumn" class="googleads" style="float:right;width:20%;max-width:300px;min-width:200px;">
<?php include_once("php/google/adsense.php"); ?>
</div>
<div id="settingsScreen" style="display:none;">
<div id="settingsBackgroundFade" onclick="HideSettings()"></div>
@ -143,16 +139,24 @@
</div>
</div>
<div id="aboutScreen" style="display:none;">
<div id="aboutBackgroundFade" onclick="HideAbout()"></div>
<div id="aboutPage">
<span id="aboutScreenCloseButton" class="clickable" onclick="HideAbout()">Close</span>
<div id="aboutText"></div>
<div id="infoScreen" style="display:none;">
<div id="infoBackgroundFade" onclick="HideInfo()"></div>
<div id="infoPage">
<span id="infoScreenCloseButton" class="clickable" onclick="HideInfo()">Close</span>
<div id="infoText"></div>
</div>
</div>
</contents>
<footer>
Version <script>document.write(currentVersion);</script>. Dictionary Builder only guaranteed to work with most up-to-date HTML5 browsers.
Dictionary Builder only guaranteed to work with most up-to-date HTML5 browsers. <span class="clickable" onclick="ShowInfo('terms')" style="font-size:12px;">Terms</span> <span class="clickable" onclick="ShowInfo('privacy')" style="font-size:12px;">Privacy</span>
</footer>
<!-- Markdown Parser -->
<script src="js/markdown-js/markdown.min.js"></script>
<!-- JSON Search -->
<script src="js/defiant-js/defiant-latest.min.js"></script>
<!-- Main Script -->
<script src="js/dictionaryBuilder.js"></script>
<?php include_once("php/google/analytics.php"); ?>
</body>
</html>

View File

@ -1,6 +1,6 @@
/* global markdown */
/* global Defiant */
//Requires Markdown.js parser
var currentVersion = 0.2;
var currentDictionary = {
@ -23,15 +23,29 @@ var savedScroll = {
y: 0
}
var aboutText, termsText, privacyText;
window.onload = function () {
LoadDictionary();
ClearForm();
GetTextFile("README.md");
GetTextFile("TERMS.md");
GetTextFile("PRIVACY.md");
}
function GetTextFile(filename) {
var readmeFileRequest = new XMLHttpRequest();
readmeFileRequest.open('GET', 'README.md');
readmeFileRequest.open('GET', filename);
readmeFileRequest.onreadystatechange = function() {
if (readmeFileRequest.readyState == 4 && readmeFileRequest.status == 200) {
document.getElementById("aboutText").innerHTML = markdown.toHTML(readmeFileRequest.responseText);
if (filename == "TERMS.md") {
termsText = markdown.toHTML(readmeFileRequest.responseText);
} else if (filename == "PRIVACY.md") {
privacyText = markdown.toHTML(readmeFileRequest.responseText);
} else {
aboutText = markdown.toHTML(readmeFileRequest.responseText);
}
}
}
readmeFileRequest.send();
@ -312,12 +326,19 @@ function ManagementArea(itemIndex) {
return managementHTML;
}
function ShowAbout() {
document.getElementById("aboutScreen").style.display = "block";
function ShowInfo(text) {
if (text == "terms") {
document.getElementById("infoText").innerHTML = termsText;
} else if (text == "privacy") {
document.getElementById("infoText").innerHTML = privacyText;
} else {
document.getElementById("infoText").innerHTML = aboutText;
}
document.getElementById("infoScreen").style.display = "block";
}
function HideAbout() {
document.getElementById("aboutScreen").style.display = "none";
function HideInfo() {
document.getElementById("infoScreen").style.display = "none";
}
function ToggleCaseSensitiveOption() {