chore: updated privacy and tos

This commit is contained in:
Kyle Gill
2019-05-11 08:30:12 -06:00
parent 15f417a0c9
commit 02b42f623d
8 changed files with 236 additions and 44 deletions

View File

@@ -1,17 +1,17 @@
index.html,1556176018433,aa46c4f598d9552e8f0873ab21ed7cbe12b2682bd7592543781dac7adf2a8149
asset-manifest.json,1556176018433,33c8239e078b54bf504f4d145a05c8432557dd135d24c7d317f474674f62fc4d
icon.png,1555998067072,40bb863e95a5ea2c01be6eba0beb6801183746f99d40eb393a6b4776a11d8636
asset-manifest.json,1556898463490,f723129505a2111ca263ef5479bd10b1f0efc470c951b596f13dcf48d8649c7e
index.html,1556898463490,d2791f63e8652b46a6a92df716e200ef6670799c079df85344ad44c0732a0338
precache-manifest.a096a268b779b4480b9a46727f75551b.js,1556898463490,3ee2e9cfd0185210ebe9c8fe3dd342b86254c667c2e9b51369438728c9f7e324
manifest.json,1555998067072,20792c911b58103a520ddb6b0f7bcc7ce3bceaa15480cbfd913f8b3620864341
precache-manifest.050522f6256dba7d132ae9fbbf4c773d.js,1556176018433,712d6d7119a4a4c58403d73287050b58310cff27faffc90454283650d8872df0
service-worker.js,1556176018434,8da8661471cda8bea1cbbad86144237fee16795631c831798567df3151f3955a
icon.png,1555998067072,40bb863e95a5ea2c01be6eba0beb6801183746f99d40eb393a6b4776a11d8636
service-worker.js,1556898463490,de05f8df6933f0d1ff232f36ce73e94b0faafe0ac3ce9882fbbacc7fc608fc2d
reactfavicon.ico,1555998067072,b72f7455f00e4e58792d2bca892abb068e2213838c0316d6b7a0d6d16acd1955
static/css/main.1716334c.chunk.css.map,1556176018457,c50d028b9046b1664c1a246227bee082eaf7a5f46f8857aad8963283c298dacd
static/css/main.1716334c.chunk.css,1556176018458,dadd472a021e6f3502d58df7b11455a233a9a25f87ce536e693c18db20036e09
splash.png,1555998067072,e06cb28b9a2a8275ce53eb5eead2851f684f537a6a30f0f0bf360b8813fa273f
static/css/main.1716334c.chunk.css.map,1556898463519,c50d028b9046b1664c1a246227bee082eaf7a5f46f8857aad8963283c298dacd
static/css/main.1716334c.chunk.css,1556898463519,dadd472a021e6f3502d58df7b11455a233a9a25f87ce536e693c18db20036e09
favicon.ico,1555998067071,229055d54fe1f70f3d835e9d723ea2fef78f2af82ed7ce45efa2f4623c1c1131
static/js/runtime~main.a8a9905a.js.map,1556176018457,c337bf8b58896da637a6e50ab8cfc779eb1ec42c55f8ec429030a03454a549db
static/js/runtime~main.a8a9905a.js,1556176018440,e1af5f94fdd13901b2e433d0d7607e27c01458151c35b1fe4b7feda2a32b7aa9
static/js/main.6c2b0517.chunk.js,1556176018457,9cf8d9f154635af652e9ae2fc7e68a8757fa26df6a575f9a336cd4a391058438
static/js/main.6c2b0517.chunk.js.map,1556176018458,966a4cb14716c05eadfc8a16b55ee0ea67330431927de0e2b75ab8ce1866de48
static/js/2.7e4c3aa3.chunk.js,1556176018457,16b9d05993c4bc4b4561adaf175b3a7a20ab5afe1888cfec1fad729a22423030
static/js/2.7e4c3aa3.chunk.js.map,1556176018458,071285cf9f31f233105eddb27e3e22b3873c1223229974a53c5fd0c4133bbec2
static/js/runtime~main.a8a9905a.js,1556898463519,e1af5f94fdd13901b2e433d0d7607e27c01458151c35b1fe4b7feda2a32b7aa9
static/js/runtime~main.a8a9905a.js.map,1556898463519,c337bf8b58896da637a6e50ab8cfc779eb1ec42c55f8ec429030a03454a549db
static/js/main.a10ab5ea.chunk.js,1556898463491,04608cac454dbaa153b80f00064f3cb33edc8aad4a2710d56a385fd8e86a3bc5
splash.png,1555998067072,e06cb28b9a2a8275ce53eb5eead2851f684f537a6a30f0f0bf360b8813fa273f
static/js/main.a10ab5ea.chunk.js.map,1556898463521,777ecf9469d772313dec6ecc4b5d7de7425b13cf8529747c21e02254c9251081
static/js/2.3f4eb03d.chunk.js,1556898463520,47a71ca572b94638afd405721c3ef6fb4aef5962dd0db71eb6ff9f284be1cd48
static/js/2.3f4eb03d.chunk.js.map,1556898463521,79d34370558394348a525ac8b13043f85a4b8ba81ecc94a4d7ed54ebb1b33bcd

View File

@@ -16,6 +16,8 @@ import Login from "./components/screens/Login"
import Search from "./components/screens/Search"
import Register from "./components/screens/Register"
import Start from "./components/screens/Start"
import Terms from "./components/screens/Terms"
import Privacy from "./components/screens/Privacy"
import PrivateRoute from "./components/PrivateRoute"
import { OnlineContext } from "./components/context/online"
@@ -117,9 +119,16 @@ class App extends Component {
component={Search}
exact
/>
<Route path="/user" component={User} exact />
<PrivateRoute
authed={authed}
path="/user"
component={User}
exact
/>
<Route path="/login" component={Login} exact />
<Route path="/register" component={Register} exact />
<Route path="/terms" component={Terms} exact />
<Route path="/privacy" component={Privacy} exact />
<Route path="/" component={Start} exact />
</RouteLayout>
</FullscreenLayout>

View File

@@ -0,0 +1,93 @@
import React, { Component } from "react"
import { withRouter } from "react-router-dom"
import styled from "@emotion/styled"
import { compose } from "recompose"
import { format } from "date-fns"
import { withTheme } from "emotion-theming"
import { Input, Button, P } from "../../elements"
import { SIZES } from "../../../styles/constants"
import { StyledLink as Link } from "../../elements"
const Terms = ({}) => (
<>
<h1>Privacy Policy</h1>
<em>Last update: April 30, 2019</em>
<P>
Sol Journal supports the following browsers: Chrome (latest), Safari
(latest), Firefox (50+)
</P>
<h2>Rights</h2>
<P>
You don't have to provide your real name when you register to an account,
but you need to use a valid/verifiable email address.
<br />
<br />
You have the right to export your data at any time, in JSON format.
<br />
<br />
Your data will not be intentionally shown to other users or shared with
third parties.
<br />
<br />
Your personal data will not be shared with anyone without your consent.
<br />
<br />
Data saved on the hosted version of Sol Journal is encrypted as it is
transmitted and stored. However, data is not salted or hashed when it is
stored on Google servers so database administrators (me) can view the data
as plaintext. I won't view or use the data of other users for any reason
but if you would like to have more ownership of your data you can setup
the code on your own.
<br />
<br />
If the site ceases operation, you will receive an opportunity to export
all your data before the site dies.
<br />
<br />
Any new features that affect privacy will be strictly opt-in.
</P>
<h2>Responsibilites</h2>
<P>
You will not use the site to store illegal information or data under
United States law (or any law).
<br />
<br />
You have to be at least 18+ to create an account and use the site.
<br />
<br />
You must not abuse the site by knowingly posting malicious code that could
harm you or the other users.
<br />
<br />
You may not make automated requests to the site.
<br />
<br />
You may not abuse the registration system.
<br />
<br />
You are responsible for keeping your account secure.
<br />
<br />I reserve the right to close accounts that abuse the system
(millions of entries or overloading services with requests) or use it in
an unreasonable manner.
</P>
<h2>Other</h2>
<P>
Other important legal stuff Though I want to provide a great service,
there are certain things about the service I cannot promise. For example,
the services and software are provided as-is, at your own risk, without
express or implied warranty or condition of any kind. I also disclaim any
warranties of merchantability, fitness for a particular purpose or
non-infringement. Sol Journal will have no responsibility for any harm to
your computer system, loss or corruption of data, or other harm that
results from your access to or use of the Services or Software.
<br />
<br />
These Terms can change at any time, but I'll try to be reasonable. This is
a service I've always and hope to be able to run it for a long time.
</P>
</>
)
export default withTheme(Terms)

View File

@@ -0,0 +1,2 @@
import Privacy from "./Privacy"
export default Privacy

View File

@@ -17,6 +17,7 @@ const SearchGrid = styled.div`
display: grid;
grid-template-columns: 1fr;
grid-gap: 10px;
margin-bottom: 60px;
`
const SearchLayout = styled.div`
width: 100%;
@@ -123,33 +124,36 @@ class Search extends Component {
/>
</div>
) : entries.length > 0 ? (
entries.map((entry, index) => (
<Link
key={index}
to={`${entry.year}/${pad(entry.month)}/${pad(entry.day)}`}
style={{ textDecoration: "none" }}
>
<SearchResult
css={css`
animation: ${fadeKeyFrames} 0.2s ease-in;
`}
>
<div
css={css`
font-style: italic;
color: ${theme.colors.secondary};
margin-bottom: 5px;
`}
entries.map(
(entry, index) =>
entry.text.length > 1 && (
<Link
key={index}
to={`${entry.year}/${pad(entry.month)}/${pad(entry.day)}`}
style={{ textDecoration: "none" }}
>
{entry.day}/{entry.month}/{entry.year}
</div>
<div>
{entry.text.substring(0, 128)}
{entry.text.length >= 128 && "..."}
</div>
</SearchResult>
</Link>
))
<SearchResult
css={css`
animation: ${fadeKeyFrames} 0.2s ease-in;
`}
>
<div
css={css`
font-style: italic;
color: ${theme.colors.secondary};
margin-bottom: 5px;
`}
>
{entry.day}/{entry.month}/{entry.year}
</div>
<div>
{entry.text.substring(0, 128)}
{entry.text.length >= 128 && "..."}
</div>
</SearchResult>
</Link>
)
)
) : (
<div
css={css`

View File

@@ -42,8 +42,10 @@ const Footer = styled.footer`
text-align: center;
color: ${props => props.theme.colors.secondary};
`
const FooterLink = styled.a`
const FooterLink = styled(Link)`
cursor: pointer;
color: ${props => props.theme.colors.secondary};
text-decoration: none;
margin: 10px;
&:hover {
color: ${props => props.theme.colors.tertiary};
@@ -133,8 +135,8 @@ class Start extends Component {
</div>
<div>
<FooterLink>View on GitHub</FooterLink>
<FooterLink>Terms of Service</FooterLink>
<FooterLink>Privacy Policy</FooterLink>
<FooterLink to="terms">Terms of Service</FooterLink>
<FooterLink to="privacy">Privacy Policy</FooterLink>
</div>
<div>&copy; 2019</div>
</Footer>

View File

@@ -0,0 +1,80 @@
import React from "react"
import { P } from "../../elements"
const Terms = () => (
<>
<h1>Terms of Service</h1>
<em>Last update: April 30, 2019</em>
<h2>Scope of Service</h2>
<P>
Sol Journal supports the following browsers: Chrome (latest), Safari
(latest), Firefox (50+)
</P>
<h2>Rights</h2>
<P>
You don't have to provide your real name when you register to an account,
but you need to use a valid/verifiable email address.
<br />
<br />
You have the right to export your data at any time, in JSON format.
<br />
<br />
Your data will not be intentionally shown to other users or shared with
third parties.
<br />
<br />
Your personal data will not be shared with anyone without your consent.
<br />
<br />
We reserve the right to discontinue any feature of the service at any
time. If the site ceases operation, you will receive an opportunity to
export all your data before the site dies.
<br />
<br />
Any new features that affect privacy will be strictly opt-in.
</P>
<h2>Responsibilites</h2>
<P>
You will not use the site to store illegal information or data under
United States law (or any law).
<br />
<br />
You have to be at least 18+ to create an account and use the site.
<br />
<br />
You must not abuse the site by knowingly posting malicious code that could
harm you or the other users.
<br />
<br />
You may not make automated requests to the site.
<br />
<br />
You may not abuse the registration system.
<br />
<br />
You are responsible for keeping your account secure.
<br />
<br />I reserve the right to close accounts that abuse the system
(millions of entries or overloading services with requests) or use it in
an unreasonable manner.
</P>
<h2>Other</h2>
<P>
Other important legal stuff Though I want to provide a great service,
there are certain things about the service I cannot promise. For example,
the services and software are provided “as-is”, at your own risk, without
express or implied warranty or condition of any kind. I also disclaim any
warranties of merchantability, fitness for a particular purpose or
non-infringement. Sol Journal will have no responsibility for any harm to
your computer system, loss or corruption of data, or other harm that
results from your access to or use of the Services or Software.
<br />
<br />
These Terms can change at any time, but I'll try to be reasonable. This is
a service I've always and hope to be able to run it for a long time.
</P>
</>
)
export default Terms

View File

@@ -0,0 +1,2 @@
import Terms from "./Terms"
export default Terms