Skip to content

Commit

Permalink
ENH Show Search field if any keywords are presented
Browse files Browse the repository at this point in the history
  • Loading branch information
Sabina Talipova committed Jul 19, 2022
1 parent ead33f0 commit b1d75c2
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 21 deletions.
2 changes: 1 addition & 1 deletion client/dist/js/bundle.js

Large diffs are not rendered by default.

81 changes: 61 additions & 20 deletions client/src/legacy/GridField.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@ $.entwine('ss', function($) {
this.fixColumns();
this.injectSearchButton(false);
}

if (this.hasFilters()) {
this.injectSearchButton(true);
};

if (this.is('.grid-field--lazy-loadable') && (
(this.closest('.ss-tabset').length === 0) || (this.data('gridfield-lazy-load-state') === 'force') )
Expand Down Expand Up @@ -142,6 +146,16 @@ $.entwine('ss', function($) {
return JSON.parse(this.find(':input[name="' + this.data('name') + '[GridState]"]').val());
},

/**
* @returns {Boolean}
*/
hasFilters: function() {
if (this.getState().GridFieldFilterHeader) {
return true;
}
return false;
},

needsColumnFix: function() {
return (
this.find('.grid-field__filter-header, .grid-field__search-holder').length &&
Expand Down Expand Up @@ -180,6 +194,19 @@ $.entwine('ss', function($) {
if (hasLegacyFilterHeader) {
this.find('.sortable-header th:last').html(content);
}
},

keepStateInHistory: function() {
const newURLSceme = $(this).find('.gridfield-actionmenu__container').data('schema');
if (newURLSceme && newURLSceme.length > 0) {
newURLSceme.filter( e => {
if (e.type === 'link') {
const searchParam = e.url.includes('?') ? '?' + e.url.split('?')[1] : '';
const historyState = $.extend({}, {path: window.location.pathname + searchParam}, this.getState());
history.replaceState(historyState, '', window.location.pathname + searchParam);
}
})
}
}
});

Expand Down Expand Up @@ -370,17 +397,6 @@ $.entwine('ss', function($) {
triggerChange = false;
}

const successCallback = function(data, status, response) {
const messageText = response.getResponseHeader('X-Message-Text');
const messageType = response.getResponseHeader('X-Message-Type');
if (messageText && messageType) {
var formEditError = $("#Form_EditForm_error");
formEditError.addClass(messageType);
formEditError.html(messageText);
formEditError.show();
}
};

var data = [
{
name: this.attr('name'),
Expand All @@ -398,10 +414,21 @@ $.entwine('ss', function($) {
});
}

this.getGridField().reload(
{ data },
successCallback
);
const gridField = $(this).getGridField();
const successCallback = function(data, status, response) {
gridField.keepStateInHistory();

const messageText = response.getResponseHeader('X-Message-Text');
const messageType = response.getResponseHeader('X-Message-Type');
if (messageText && messageType) {
var formEditError = $("#Form_EditForm_error");
formEditError.addClass(messageType);
formEditError.html(messageText);
formEditError.show();
}
};

gridField.reload({ data }, successCallback );

e.preventDefault();
},
Expand Down Expand Up @@ -646,7 +673,12 @@ $.entwine('ss', function($) {
}
}

this.getGridField().reload({ data: ajaxData });
const gridField = $(this).getGridField();
const successCallback = function() {
gridField.keepStateInHistory();
};

gridField.reload({ data: ajaxData }, successCallback);
},

refresh() {
Expand Down Expand Up @@ -729,9 +761,13 @@ $.entwine('ss', function($) {
});
}

this.getGridField().reload({
data: ajaxData
});
const gridField = $(this).getGridField();
const successCallback = function() {
gridField.keepStateInHistory();
};

gridField.reload({ data: ajaxData }, successCallback);

return false;
}else{
filterbtn.addClass('hover-alike');
Expand Down Expand Up @@ -783,7 +819,12 @@ $.entwine('ss', function($) {

var gridfield = $(this).getGridField();
gridfield.setState('GridFieldPaginator', {currentPage: newpage});
gridfield.reload();

const successCallback = function() {
gridfield.keepStateInHistory();
};

gridfield.reload({}, successCallback);

return false;
}
Expand Down

0 comments on commit b1d75c2

Please sign in to comment.