summaryrefslogtreecommitdiff
path: root/public/bundle.js
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2017-03-20 01:59:47 +0100
committerJules Laplace <jules@okfoc.us>2017-03-20 01:59:47 +0100
commitd9d81925299aa787cbdb815cb4b06e17a412b40c (patch)
tree601ea37cc6f7e5c6aa3ac1e886d056c2df107779 /public/bundle.js
parentbf7ac6af587f68553b83a54fcb724dfc9d684644 (diff)
filter by date
Diffstat (limited to 'public/bundle.js')
-rw-r--r--public/bundle.js425
1 files changed, 256 insertions, 169 deletions
diff --git a/public/bundle.js b/public/bundle.js
index b99c70c..df3cd70 100644
--- a/public/bundle.js
+++ b/public/bundle.js
@@ -12121,6 +12121,10 @@ var _ModalDialog = __webpack_require__(60);
var _ModalDialog2 = _interopRequireDefault(_ModalDialog);
+var _Menu = __webpack_require__(365);
+
+var _Menu2 = _interopRequireDefault(_Menu);
+
var _UserList = __webpack_require__(100);
var _UserList2 = _interopRequireDefault(_UserList);
@@ -12182,7 +12186,7 @@ var LoggedInView = function (_React$Component) {
return _react2.default.createElement(
'div',
null,
- _react2.default.createElement(Menu, { mode: this.state.mode,
+ _react2.default.createElement(_Menu2.default, { mode: this.state.mode,
user: this.state.user,
toggleMode: this.toggleMode,
currentUser: this.props.user,
@@ -12197,152 +12201,6 @@ var LoggedInView = function (_React$Component) {
exports.default = LoggedInView;
-var Menu = function (_React$Component2) {
- _inherits(Menu, _React$Component2);
-
- function Menu() {
- _classCallCheck(this, Menu);
-
- var _this2 = _possibleConstructorReturn(this, (Menu.__proto__ || Object.getPrototypeOf(Menu)).call(this));
-
- _this2.setGoal = _this2.setGoal.bind(_this2);
- _this2.logout = _this2.logout.bind(_this2);
- return _this2;
- }
-
- _createClass(Menu, [{
- key: 'setGoal',
- value: function setGoal() {
- var _this3 = this;
-
- var goal = Math.abs(parseInt(prompt('Please enter your calorie goal', this.props.user.goal)));
- if (goal) {
- _client2.default.service('users').patch(this.props.user.id, {
- goal: goal,
- token: _client2.default.get('token')
- }).then(function (user) {
- _this3.props.updateUser(user);
- });
- }
- }
- }, {
- key: 'logout',
- value: function logout() {
- _client2.default.logout().then(function () {
- window.location.reload();
- });
- }
- }, {
- key: 'render',
- value: function render() {
- var user = this.props.user;
- var items = [];
- items.push(_react2.default.createElement(
- 'li',
- { key: 'hello' },
- 'Hello ',
- user.email
- ));
- items.push(_react2.default.createElement(
- 'li',
- { key: 'goal' },
- _react2.default.createElement(
- 'a',
- { href: '#', onClick: this.setGoal },
- 'Goal'
- ),
- ': ',
- user.goal
- ));
- switch (user.role) {
- case 'admin':
- if (this.props.user.id !== this.props.currentUser.id) {
- items.push(_react2.default.createElement(
- 'li',
- { key: 'resetUser' },
- _react2.default.createElement(
- 'a',
- { href: '#', onClick: this.resetUser },
- 'Reset User'
- )
- ));
- }
- items.push(_react2.default.createElement(
- 'li',
- { key: 'userlist' },
- _react2.default.createElement(
- 'a',
- { href: '#', onClick: this.props.toggleMode },
- 'Users'
- )
- ));
- items.push(_react2.default.createElement(
- 'li',
- { key: 'userlist' },
- _react2.default.createElement(
- 'a',
- { href: '#', onClick: this.props.toggleMode },
- 'Meals'
- )
- ));
- break;
- case 'manager':
- items.push(_react2.default.createElement(
- 'li',
- { key: 'userlist' },
- _react2.default.createElement(
- 'a',
- { href: '#', onClick: this.props.toggleMode },
- 'Users'
- )
- ));
- items.push(_react2.default.createElement(
- 'li',
- { key: 'userlist' },
- _react2.default.createElement(
- 'a',
- { href: '#', onClick: this.props.toggleMode },
- 'Meals'
- )
- ));
- case 'user':
- break;
- }
- items.push(_react2.default.createElement(
- 'li',
- { key: 'logout' },
- _react2.default.createElement(
- 'a',
- { href: '#', onClick: this.logout },
- 'Logout'
- )
- ));
-
- return _react2.default.createElement(
- 'div',
- null,
- _react2.default.createElement(
- 'ul',
- { className: 'menu' },
- items
- )
- );
- // <ProfileModal user={user} visible={false} onClose={() => {}} />
- }
- }]);
-
- return Menu;
-}(_react2.default.Component);
-
-// class ProfileModal extends React.Component {
-// render() {
-// return (
-// <ModalDialog visible={this.props.visible} onClose={this.props.onClose}>
-// </ModalDialog>
-// )
-// }
-// }
-
/***/ }),
/* 97 */
/***/ (function(module, exports, __webpack_require__) {
@@ -12696,42 +12554,109 @@ var MealFilter = function (_React$Component) {
var _this = _possibleConstructorReturn(this, (MealFilter.__proto__ || Object.getPrototypeOf(MealFilter)).call(this));
var start = new Date();
+ start.setHours(0);
+ start.setMinutes(0);
+ start.setSeconds(0);
+ start.setDate(start.getDate() - 6);
+
var end = new Date();
- end.setDate(end.getDate() - 6);
+ end.setHours(23);
+ end.setMinutes(59);
+ end.setSeconds(59);
+
_this.state = {
startDate: (0, _moment2.default)(start),
endDate: (0, _moment2.default)(end),
startTime: 0,
- endTime: 23
+ endTime: 23,
+ meals: []
};
_this.handleSelect = _this.handleSelect.bind(_this);
+ _this.fetch = _this.fetch.bind(_this);
+ _this.filter = _this.filter.bind(_this);
return _this;
}
_createClass(MealFilter, [{
+ key: 'fetch',
+ value: function fetch(state) {
+ var _this2 = this;
+
+ state = state || this.state;
+ var start = state.startDate;
+ var end = state.endDate;
+ console.log(start.toDate(), end.toDate());
+
+ _client2.default.service('meals').find({
+ query: {
+ userid: this.props.user.id,
+ date: { $gte: start.toDate(), $lte: end.toDate() },
+ $sort: { 'date': '-1' },
+ token: _client2.default.get('token')
+ }
+ }).then(function (data) {
+ console.log(data);
+ _this2.setState({ meals: data.data });
+ _this2.filter(data.data);
+ }).catch(function (error) {
+ console.error(error);
+ });
+ }
+ }, {
+ key: 'filter',
+ value: function filter(meals) {
+ meals = meals || this.state.meals;
+ var start = this.state.startTime;
+ var end = this.state.endTime;
+ var filteredMeals = this.state.meals.filter(function (meal) {
+ var hours = new Date(meal.date).getHours();
+ return start <= hours && hours <= end;
+ });
+ this.props.onChange(filteredMeals);
+ }
+ }, {
key: 'handleSelect',
value: function handleSelect(range) {
- console.log(range);
- // range.startDate; // Momentjs object
- // range.endDate
- this.setState(range);
+ var start = range.startDate;
+ start.hours(0);
+ start.minutes(0);
+ start.seconds(0);
+
+ var end = range.endDate;
+ if (start.isSame(end)) {
+ end = start.clone();
+ }
+
+ end.hours(23);
+ end.minutes(59);
+ end.seconds(59);
+
+ this.setState({
+ startDate: start,
+ endDate: end
+ });
+ this.fetch({
+ startDate: start,
+ endDate: end
+ });
}
}, {
key: 'pickTimeRange',
value: function pickTimeRange(event, start, end) {
this.setState({ startTime: start, endTime: end });
+ this.filter();
}
}, {
key: 'render',
value: function render() {
- var _this2 = this;
+ var _this3 = this;
var times = [[0, 11, 'Breakfast'], [12, 15, 'Lunch'], [15, 23, 'Dinner'], [0, 23, 'All']].map(function (r, i) {
var start = r[0];
var end = r[1];
var name = r[2];
var className = '';
- if (_this2.state.startTime === start && _this2.state.endTime === end) {
+ if (_this3.state.startTime === start && _this3.state.endTime === end) {
className = 'selected';
}
return _react2.default.createElement(
@@ -12740,7 +12665,7 @@ var MealFilter = function (_React$Component) {
key: i,
className: className,
onClick: function onClick(e) {
- _this2.pickTimeRange(e, start, end);
+ _this3.pickTimeRange(e, start, end);
} },
name
);
@@ -12863,18 +12788,6 @@ var MealList = function (_React$Component) {
_this.handleUpdate = _this.handleUpdate.bind(_this);
_this.handleDelete = _this.handleDelete.bind(_this);
_this.pickMeal = _this.pickMeal.bind(_this);
-
- _client2.default.service('meals').find({
- query: {
- userid: props.user.id,
- '$sort': { 'date': '-1' },
- token: _client2.default.get('token')
- }
- }).then(function (data) {
- _this.setState(data);
- }).catch(function (error) {
- console.error(error);
- });
return _this;
}
@@ -12944,7 +12857,14 @@ var MealList = function (_React$Component) {
_this2.handleUpdate(meal);
}
}),
- _react2.default.createElement(_MealFilter2.default, null),
+ _react2.default.createElement(_MealFilter2.default, { user: this.props.user,
+ ref: function ref(mealFilter) {
+ _this2.mealFilter = mealFilter;
+ },
+ onChange: function onChange(meals) {
+ _this2.setState({ data: meals });
+ }
+ }),
_react2.default.createElement(
'div',
null,
@@ -47888,6 +47808,173 @@ module.exports = function(module) {
};
+/***/ }),
+/* 365 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = __webpack_require__(14);
+
+var _react2 = _interopRequireDefault(_react);
+
+var _client = __webpack_require__(22);
+
+var _client2 = _interopRequireDefault(_client);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+var Menu = function (_React$Component) {
+ _inherits(Menu, _React$Component);
+
+ function Menu() {
+ _classCallCheck(this, Menu);
+
+ var _this = _possibleConstructorReturn(this, (Menu.__proto__ || Object.getPrototypeOf(Menu)).call(this));
+
+ _this.setGoal = _this.setGoal.bind(_this);
+ _this.logout = _this.logout.bind(_this);
+ return _this;
+ }
+
+ _createClass(Menu, [{
+ key: 'setGoal',
+ value: function setGoal() {
+ var _this2 = this;
+
+ var goal = Math.abs(parseInt(prompt('Please enter your calorie goal', this.props.user.goal)));
+ if (goal) {
+ _client2.default.service('users').patch(this.props.user.id, {
+ goal: goal,
+ token: _client2.default.get('token')
+ }).then(function (user) {
+ _this2.props.updateUser(user);
+ });
+ }
+ }
+ }, {
+ key: 'logout',
+ value: function logout() {
+ _client2.default.logout().then(function () {
+ window.location.reload();
+ });
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var user = this.props.user;
+ var items = [];
+ items.push(_react2.default.createElement(
+ 'li',
+ { key: 'hello' },
+ 'Hello ',
+ user.email
+ ));
+ items.push(_react2.default.createElement(
+ 'li',
+ { key: 'goal', onClick: this.setGoal },
+ _react2.default.createElement(
+ 'a',
+ { href: '#' },
+ 'Goal'
+ ),
+ ': ',
+ user.goal
+ ));
+ switch (user.role) {
+ case 'admin':
+ if (this.props.user.id !== this.props.currentUser.id) {
+ items.push(_react2.default.createElement(
+ 'li',
+ { key: 'resetUser' },
+ _react2.default.createElement(
+ 'a',
+ { href: '#', onClick: this.resetUser },
+ 'Reset User'
+ )
+ ));
+ }
+ items.push(_react2.default.createElement(
+ 'li',
+ { key: 'userlist' },
+ _react2.default.createElement(
+ 'a',
+ { href: '#', onClick: this.props.toggleMode },
+ 'Users'
+ )
+ ));
+ items.push(_react2.default.createElement(
+ 'li',
+ { key: 'meallist' },
+ _react2.default.createElement(
+ 'a',
+ { href: '#', onClick: this.props.toggleMode },
+ 'Meals'
+ )
+ ));
+ break;
+ case 'manager':
+ items.push(_react2.default.createElement(
+ 'li',
+ { key: 'userlist' },
+ _react2.default.createElement(
+ 'a',
+ { href: '#', onClick: this.props.toggleMode },
+ 'Users'
+ )
+ ));
+ items.push(_react2.default.createElement(
+ 'li',
+ { key: 'meallist' },
+ _react2.default.createElement(
+ 'a',
+ { href: '#', onClick: this.props.toggleMode },
+ 'Meals'
+ )
+ ));
+ case 'user':
+ break;
+ }
+ items.push(_react2.default.createElement(
+ 'li',
+ { key: 'logout' },
+ _react2.default.createElement(
+ 'a',
+ { href: '#', onClick: this.logout },
+ 'Logout'
+ )
+ ));
+
+ return _react2.default.createElement(
+ 'div',
+ null,
+ _react2.default.createElement(
+ 'ul',
+ { className: 'menu' },
+ items
+ )
+ );
+ }
+ }]);
+
+ return Menu;
+}(_react2.default.Component);
+
+exports.default = Menu;
+
/***/ })
/******/ ]);
//# sourceMappingURL=bundle.js.map \ No newline at end of file