Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import _ from 'lodash';
- import moment from 'moment';
- import config from '../config';
- export default class Relations {
- constructor (relsMap) {
- this.relsMap = relsMap;
- this.users(_.values(this.relsMap.users));
- this.roles(_.values(this.relsMap.roles));
- this.products(_.values(this.relsMap.products));
- // etc, other possible relations
- }
- products (products) {
- if (products && products.length) {
- products.forEach(product => this.product(product));
- }
- return products;
- }
- product (product) {
- if (product) {
- product.user = this.relsMap.users[product.userId];
- product.portal = this.relsMap.portals[product.portalId];
- product.publisher = this.relsMap.publishers[product.publisherId];
- product.publisher_author = this.relsMap.publishers[product.publisherAuthorId];
- product.createdAt = moment(product.createdAt);
- product.updatedAt = moment(product.updatedAt);
- product.expiresAt = product.expiresAt ? moment(product.expiresAt).startOf('day') : null;
- product.licenceStatus = product.expiresAt ? product.expiresAt >= moment().startOf('day') : true;
- product.navigationTags = product.navigationTags ? product.navigationTags.map(tagId => this.relsMap.navigationTags[tagId]) : [];
- }
- return product;
- }
- // etc
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement