From 1271e37d693a8d9c0e70b5b6073804178a3414ed Mon Sep 17 00:00:00 2001 From: Nishant Arora Date: Sat, 24 Dec 2016 17:21:37 +0530 Subject: [PATCH] Improved design. Added article show page --- client/app/index.jsx | 3 +- client/app/static/app.jsx | 24 +++++++++-- client/app/static/article.jsx | 60 ++++++++++++++++++++++++++ client/app/static/browse_articles.jsx | 6 +-- client/app/static/browse_topics.jsx | 3 +- client/app/static/home.jsx | 9 ++-- client/assets/bootstrap.css | 39 +++++++++-------- client/assets/logo.png | Bin 36851 -> 14915 bytes client/assets/style.css | 43 +++++++++++++++--- db/matterwiki.sqlite | Bin 12288 -> 12288 bytes package.json | 4 ++ 11 files changed, 151 insertions(+), 40 deletions(-) create mode 100644 client/app/static/article.jsx diff --git a/client/app/index.jsx b/client/app/index.jsx index f740758..b702615 100644 --- a/client/app/index.jsx +++ b/client/app/index.jsx @@ -7,6 +7,7 @@ import Home from './static/home.jsx'; import Login from './static/login.jsx'; import About from './static/about.jsx'; import Product from './static/product.jsx'; +import Article from './static/article.jsx'; render( @@ -15,7 +16,7 @@ render( - + , document.body); diff --git a/client/app/static/app.jsx b/client/app/static/app.jsx index 32c79e4..7e4d7c2 100644 --- a/client/app/static/app.jsx +++ b/client/app/static/app.jsx @@ -4,9 +4,27 @@ import {Link} from 'react-router'; const App = React.createClass({ render () { return(
-
- -
+
{this.props.children}
diff --git a/client/app/static/article.jsx b/client/app/static/article.jsx new file mode 100644 index 0000000..db31abe --- /dev/null +++ b/client/app/static/article.jsx @@ -0,0 +1,60 @@ +import React from 'react'; +import Error from './error.jsx'; + +class ViewArticle extends React.Component { + constructor(props) { + super(props); + this.state = {error: "", article: {}}; + } + componentDidMount(){ + console.log("Component Mounted!"); + console.log(this.props.params.articleId); + var myHeaders = new Headers({ + "Content-Type": "application/x-www-form-urlencoded", + "x-access-token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InNoaXZhbUBtYXR0ZXJ3aWtpLmNvbSIsImlkIjoyLCJuYW1lIjoiU2hpdmFtIiwicGFzc3dvcmQiOiIkMmEkMTAkYlJpVlRNSE9Lb2JCbTlGNktIR1RVT3hPMEswWWZvbTRYNHRiYUg4aHZSV3J5bFZRTHNqcUsiLCJhYm91dCI6Im5vIGlkZWEiLCJjcmVhdGVkX2F0IjoiMjAxNi0wOS0yNCAxMTozMjowMCIsInVwZGF0ZWRfYXQiOiIyMDE2LTA5LTI0IDExOjMyOjAwIiwiaWF0IjoxNDgyNTY3NTIxLCJleHAiOjE0ODI2NTM5MjF9.88UVanC8JG-qpDOKW5Bu1Dgk6aJfuu0F28KnxPO6vFM" + }); + var myInit = { method: 'GET', + headers: myHeaders, + }; + var that = this; + fetch('/api/articles/'+this.props.params.articleId,myInit) + .then(function(response) { + console.log(response); + return response.json(); + }) + .then(function(response) { + if(response.error.error) + that.setState({error: response.error.message}) + else { + that.setState({article: response.data}) + console.log(that.state.article); + } + console.log(response); + }); + } + render () { + if(this.state.error) { + return + } + if(this.state.article) { + return(
+
+

{this.state.article.title} +

+
+ Last updated on {new Date(this.state.article.updated_at).toDateString()} +
+
+
+ {this.state.article.body} +
+
+ ); + } + else { + return
There are no articles
; + } + } +} + +export default ViewArticle; diff --git a/client/app/static/browse_articles.jsx b/client/app/static/browse_articles.jsx index 8a3a117..1db66d3 100644 --- a/client/app/static/browse_articles.jsx +++ b/client/app/static/browse_articles.jsx @@ -1,6 +1,6 @@ import React from 'react'; import Error from './error.jsx'; - +import {Link, browserHistory} from 'react-router'; class BrowseArticles extends React.Component { constructor(props) { super(props); @@ -10,7 +10,7 @@ class BrowseArticles extends React.Component { console.log("Component Mounted!"); var myHeaders = new Headers({ "Content-Type": "application/x-www-form-urlencoded", - "x-access-token": "" + "x-access-token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InNoaXZhbUBtYXR0ZXJ3aWtpLmNvbSIsImlkIjoyLCJuYW1lIjoiU2hpdmFtIiwicGFzc3dvcmQiOiIkMmEkMTAkYlJpVlRNSE9Lb2JCbTlGNktIR1RVT3hPMEswWWZvbTRYNHRiYUg4aHZSV3J5bFZRTHNqcUsiLCJhYm91dCI6Im5vIGlkZWEiLCJjcmVhdGVkX2F0IjoiMjAxNi0wOS0yNCAxMTozMjowMCIsInVwZGF0ZWRfYXQiOiIyMDE2LTA5LTI0IDExOjMyOjAwIiwiaWF0IjoxNDgyNTY3NTIxLCJleHAiOjE0ODI2NTM5MjF9.88UVanC8JG-qpDOKW5Bu1Dgk6aJfuu0F28KnxPO6vFM" }); var myInit = { method: 'GET', headers: myHeaders, @@ -44,7 +44,7 @@ class BrowseArticles extends React.Component { {this.state.articles.map(article => (
- {article.title} + {article.title}
{article.body} diff --git a/client/app/static/browse_topics.jsx b/client/app/static/browse_topics.jsx index e76e7e6..09731a5 100644 --- a/client/app/static/browse_topics.jsx +++ b/client/app/static/browse_topics.jsx @@ -10,7 +10,7 @@ class BrowseTopics extends React.Component { console.log("Component Mounted!"); var myHeaders = new Headers({ "Content-Type": "application/x-www-form-urlencoded", - "x-access-token": "" + "x-access-token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InNoaXZhbUBtYXR0ZXJ3aWtpLmNvbSIsImlkIjoyLCJuYW1lIjoiU2hpdmFtIiwicGFzc3dvcmQiOiIkMmEkMTAkYlJpVlRNSE9Lb2JCbTlGNktIR1RVT3hPMEswWWZvbTRYNHRiYUg4aHZSV3J5bFZRTHNqcUsiLCJhYm91dCI6Im5vIGlkZWEiLCJjcmVhdGVkX2F0IjoiMjAxNi0wOS0yNCAxMTozMjowMCIsInVwZGF0ZWRfYXQiOiIyMDE2LTA5LTI0IDExOjMyOjAwIiwiaWF0IjoxNDgyNTY3NTIxLCJleHAiOjE0ODI2NTM5MjF9.88UVanC8JG-qpDOKW5Bu1Dgk6aJfuu0F28KnxPO6vFM" }); var myInit = { method: 'GET', headers: myHeaders, @@ -49,6 +49,7 @@ class BrowseTopics extends React.Component {
{topic.description}
+
))}
diff --git a/client/app/static/home.jsx b/client/app/static/home.jsx index 4f5fb2c..1d75cb7 100644 --- a/client/app/static/home.jsx +++ b/client/app/static/home.jsx @@ -5,14 +5,11 @@ import BrowseArticles from './browse_articles.jsx'; const Home = React.createClass({ render () { return(
-
- Browse Articles - -
-
+ +
-
+
); diff --git a/client/assets/bootstrap.css b/client/assets/bootstrap.css index 349f15b..fe794cf 100644 --- a/client/assets/bootstrap.css +++ b/client/assets/bootstrap.css @@ -1100,13 +1100,13 @@ textarea { line-height: inherit; } a { - color: #337ab7; + color: #ff0066; text-decoration: none; } a:hover, a:focus { - color: #23527c; - text-decoration: underline; + color: #ff0066; + text-decoration: none; } a:focus { outline: 5px auto -webkit-focus-ring-color; @@ -1151,7 +1151,6 @@ hr { margin-bottom: 2em; border: 0; border-top: 1px solid #ccc; - max-width: 500px; margin-left: 0px; } .sr-only { @@ -3045,25 +3044,25 @@ fieldset[disabled] a.btn { pointer-events: none; } .btn-default { - color: #eca100; + color: #ff0066; background-color: #fff; - border: 1px solid #eca100; + border: 1px solid #ff0066; } .btn-default:focus, .btn-default.focus { color: #fff; - background-color: #eca100; + background-color: #ff0066; } .btn-default:hover { color: #fff; - background-color: #eca100; + background-color: #ff0066; } .btn-default:active, .btn-default.active, .open > .dropdown-toggle.btn-default { color: #fff; - background-color: #eca100; + background-color: #ff0066; } .btn-default:active:hover, .btn-default.active:hover, @@ -3075,7 +3074,7 @@ fieldset[disabled] a.btn { .btn-default.active.focus, .open > .dropdown-toggle.btn-default.focus { color: #fff; - background-color: #eca100; + background-color: #ff0066; } .btn-default:active, .btn-default.active, @@ -3091,7 +3090,7 @@ fieldset[disabled] .btn-default:focus, .btn-default.disabled.focus, .btn-default[disabled].focus, fieldset[disabled] .btn-default.focus { - background-color: #eca100; + background-color: #ff0066; } .btn-default .badge { color: #fff; @@ -4134,8 +4133,9 @@ select[multiple].input-group-sm > .input-group-btn > .btn { } .navbar { position: relative; - min-height: 50px; + min-height: 60px; margin-bottom: 20px; + margin-top: 10px; border: 1px solid transparent; } @media (min-width: 768px) { @@ -4241,8 +4241,8 @@ select[multiple].input-group-sm > .input-group-btn > .btn { } .navbar-brand { float: left; - height: 50px; - padding: 15px 15px; + height: 60px; + padding: 10px 10px; font-size: 18px; line-height: 20px; } @@ -4252,6 +4252,7 @@ select[multiple].input-group-sm > .input-group-btn > .btn { } .navbar-brand > img { display: block; + height: 100%; } @media (min-width: 768px) { .navbar > .container .navbar-brand, @@ -4290,8 +4291,8 @@ select[multiple].input-group-sm > .input-group-btn > .btn { margin: 7.5px -15px; } .navbar-nav > li > a { - padding-top: 10px; - padding-bottom: 10px; + padding-top: 20px; + padding-bottom: 20px; line-height: 20px; } @media (max-width: 767px) { @@ -4326,8 +4327,8 @@ select[multiple].input-group-sm > .input-group-btn > .btn { float: left; } .navbar-nav > li > a { - padding-top: 15px; - padding-bottom: 15px; + padding-top: 20px; + padding-bottom: 20px; } } .navbar-form { @@ -4424,7 +4425,7 @@ select[multiple].input-group-sm > .input-group-btn > .btn { border-bottom-left-radius: 0; } .navbar-btn { - margin-top: 8px; + margin-top: 12px; margin-bottom: 8px; } .navbar-btn.btn-sm { diff --git a/client/assets/logo.png b/client/assets/logo.png index ab5e5473ba25aefa48673cb1956784babc786fcf..446db6edc1ef39a19326e5055d934c0dd4019c4b 100644 GIT binary patch literal 14915 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 E0Zl=ec>n+a literal 36851 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 diff --git a/package.json b/package.json index b5ffd2a..0c5ea05 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "dev": "webpack -d --watch", + "webpack-server": "webpack-dev-server --content-base client/", "build": "webpack -p" }, "bin": { @@ -36,5 +37,8 @@ "react-router": "^2.6.1", "sqlite3": "^3.1.4", "webpack": "^1.13.2" + }, + "devDependencies": { + "webpack-dev-server": "^1.16.2" } }