Loading src/app/ContainerFacets.js +3 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ define([ constructor: function(args){ this.config = { maxInitialEntries: 5, aggs: null, openFacets: false, order: null, Loading Loading @@ -98,7 +99,8 @@ define([ title: (this.i18n && this.i18n[item]) ? this.i18n[item] : item, i18n: this.i18n, open: open, config: content config: content, maxInitialEntries: this.maxInitialEntries }).placeAt(this.domNode); this.instance[item] = { Loading src/app/Facet.js +65 −6 Original line number Diff line number Diff line Loading @@ -3,12 +3,14 @@ define([ , "dijit/TitlePane" , "dojo/_base/lang" , "dojo/Evented" , 'dojo/query' , "put-selector/put" ], function( declare , TitlePane , lang , Evented , query , put ) { Loading @@ -17,9 +19,14 @@ define([ constructor: function(args) { this.config = { maxInitialEntries: 5, termsFieldFacet: null, termSelection: [], bucketsKeys: [], facetsEntriesContainerClass: 'dijitTitlePaneContentOuter', collapseEntriesClass: 'collapseEntries', collapseToggleClass: 'collapseToggle', hiddenClass: 'hidden', events: { TERMS_CHANGED: "termsChanged", UPDATE_QUERY: "updateQuery" Loading @@ -38,6 +45,56 @@ define([ this.domNode.removeAttribute('widgetId'); this.inherited(arguments); if (this.maxInitialEntries > 0) { this._evaluateNumberOfBuckets(); } }, _onTitleClick: function() { this.inherited(arguments); this._evaluateOpenStatus(); }, _evaluateNumberOfBuckets: function() { var buckets = this.config.buckets; if (buckets.length > this.maxInitialEntries) { this._outerNode = query('.' + this.facetsEntriesContainerClass, this.domNode)[0]; put(this._outerNode, '.' + this.collapseEntriesClass); this._toggleNode = put(this.domNode, 'span.' + this.collapseToggleClass); this._setToggleShowText(this.i18n.showMore); this._toggleNode.onclick = lang.hitch(this, this._onToggleShowMore); this._evaluateOpenStatus(); } }, _evaluateOpenStatus: function() { put(this._toggleNode, (this.open ? '!' : '.') + this.hiddenClass); }, _onToggleShowMore: function() { if (query('.' + this.collapseEntriesClass, this.domNode).length) { put(this._outerNode, '!' + this.collapseEntriesClass); this._setToggleShowText(this.i18n.showLess); } else { put(this._outerNode, '.' + this.collapseEntriesClass); this._setToggleShowText(this.i18n.showMore); } }, _setToggleShowText: function(text) { var total = this.config.buckets.length, fullText = text + ' (' + total + ')'; this._toggleNode.innerHTML = fullText; }, _render: function() { Loading @@ -64,7 +121,7 @@ define([ _insertBucket: function(bucket) { var label, var labelText, key = bucket.key; if (this.i18n && this.i18n[key]) { Loading @@ -74,10 +131,12 @@ define([ } var id_random = this._generateIDRandom(), bucketNode = put(this.containerBucketsNode, "div.containerBucket"); labelNode = put(bucketNode, "label[for=$][title=$].inlineRow.labelBucket", id_random, labelText, labelText), put(bucketNode, "label[for=$].labelBucket", id_random, "(" + bucket.doc_count + ")"), checkBoxNode = put(labelNode, "-input[type='checkbox'][id=$][data-redmic-id=$]", id_random, key); bucketNode = put(this.containerBucketsNode, "div.containerBucket"), labelNode = put(bucketNode, "label[for=$][title=$].inlineRow.labelBucket", id_random, labelText, labelText); put(bucketNode, "label[for=$].labelBucket", id_random, "(" + bucket.doc_count + ")"); var checkBoxNode = put(labelNode, "-input[type='checkbox'][id=$][data-redmic-id=$]", id_random, key); checkBoxNode.onchange = lang.hitch(this, this._eventClickCheckBox, checkBoxNode.getAttribute('data-redmic-id')); Loading stylesheets @ 169f575e Compare 97a3c42e to 169f575e Original line number Diff line number Diff line Subproject commit 97a3c42e105014d50234108eb46f5b12b464f152 Subproject commit 169f575e8abfbbfd5c132cf7c67a9cf4880bf20e Loading
src/app/ContainerFacets.js +3 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ define([ constructor: function(args){ this.config = { maxInitialEntries: 5, aggs: null, openFacets: false, order: null, Loading Loading @@ -98,7 +99,8 @@ define([ title: (this.i18n && this.i18n[item]) ? this.i18n[item] : item, i18n: this.i18n, open: open, config: content config: content, maxInitialEntries: this.maxInitialEntries }).placeAt(this.domNode); this.instance[item] = { Loading
src/app/Facet.js +65 −6 Original line number Diff line number Diff line Loading @@ -3,12 +3,14 @@ define([ , "dijit/TitlePane" , "dojo/_base/lang" , "dojo/Evented" , 'dojo/query' , "put-selector/put" ], function( declare , TitlePane , lang , Evented , query , put ) { Loading @@ -17,9 +19,14 @@ define([ constructor: function(args) { this.config = { maxInitialEntries: 5, termsFieldFacet: null, termSelection: [], bucketsKeys: [], facetsEntriesContainerClass: 'dijitTitlePaneContentOuter', collapseEntriesClass: 'collapseEntries', collapseToggleClass: 'collapseToggle', hiddenClass: 'hidden', events: { TERMS_CHANGED: "termsChanged", UPDATE_QUERY: "updateQuery" Loading @@ -38,6 +45,56 @@ define([ this.domNode.removeAttribute('widgetId'); this.inherited(arguments); if (this.maxInitialEntries > 0) { this._evaluateNumberOfBuckets(); } }, _onTitleClick: function() { this.inherited(arguments); this._evaluateOpenStatus(); }, _evaluateNumberOfBuckets: function() { var buckets = this.config.buckets; if (buckets.length > this.maxInitialEntries) { this._outerNode = query('.' + this.facetsEntriesContainerClass, this.domNode)[0]; put(this._outerNode, '.' + this.collapseEntriesClass); this._toggleNode = put(this.domNode, 'span.' + this.collapseToggleClass); this._setToggleShowText(this.i18n.showMore); this._toggleNode.onclick = lang.hitch(this, this._onToggleShowMore); this._evaluateOpenStatus(); } }, _evaluateOpenStatus: function() { put(this._toggleNode, (this.open ? '!' : '.') + this.hiddenClass); }, _onToggleShowMore: function() { if (query('.' + this.collapseEntriesClass, this.domNode).length) { put(this._outerNode, '!' + this.collapseEntriesClass); this._setToggleShowText(this.i18n.showLess); } else { put(this._outerNode, '.' + this.collapseEntriesClass); this._setToggleShowText(this.i18n.showMore); } }, _setToggleShowText: function(text) { var total = this.config.buckets.length, fullText = text + ' (' + total + ')'; this._toggleNode.innerHTML = fullText; }, _render: function() { Loading @@ -64,7 +121,7 @@ define([ _insertBucket: function(bucket) { var label, var labelText, key = bucket.key; if (this.i18n && this.i18n[key]) { Loading @@ -74,10 +131,12 @@ define([ } var id_random = this._generateIDRandom(), bucketNode = put(this.containerBucketsNode, "div.containerBucket"); labelNode = put(bucketNode, "label[for=$][title=$].inlineRow.labelBucket", id_random, labelText, labelText), put(bucketNode, "label[for=$].labelBucket", id_random, "(" + bucket.doc_count + ")"), checkBoxNode = put(labelNode, "-input[type='checkbox'][id=$][data-redmic-id=$]", id_random, key); bucketNode = put(this.containerBucketsNode, "div.containerBucket"), labelNode = put(bucketNode, "label[for=$][title=$].inlineRow.labelBucket", id_random, labelText, labelText); put(bucketNode, "label[for=$].labelBucket", id_random, "(" + bucket.doc_count + ")"); var checkBoxNode = put(labelNode, "-input[type='checkbox'][id=$][data-redmic-id=$]", id_random, key); checkBoxNode.onchange = lang.hitch(this, this._eventClickCheckBox, checkBoxNode.getAttribute('data-redmic-id')); Loading
stylesheets @ 169f575e Compare 97a3c42e to 169f575e Original line number Diff line number Diff line Subproject commit 97a3c42e105014d50234108eb46f5b12b464f152 Subproject commit 169f575e8abfbbfd5c132cf7c67a9cf4880bf20e