Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | 2x 2x 3x 3x 15x 32x 4x 4x 4x 4x 4x 4x 4x | 'use strict'; define([ 'jquery', 'underscore', 'oro/translator', 'pim/filter/attribute/attribute', 'pim/fetcher-registry', 'pim/user-context', 'pim/i18n', 'pim/template/filter/attribute/metric', 'jquery.select2' ], function ( $, _, __, BaseFilter, FetcherRegistry, UserContext, i18n, template ) { return BaseFilter.extend({ shortname: 'metric', template: _.template(template), events: { 'change [name="filter-data"], [name="filter-operator"], select.unit': 'updateState' }, /** * {@inheritdoc} */ configure: function () { return $.when( FetcherRegistry.getFetcher('attribute').fetch(this.getCode()), BaseFilter.prototype.configure.apply(this, arguments) ).then(function (attribute) { this.listenTo(this.getRoot(), 'pim_enrich:form:entity:pre_update', function (data) { _.defaults(data, { field: this.getCode(), operator: _.first(_.values(this.config.operators)), value: { amount: '', unit: attribute.default_metric_unit } }); }.bind(this)); }.bind(this)); }, /** * {@inheritdoc} */ isEmpty: function () { return !_.contains(['EMPTY', 'NOT EMPTY'], this.getOperator()) && (undefined === this.getValue() || undefined === this.getValue().amount || '' === this.getValue().amount); }, /** * {@inheritdoc} */ renderInput: function (templateContext) { return this.template(_.extend({}, templateContext, { __: __, value: this.getValue(), field: this.getField(), operator: this.getOperator(), operators: this.getLabelledOperatorChoices(this.shortname) })); }, /** * {@inheritdoc} */ postRender: function () { this.$('.operator, .unit').select2({minimumResultsForSearch: -1}); }, /** * {@inheritdoc} */ getTemplateContext: function () { return $.when( BaseFilter.prototype.getTemplateContext.apply(this, arguments), FetcherRegistry.getFetcher('measure').fetchAll() ).then(function (templateContext, measures) { return _.extend({}, templateContext, { units: measures[templateContext.attribute.metric_family] }); }.bind(this)); }, /** * {@inheritdoc} */ updateState: function () { var value = { amount: this.$('[name="filter-data"]').val(), unit: this.$('select[name="filter-unit"]').val() }; var operator = this.$('[name="filter-operator"]').val(); this.setData({ field: this.getField(), operator: operator, value: value }); } }); }); |