mirror of
https://github.com/stolksdorf/homebrewery.git
synced 2025-12-22 18:21:28 +00:00
Fixed issue with arrays not being saved
This commit is contained in:
@@ -2,6 +2,8 @@ const React = require('react');
|
||||
const _ = require('lodash');
|
||||
const cx = require('classnames');
|
||||
|
||||
const Moment = require('moment');
|
||||
|
||||
const request = require('superagent');
|
||||
|
||||
const BrewLookup = React.createClass({
|
||||
@@ -13,7 +15,8 @@ const BrewLookup = React.createClass({
|
||||
getInitialState: function() {
|
||||
return {
|
||||
query:'',
|
||||
resultBrew : null
|
||||
resultBrew : null,
|
||||
searching : false
|
||||
};
|
||||
},
|
||||
|
||||
@@ -23,12 +26,38 @@ const BrewLookup = React.createClass({
|
||||
})
|
||||
},
|
||||
lookup : function(){
|
||||
this.setState({ searching : true });
|
||||
|
||||
|
||||
request.get(`/admin/lookup/${this.state.query}`)
|
||||
.query({ admin_key : this.props.adminKey })
|
||||
.end((err, res) => {
|
||||
this.setState({
|
||||
searching : false,
|
||||
resultBrew : (err ? null : res.body)
|
||||
});
|
||||
})
|
||||
},
|
||||
|
||||
renderFoundBrew : function(){
|
||||
if(!this.state.resultBrew) return null;
|
||||
if(this.state.searching) return <div className='searching'><i className='fa fa-spin fa-spinner' /></div>;
|
||||
if(!this.state.resultBrew) return <div className='noBrew'>No brew found.</div>;
|
||||
|
||||
console.log(this.state.resultBrew);
|
||||
|
||||
const brew = this.state.resultBrew;
|
||||
return <div className='brewRow'>
|
||||
<div>{brew.title}</div>
|
||||
<div>{brew.authors.join(', ')}</div>
|
||||
<div><a href={'/edit/' + brew.editId} target='_blank'>{brew.editId}</a></div>
|
||||
<div><a href={'/share/' + brew.shareId} target='_blank'>{brew.shareId}</a></div>
|
||||
<div>{Moment(brew.updatedAt).fromNow()}</div>
|
||||
<div>{brew.views}</div>
|
||||
<div>
|
||||
<div className='deleteButton'>
|
||||
<i className='fa fa-trash' />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
},
|
||||
|
||||
render: function(){
|
||||
|
||||
@@ -37,6 +37,8 @@ const Homebrew = React.createClass({
|
||||
loginPath : this.props.loginPath
|
||||
});
|
||||
|
||||
console.log(this.props.brew);
|
||||
|
||||
|
||||
Router = CreateRouter({
|
||||
'/edit/:id' : <EditPage />,
|
||||
|
||||
@@ -30,12 +30,15 @@ router.post('/api/brew', (req, res, next)=>{
|
||||
|
||||
//Update
|
||||
router.put('/api/brew/:editId', mw.loadBrew, (req, res, next)=>{
|
||||
console.log(req.account);
|
||||
const brew = req.body || {};
|
||||
if(req.account){
|
||||
brew.authors = _.uniq(_.concat(brew.authors, req.account.username));
|
||||
}
|
||||
console.log(brew);
|
||||
BrewData.update(req.params.editId, brew)
|
||||
.then((brew) => {
|
||||
console.log(brew.toJSON());
|
||||
return res.json(brew.toJSON());
|
||||
})
|
||||
.catch(next);
|
||||
|
||||
@@ -65,6 +65,9 @@ const BrewData = {
|
||||
delete newBrew.shareId;
|
||||
delete newBrew.editId;
|
||||
brew = _.merge(brew, newBrew, { updatedAt : Date.now() });
|
||||
|
||||
brew.markModified('authors');
|
||||
brew.markModified('systems');
|
||||
return brew.save();
|
||||
});
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user