0
0
mirror of https://github.com/naturalcrit/homebrewery.git synced 2025-12-27 22:22:42 +00:00

Swapped over all urls and refs to old url scheme

This commit is contained in:
Scott Tolksdorf
2016-06-04 18:29:25 -04:00
parent 60092f404c
commit 7ca4e8ffa6
17 changed files with 144 additions and 401 deletions

View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -28,20 +28,20 @@ var Homebrew = React.createClass({
},
componentWillMount: function() {
Router = CreateRouter({
'/homebrew/edit/:id' : (args) => {
'/edit/:id' : (args) => {
return <EditPage id={args.id} brew={this.props.brew} />
},
'/homebrew/share/:id' : (args) => {
'/share/:id' : (args) => {
return <SharePage id={args.id} brew={this.props.brew} />
},
'/homebrew/changelog' : (args) => {
'/changelog' : (args) => {
return <SharePage brew={{title : 'Changelog', text : this.props.changelog}} />
},
'/homebrew/new' : (args) => {
'/new' : (args) => {
return <NewPage />
},
'/homebrew*' : <HomePage welcomeText={this.props.welcomeText} />,
'*' : <HomePage welcomeText={this.props.welcomeText} />,
});
},
render : function(){

View File

@@ -2,7 +2,7 @@ var React = require('react');
var Nav = require('naturalcrit/nav/nav.jsx');
module.exports = function(props){
return <Nav.item newTab={true} href='https://github.com/stolksdorf/naturalcrit/issues' color='red' icon='fa-bug'>
return <Nav.item newTab={true} href='https://github.com/stolksdorf/homebrewery/issues' color='red' icon='fa-bug'>
report issue
</Nav.item>
};

View File

@@ -8,10 +8,10 @@ var Navbar = React.createClass({
return <Nav.base>
<Nav.section>
<Nav.logo />
<Nav.item href='/homebrew' className='homebrewLogo'>
<Nav.item href='/' className='homebrewLogo'>
<div>The Homebrewery</div>
</Nav.item>
<Nav.item>v2.1.1</Nav.item>
<Nav.item>v2.2.0</Nav.item>
</Nav.section>
{this.props.children}
</Nav.base>

View File

@@ -2,7 +2,7 @@ var React = require('react');
var Nav = require('naturalcrit/nav/nav.jsx');
module.exports = function(props){
return <Nav.item newTab={true} href={'/homebrew/print/' + props.shareId +'?dialog=true'} color='purple' icon='fa-print'>
return <Nav.item newTab={true} href={'/print/' + props.shareId +'?dialog=true'} color='purple' icon='fa-print'>
print
</Nav.item>
};

View File

@@ -90,7 +90,7 @@ module.exports = {
currentBrew={{
id : this.props.brew.shareId,
title : this.props.brew.title,
url : `/homebrew/share/${this.props.brew.shareId}`
url : `/share/${this.props.brew.shareId}`
}}
/>
},
@@ -110,7 +110,7 @@ module.exports = {
currentBrew={{
id : this.props.brew.editId,
title : this.props.brew.title,
url : `/homebrew/edit/${this.props.brew.editId}`
url : `/edit/${this.props.brew.editId}`
}}
/>
},

View File

@@ -92,10 +92,10 @@ var EditPage = React.createClass({
if(!confirm("are you sure you want to delete this brew?")) return;
if(!confirm("are you REALLY sure? You will not be able to recover it")) return;
request.get('/homebrew/api/remove/' + this.props.brew.editId)
request.get('/api/remove/' + this.props.brew.editId)
.send()
.end(function(err, res){
window.location.href = '/homebrew';
window.location.href = '/';
});
},
@@ -118,7 +118,7 @@ var EditPage = React.createClass({
});
request
.put('/homebrew/api/update/' + this.props.brew.editId)
.put('/api/update/' + this.props.brew.editId)
.send({
text : this.state.text,
title : this.state.title
@@ -177,7 +177,7 @@ var EditPage = React.createClass({
<Nav.section>
{this.renderSaveButton()}
<RecentlyEdited brew={this.props.brew} />
<Nav.item newTab={true} href={'/homebrew/share/' + this.props.brew.shareId} color='teal' icon='fa-share-alt'>
<Nav.item newTab={true} href={'/share/' + this.props.brew.shareId} color='teal' icon='fa-share-alt'>
Share
</Nav.item>
<PrintLink shareId={this.props.brew.shareId} />

View File

@@ -6,6 +6,7 @@ var request = require("superagent");
var Nav = require('naturalcrit/nav/nav.jsx');
var Navbar = require('../../navbar/navbar.jsx');
var PatreonNavItem = require('../../navbar/patreon.navitem.jsx');
var IssueNavItem = require('../../navbar/issue.navitem.jsx');
var SplitPane = require('naturalcrit/splitPane/splitPane.jsx');
@@ -26,7 +27,7 @@ var HomePage = React.createClass({
};
},
handleSave : function(){
request.post('/homebrew/api')
request.post('/api')
.send({
title : 'Change This',
text : this.state.text
@@ -34,7 +35,7 @@ var HomePage = React.createClass({
.end((err, res)=>{
if(err) return;
var brew = res.body;
window.location = '/homebrew/edit/' + brew.editId;
window.location = '/edit/' + brew.editId;
});
},
handleSplitMove : function(){
@@ -49,13 +50,11 @@ var HomePage = React.createClass({
return <Navbar>
<Nav.section>
<PatreonNavItem />
<Nav.item newTab={true} href='https://github.com/stolksdorf/naturalcrit/issues' color='red' icon='fa-bug'>
report issue
</Nav.item>
<Nav.item newTab={true} href='/homebrew/changelog' color='purple' icon='fa-file-text-o'>
<IssueNavItem />
<Nav.item newTab={true} href='/changelog' color='purple' icon='fa-file-text-o'>
Changelog
</Nav.item>
<Nav.item href='/homebrew/new' color='green' icon='fa-external-link'>
<Nav.item href='/new' color='green' icon='fa-external-link'>
New Brew
</Nav.item>
</Nav.section>
@@ -77,7 +76,7 @@ var HomePage = React.createClass({
Save current <i className='fa fa-save' />
</div>
<a href='/homebrew/new' className='floatingNewButton'>
<a href='/new' className='floatingNewButton'>
Create your own <i className='fa fa-magic' />
</a>
</div>

View File

@@ -6,6 +6,7 @@ var request = require("superagent");
var Nav = require('naturalcrit/nav/nav.jsx');
var Navbar = require('../../navbar/navbar.jsx');
var EditTitle = require('../../navbar/editTitle.navitem.jsx');
var IssueNavItem = require('../../navbar/issue.navitem.jsx');
var SplitPane = require('naturalcrit/splitPane/splitPane.jsx');
@@ -64,7 +65,7 @@ var NewPage = React.createClass({
this.setState({
isSaving : true
});
request.post('/homebrew/api')
request.post('/api')
.send({
title : this.state.title,
text : this.state.text
@@ -80,7 +81,7 @@ var NewPage = React.createClass({
window.onbeforeunload = function(){};
var brew = res.body;
localStorage.removeItem(KEY);
window.location = '/homebrew/edit/' + brew.editId;
window.location = '/edit/' + brew.editId;
})
},
@@ -96,7 +97,6 @@ var NewPage = React.createClass({
}
},
renderNavbar : function(){
return <Navbar>
<Nav.section>
@@ -105,9 +105,7 @@ var NewPage = React.createClass({
<Nav.section>
{this.renderSaveButton()}
<Nav.item newTab={true} href='https://github.com/stolksdorf/naturalcrit/issues' color='red' icon='fa-bug'>
report issue
</Nav.item>
<IssueNavItem />
</Nav.section>
</Navbar>
},
@@ -116,7 +114,6 @@ var NewPage = React.createClass({
return <div className='newPage page'>
{this.renderNavbar()}
<div className='content'>
<SplitPane onDragFinish={this.handleSplitMove} ref='pane'>
<Editor value={this.state.text} onChange={this.handleTextChange} ref='editor'/>

View File

@@ -42,7 +42,7 @@ var SharePage = React.createClass({
<Nav.section>
<RecentlyViewed brew={this.props.brew} />
<PrintLink shareId={this.props.brew.shareId} />
<Nav.item href={'/homebrew/source/' + this.props.brew.shareId} color='teal' icon='fa-code'>
<Nav.item href={'/source/' + this.props.brew.shareId} color='teal' icon='fa-code'>
source
</Nav.item>
</Nav.section>

View File

@@ -1,86 +0,0 @@
var React = require('react');
var _ = require('lodash');
var cx = require('classnames');
var Router = require('pico-router');
var NaturalCritIcon = require('naturalcrit/svg/naturalcrit.svg.jsx');
var HomebrewIcon = require('naturalcrit/svg/homebrew.svg.jsx');
var Main = React.createClass({
getDefaultProps: function() {
return {
tools : [
{
id : 'homebrew',
path : '/homebrew',
name : 'The Homebrewery',
icon : <HomebrewIcon />,
desc : 'Make authentic-looking 5e homebrews using Markdown',
show : true,
beta : false
},
{
id : 'homebrew2',
path : '/homebrew',
name : 'The Homebrewery',
icon : <HomebrewIcon />,
desc : 'Make authentic-looking 5e homebrews using Markdown',
show : false,
beta : true
},
{
id : 'homebrewfg2',
path : '/homebrew',
name : 'The Homebrewery',
icon : <HomebrewIcon />,
desc : 'Make authentic-looking 5e homebrews using Markdown',
show : false,
beta : false
}
]
};
},
renderTool : function(tool){
if(!tool.show) return null;
return <a href={tool.path} className={cx('tool', tool.id, {beta : tool.beta})} key={tool.id}>
<div className='content'>
{tool.icon}
<h2>{tool.name}</h2>
<p>{tool.desc}</p>
</div>
</a>;
},
renderTools : function(){
return _.map(this.props.tools, (tool)=>{
return this.renderTool(tool);
});
},
render : function(){
return <div className='main'>
<div className='top'>
<div className='logo'>
<NaturalCritIcon />
<span className='name'>
Natural
<span className='crit'>Crit</span>
</span>
</div>
<p>Top-tier tools for the discerning DM</p>
</div>
<div className='tools'>
{this.renderTools()}
</div>
</div>
}
});
module.exports = Main;

View File

@@ -1,136 +0,0 @@
@import 'naturalcrit/styles/core.less';
.main{
height : 100vh;
background-color : white;
.top{
.fadeInTop(1s);
.delay(0.5);
margin-bottom : 100px;
padding-top : 100px;
text-align : center;
.logo{
font-size : 4em;
color : black;
svg{
height : .9em;
margin-right : .2em;
cursor : pointer;
fill : black;
}
.name{
font-family : 'CodeLight';
.crit{
font-family : 'CodeBold';
}
}
}
p{
margin-top : 10px;
font-size : 1.3em;
font-style : italic;
color : @grey;
}
}
.tools{
width : 100%;
text-align : center;
.tool{
.sequentialDelay(0.5s, 1s);
.fadeInDown(1s);
.keep();
display : inline-block;
cursor : pointer;
opacity : 0;
color : black;
text-align : center;
text-decoration : none;
&+.tool{
border-left : 1px solid #666;
}
.content{
.addSketch(360px);
.animateAll(0.5s);
position : relative;
width : 320px;
padding : 35px;
&:hover{
svg, h2{
.transform(scale(1.3));
}
}
h2{
.animateAll(0.5s);
font-family : 'CodeBold';
font-size : 2em;
}
p{
max-width : 300px;
margin : 20px auto;
line-height : 1.5em;
}
svg{
.animateAll(0.5s);
height : 10em;
}
}
.content:hover{
background-color : fade(@teal, 20%);
}
//Beta styles
&.beta{
cursor : initial;
.content{
&:hover{
svg, h2{
.transform(scale(1.0));
}
}
svg, h2{
opacity : 0.3;
}
&:after{
.animateAll();
content : "beta!";
position : absolute;
display : block;
top : 120px;
left : 0px;
width : 100%;
padding : 10px 0px;
//opacity : 0;
background-color : fade(@grey, 50%);
font-size : 2em;
font-weight : 800;
text-align : center;
text-transform : uppercase;
}
}
}
}
}
}
.addSketch(@length, @color : black){
path, line, polyline, circle, rect, polygon {
.sketch(@length, @color, 4s);
stroke-dasharray : @length;
stroke-dashoffset : 0px;
stroke : @color;
stroke-width : 0.5px;
fill : @color;
//.animateAll(3s);
}
}
.sketch(@length, @color : black, @duration : 3s, @easing : @defaultEasing){
.createAnimation(sketch, @duration, @easing);
.sketchKeyFrames(){
0% { stroke-dashoffset : @length; fill: transparent;}
50% { stroke-dashoffset : @length; fill: transparent;}
80% { stroke-dashoffset : 0px; fill: transparent;}
100% { stroke-dashoffset : 0px; fill:@color;}
}
@-webkit-keyframes sketch {.sketchKeyFrames();}
@-moz-keyframes sketch {.sketchKeyFrames();}
@-ms-keyframes sketch {.sketchKeyFrames();}
@-o-keyframes sketch {.sketchKeyFrames();}
@keyframes sketch {.sketchKeyFrames();}
}

View File

@@ -4,10 +4,10 @@
<script>global=window</script>
<link href="//netdna.bootstrapcdn.com/font-awesome/4.6.2/css/font-awesome.min.css" rel="stylesheet" />
<link href="//fonts.googleapis.com/css?family=Open+Sans:400,300,600,700" rel="stylesheet" type="text/css" />
<link rel="icon" href="/assets/main/favicon.ico" type="image/x-icon" />
<link rel="icon" href="/assets/homebrew/favicon.ico" type="image/x-icon" />
{{=vitreum.css}}
{{=vitreum.globals}}
<title>Natural Crit - D&D Tools</title>
<title>The Homebrewery - NaturalCrit</title>
</head>
<body>
<div id="reactContainer">{{=vitreum.component}}</div>