Skip to content

Commit 16e91f2

Browse files
committed
fix
1 parent 241d9fc commit 16e91f2

File tree

1 file changed

+34
-12
lines changed

1 file changed

+34
-12
lines changed

jquery.filters.js

Lines changed: 34 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -343,7 +343,6 @@
343343
realIndex = 0,
344344
tempHtml,
345345
showMoreModelName,
346-
filteredOptions,
347346
maxFilters = filterModal.settings.MAX_FILTERS,
348347
reachedMax = false;
349348

@@ -385,7 +384,7 @@
385384
tempHtml;
386385
reachedMax = true;
387386
}else {
388-
additionalFilterHtml += singleFilterLinkHtml(parameter)
387+
additionalFilterHtml += singleFilterLinkHtml(parameter, 'both')
389388
}
390389
}
391390
});
@@ -406,19 +405,31 @@
406405
}
407406

408407

409-
function singleFilterLinkHtml(parameter){
410-
var showMoreModelName, filteredOptions, tempHtml, html;
408+
function singleFilterLinkHtml(parameter, renderType){
409+
var showMoreModelName,
410+
filteredOptions,
411+
hiddenPopUpHtml,
412+
html,
413+
link;
414+
411415
if (shouldNotRenderParameter(parameter)) {
412416
html = '';
413417
} else {
414418
showMoreModelName = calcShowMoreModelName(parameter.name);
415419
filteredOptions = filterOptionsByDateAndRelatedToFilters(parameter);
416-
tempHtml = showMoreHiddenPopUpHtml(parameter.name, showMoreModelName, parameter, filteredOptions);
417-
html = '<div class="checkbox"><a class="bootstrap-single-link-modal-js" data-toggle="modal" data-target="#' +
420+
hiddenPopUpHtml = showMoreHiddenPopUpHtml(parameter.name, showMoreModelName, parameter, filteredOptions);
421+
link = '<div class="checkbox"><a class="bootstrap-single-link-modal-js" data-toggle="modal" data-target="#' +
418422
showMoreModelName + '" data-attribute="' +
419423
parameter.attributeName + '">' + parameter.name + '</a>' +
420-
'</div>' +
421-
tempHtml;
424+
'</div>';
425+
if (renderType == 'hidden-popups-only'){
426+
html = hiddenPopUpHtml
427+
} else if (renderType == 'links-only'){
428+
html = link
429+
}else {
430+
html = link + hiddenPopUpHtml;
431+
}
432+
422433
}
423434

424435
return html
@@ -486,7 +497,8 @@
486497
// this hidden pop up will contain others filters.
487498
// if the number of filters is bigger than 16, it won't hold in the main html.
488499
function OthersHiddenPopUpHtml(allParametersToRender){
489-
return '<div id="'+filterModal.settings.OTHERS_MODEL_NAME+'" class="modal fade in bootstrap-modal-js">'+
500+
var renderType = 'hidden-popups-only';
501+
var html = '<div id="'+filterModal.settings.OTHERS_MODEL_NAME+'" class="modal fade in bootstrap-modal-js">'+
490502
'<div class="modal-dialog">' +
491503
'<div class="modal-content">' +
492504
'<div class="modal-header">' +
@@ -504,13 +516,23 @@
504516
'</div><!-- /.modal-dialog -->' +
505517
'</div><!-- /.modal -->';
506518

519+
//render hidden pop ups html outside so that when hiding the others pop up it wont hide the selected pop up
520+
$.each(allParametersToRender, function (index, filterParameter) {
521+
if (index > filterModal.settings.MAX_FILTERS) {
522+
html += singleFilterLinkHtml(filterParameter, renderType)
523+
}
524+
});
525+
526+
return html
527+
528+
507529
}
508530

509531
function otherFiltersHtml(allParametersToRender){
510-
var html = '';
532+
var html = '', renderType = 'links-only';
511533
$.each(allParametersToRender, function (index, filterParameter) {
512-
if (index >= filterModal.settings.MAX_FILTERS) {
513-
html += singleFilterLinkHtml(filterParameter)
534+
if (index > filterModal.settings.MAX_FILTERS) {
535+
html += singleFilterLinkHtml(filterParameter, renderType)
514536
}
515537
});
516538

0 commit comments

Comments
 (0)