Skip to content

Commit

Permalink
adds /resources stub with Privacy Policy
Browse files Browse the repository at this point in the history
  • Loading branch information
davelandry committed Feb 20, 2020
1 parent 96093bb commit 6cd9b42
Show file tree
Hide file tree
Showing 7 changed files with 125 additions and 0 deletions.
5 changes: 5 additions & 0 deletions app/components/Error.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.app-error {
background-color: var(--dark-4);
min-height: 90vh;
padding-top: var(--nav-height);
}
12 changes: 12 additions & 0 deletions app/components/Error.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import React, {Component} from "react";
import {NonIdealState} from "@blueprintjs/core";
import "./Error.css";

export default class Error extends Component {
render() {
return <NonIdealState
className="app-error"
title="404 Page Not Found"
icon="error" />;
}
}
1 change: 1 addition & 0 deletions app/helpers/consts.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ const locale = "en";
const DEFAULT_PREDICTION_COLOR = "#209292";

module.exports = {
EMAIL: "[email protected]",
DEFAULT_PREDICTION_COLOR,
NAV: [
// profiles
Expand Down
58 changes: 58 additions & 0 deletions app/pages/Resources/Privacy.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
import React, {Component} from "react";
import {Link} from "react-router";
import {EMAIL} from "helpers/consts";

export default class Privacy extends Component {

render() {

return (
<div className="privacy">

<h1>Privacy Policy</h1>

<p>
At the OEC, accessible from oec.world, one of our main priorities is the privacy of our visitors. This Privacy Policy document contains the type of information that is collected and recorded by OEC and how we use it.
</p>
<p>
If you have additional questions or require more information about our Privacy Policy, do not hesitate to contact us at <a href={`mailto:${EMAIL}`}>{EMAIL}</a>.
</p>

<h2>Log Files</h2>
<p>
The OEC follows a standard procedure of using log files. These files log visitors when they visit websites. All hosting companies do this and is a part of hosting services&apos; analytics. The information collected by log files include internet protocol (IP) addresses, browser type, Internet Service Provider (ISP), date and timestamp, referring/exit pages, and possibly the number of clicks. These are not linked to any information that is personally identifiable. The purpose of the information is for analyzing trends, administering the site, tracking users&apos; movement on the website, and gathering demographic information.
</p>

<h2>Cookies and Web Beacons</h2>
<p>
Like any other website, the OEC uses &apos;cookies&apos;. These cookies are used to store information including visitors&apos; preferences, and the pages on the website that the visitor accessed or visited. The information is used to optimize the users&apos; experience by customizing our web page content based on visitors&apos; browser type and/or other information.
</p>

<h2>Google DoubleClick DART Cookie</h2>
<p>
Google is one of the third-party vendors on our site. It also uses cookies, known as DART cookies, to serve ads to our site visitors based upon their visit to oec.world and other sites on the internet. However, visitors may choose to decline the use of DART cookies by visiting the Google ad and content network Privacy Policy at the following URL: <a href="https://policies.google.com/technologies/ads" target="_blank" rel="noopener noreferrer">https://policies.google.com/technologies/ads</a>
</p>

<h2>Third Party Privacy Policies</h2>
<p>
The OEC&apos;s Privacy Policy does not apply to other advertisers or websites. Thus, we are advising you to consult the respective Privacy Policies of these third-party ad servers for more detailed information. It may include their practices and instructions about how to opt-out of certain options.
</p>

<h2>Children&apos;s Information</h2>
<p>
Another part of our priority is adding protection for children while using the internet. We encourage parents and guardians to observe, participate in, and/or monitor and guide their online activity.
</p>
<p>
The OEC does not knowingly collect any Personal Identifiable Information from children under the age of 13. If you think that your child provided this kind of information on our website, we strongly encourage you to contact us immediately and we will do our best efforts to promptly remove such information from our records.
</p>

<h2>Consent</h2>
<p>
By using our website, you hereby consent to our Privacy Policy and agree to its <Link to="/en/resources/terms">Terms and Conditions</Link>.
</p>

</div>
);
}

}
10 changes: 10 additions & 0 deletions app/pages/Resources/index.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
.resources {
background: var(--dark-4);
color: var(--white);
padding-top: var(--nav-height);
& .resources-content {
margin: var(--gutter-sm) auto;
max-width: 600px;
width: 100%;
}
}
37 changes: 37 additions & 0 deletions app/pages/Resources/index.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
import React, {Component} from "react";
import {hot} from "react-hot-loader/root";
import "./index.css";

import OECNavbar from "../../components/OECNavbar";
import Footer from "../../components/Footer";

import Error from "../../components/Error";
import Privacy from "./Privacy";

class Resources extends Component {

render() {

const {page} = this.props.router.params;

return (
<div className="resources">
<OECNavbar />
<div className="resources-content">
{ (function() {
switch (page) {
case "privacy":
return <Privacy />;
default:
return <Error />;
}
}()) }
</div>
<Footer />
</div>
);
}

}

export default hot(Resources);
2 changes: 2 additions & 0 deletions app/routes.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ import Account from "./pages/User/Account";
import Subscription from "./pages/User/Subscription";
import Rankings from "./pages/Rankings";
import About from "./pages/About";
import Resources from "./pages/Resources";

/** */
export default function RouteCreate() {
Expand Down Expand Up @@ -81,6 +82,7 @@ export default function RouteCreate() {
<Route exact path="/:lang/subnational" component={Subnational} />
<Route exact path="/:lang/prediction" component={Prediction} />
<Route exact path="/:lang/about" component={About} />
<Route exact path="/:lang/resources/:page" component={Resources} />
<Route exact path="/:lang/rankings/:category/:measure/" component={Rankings} />
</Route>
);
Expand Down

0 comments on commit 6cd9b42

Please sign in to comment.