0
0
mirror of https://github.com/naturalcrit/homebrewery.git synced 2025-12-28 17:52:38 +00:00

Added the new pages and router

This commit is contained in:
Scott Tolksdorf
2015-12-20 13:16:57 -05:00
parent 0a9143bcd4
commit 3059586e20
11 changed files with 152 additions and 45 deletions

View File

@@ -0,0 +1,25 @@
var React = require('react');
var _ = require('lodash');
var cx = require('classnames');
var EditPage = React.createClass({
getDefaultProps: function() {
return {
text : "",
id : null
};
},
render : function(){
var self = this;
return(
<div className='editPage'>
{this.props.id}
EditPage Ready!
{this.props.text}
</div>
);
}
});
module.exports = EditPage;

View File

@@ -0,0 +1,3 @@
.editPage{
}

View File

@@ -0,0 +1,46 @@
var React = require('react');
var _ = require('lodash');
var cx = require('classnames');
var PHB = require('../phb/phb.jsx');
var Editor = require('../editor/editor.jsx');
var KEY = 'naturalCrit-homebrew';
var HomePage = React.createClass({
getInitialState: function() {
return {
text: "# Welcome"
};
},
componentDidMount: function() {
var storage = localStorage.getItem(KEY);
if(storage){
this.setState({
text : storage
})
}
},
handleTextChange : function(text){
this.setState({
text : text
});
localStorage.setItem(KEY, text);
},
render : function(){
var self = this;
return(
<div className='homePage'>
<Editor text={this.state.text} onChange={this.handleTextChange} />
<PHB text={this.state.text} />
</div>
);
}
});
module.exports = HomePage;

View File

@@ -0,0 +1,3 @@
.homePage{
}

View File

@@ -4,63 +4,33 @@ var cx = require('classnames');
var CreateRouter = require('pico-router').createRouter;
var PHB = require('./phb/phb.jsx');
var Editor = require('./editor/editor.jsx');
//var Snippets = require('./editor/snippets');
var KEY = 'naturalCrit-homebrew';
var Router = CreateRouter({
'/homebrew' : 'home',
'/homebrew/edit/:id' : function(args){
},
'/homebrew/share/:id' : function(args){
}
});
var HomePage = require('./homePage/homePage.jsx');
var EditPage = require('./editPage/editPage.jsx');
var SharePage = require('./sharePage/sharePage.jsx');
var Router;
var Homebrew = React.createClass({
getDefaultProps: function() {
return {
url : "",
text : ""
};
},
getInitialState: function() {
return {
text : "# Holla"
};
},
componentDidMount: function() {
var storage = localStorage.getItem(KEY);
if(storage){
this.setState({
text : storage
})
}
},
handleTextChange : function(text){
this.setState({
text : text
componentWillMount: function() {
Router = CreateRouter({
'/homebrew/edit/:id' : (args) => {
return <EditPage id={args.id} text={this.props.text} />
},
'/homebrew/share/:id' : (args) => {
return <SharePage id={args.id} text={this.props.text} />
},
'/homebrew*' : <HomePage />,
});
localStorage.setItem(KEY, text);
},
render : function(){
var self = this;
return(
<div className='homebrew'>
<Editor text={this.state.text} onChange={this.handleTextChange} />
<PHB text={this.state.text} />
<Router initialUrl={this.props.url}/>
</div>
);
}

View File

@@ -0,0 +1,17 @@
var React = require('react');
var _ = require('lodash');
var cx = require('classnames');
var Navbar = React.createClass({
render : function(){
var self = this;
return(
<div className='navbar'>
Navbar Ready!
</div>
);
}
});
module.exports = Navbar;

View File

@@ -0,0 +1,3 @@
.navbar{
}

View File

@@ -0,0 +1,17 @@
var React = require('react');
var _ = require('lodash');
var cx = require('classnames');
var SharePage = React.createClass({
render : function(){
var self = this;
return(
<div className='sharePage'>
SharePage Ready!
</div>
);
}
});
module.exports = SharePage;

View File

@@ -0,0 +1,3 @@
.sharePage{
}

View File

@@ -0,0 +1,17 @@
var React = require('react');
var _ = require('lodash');
var cx = require('classnames');
var Statusbar = React.createClass({
render : function(){
var self = this;
return(
<div className='statusbar'>
Statusbar Ready!
</div>
);
}
});
module.exports = Statusbar;

View File

@@ -0,0 +1,3 @@
.statusbar{
}