add static pages
This commit is contained in:
parent
bd78b8e4d7
commit
5ba5100a52
19 changed files with 320 additions and 7 deletions
|
|
@ -15,6 +15,9 @@ const Index = () => (
|
|||
<Button href="https://pup.cleverbeagle.com">Read the Docs</Button>
|
||||
<Button href="https://github.com/cleverbeagle/pup"><i className="fa fa-star" /> Star on GitHub</Button>
|
||||
</div>
|
||||
<footer>
|
||||
<p>Need help and want to stay accountable building your product? <a href="https://cleverbeagle.com?utm_source=pupappindex&utm_campaign=oss">Check out Clever Beagle</a>.</p>
|
||||
</footer>
|
||||
</div>
|
||||
);
|
||||
|
||||
|
|
|
|||
|
|
@ -33,14 +33,23 @@
|
|||
.btn {
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
|
||||
.btn:last-child {
|
||||
background: darken($cb-blue, 20%);
|
||||
color: lighten($cb-blue, 30%);
|
||||
footer {
|
||||
margin: 20px -20px -20px;
|
||||
border-top: 1px solid darken($cb-blue, 10%);
|
||||
padding: 20px;
|
||||
|
||||
&:hover {
|
||||
color: #fff;
|
||||
}
|
||||
p {
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
color: lighten($cb-blue, 35%);
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
p a {
|
||||
color: lighten($cb-blue, 35%);
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -48,11 +57,19 @@
|
|||
@include breakpoint(tablet) {
|
||||
.Index {
|
||||
padding: 30px;
|
||||
|
||||
footer {
|
||||
margin: 30px -30px -30px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint(desktop) {
|
||||
.Index {
|
||||
padding: 40px;
|
||||
|
||||
footer {
|
||||
margin: 40px -40px -40px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
44
imports/ui/pages/Page/Page.js
Normal file
44
imports/ui/pages/Page/Page.js
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Meteor } from 'meteor/meteor';
|
||||
import { createContainer } from 'meteor/react-meteor-data';
|
||||
import { ReactiveVar } from 'meteor/reactive-var';
|
||||
import PageHeader from '../../components/PageHeader/PageHeader';
|
||||
import Content from '../../components/Content/Content';
|
||||
|
||||
import './Page.scss';
|
||||
|
||||
const Page = ({ title, subtitle, content }) => (
|
||||
<div className="Page">
|
||||
<PageHeader title={title} subtitle={subtitle} />
|
||||
<Content content={content} />
|
||||
</div>
|
||||
);
|
||||
|
||||
Page.defaultProps = {
|
||||
subtitle: '',
|
||||
};
|
||||
|
||||
Page.propTypes = {
|
||||
title: PropTypes.string.isRequired,
|
||||
subtitle: PropTypes.string,
|
||||
content: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
const pageContent = new ReactiveVar('');
|
||||
|
||||
export default createContainer(({ content, page }) => {
|
||||
window.scrollTo(0, 0); // Force window to top of page.
|
||||
|
||||
Meteor.call('utility.getPage', page, (error, response) => {
|
||||
if (error) {
|
||||
console.warn(error);
|
||||
} else {
|
||||
pageContent.set(response);
|
||||
}
|
||||
});
|
||||
|
||||
return {
|
||||
content: content || pageContent.get(),
|
||||
};
|
||||
}, Page);
|
||||
11
imports/ui/pages/Page/Page.scss
Normal file
11
imports/ui/pages/Page/Page.scss
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
@import '../../stylesheets/mixins';
|
||||
|
||||
.Page {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
@include breakpoint(tablet) {
|
||||
.Page {
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
}
|
||||
14
imports/ui/pages/Privacy/Privacy.js
Normal file
14
imports/ui/pages/Privacy/Privacy.js
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
import React from 'react';
|
||||
import Page from '../Page/Page';
|
||||
|
||||
const Privacy = () => (
|
||||
<div className="Privacy">
|
||||
<Page
|
||||
title="Privacy Policy"
|
||||
subtitle="Last updated May 29th, 2017"
|
||||
page="privacy"
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
||||
export default Privacy;
|
||||
14
imports/ui/pages/Terms/Terms.js
Normal file
14
imports/ui/pages/Terms/Terms.js
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
import React from 'react';
|
||||
import Page from '../Page/Page';
|
||||
|
||||
const Terms = () => (
|
||||
<div className="Terms">
|
||||
<Page
|
||||
title="Terms of Service"
|
||||
subtitle="Last updated May 29th, 2017"
|
||||
page="terms"
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
||||
export default Terms;
|
||||
Loading…
Add table
Add a link
Reference in a new issue