Mark Crossley said
Ever since I saw that I have been trying to design an enhanced functionality implementation. In-line editing is one aim, but adding validation is main aim as there is no validation of inputs in the current editor.The main thrust of this release is to add some log file editing capability to Cumulus MX.
It works on all three log file types, but it is fairly basic at present. You can edit or delete lines in the files.
The editing has to be done via pop-up dialog. I only found two libraries that support JQuery dataTables editing,
one is very comprehensive - but costs $$$ - the other is free.
The free version does not currently support in-line editing of the table which is a shame.
If any web guru out there can come up with a better solution please post about it on the forum, or send a pull request.
For the standard (monthly) logs, some fields are derived from others, but there is nothing to help you when you edit a source field to know what edit to make to derived fields, to keep them in line with any edit of source fields, so this is my additional aim for that web page. The feels like field was added in MX version 3.6.0 build 3076, but the editor does not help you to edit that into older lines in the log files. You may have seen my PHP script at viewtopic.php?f=18&t=18096&p=142634 that will add feels like field into log file lines where it does not exist. That script also updates other derived fields, so I know how to do this, but for the admin interface editors I need to make the same principle work in JavaScript and I don't find that so easy for writing formulas.
By May 2020, my ideas had crystallised into a possible redesign. At that stage,I discussed my idea for this enhancement with Mark before I committed any more of my time to this JavaScript project. He thought it was a good idea, but obviously he did not have time to spare to work out how to implement my idea (because of trying to keep up with Ecowitt, and adapt MX for more secure file transfer), which is basically why I have done the work. With his blessing, I have proceeded to code something that I could pass to other people to see whether they supported my theory.
If anyone else wants to test this, please PM me, and I can supply a copy of my latest zip of edited files.
The feedback from those who have already helped with testing has convinced me that my improvement is desired, but I have not got it working correctly yet, this feedback is helping me improve my design and achieve more and more sophistication.
The whole project was constrained by how other parts of MX work, of how data tables and other external software used by MX work.
This implies my great ideas cannot be implemented by simply tweaking existing HTML and js.
Unfortunately, all parts are so tightly interlocked, any HTML page styling change in one place affects others. As part of this project I taught myself Bootstrap (unfortunately I learnt the latest version and then discovered that MX uses an obsolete version) and studied the AltEditor software in great detail as well as studying the bits of MX code at the other end of the application programming interfaces used.
The problem with my initial design was that I could not make it work within these constraints. The latest change to the subject for this topic is because I now accept that it is impossible to successfully alter one part of admin interface in isolation. And when I tried to edit styling for example, Mark rejected my project for inclusion in a public release because it upset other parts of the admin interface. Thus I had to abort the project because of this snag, and my need to spend time on other tasks.