diff --git a/.meteor/packages b/.meteor/packages index ee82606..4b3f213 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -60,3 +60,4 @@ mongo-livedata reywood:publish-composite barbatus:stars-rating arkham:comments-ui +facts diff --git a/.meteor/versions b/.meteor/versions index 8a03c20..f1dde1a 100644 --- a/.meteor/versions +++ b/.meteor/versions @@ -45,6 +45,7 @@ ejson@1.1.0 email@1.2.3 es5-shim@4.6.15 facebook-oauth@1.4.0 +facts@1.0.9 flowkey:raven@1.0.0 fortawesome:fontawesome@4.7.0 fourseven:scss@4.5.4 diff --git a/imports/startup/server/facts.js b/imports/startup/server/facts.js new file mode 100644 index 0000000..1a536bb --- /dev/null +++ b/imports/startup/server/facts.js @@ -0,0 +1,9 @@ +/* global Facts */ +import { Roles } from 'meteor/alanning:roles'; +import { Meteor } from 'meteor/meteor'; + +Facts.setUserIdFilter((userId) => { + const user = Meteor.users.findOne(userId); + console.log(`User roles: ${user.roles}`); + return Roles.userIsInRole(userId, ['admin']); +}); diff --git a/imports/startup/server/index.js b/imports/startup/server/index.js index b6b01fe..8a27f96 100644 --- a/imports/startup/server/index.js +++ b/imports/startup/server/index.js @@ -6,4 +6,5 @@ import './email'; import './IPGeocoder'; import './migrations'; import './notificationsObserver'; +import './facts'; import '../common/comments'; diff --git a/imports/ui/layouts/App/App.js b/imports/ui/layouts/App/App.js index 956b492..a456841 100644 --- a/imports/ui/layouts/App/App.js +++ b/imports/ui/layouts/App/App.js @@ -31,6 +31,7 @@ import Signup from '../../pages/Signup/Signup'; import Auth from '../../pages/Auth/Auth'; import Login from '../../pages/Login/Login'; import Logout from '../../pages/Logout/Logout'; +import Status from '../../pages/Status/Status'; import VerifyEmail from '../../pages/VerifyEmail/VerifyEmail'; import RecoverPassword from '../../pages/RecoverPassword/RecoverPassword'; import ResetPassword from '../../pages/ResetPassword/ResetPassword'; @@ -75,6 +76,7 @@ const App = props => ( + diff --git a/imports/ui/pages/Status/Status.js b/imports/ui/pages/Status/Status.js new file mode 100644 index 0000000..33b5b82 --- /dev/null +++ b/imports/ui/pages/Status/Status.js @@ -0,0 +1,39 @@ +/* eslint-disable react/jsx-indent-props */ +/* eslint-disable import/no-absolute-path */ +/* eslint-disable import/no-absolute-path */ + +import React, { Fragment, Component } from 'react'; +import PropTypes from 'prop-types'; +import { translate } from 'react-i18next'; +import { withTracker } from 'meteor/react-meteor-data'; +import Blaze from 'meteor/gadicc:blaze-react-component'; + +class Status extends Component { + constructor(props) { + super(props); + this.t = props.t; + this.state = { + }; + } + + render() { + return ( + +

Status

+ +
+ ); + } +} + +Status.propTypes = { + t: PropTypes.func.isRequired +}; + +Status.defaultProps = { +}; + +// export default translate([], { wait: true })(Status); +export default translate([], { wait: true })(withTracker(props => ({ + // props.something +}))(Status));