mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 20:29:29 +00:00
- Infocenter uebersicht bugfix: tablesorter filter storage is the same for homepage with and without "/index" (for keeping tablesorter filter when coming back from details page)
This commit is contained in:
+11
-17
@@ -84,7 +84,7 @@ var FHC_FilterWidget = {
|
||||
// Public methods
|
||||
|
||||
/**
|
||||
* To display the FilterWidget using the loaded data prenset in the session
|
||||
* To display the FilterWidget using the loaded data present in the session
|
||||
*/
|
||||
display: function() {
|
||||
|
||||
@@ -392,7 +392,6 @@ var FHC_FilterWidget = {
|
||||
},
|
||||
{
|
||||
successCallback: function(data, textStatus, jqXHR) {
|
||||
FHC_FilterWidget._cleanTablesorterLocalStorage();
|
||||
FHC_FilterWidget._failOrRefresh(data, textStatus, jqXHR);
|
||||
}
|
||||
}
|
||||
@@ -413,7 +412,6 @@ var FHC_FilterWidget = {
|
||||
},
|
||||
{
|
||||
successCallback: function(data, textStatus, jqXHR) {
|
||||
FHC_FilterWidget._cleanTablesorterLocalStorage();
|
||||
FHC_FilterWidget._failOrRefresh(data, textStatus, jqXHR);
|
||||
}
|
||||
}
|
||||
@@ -454,7 +452,6 @@ var FHC_FilterWidget = {
|
||||
},
|
||||
{
|
||||
successCallback: function(data, textStatus, jqXHR) {
|
||||
FHC_FilterWidget._cleanTablesorterLocalStorage();
|
||||
FHC_FilterWidget._failOrRefresh(data, textStatus, jqXHR);
|
||||
}
|
||||
}
|
||||
@@ -489,7 +486,6 @@ var FHC_FilterWidget = {
|
||||
},
|
||||
{
|
||||
successCallback: function(data, textStatus, jqXHR) {
|
||||
FHC_FilterWidget._cleanTablesorterLocalStorage();
|
||||
FHC_FilterWidget._failOrReload(data, textStatus, jqXHR);
|
||||
}
|
||||
}
|
||||
@@ -509,7 +505,6 @@ var FHC_FilterWidget = {
|
||||
},
|
||||
{
|
||||
successCallback: function(data, textStatus, jqXHR) {
|
||||
FHC_FilterWidget._cleanTablesorterLocalStorage();
|
||||
FHC_FilterWidget._failOrReload(data, textStatus, jqXHR);
|
||||
}
|
||||
}
|
||||
@@ -840,6 +835,14 @@ var FHC_FilterWidget = {
|
||||
*/
|
||||
_renderDatasetTablesorter: function(data) {
|
||||
|
||||
//clear tablesorter filter storage
|
||||
var keepTsFilter = FHC_AjaxClient.getUrlParameter("keepTsFilter");
|
||||
|
||||
if (typeof keepTsFilter === "undefined" || keepTsFilter !== "true")
|
||||
{
|
||||
FHC_FilterWidget._clearTablesorterLocalStorage();
|
||||
}
|
||||
|
||||
if (data.hasOwnProperty("checkboxes") && data.checkboxes!=null && data.checkboxes.trim() != "")
|
||||
{
|
||||
$("#filterTableDataset > thead > tr").append("<th data-filter='false' title='Select'>Select</th>");
|
||||
@@ -938,14 +941,6 @@ var FHC_FilterWidget = {
|
||||
}
|
||||
});
|
||||
|
||||
// Reset filter storage if not specified by get parameter
|
||||
var keepTsFilter = FHC_AjaxClient.getUrlParameter("keepTsFilter");
|
||||
|
||||
if (typeof keepTsFilter === "undefined" || keepTsFilter !== "true")
|
||||
{
|
||||
FHC_FilterWidget._cleanTablesorterLocalStorage();
|
||||
}
|
||||
|
||||
$.tablesorter.updateAll($("#filterTableDataset")[0].config, true, null);
|
||||
}
|
||||
},
|
||||
@@ -1064,9 +1059,8 @@ var FHC_FilterWidget = {
|
||||
/**
|
||||
* Tablesorter filter local storage clean
|
||||
*/
|
||||
_cleanTablesorterLocalStorage: function() {
|
||||
|
||||
$("#filterTableDataset").trigger("filterResetSaved");
|
||||
_clearTablesorterLocalStorage: function() {
|
||||
localStorage.removeItem("tablesorter-filters");
|
||||
},
|
||||
|
||||
/**
|
||||
|
||||
@@ -148,6 +148,28 @@ var InfocenterPersonDataset = {
|
||||
trs.find("input[name=PersonId\\[\\]]").prop("checked", false);
|
||||
}
|
||||
);
|
||||
|
||||
//make sure tablesorter local storage for homepage url with and without "/index" shares same values
|
||||
$("#filterTableDataset").bind('filterEnd', function()
|
||||
{
|
||||
if (FHC_JS_DATA_STORAGE_OBJECT.called_method === 'index')
|
||||
{
|
||||
var pathname = window.location.pathname;
|
||||
var storageobj = localStorage.getItem("tablesorter-filters");
|
||||
var parsed = JSON.parse(storageobj);
|
||||
var regex = new RegExp(/\/index(?!\.ci\.php)/);
|
||||
if (regex.test(pathname))
|
||||
{
|
||||
parsed[pathname.replace(regex, "")] = parsed[pathname];
|
||||
}
|
||||
else
|
||||
{
|
||||
parsed[pathname + "/index"] = parsed[pathname];
|
||||
}
|
||||
storageobj = JSON.stringify(parsed);
|
||||
localStorage.setItem("tablesorter-filters", storageobj);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user