Skip to content

Commit

Permalink
Restore pagination as it was implemented before
Browse files Browse the repository at this point in the history
  • Loading branch information
matjack1 committed Oct 25, 2023
1 parent 7255437 commit 5aa5768
Show file tree
Hide file tree
Showing 12 changed files with 132 additions and 241 deletions.
8 changes: 1 addition & 7 deletions src/config.esp
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,7 @@ bool ICACHE_FLASH_ATTR loadConfiguration(Config &config)
return false;
}
#ifdef DEBUG
Serial.println(F("[ INFO ] Config file found:"));
char buffer[2048];
configFile.seek(0, SeekSet);
while(configFile.readBytes(buffer, 2048) > 0){
Serial.write(buffer);
}
Serial.println("done");
Serial.println(F("[ INFO ] Config file found"));
#endif
JsonObject network = json["network"];
JsonObject hardware = json["hardware"];
Expand Down
18 changes: 9 additions & 9 deletions src/webh/esprfid.htm.gz.h

Large diffs are not rendered by default.

25 changes: 12 additions & 13 deletions src/webh/esprfid.js.gz.h

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions src/webh/index.html.gz.h

Large diffs are not rendered by default.

49 changes: 23 additions & 26 deletions src/webh/required.css.gz.h

Large diffs are not rendered by default.

25 changes: 10 additions & 15 deletions src/webh/required.js.gz.h

Large diffs are not rendered by default.

6 changes: 0 additions & 6 deletions src/websrc/3rdparty/css/tui-pagination.min.css

This file was deleted.

7 changes: 0 additions & 7 deletions src/websrc/3rdparty/js/tui-pagination.min.js

This file was deleted.

8 changes: 1 addition & 7 deletions src/websrc/esprfid.htm
Original file line number Diff line number Diff line change
Expand Up @@ -493,9 +493,6 @@ <h5>Please wait while fetching data...<span id="loadpages"></span></h5>
<div class="panel panel-default">
<div>
<table id="eventtable" class="table" data-paging="true" data-filtering="true" data-sorting="true" data-editing="false" data-state="true"></table>
<div class="row row-pagination-container">
<div class="col-xs-6 col-md-4 col-md-offset-4 text-center"><div id="tui-event-pagination-container" class="pagination"></div></div>
</div>
</div>
</div>
<button id="cleareventlogbtn" disabled="true" onclick="clearevent()" class="btn btn-primary btn-sm">Clear Log</button>
Expand Down Expand Up @@ -932,10 +929,7 @@ <h5>You can add new users by either scanning a RFID Tag or by clicking on "New U
</div>
<br>
<div class="panel panel-default">
<table id="usertable" class="table" data-filtering="true" data-sorting="true" data-editing="true" data-state="true"></table>
<div class="row row-pagination-container">
<div class="col-xs-6 col-md-4 col-md-offset-4 text-center"><div id="tui-pagination-container" class="pagination"></div></div>
</div>
<table id="usertable" class="table" data-paging="true" data-filtering="true" data-sorting="true" data-editing="true" data-state="true"></table>
</div>
<div class="modal fade" id="editor-modal" tabindex="-1" role="dialog" aria-labelledby="editor-title">
<style scoped>
Expand Down
9 changes: 0 additions & 9 deletions src/websrc/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,6 @@
#openinghours td:nth-child(2n), #openinghours th:nth-child(2n) {
background-color: #bbb;
}
#tui-pagination-container {
margin: 0;
margin-top: -20px;
position: relative;
top: -20px;
}
.row-pagination-container {
height: 0;
}
</style>>
</head>

Expand Down
206 changes: 71 additions & 135 deletions src/websrc/js/esprfid.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ var utcSeconds;
var timezone;
var data = [];
var ft;
var pagination;
var ajaxobj;

var maxNumRelays=4;
Expand Down Expand Up @@ -672,20 +671,10 @@ function getUsers() {
sendWebsocketWithRetry("{\"command\":\"userlist\", \"page\":" + page + "}");
}

function getUsersPage(i) {
page = i;
sendWebsocketWithRetry("{\"command\":\"userlist\", \"page\":" + page + "}");
}

function getEvents() {
sendWebsocketWithRetry("{\"command\":\"geteventlog\", \"page\":" + page + ", \"filename\":\"" + theCurrentLogFile +"\"}");
}

function getEventsPage(i) {
page = i;
sendWebsocketWithRetry("{\"command\":\"geteventlog\", \"page\":" + page + ", \"filename\":\"" + theCurrentLogFile +"\"}");
}

function isVisible(e) {
return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length);
}
Expand Down Expand Up @@ -732,42 +721,6 @@ function builddata(obj) {
data = data.concat(obj.list);
}

function buildUserData(obj) {
data = obj.list;
}

function buildEventData(obj) {
var newlist = [];
for (var i = 0; i < obj.list.length; i++) {
newlist[i] = {};
newlist[i].options = {};
newlist[i].value = {};
try {
var dup = JSON.parse(obj.list[i]);
dup.uid = i;
} catch(e)
{
var dup = {"uid":i,"type":"ERRO","src":"WEBIF","desc":"Error in logfile entry","data":obj.list[i],"time":1}
}
newlist[i].value = dup;
var c = dup.type;
switch (c) {
case "WARN":
newlist[i].options.classes = "warning";
break;
case "INFO":
newlist[i].options.classes = "info";
break;
case "ERRO":
newlist[i].options.classes = "danger";
break;
default:
break;
}
}
return newlist;
}

function testRelay(xnum) {
sendWebsocket("{\"command\":\"testrelay" + xnum + "\"}");
}
Expand Down Expand Up @@ -852,22 +805,14 @@ function getContent(contentname) {
listlog();
break;
case "#userscontent":
initUserTable();
document.getElementById("loading-img").style.display = "none";
$(".footable-show").click();
$(".fooicon-remove").click();
page = 1;
data = [];
getUsersPage(page);
getUsers();
break;
case "#eventcontent":
initEventTable();
document.getElementById("loading-img").style.display = "none";
$(".footable-show").click();
$(".fooicon-remove").click();
page = 1;
data = [];
getEventsPage(page);
getEvents();
break;
default:
break;
Expand Down Expand Up @@ -1111,6 +1056,35 @@ function initFileListTable() {
}

function initEventTable() {
var newlist = [];
for (var i = 0; i < data.length; i++) {
newlist[i] = {};
newlist[i].options = {};
newlist[i].value = {};
newlist[i].value = dup;
try {
var dup = JSON.parse(data[i]);
dup.uid = i;
} catch(e)
{
var dup = {"uid":i,"type":"ERRO","src":"WEBIF","desc":"Error in logfile entry","data":data[i],"time":1}
}
var c = dup.type;
switch (c) {
case "WARN":
newlist[i].options.classes = "warning";
break;
case "INFO":
newlist[i].options.classes = "info";
break;
case "ERRO":
newlist[i].options.classes = "danger";
break;
default:
break;
}

}
jQuery(function($) {
ft = window.FooTable.init("#eventtable", {
columns: [{
Expand Down Expand Up @@ -1161,28 +1135,9 @@ function initEventTable() {
"breakpoints": "xs sm"
}
],
rows: data
rows: newlist
});
});

pagination = new tui.Pagination('tui-event-pagination-container', {
itemsPerPage: 10,
visiblePages: 5,
template: {
page: '<li><a href="#">{{page}}</a></li>',
currentPage: '<li class="active"><a href="#">{{page}}</a></li>',
moveButton:
'<li><a href="#" aria-label="{{type}}"><span aria-hidden="true">{{type}}</span></a></li>',
disabledMoveButton:
'<li class="disabled"><a href="#" aria-label="{{type}}"><span aria-hidden="true">{{type}}</span></a></li>',
moreButton:
'<li><a href="#">...</a></li>',
},
});

pagination.on('beforeMove', function(eventData) {
getEventsPage(eventData.page);
});
}

function initLatestLogTable() {
Expand Down Expand Up @@ -1435,6 +1390,9 @@ function initUserTable() {
}
}
},
paging: {
size: 10
},
components: {
filtering: window.FooTable.MyFiltering
}
Expand Down Expand Up @@ -1485,25 +1443,6 @@ function initUserTable() {
});
});

pagination = new tui.Pagination('tui-pagination-container', {
itemsPerPage: 10,
visiblePages: 5,
template: {
page: '<li><a href="#">{{page}}</a></li>',
currentPage: '<li class="active"><a href="#">{{page}}</a></li>',
moveButton:
'<li><a href="#" aria-label="{{type}}"><span aria-hidden="true">{{type}}</span></a></li>',
disabledMoveButton:
'<li class="disabled"><a href="#" aria-label="{{type}}"><span aria-hidden="true">{{type}}</span></a></li>',
moreButton:
'<li><a href="#">...</a></li>',
},
});

pagination.on('beforeMove', function(eventData) {
getUsersPage(eventData.page);
});

ft = FooTable.get('#usertable');
for (var i=2; i<= maxNumRelays; i++)
{
Expand Down Expand Up @@ -1533,33 +1472,25 @@ function socketMessageListener(evt) {
break;
case "userlist":
haspages = obj.haspages;
if (backupstarted) {
builddata(obj);
} else {
pagination.setTotalItems(haspages * 10);
if(page == 1) {
// needed to draw the page numbers depending on the haspages
pagination.reset();
if (haspages === 0) {
if (!backupstarted) {
document.getElementById("loading-img").style.display = "none";
initUserTable();
$(".footable-show").click();
$(".fooicon-remove").click();
}
buildUserData(obj);
ft.loadRows(data);
break;
}
builddata(obj);
break;
case "eventlist":
haspages = obj.haspages;
// if (haspages === 0) {
// document.getElementById("loading-img").style.display = "none";
// initEventTable();
// break;
// }

pagination.setTotalItems(haspages * 10);
if(page == 1) {
// needed to draw the page numbers depending on the haspages
pagination.reset();
if (haspages === 0) {
document.getElementById("loading-img").style.display = "none";
initEventTable();
break;
}
data = buildEventData(obj);
ft.loadRows(data);
builddata(obj);
break;
case "latestlist":
haspages = obj.haspages;
Expand Down Expand Up @@ -1614,33 +1545,38 @@ function socketMessageListener(evt) {
}
break;
case "userlist":
if(backupstarted) {
if (page < haspages && obj.result === true) {
getnextpage("userlist");
} else if (page === haspages) {
if (page < haspages && obj.result === true) {
getnextpage("userlist");
} else if (page === haspages) {
if (!backupstarted) {
initUserTable();
document.getElementById("loading-img").style.display = "none";

$(".footable-show").click();
$(".fooicon-remove").click();
} else {
file.type = "esp-rfid-userbackup";
file.version = "v0.6";
file.list = data;
piccBackup(file);
break;
}
break;
}
break;
case "eventlist":
document.getElementById("saveeventlogbtn").disabled=true;
document.getElementById("cleareventlogbtn").disabled=true;
if(backupstarted) {
if (page < haspages && obj.result === true) {
getnextpage("geteventlog");
} else if (page === haspages) {
document.getElementById("saveeventlogbtn").disabled = false;
// only enable delete button for main event log
// others need to be done from the maintenance section
if (theCurrentLogFile === "/eventlog.json") {
document.getElementById("cleareventlogbtn").disabled = false;
}
document.getElementById("loading-img").style.display = "none";
document.getElementById("saveeventlogbtn").disabled=true;
document.getElementById("cleareventlogbtn").disabled=true;
if (page < haspages && obj.result === true) {
getnextpage("geteventlog");
} else if (page === haspages) {
initEventTable();
document.getElementById("saveeventlogbtn").disabled=false;
// only enable delete button for main event log
// others need to be done from the maintenance section
if (theCurrentLogFile === "/eventlog.json") {
document.getElementById("cleareventlogbtn").disabled=false;
}
document.getElementById("loading-img").style.display = "none";
}
break;
case "latestlist":
Expand Down
2 changes: 0 additions & 2 deletions tools/webfilesbuilder/gulpfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ function scriptsConcat() {
'../../src/websrc/3rdparty/js/jquery-1.12.4.min.js',
'../../src/websrc/3rdparty/js/bootstrap-3.3.7.min.js',
'../../src/websrc/3rdparty/js/footable-3.1.6.min.js',
'../../src/websrc/3rdparty/js/tui-pagination.min.js',
])
.pipe(concat({
path: 'required.js',
Expand Down Expand Up @@ -99,7 +98,6 @@ function stylesConcat() {
'../../src/websrc/3rdparty/css/bootstrap-3.3.7.min.css',
'../../src/websrc/3rdparty/css/footable.bootstrap-3.1.6.min.css',
'../../src/websrc/3rdparty/css/sidebar.css',
'../../src/websrc/3rdparty/css/tui-pagination.min.css',
])
.pipe(concat({
path: 'required.css',
Expand Down

0 comments on commit 5aa5768

Please sign in to comment.