Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.28 KB | None | 0 0
  1. import _ from 'lodash';
  2. import moment from 'moment';
  3. import config from '../config';
  4.  
  5. export default class Relations {
  6. constructor (relsMap) {
  7. this.relsMap = relsMap;
  8. this.users(_.values(this.relsMap.users));
  9. this.roles(_.values(this.relsMap.roles));
  10. this.products(_.values(this.relsMap.products));
  11. // etc, other possible relations
  12. }
  13.  
  14. products (products) {
  15. if (products && products.length) {
  16. products.forEach(product => this.product(product));
  17. }
  18. return products;
  19. }
  20.  
  21. product (product) {
  22. if (product) {
  23. product.user = this.relsMap.users[product.userId];
  24. product.portal = this.relsMap.portals[product.portalId];
  25. product.publisher = this.relsMap.publishers[product.publisherId];
  26. product.publisher_author = this.relsMap.publishers[product.publisherAuthorId];
  27. product.createdAt = moment(product.createdAt);
  28. product.updatedAt = moment(product.updatedAt);
  29. product.expiresAt = product.expiresAt ? moment(product.expiresAt).startOf('day') : null;
  30. product.licenceStatus = product.expiresAt ? product.expiresAt >= moment().startOf('day') : true;
  31. product.navigationTags = product.navigationTags ? product.navigationTags.map(tagId => this.relsMap.navigationTags[tagId]) : [];
  32. }
  33. return product;
  34. }
  35.  
  36. // etc
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement