import Core from "meteor/nova:core"; ({Messages, NovaForms} = Core); import Formsy from 'formsy-react'; const PostNew = React.createClass({ propTypes: { currentUser: React.PropTypes.object, postNewCallback: React.PropTypes.func, closeModal: React.PropTypes.func }, getInitialState() { return { canSubmit: false } }, submitForm(data) { // remove any empty properties post = _.compactObject(data); post = Telescope.callbacks.run("posts.new.client", post); Meteor.call('posts.new', post, (error, post) => { if (error) { console.log(error) Messages.flash(error.message, "error") } else { Messages.flash("Post created.", "success"); FlowRouter.go('posts.single', post); if (this.props.closeModal) { this.props.closeModal(); } } }); }, render() { ({CanCreatePost} = Telescope.components); const fields = Posts.simpleSchema().getEditableFields(this.props.currentUser); return (

New Post

{fields.map(fieldName => NovaForms.getComponent(fieldName, Posts.simpleSchema()._schema[fieldName]))}
) } }); module.exports = PostNew;