This old graphical interface to Unidatab has been rewritten entirely to conform to the new version Unidatab. Experimenting with the software is now fairly easier. The output is always readable while Unidatab function calls are made automatically after filling out the proper fields on a web page and clicking the dedicated menu items. In the same time I brought some changes to Unidatab itself. The anonymous login is replaced by a guest user and this change should be echoed on any running database by the administrator simply creating a new guest user with proper access level for who want to keep some anonymous login. Note that by default, the guest user is created but not allowed anything before its access level is set (this was already the case in prior versions).
The work on this interface made me see the main obstacle remaining in Unidatab’s C++ code: the printing options are completely merged into the execution functions. During the years it took to write Unidatab, from the first PL/perlu scripts until now, the code gained much too much in complexity, so that I can barely read it today and understand how it behaves actually in terms of output generation. I do not dare to change anything – because it works like that. But it has become clear that if anything has to be done now to improve Unidatab, it will have to deal in priority with the SQL output preparation. Due to an insane degree of intrication, this represents a lot of work and requires a better understanding of how Sqlite3 proceedes.
Please note that Unidatab-CGI won’t behave correctly without a fallback record aliased ‘unid_home’. This record is included in the default set.
Here a few screenshots: