cms/app-client/mirage/serializers/discourse.js
author ymh <ymh.work@gmail.com>
Thu, 16 Feb 2017 18:22:16 +0100
changeset 515 557cca5cb813
parent 474 245b4df137d3
child 532 1190ea937f2d
permissions -rw-r--r--
move template compiler into dependencies

import { JSONAPISerializer } from 'ember-cli-mirage';

import _ from 'lodash/lodash';

export default JSONAPISerializer.extend({
    serialize(response, request) {

      let json = JSONAPISerializer.prototype.serialize.apply(this, arguments);

      let qParams = request.queryParams['discourse'];
      if(qParams) {
        json =  { 'data': _.map(json.data.slice(0, json.data.length/Math.pow(2,qParams.length)), (d) => {
          let res = _.clone(d);
          res.attributes.count = Math.max(Math.floor(d.attributes.count / 2), 1);
          return res;
        })};
      }

      return { 'discourses' : _(json.data).map((discourse) => {
        return [
          discourse.id,
          { count: discourse.attributes.count, label: discourse.attributes.label}
        ];
      }).object().value()};
    }
});