The NetEpi project is developing open-source, network-enabled tools for epidemiology and public health practice.


http://code.google.com/p/netepi/





Separate each tag with a space.

Ratings and Reviews

Be the first to post a text review of NetEpi. Rate and review a project by clicking thumbs up or thumbs down in the right column.

Project Feed

  • Project Information Updated

    timc changed the public information on the NetEpi project

    posted by timc 186 days ago

  • NetEpi-Collection NetEpi-Collection-1.3.0 file released: NetEpi-Collection-1.3.0.tar.gz.md5

    Please see the doc/CHANGELOG file in the distribution tarball for details of all changes made since the initial release of NetEpi Collection (formerly NetEpi Case Manager).

    posted 537 days ago

  • NetEpi-Collection NetEpi-Collection-1.3.0 file released: NetEpi-Collection-1.3.0.tar.gz

    Please see the doc/CHANGELOG file in the distribution tarball for details of all changes made since the initial release of NetEpi Collection (formerly NetEpi Case Manager).

    posted 537 days ago

  • File released: /NetEpi-Collection/NetEpi-Collection-1.3.0/NetEpi-Collection-1.3.0.tar.gz.md5

    posted 538 days ago

  • File released: /NetEpi-Collection/NetEpi-Collection-1.3.0/NetEpi-Collection-1.3.0.tar.gz

    posted 538 days ago

  • NetEpi-Collection NetEpi-Collection-1.2.0 file released: NetEpi-Collection-1.2.0.tar.gz.md5

    CUMULATIVE CHANGES IN NetEpi Collection ======================================= SUMMARY OF CHANGES IN VERSION 1.2.0 (LATEST) RELATIVE TO VERSION 1.1.0 ====================================================================== The following changes have been made in this version: * The ability to import demographic data from CSV or other delimited or column-formatted data files has been added. A "point-and-click" interface to "map" columns in the file to be imported to target demographic fields in NetEpi Collection is provided, and a range of transformations of data values can also be specified. Transformed data can be previewed before it is imported. The parameters used to import a particular data file can be saved and re-used on subsequent occasions. * Several new fields were added to the core "demographics" fields: - a third set of address fields, so there are now address fields for residential address, an alternate address, and a work or school address (although the field labels on all of these can be customised as previously, so they can be used for other types of addresses). [1] - a Country field has been added to each of the three sets of address fields. - an Occupation field was added, grouped with the Work/School address fields. [2] - a second set of Passport Number and Passport Country fields were added to accommodate people with dual nationality. The default label on the Passport Country fields was changed to "Passport country/Nationality". - fields to capture the name and contact details of the notifier of a case or contact were added (these details are associated with the case or contact and are thus stored on the underlying CASES table) - an "Other Information" text box field was added to record other, miscellaneous information about each person. As previously, all of these fields and the other demographics fields are configurable, and can be hidden or disable or set to appear in only certain parts of the application. * In order to better accommodate the increased number of demographics core fields, a "tabbed" display for some of these fields has been provided, which helps to avoid the need for too much vertical scrolling. The tabbed field display is also provided on the search parameter pages. * Two new data collection "input" types were added: a pull-down list input for "Countries", which lists all current countries, and an equivalent one for "Languages", which lists major languages. * Disabled input boxes are no longer used for the "read-only" display of demographic data in certain places in the application; instead, an easier-to-read and more compact format is used. * Searching for existing cases and contacts has been improved by providing given name and nickname substitution when the "Phonetic" box is checked: for example, a search for "Tim" will also find "Timothy" and a search for "Margaret" will find "Peggy" and so on. * The duplicate person matching algorithm has been improved (it now uses trigrams instead of bigrams) and has been made faster. * Case and contact details are now colour-coded on the search results pages in order to make visual scanning and parsing of the results easier. * "Back" buttons have been added to the top (in addition tot he foot) of most pages. * The display of available contact definitions on the case contacts page has been made consistent with the way in which case and contact definitions are displayed on the home page. * The page is now scrolled down to any "Unsaved changes" warning messages to avoid any confusion on long pages. * An "login_helpdesk_contact" configuration option has been added. The option specifies an contact message that is used on the login and new-user registration pages. This allows an alternate message to be specified in these (potentially) less secure contexts. * Several other minor cosmetic and layout improvements have been made. * Several bug fixes and some refactoring to improve the robustness and maintainability of the program code. [1] We know that an unlimited number of addresses, including a complete address history, should ideally be stored in a separate ADDRESS table, but that requires fairly major refactoring of core parts of the application and will have to wait until version 2. The current arrangements seem to be adequate in the meantime (and changes to addresses are captured in the audit logs, although we understand that that is not a substitute for a full address history). [2] The Occupation column was added to the PERSONS table, for reasons of expedience. Ideally, it should be on the CASES table and reside with other CASE data (as should some addresses and other data current stored in the PERSONS table). These structural changes are planned for version 2, but in the meantime, the current arrangements are unlikely to cause major problems with most acute outbreak investigations or other relatively short- term epidemiological data collections, although we recognise that the current data model is not ideal for use by, say, a chronic disease registry. SUMMARY OF CHANGES IN VERSION 1.1.0 RELATIVE TO VERSION 1.0.4 =============================================================== The following changes have been made in this version: * The login page has been re-styled to be rather more attractive. * The previously separate administration application has been merged into the main end-user application. Now there is only one URL for each NetEpi Collection instance, and if a logged-in user has administrator rights, then an additional menu item appears which allows them to access the administration functions that were previously accessible only from a separate admin URL. Apart from making things easier for administrators, this change has enabled a reduction in otherwise duplicated code - thus the total line count for the project has gone down substantially. * An internal "notification" mechanism has been added so that changes made in the administration interface are immediately reflected in all sessions for that NetEpi instance. Previously, due to caching, administrative changes took up to ten minutes to propagate through to all user sessions, which could be confusing for users and administrators alike. See also the notes below on "Stand-alone Notification Daemon" regarding the need to disable this facility in certain unusual server configurations. * Administrators can now specify the order in which syndromes/case/contact definitions are listed on the home page. * Each instance of a data collection form is now assigned a unique ID, which incorporates a check-digit, and this ID number is shown on screen and appears in print-outs of forms and in data export files. * Users can specify a form instance ID number in the search page, and if it is a valid form ID number and the user has permission to access that case or contact, the form editing page for that form instance (and thus for the correct person and case or contact record) will be displayed immediately. * A simple "epi curve" charting facility has been added to the built-in reports. An "epi curve" is a frequency histogram by onset date (reporting date can also be be chosen, or dual charts for both can be drawn). Various date and time "binning" options are provided to control the degree of temporal aggregation on the x-axis. Further features will be added to this chart in later releases, and other built-in charts and graphs will be added. See also the additional installation prerequisites listed below which relate to this new feature. * The search parameters which a user enters are now shown on all search results pages. This is particularly important when adding a new case or contact, because these search parameters provide context to the "Create a new case" or "Create a new contact" buttons. * Users with "task queue admin" rights can now set up task queues specific to their unit (or shared with other units or specific users) without needing to ask a central administrator to do it for them. * Administrators can see summary statistics about the tasks allocated to each task queue. * The refresh button on the end-user task listing page has been removed (provided that Javascript is available and enabled in the user's browser). * Task filtering and display parameters for each user are automatically restored and saved each time a user visits the task list page. * Built-in reporting parameters for each user are automatically restored and saved, on a per case/contact definition basis, each time a user visits the built-in reports facility. * User accounts are now only logically deleted, thus preserving entries in the audit trail relating to deleted users. User accounts can also be easily undeleted. The enabled/disabled user flag remains, unchanged, so that user accounts can still be temporally disabled if necessary, and self- registered user accounts are still created with the disabled flag set and need to be deliberately enabled by an administrator. * Additional checks are now made before a unit can be deleted, and units with enabled users assigned to them can't be deleted. Previously, if units with active users were deleted, the users could be left with no unit membership, which prevented them from logging in. * Deleting work queues is now possible. Database integrity constraints previously prevented this except in the case of work queues that had never had any tasks associated with them. Work queues can now be deleted (after confirmation), provided that all associated tasks have been completed. * Previously, there were a number of places in the application in which administrators could accidentally exit an admin page without being warned they had unsaved changes. This has now been addressed. * More useful configuration and debug information is included in tracebacks if an application exception occurs. * Authenticated user id, unit id and the NetEpi instance name are now included in the RTT (round-trip-time) "perceived performance" data written to the web server log for each user interaction. This makes identification of network performance issues affecting individual users or groups of users at a particular location much easier. * After much experimentation, problems with unexpected behavior when using the browser back buttons on the Opera and Konqueror web browsers have now been addressed. The browser back button now behaves as expected (that is, the same way that it behaves when Gecko-based browsers such as Mozilla and Firefox, or Microsoft Internet Explorer version 6 or 7 are used). In the Safari browser, the browser back button is now effectively disabled when accessing NetEpi. This is an improvement on the unexpected behaviour of the browser back button in Safari browser when accessing previous versions of NetEpi. It should be noted that many web applications have major difficulties with the non-standard behaviour of the browser back button in the Safari browser (and possibly in the related WebKit browser engine). Of course, Safari users can still use the "Back" buttons provided in the NetEpi application: these work exactly as expected in Safari and in all other Web browsers. * Numerous minor bug fixes and other minor cosmetic adjustments have been made. * Updates to technical and system documentation. SUMMARY OF CHANGES IN VERSION 1.0.4 RELATIVE TO VERSION 1.0.3 =============================================================== Version 1.0.4 provides the ability to set the preferred date input and output format on an instance-wide basis, and/or by individual users. Three date formats can be specified: DMY (DD/MM/YYYY format), MDY (MM/DD/YYYY format) or ISO (YYYY-MM-DD format). All dates and date/time values are stored in the database in a format-neutral manner, thus there is no problem if different users of the same NetEpi database instance use different preferences for the date format, and individual users can change their preferred date format on-the-fly without problems. This feature, together with customisable state/territory/region fields introduced in Version 1.0.3 and the ability to customise the labels of the demographic fields added to Version 0.94, should allow NetEpi Collection to be more easily adapted for use in English-speaking locales outside Australia. A fully internationalised version accommodating non-English locales is possible but collaborators are required - the current NetEpi team cannot create such a fully-internationalised version without assistance, although they would very much like to do so. Additionally, Version 1.0.4 fixes several minor bugs - a list of fixes can be found in the doc/CHANGELOG file. Support for a new Python-to-PostgreSQL adaptor being developed by Object Craft Pty Ltd (http://www.object-craft.com.au) has been added. The free, open-source Object Craft adaptor is still be tested but when released, NetEpi Collection installations running Version 1.0.4 or later will automatically make use of it if it is installed. The release of the Object Craft Python-to-PostgreSQL adaptor, which promises to be considerably faster than existing Python-to-PostgreSQL adaptors, will be announced on the netepi-discuss mailing list as well as elsewhere. Finally, a PDF version of a presentation on NetEpi Collection and NetEpi Analysis, given at the School of Information Technologies at the University of Sydney in June 2007 has been included in documentation section of the NetEpi page on SourceForge - see http://sourceforge.net/docman/?group_id=123700 SUMMARY OF CHANGES IN VERSION 1.0.3 RELATIVE TO VERSION 1.0.2 =============================================================== Version 1.0.3 provides the ability to customise the list of geographical states, territories and regions in the address part of the demographics section. The global list of states and territories for an entire instance of NetEpi Collection can be customised, and this can be further customised on a per-syndrome or per-case-definition basis if required. The customised lists of states and territories are automatically taken into account when performing general searches. Additionally, Version 1.0.3 fixes a small number of minor but annoying bugs - a list of fixes can be found in the doc/CHANGELOG file. Special thanks to Stefan Stirzaker, Office of Health Protection, Surveillance Branch, Surveillance Policy & Systems Section, Population Health Division, Australian Government Department of Health and Ageing, for reporting the bugs in question. SUMMARY OF CHANGES IN VERSION 1.0.2 RELATIVE TO VERSION 1.0beta =============================================================== This is a bug-fix release only, no new features or facilities have been added. A list of fixes and other minor cosmetic changes can be found in the doc/CHANGELOG file. Special thanks to Francois Marsan for finding and carefully reporting a number of obscure and not-so-obscure bugs that had eluded us. SUMMARY OF CHANGES IN VERSION 1.0beta RELATIVE TO VERSION 0.99 ============================================================== The major addition to Version 1.0beta is the inclusion of a comprehensive record merging facility. This provides a mechanism to identify potentially duplicated PERSON records (using a bigram-based fuzzy matching algorithm, although arbitrary pairs of records can also be merged), and the user can then selectively merge demographic details and associated case, contact and task records, for each pair of duplicated person records. This may result in duplicated case or contact records for the resulting "merged" person, so there is an additional facility which can be used to merge case or contact records for a given person. Similarly for each case or contact record, there is a facility to merge data form records of the same type. In these merge facilities, each of which can be accessed independently of the others, the user can select whether to retain data from "record A" or "record B", on a data-item-by-data-item basis, or may chose to include information from both A and B records and edit the resulting combined data field. Much effort was put into designing a simple user interface to these merge facilities which make the complex merging task as quick and easy as possible for the end user. Unlike deletions, merges of records cannot be undone, but full details of all merge actions are captured in the audit trail log, allowing manual separation of merged records if required subsequently. Another major change in this version is the renaming of the application from "NetEpi Case Manager" to "NetEpi Collection", which better reflects the fairly generic role it plays, while also sounding less clinical. Other significant enhancements to Version 1.0beta include: * Provision of a read-only mode, in which the privileges of selected users can be restricted so that they can only view data, but not edit or delete it. The usual fine-grained access control mechanisms still apply to such read-only users. * Pull-down menus have replaced a plethora of buttons on the case and contact editing pages. The result is a cleaner look with no loss in usability (we feel, feedback welcome). * Labelling of cases versus contacts has been made smarter in order to reduce the occasional semantic confusion that was evident in parts of the application. * On certain pages more contextual information with respect to the current user or current case or contact has been provided to assist users in regaining their "bearings" after being interrupted while using the system. * Visual feedback is now provided each time a record of any type is updated. * Most error messages and warnings now appear at the top of the page, where they are harder to overlook. * Access to the built-in line-listing/reports facility is now restricted to those users who have been granted the "bulk export" privilege. * The "Next" button on search pages is now the default, so that the Enter key can be used to cause a search to be performed (thus improving end user ergonomics). * The "round-trip-time" facility, which measures and captures the response time (including network-related delays and latency) of NetEpi from the point-of-view of the end user, has been enhanced to work correctly when the Microsoft Internet Explorer browser is used, and now also records a timestamp for each response time captured in the web server log. Utilities to extract these response times from the web server log for analysis and presentation in statistical or other visualisation packages have also been added, including a script to import the data into NetEpi Analysis. * Another utility, called "httpinteract", has been included. It is a simple tool which can be used to acquire time-series data about network performance from end-user's workstations or access points. We have found it useful in pinpointing when and where network bandwidth, latency or congestion may be inadequate for satisfactory use of NetEpi, so that appropriate remedial action can be taken - such network problems can almost always be solved. * The deletion status of records is clearly shown when they are printed out. * Facilities to browse all cases for a given person, and to jump directly to the parent case of a contact, were added. * Unit tests and some Selenium functional tests were updated to work correctly with the current version. * System documentation was brought up-to-date. Finally, a lot of work has also gone into the creation of a "live CD" for demonstration purposes. This "live CD", which is based on the popular Ubuntu Linux distribution, allows most recent (that is, less than four or five years old) desktop or laptop computers to be booted directly from the live CD into a cut-down version of Ubuntu Linux, with a full, working copy of NetEpi Collection installed and ready to use. Data can be stored between sessions on a USB memory stick or external hard drive. No software or files are actually installed on the host computer - it runs entirely from the CD-ROM. The demonstration system includes a full Web server and can thus be accessed over a network by multiple users, as well as locally. Introductory "screencasts" and other background material will be included on the final NetEpi live CD. However, at this stage the live CD is still undergoing testing, but we have included the scripts needed to build the live CD in the NetEpi Collection distribution tarball for those who wish to create their own customised version. However, these scripts are complex and dangerous, and should only be run and modified by experienced system administrators and developers who know exactly what they are doing. They are only needed to create new versions of a live CD and should be completely ignored by NetEpi users and most system administrators. An .iso file of a demo live CD will be made available for download (and then burning onto a CD-ROM) at the time of the final release of Version 1.0. SUMMARY OF CHANGES IN VERSION 0.99 RELATIVE TO VERSION 0.98 =========================================================== Apart from several minor bug fixes, some general cleaning up of the code base and some additional unit tests, the very big addition to Version 0.99 is a built-in "line-listing" reporting facility. This facility allows tabular "line-listing" reports to be produced through a simple and easy-to-use interface. Filters and sorting orders based on demographic data and on data items contained in syndrome/case definition-specific forms can be defined, and the resulting record sets appear in the report or can be used as a "browse list" to page through case or contact records in the edit screens, one at a time. Summary or user-selectable fields (columns) from forms can also be included in the reports. The (still experimental) case-to-contact relationship visualisation tool has also been integrated into the reporting framework to take advantage of the filtering facilities it provides. Report definitions (including the filtering parameters) can be saved for re-use later, and these saved report definitions can be shared with other members of the user's business unit or with all users on the system. SUMMARY OF CHANGES IN VERSION 0.98 RELATIVE TO VERSION 0.97 =========================================================== Version 0.98 brings the following (in no particular order): * A (global) count of active cases of each syndrome is now shown on the home page. * An indication of number of contacts is now shown on the main case edit page. * The ability to examine the details of users in each business unit from task assignment and ACL (access control list) pages. * All current and enabled syndromes/case definitions are now shown on the main page, not just those the unit (or rather users in that unit) has access to, but the "add" button is suppressed if the unit does not have edit rights for that syndrome/case definition. * A facility to allow NetEpi administrators to "clear" a syndrome/case definition of data - this deletes all cases, contacts, form instances (but not form definitions!) and tasks associated with a syndrome/case definition (without deleting the syndrome/case definition itself). This is very useful for clearing out training or test data from a syndrome/case definition prior to "production" or real-life use. An additional confirmation was added because this facility permanently deletes data. * A facility by which a NetEpi administrator can use the web interface to permanently delete a syndrome/case definition and all associated cases, forms, tasks and log entries. This allows redundant, obsolete or test/dummy syndromes/case definitions to be removed from an existing NetEpi instance, or for a NetEpi instance to be cloned (using PostgreSQL database back-up and restore utilities) and then unwanted syndromes/case definitions removed. An additional confirmation was added because this facility permanently deletes data. * No longer indicate nature of login failures to improve security. * Add additional demographic fields for one extra set of alternative address and other contact information (which can be relabelled for each case definition/syndrome) * Improvements to form definition importing (form definition import name matching a little smarter, make form import seed the "forms" table if necessary). * A new command line facility to import and export form definitions in batches from a Collection instance. * "Onset date" and "Notification date" error messages now honour syndrome-specific labelling for these fields. * The ability to view logs associated with a contact. * The main application structure graph was updated, and an admin application structure graph was added. SUMMARY OF CHANGES IN VERSION 0.97 RELATIVE TO VERSION 0.96 =========================================================== The major additions to Version 0.97 are: * Ability to add a contact record and post-hoc associate it with a case, and/or dissociate it from a case and re-assign to a different case, and handle the merging of ACL (access rights) necessitated by such changes. * Improvements to the form data roll-forward facility so that incompatible changes to form filed data types that would lead to data loss or truncation can be readily identified and corrected. * Ability to print the data associated with a case or contact as a "report" (rather like a set a already-filled-in forms) * Ability to optionally include or exclude deleted records from data exports * Restriction of ability to export data to only some users who have been explicitly granted the right to do so. * Improvements to the information captured in the audit log, particularly with respect to contact records and their association with case records. * Require confirmation when undeleting cases or contacts. * Require confirmation needed when deleting a user in the admin application. * Fixed bug when a users from a disabled unit tried to log in. * Simplification of conditional question skip/enable subsystem. * Additional guards against inadvertent failure to save changes in admin interface In addition, numerous minor cosmetic changes and bug fixes have been implemented. SUMMARY OF CHANGES IN VERSION 0.96 RELATIVE TO VERSION 0.95 =========================================================== The major addition to Version 0.96 is a conditional form input skip/enable feature, which allows parts of questions, whole questions or multiple questions on a form to be selectively enabled or disabled based on categorical data elsewhere on the same form. Skip instructions are automatically generated for printed forms or where Javascript is unavailable or disabled. A large improvement to usability is also provided by some clever JavaScript which captures the "Back" button on the user's browser and makes it behave like the "Back"" navigation buttons in the application itself. This effectively removes a major source of user frustration by avoiding browser-generated "re-post" dialogue boxes appearing on screen. In addition, a large number of bug fixes have been made and the interface to parts of the admin application has been made more consistent and foolproof - it is now very hard to inadvertently forget to save changes made in the admin application. Also, the question editor pages in the admin form definition editor facility has been revised. SUMMARY OF CHANGES IN VERSION 0.95 RELATIVE TO VERSION 0.94 =========================================================== The major addition to Version 0.95 is a simple (but we hope effective) workflow subsystem, which allows "tasks", such as completing a case or contact follow-up form, to be assigned to individual users, business units or arbitrary "task queues" to which users and business units can be subscribed. These tasks can be scheduled for immediate or delayed attention, and users have access to a list of tasks assigned to them or otherwise available to them through their membership of a business unit or subscription to a task queue. Clicking on an assigned task automatically loads the correct case or contact record and opens the correct data form to be completed. Additional instructions can be added to tasks if necessary. This subsystem is intended to allow tasks generated by a large number of cases or contacts of cases of, say, a novel strain of influenza to be distributed to many workers located in many business units across the health system. It should also be useful for many other purposes, including reminders to oneself to follow-up missing data or check responses and so on. Other features added to Version 0.95 include better visual feedback when data in forms is updated, better indication of the deletion status of records, improvements to the form editor, and various minor cosmetic and labelling improvements. SUMMARY OF CHANGES IN VERSION 0.94 RELATIVE TO VERSION 0.90 =========================================================== Following is a summary, in no particular order, of the major changes visible to or of relevance to end-users and/or administrators, in NetEpi Collection Version 0.94, relative to NetEpi Collection Version 0.90 which was released in June 2005. Note that Versions 0.91 and 0.92 were intermediate versions which were not released publicly and Version 0.93 was quickly superseded by Version 0.94. In addition, there has been considerable refactoring and general tidying-up of the underlying programme code, as well as several bug fixes and security improvements. * Problem with download of exported data files via Microsoft Internet Explorer fixed. * Added a new class of user (called "unit admins") who can administer users in their unit via a new page accessible from the end-user (not admin) application. This removes a potential bottleneck of admins having to remotely vet and approve large numbers of new user accounts in a short time during an emergency. * Added JavaScript to track and report client's submit RTT (round-trip-time), added code to Request object to log reported RTT. This allows the total response time, as perceived by the end user, to be monitored centrally - in particular, problems related to network congestion can be detected, as well as problems due excessive server load. * Added the ability to print selectable sets of blank forms, on a per-syndrome basis, for use if the system is off-line, down or otherwise unavailable. * Ability to add certain rights to groups of users, and also ability to add certain rights to individual users. These include the right to see or edit all records. * Version information added to login screens to help avoid confusion during support calls. * Ability to save user preferences, including preferences for phonetic searching, results per page and pop-up calendars (see below). * Added client-side sorting of various tables in the admin application. * JavaScript used to to scroll to first error in forms. * Form definitions are now stored in XML form in the main database, not as Python files in the Web server file system. This improves security and makes it much easier to back-up the entire state of the system, without having to interrupt use of the system in any way. * Added ability to export and import form definitions in XML form, which lays the foundations for a shared and/or distributed form definition "library". * Form inputs that are required (mandatory) are now visually identified. * Added "definition last updated" and other useful metadata to form definitions. * Merge demogfields-branch * Added additional demographic/ID fields: mobile_phone, fax_phone, e_mail, passport_number and passport_country, interpreter required/language, to make the system better suited for use in border screening at airports etc. * Added ability to relabel or hide demographic/ID fields on a per-syndrome basis. * Added per-syndrome case status field, renamed field to just "status". * Storage of case and contact data unified. This allows a great deal more flexibility, including the ability to specify multiple "contact syndromes" for different types of contacts of cases. * Added interactive pop-up date entry widget (calendar). * Allowed allow a person to be contact of a case for more than one contact syndrome; included contact type in search results; revised styling of search results for cases and contacts to make them slightly clearer. * Simplified application navigation slightly (removed user details link from page banner, use tools instead), carry more context across new/edit/search screens. * Added paging to contacts list to allow cases with large numbers of contacts to be more easily managed. * Added experimental Case/Contact relationship visualisation using GraphViz. * Changes to allow PostgreSQL versions 8.0 and 8.1 to be used, as well as versions 7.3 and 7.4 as supported previously. * Deleting/hiding of cases and contacts now fully implemented. * Major speed improvements to phonetic searches. * Updated Collection-ER documentation to reflect schema changes. * Added a confirmation dialog when admins enable a user, to ensure that they have checked the new user's bona fides. * Add logging of case access (ACL) control changes. * Added support for use of Trac-style wiki mark-up for text used in various places in the application (see doc/NetEpi_wiki_markup.html ).

    posted 585 days ago

  • NetEpi-Collection NetEpi-Collection-1.2.0 file released: NetEpi-Collection-1.2.0.tar.gz

    CUMULATIVE CHANGES IN NetEpi Collection ======================================= SUMMARY OF CHANGES IN VERSION 1.2.0 (LATEST) RELATIVE TO VERSION 1.1.0 ====================================================================== The following changes have been made in this version: * The ability to import demographic data from CSV or other delimited or column-formatted data files has been added. A "point-and-click" interface to "map" columns in the file to be imported to target demographic fields in NetEpi Collection is provided, and a range of transformations of data values can also be specified. Transformed data can be previewed before it is imported. The parameters used to import a particular data file can be saved and re-used on subsequent occasions. * Several new fields were added to the core "demographics" fields: - a third set of address fields, so there are now address fields for residential address, an alternate address, and a work or school address (although the field labels on all of these can be customised as previously, so they can be used for other types of addresses). [1] - a Country field has been added to each of the three sets of address fields. - an Occupation field was added, grouped with the Work/School address fields. [2] - a second set of Passport Number and Passport Country fields were added to accommodate people with dual nationality. The default label on the Passport Country fields was changed to "Passport country/Nationality". - fields to capture the name and contact details of the notifier of a case or contact were added (these details are associated with the case or contact and are thus stored on the underlying CASES table) - an "Other Information" text box field was added to record other, miscellaneous information about each person. As previously, all of these fields and the other demographics fields are configurable, and can be hidden or disable or set to appear in only certain parts of the application. * In order to better accommodate the increased number of demographics core fields, a "tabbed" display for some of these fields has been provided, which helps to avoid the need for too much vertical scrolling. The tabbed field display is also provided on the search parameter pages. * Two new data collection "input" types were added: a pull-down list input for "Countries", which lists all current countries, and an equivalent one for "Languages", which lists major languages. * Disabled input boxes are no longer used for the "read-only" display of demographic data in certain places in the application; instead, an easier-to-read and more compact format is used. * Searching for existing cases and contacts has been improved by providing given name and nickname substitution when the "Phonetic" box is checked: for example, a search for "Tim" will also find "Timothy" and a search for "Margaret" will find "Peggy" and so on. * The duplicate person matching algorithm has been improved (it now uses trigrams instead of bigrams) and has been made faster. * Case and contact details are now colour-coded on the search results pages in order to make visual scanning and parsing of the results easier. * "Back" buttons have been added to the top (in addition tot he foot) of most pages. * The display of available contact definitions on the case contacts page has been made consistent with the way in which case and contact definitions are displayed on the home page. * The page is now scrolled down to any "Unsaved changes" warning messages to avoid any confusion on long pages. * An "login_helpdesk_contact" configuration option has been added. The option specifies an contact message that is used on the login and new-user registration pages. This allows an alternate message to be specified in these (potentially) less secure contexts. * Several other minor cosmetic and layout improvements have been made. * Several bug fixes and some refactoring to improve the robustness and maintainability of the program code. [1] We know that an unlimited number of addresses, including a complete address history, should ideally be stored in a separate ADDRESS table, but that requires fairly major refactoring of core parts of the application and will have to wait until version 2. The current arrangements seem to be adequate in the meantime (and changes to addresses are captured in the audit logs, although we understand that that is not a substitute for a full address history). [2] The Occupation column was added to the PERSONS table, for reasons of expedience. Ideally, it should be on the CASES table and reside with other CASE data (as should some addresses and other data current stored in the PERSONS table). These structural changes are planned for version 2, but in the meantime, the current arrangements are unlikely to cause major problems with most acute outbreak investigations or other relatively short- term epidemiological data collections, although we recognise that the current data model is not ideal for use by, say, a chronic disease registry. SUMMARY OF CHANGES IN VERSION 1.1.0 RELATIVE TO VERSION 1.0.4 =============================================================== The following changes have been made in this version: * The login page has been re-styled to be rather more attractive. * The previously separate administration application has been merged into the main end-user application. Now there is only one URL for each NetEpi Collection instance, and if a logged-in user has administrator rights, then an additional menu item appears which allows them to access the administration functions that were previously accessible only from a separate admin URL. Apart from making things easier for administrators, this change has enabled a reduction in otherwise duplicated code - thus the total line count for the project has gone down substantially. * An internal "notification" mechanism has been added so that changes made in the administration interface are immediately reflected in all sessions for that NetEpi instance. Previously, due to caching, administrative changes took up to ten minutes to propagate through to all user sessions, which could be confusing for users and administrators alike. See also the notes below on "Stand-alone Notification Daemon" regarding the need to disable this facility in certain unusual server configurations. * Administrators can now specify the order in which syndromes/case/contact definitions are listed on the home page. * Each instance of a data collection form is now assigned a unique ID, which incorporates a check-digit, and this ID number is shown on screen and appears in print-outs of forms and in data export files. * Users can specify a form instance ID number in the search page, and if it is a valid form ID number and the user has permission to access that case or contact, the form editing page for that form instance (and thus for the correct person and case or contact record) will be displayed immediately. * A simple "epi curve" charting facility has been added to the built-in reports. An "epi curve" is a frequency histogram by onset date (reporting date can also be be chosen, or dual charts for both can be drawn). Various date and time "binning" options are provided to control the degree of temporal aggregation on the x-axis. Further features will be added to this chart in later releases, and other built-in charts and graphs will be added. See also the additional installation prerequisites listed below which relate to this new feature. * The search parameters which a user enters are now shown on all search results pages. This is particularly important when adding a new case or contact, because these search parameters provide context to the "Create a new case" or "Create a new contact" buttons. * Users with "task queue admin" rights can now set up task queues specific to their unit (or shared with other units or specific users) without needing to ask a central administrator to do it for them. * Administrators can see summary statistics about the tasks allocated to each task queue. * The refresh button on the end-user task listing page has been removed (provided that Javascript is available and enabled in the user's browser). * Task filtering and display parameters for each user are automatically restored and saved each time a user visits the task list page. * Built-in reporting parameters for each user are automatically restored and saved, on a per case/contact definition basis, each time a user visits the built-in reports facility. * User accounts are now only logically deleted, thus preserving entries in the audit trail relating to deleted users. User accounts can also be easily undeleted. The enabled/disabled user flag remains, unchanged, so that user accounts can still be temporally disabled if necessary, and self- registered user accounts are still created with the disabled flag set and need to be deliberately enabled by an administrator. * Additional checks are now made before a unit can be deleted, and units with enabled users assigned to them can't be deleted. Previously, if units with active users were deleted, the users could be left with no unit membership, which prevented them from logging in. * Deleting work queues is now possible. Database integrity constraints previously prevented this except in the case of work queues that had never had any tasks associated with them. Work queues can now be deleted (after confirmation), provided that all associated tasks have been completed. * Previously, there were a number of places in the application in which administrators could accidentally exit an admin page without being warned they had unsaved changes. This has now been addressed. * More useful configuration and debug information is included in tracebacks if an application exception occurs. * Authenticated user id, unit id and the NetEpi instance name are now included in the RTT (round-trip-time) "perceived performance" data written to the web server log for each user interaction. This makes identification of network performance issues affecting individual users or groups of users at a particular location much easier. * After much experimentation, problems with unexpected behavior when using the browser back buttons on the Opera and Konqueror web browsers have now been addressed. The browser back button now behaves as expected (that is, the same way that it behaves when Gecko-based browsers such as Mozilla and Firefox, or Microsoft Internet Explorer version 6 or 7 are used). In the Safari browser, the browser back button is now effectively disabled when accessing NetEpi. This is an improvement on the unexpected behaviour of the browser back button in Safari browser when accessing previous versions of NetEpi. It should be noted that many web applications have major difficulties with the non-standard behaviour of the browser back button in the Safari browser (and possibly in the related WebKit browser engine). Of course, Safari users can still use the "Back" buttons provided in the NetEpi application: these work exactly as expected in Safari and in all other Web browsers. * Numerous minor bug fixes and other minor cosmetic adjustments have been made. * Updates to technical and system documentation. SUMMARY OF CHANGES IN VERSION 1.0.4 RELATIVE TO VERSION 1.0.3 =============================================================== Version 1.0.4 provides the ability to set the preferred date input and output format on an instance-wide basis, and/or by individual users. Three date formats can be specified: DMY (DD/MM/YYYY format), MDY (MM/DD/YYYY format) or ISO (YYYY-MM-DD format). All dates and date/time values are stored in the database in a format-neutral manner, thus there is no problem if different users of the same NetEpi database instance use different preferences for the date format, and individual users can change their preferred date format on-the-fly without problems. This feature, together with customisable state/territory/region fields introduced in Version 1.0.3 and the ability to customise the labels of the demographic fields added to Version 0.94, should allow NetEpi Collection to be more easily adapted for use in English-speaking locales outside Australia. A fully internationalised version accommodating non-English locales is possible but collaborators are required - the current NetEpi team cannot create such a fully-internationalised version without assistance, although they would very much like to do so. Additionally, Version 1.0.4 fixes several minor bugs - a list of fixes can be found in the doc/CHANGELOG file. Support for a new Python-to-PostgreSQL adaptor being developed by Object Craft Pty Ltd (http://www.object-craft.com.au) has been added. The free, open-source Object Craft adaptor is still be tested but when released, NetEpi Collection installations running Version 1.0.4 or later will automatically make use of it if it is installed. The release of the Object Craft Python-to-PostgreSQL adaptor, which promises to be considerably faster than existing Python-to-PostgreSQL adaptors, will be announced on the netepi-discuss mailing list as well as elsewhere. Finally, a PDF version of a presentation on NetEpi Collection and NetEpi Analysis, given at the School of Information Technologies at the University of Sydney in June 2007 has been included in documentation section of the NetEpi page on SourceForge - see http://sourceforge.net/docman/?group_id=123700 SUMMARY OF CHANGES IN VERSION 1.0.3 RELATIVE TO VERSION 1.0.2 =============================================================== Version 1.0.3 provides the ability to customise the list of geographical states, territories and regions in the address part of the demographics section. The global list of states and territories for an entire instance of NetEpi Collection can be customised, and this can be further customised on a per-syndrome or per-case-definition basis if required. The customised lists of states and territories are automatically taken into account when performing general searches. Additionally, Version 1.0.3 fixes a small number of minor but annoying bugs - a list of fixes can be found in the doc/CHANGELOG file. Special thanks to Stefan Stirzaker, Office of Health Protection, Surveillance Branch, Surveillance Policy & Systems Section, Population Health Division, Australian Government Department of Health and Ageing, for reporting the bugs in question. SUMMARY OF CHANGES IN VERSION 1.0.2 RELATIVE TO VERSION 1.0beta =============================================================== This is a bug-fix release only, no new features or facilities have been added. A list of fixes and other minor cosmetic changes can be found in the doc/CHANGELOG file. Special thanks to Francois Marsan for finding and carefully reporting a number of obscure and not-so-obscure bugs that had eluded us. SUMMARY OF CHANGES IN VERSION 1.0beta RELATIVE TO VERSION 0.99 ============================================================== The major addition to Version 1.0beta is the inclusion of a comprehensive record merging facility. This provides a mechanism to identify potentially duplicated PERSON records (using a bigram-based fuzzy matching algorithm, although arbitrary pairs of records can also be merged), and the user can then selectively merge demographic details and associated case, contact and task records, for each pair of duplicated person records. This may result in duplicated case or contact records for the resulting "merged" person, so there is an additional facility which can be used to merge case or contact records for a given person. Similarly for each case or contact record, there is a facility to merge data form records of the same type. In these merge facilities, each of which can be accessed independently of the others, the user can select whether to retain data from "record A" or "record B", on a data-item-by-data-item basis, or may chose to include information from both A and B records and edit the resulting combined data field. Much effort was put into designing a simple user interface to these merge facilities which make the complex merging task as quick and easy as possible for the end user. Unlike deletions, merges of records cannot be undone, but full details of all merge actions are captured in the audit trail log, allowing manual separation of merged records if required subsequently. Another major change in this version is the renaming of the application from "NetEpi Case Manager" to "NetEpi Collection", which better reflects the fairly generic role it plays, while also sounding less clinical. Other significant enhancements to Version 1.0beta include: * Provision of a read-only mode, in which the privileges of selected users can be restricted so that they can only view data, but not edit or delete it. The usual fine-grained access control mechanisms still apply to such read-only users. * Pull-down menus have replaced a plethora of buttons on the case and contact editing pages. The result is a cleaner look with no loss in usability (we feel, feedback welcome). * Labelling of cases versus contacts has been made smarter in order to reduce the occasional semantic confusion that was evident in parts of the application. * On certain pages more contextual information with respect to the current user or current case or contact has been provided to assist users in regaining their "bearings" after being interrupted while using the system. * Visual feedback is now provided each time a record of any type is updated. * Most error messages and warnings now appear at the top of the page, where they are harder to overlook. * Access to the built-in line-listing/reports facility is now restricted to those users who have been granted the "bulk export" privilege. * The "Next" button on search pages is now the default, so that the Enter key can be used to cause a search to be performed (thus improving end user ergonomics). * The "round-trip-time" facility, which measures and captures the response time (including network-related delays and latency) of NetEpi from the point-of-view of the end user, has been enhanced to work correctly when the Microsoft Internet Explorer browser is used, and now also records a timestamp for each response time captured in the web server log. Utilities to extract these response times from the web server log for analysis and presentation in statistical or other visualisation packages have also been added, including a script to import the data into NetEpi Analysis. * Another utility, called "httpinteract", has been included. It is a simple tool which can be used to acquire time-series data about network performance from end-user's workstations or access points. We have found it useful in pinpointing when and where network bandwidth, latency or congestion may be inadequate for satisfactory use of NetEpi, so that appropriate remedial action can be taken - such network problems can almost always be solved. * The deletion status of records is clearly shown when they are printed out. * Facilities to browse all cases for a given person, and to jump directly to the parent case of a contact, were added. * Unit tests and some Selenium functional tests were updated to work correctly with the current version. * System documentation was brought up-to-date. Finally, a lot of work has also gone into the creation of a "live CD" for demonstration purposes. This "live CD", which is based on the popular Ubuntu Linux distribution, allows most recent (that is, less than four or five years old) desktop or laptop computers to be booted directly from the live CD into a cut-down version of Ubuntu Linux, with a full, working copy of NetEpi Collection installed and ready to use. Data can be stored between sessions on a USB memory stick or external hard drive. No software or files are actually installed on the host computer - it runs entirely from the CD-ROM. The demonstration system includes a full Web server and can thus be accessed over a network by multiple users, as well as locally. Introductory "screencasts" and other background material will be included on the final NetEpi live CD. However, at this stage the live CD is still undergoing testing, but we have included the scripts needed to build the live CD in the NetEpi Collection distribution tarball for those who wish to create their own customised version. However, these scripts are complex and dangerous, and should only be run and modified by experienced system administrators and developers who know exactly what they are doing. They are only needed to create new versions of a live CD and should be completely ignored by NetEpi users and most system administrators. An .iso file of a demo live CD will be made available for download (and then burning onto a CD-ROM) at the time of the final release of Version 1.0. SUMMARY OF CHANGES IN VERSION 0.99 RELATIVE TO VERSION 0.98 =========================================================== Apart from several minor bug fixes, some general cleaning up of the code base and some additional unit tests, the very big addition to Version 0.99 is a built-in "line-listing" reporting facility. This facility allows tabular "line-listing" reports to be produced through a simple and easy-to-use interface. Filters and sorting orders based on demographic data and on data items contained in syndrome/case definition-specific forms can be defined, and the resulting record sets appear in the report or can be used as a "browse list" to page through case or contact records in the edit screens, one at a time. Summary or user-selectable fields (columns) from forms can also be included in the reports. The (still experimental) case-to-contact relationship visualisation tool has also been integrated into the reporting framework to take advantage of the filtering facilities it provides. Report definitions (including the filtering parameters) can be saved for re-use later, and these saved report definitions can be shared with other members of the user's business unit or with all users on the system. SUMMARY OF CHANGES IN VERSION 0.98 RELATIVE TO VERSION 0.97 =========================================================== Version 0.98 brings the following (in no particular order): * A (global) count of active cases of each syndrome is now shown on the home page. * An indication of number of contacts is now shown on the main case edit page. * The ability to examine the details of users in each business unit from task assignment and ACL (access control list) pages. * All current and enabled syndromes/case definitions are now shown on the main page, not just those the unit (or rather users in that unit) has access to, but the "add" button is suppressed if the unit does not have edit rights for that syndrome/case definition. * A facility to allow NetEpi administrators to "clear" a syndrome/case definition of data - this deletes all cases, contacts, form instances (but not form definitions!) and tasks associated with a syndrome/case definition (without deleting the syndrome/case definition itself). This is very useful for clearing out training or test data from a syndrome/case definition prior to "production" or real-life use. An additional confirmation was added because this facility permanently deletes data. * A facility by which a NetEpi administrator can use the web interface to permanently delete a syndrome/case definition and all associated cases, forms, tasks and log entries. This allows redundant, obsolete or test/dummy syndromes/case definitions to be removed from an existing NetEpi instance, or for a NetEpi instance to be cloned (using PostgreSQL database back-up and restore utilities) and then unwanted syndromes/case definitions removed. An additional confirmation was added because this facility permanently deletes data. * No longer indicate nature of login failures to improve security. * Add additional demographic fields for one extra set of alternative address and other contact information (which can be relabelled for each case definition/syndrome) * Improvements to form definition importing (form definition import name matching a little smarter, make form import seed the "forms" table if necessary). * A new command line facility to import and export form definitions in batches from a Collection instance. * "Onset date" and "Notification date" error messages now honour syndrome-specific labelling for these fields. * The ability to view logs associated with a contact. * The main application structure graph was updated, and an admin application structure graph was added. SUMMARY OF CHANGES IN VERSION 0.97 RELATIVE TO VERSION 0.96 =========================================================== The major additions to Version 0.97 are: * Ability to add a contact record and post-hoc associate it with a case, and/or dissociate it from a case and re-assign to a different case, and handle the merging of ACL (access rights) necessitated by such changes. * Improvements to the form data roll-forward facility so that incompatible changes to form filed data types that would lead to data loss or truncation can be readily identified and corrected. * Ability to print the data associated with a case or contact as a "report" (rather like a set a already-filled-in forms) * Ability to optionally include or exclude deleted records from data exports * Restriction of ability to export data to only some users who have been explicitly granted the right to do so. * Improvements to the information captured in the audit log, particularly with respect to contact records and their association with case records. * Require confirmation when undeleting cases or contacts. * Require confirmation needed when deleting a user in the admin application. * Fixed bug when a users from a disabled unit tried to log in. * Simplification of conditional question skip/enable subsystem. * Additional guards against inadvertent failure to save changes in admin interface In addition, numerous minor cosmetic changes and bug fixes have been implemented. SUMMARY OF CHANGES IN VERSION 0.96 RELATIVE TO VERSION 0.95 =========================================================== The major addition to Version 0.96 is a conditional form input skip/enable feature, which allows parts of questions, whole questions or multiple questions on a form to be selectively enabled or disabled based on categorical data elsewhere on the same form. Skip instructions are automatically generated for printed forms or where Javascript is unavailable or disabled. A large improvement to usability is also provided by some clever JavaScript which captures the "Back" button on the user's browser and makes it behave like the "Back"" navigation buttons in the application itself. This effectively removes a major source of user frustration by avoiding browser-generated "re-post" dialogue boxes appearing on screen. In addition, a large number of bug fixes have been made and the interface to parts of the admin application has been made more consistent and foolproof - it is now very hard to inadvertently forget to save changes made in the admin application. Also, the question editor pages in the admin form definition editor facility has been revised. SUMMARY OF CHANGES IN VERSION 0.95 RELATIVE TO VERSION 0.94 =========================================================== The major addition to Version 0.95 is a simple (but we hope effective) workflow subsystem, which allows "tasks", such as completing a case or contact follow-up form, to be assigned to individual users, business units or arbitrary "task queues" to which users and business units can be subscribed. These tasks can be scheduled for immediate or delayed attention, and users have access to a list of tasks assigned to them or otherwise available to them through their membership of a business unit or subscription to a task queue. Clicking on an assigned task automatically loads the correct case or contact record and opens the correct data form to be completed. Additional instructions can be added to tasks if necessary. This subsystem is intended to allow tasks generated by a large number of cases or contacts of cases of, say, a novel strain of influenza to be distributed to many workers located in many business units across the health system. It should also be useful for many other purposes, including reminders to oneself to follow-up missing data or check responses and so on. Other features added to Version 0.95 include better visual feedback when data in forms is updated, better indication of the deletion status of records, improvements to the form editor, and various minor cosmetic and labelling improvements. SUMMARY OF CHANGES IN VERSION 0.94 RELATIVE TO VERSION 0.90 =========================================================== Following is a summary, in no particular order, of the major changes visible to or of relevance to end-users and/or administrators, in NetEpi Collection Version 0.94, relative to NetEpi Collection Version 0.90 which was released in June 2005. Note that Versions 0.91 and 0.92 were intermediate versions which were not released publicly and Version 0.93 was quickly superseded by Version 0.94. In addition, there has been considerable refactoring and general tidying-up of the underlying programme code, as well as several bug fixes and security improvements. * Problem with download of exported data files via Microsoft Internet Explorer fixed. * Added a new class of user (called "unit admins") who can administer users in their unit via a new page accessible from the end-user (not admin) application. This removes a potential bottleneck of admins having to remotely vet and approve large numbers of new user accounts in a short time during an emergency. * Added JavaScript to track and report client's submit RTT (round-trip-time), added code to Request object to log reported RTT. This allows the total response time, as perceived by the end user, to be monitored centrally - in particular, problems related to network congestion can be detected, as well as problems due excessive server load. * Added the ability to print selectable sets of blank forms, on a per-syndrome basis, for use if the system is off-line, down or otherwise unavailable. * Ability to add certain rights to groups of users, and also ability to add certain rights to individual users. These include the right to see or edit all records. * Version information added to login screens to help avoid confusion during support calls. * Ability to save user preferences, including preferences for phonetic searching, results per page and pop-up calendars (see below). * Added client-side sorting of various tables in the admin application. * JavaScript used to to scroll to first error in forms. * Form definitions are now stored in XML form in the main database, not as Python files in the Web server file system. This improves security and makes it much easier to back-up the entire state of the system, without having to interrupt use of the system in any way. * Added ability to export and import form definitions in XML form, which lays the foundations for a shared and/or distributed form definition "library". * Form inputs that are required (mandatory) are now visually identified. * Added "definition last updated" and other useful metadata to form definitions. * Merge demogfields-branch * Added additional demographic/ID fields: mobile_phone, fax_phone, e_mail, passport_number and passport_country, interpreter required/language, to make the system better suited for use in border screening at airports etc. * Added ability to relabel or hide demographic/ID fields on a per-syndrome basis. * Added per-syndrome case status field, renamed field to just "status". * Storage of case and contact data unified. This allows a great deal more flexibility, including the ability to specify multiple "contact syndromes" for different types of contacts of cases. * Added interactive pop-up date entry widget (calendar). * Allowed allow a person to be contact of a case for more than one contact syndrome; included contact type in search results; revised styling of search results for cases and contacts to make them slightly clearer. * Simplified application navigation slightly (removed user details link from page banner, use tools instead), carry more context across new/edit/search screens. * Added paging to contacts list to allow cases with large numbers of contacts to be more easily managed. * Added experimental Case/Contact relationship visualisation using GraphViz. * Changes to allow PostgreSQL versions 8.0 and 8.1 to be used, as well as versions 7.3 and 7.4 as supported previously. * Deleting/hiding of cases and contacts now fully implemented. * Major speed improvements to phonetic searches. * Updated Collection-ER documentation to reflect schema changes. * Added a confirmation dialog when admins enable a user, to ensure that they have checked the new user's bona fides. * Add logging of case access (ACL) control changes. * Added support for use of Trac-style wiki mark-up for text used in various places in the application (see doc/NetEpi_wiki_markup.html ).

    posted 585 days ago

  • File released: /NetEpi-Collection/NetEpi-Collection-1.2.0/NetEpi-Collection-1.2.0.tar.gz.md5

    posted 585 days ago

  • File released: /NetEpi-Collection/NetEpi-Collection-1.2.0/NetEpi-Collection-1.2.0.tar.gz

    posted 585 days ago

  • NetEpi-Collection NetEpi-Collection-1.1.0 file released: NetEpi-Collection-1.1.0.tar.gz.md5

    NetEpi Collection Version 1.1.0 CHANGELOG =========================================== SUMMARY OF CHANGES IN VERSION 1.1.0 RELATIVE TO VERSION 1.0.4 =============================================================== The following changes have been made in this version: * The login page has been re-styled to be rather more attractive. * The previously separate administration application has been merged into the main end-user application. Now there is only one URL for each NetEpi Collection instance, and if a logged-in user has administrator rights, then an additional menu item appears which allows them to access the administration functions that were previously accessible only from a separate admin URL. Apart from making things easier for administrators, this change has enabled a reduction in otherwise duplicated code - thus the total line count for the project has gone down substantially. * An internal "notification" mechanism has been added so that changes made in the administration interface are immediately reflected in all sessions for that NetEpi instance. Previously, due to caching, administrative changes took up to ten minutes to propagate through to all user sessions, which could be confusing for users and administrators alike. See also the notes below on "Stand-alone Notification Daemon" regarding the need to disable this facility in certain unusual server configurations. * Administrators can now specify the order in which syndromes/case/contact definitions are listed on the home page. * Each instance of a data collection form is now assigned a unique ID, which incorporates a check-digit, and this ID number is shown on screen and appears in print-outs of forms and in data export files. * Users can specify a form instance ID number in the search page, and if it is a valid form ID number and the user has permission to access that case or contact, the form editing page for that form instance (and thus for the correct person and case or contact record) will be displayed immediately. * A simple "epi curve" charting facility has been added to the built-in reports. An "epi curve" is a frequency histogram by onset date (reporting date can also be be chosen, or dual charts for both can be drawn). Various date and time "binning" options are provided to control the degree of temporal aggregation on the x-axis. Further features will be added to this chart in later releases, and other built-in charts and graphs will be added. See also the additional installation prerequisites listed below which relate to this new feature. * The search parameters which a user enters are now shown on all search results pages. This is particularly important when adding a new case or contact, because these search parameters provide context to the "Create a new case" or "Create a new contact" buttons. * Users with "task queue admin" rights can now set up task queues specific to their unit (or shared with other units or specific users) without needing to ask a central administrator to do it for them. * Administrators can see summary statistics about the tasks allocated to each task queue. * The refresh button on the end-user task listing page has been removed (provided that Javascript is available and enabled in the user's browser). * Task filtering and display parameters for each user are automatically restored and saved each time a user visits the task list page. * Built-in reporting parameters for each user are automatically restored and saved, on a per case/contact definition basis, each time a user visits the built-in reports facility. * User accounts are now only logically deleted, thus preserving entries in the audit trail relating to deleted users. User accounts can also be easily undeleted. The enabled/disabled user flag remains, unchanged, so that user accounts can still be temporally disabled if necessary, and self- registered user accounts are still created with the disabled flag set and need to be deliberately enabled by an administrator. * Additional checks are now made before a unit can be deleted, and units with enabled users assigned to them can't be deleted. Previously, if units with active users were deleted, the users could be left with no unit membership, which prevented them from logging in. * Deleting work queues is now possible. Database integrity constraints previously prevented this except in the case of work queues that had never had any tasks associated with them. Work queues can now be deleted (after confirmation), provided that all associated tasks have been completed. * Previously, there were a number of places in the application in which administrators could accidentally exit an admin page without being warned they had unsaved changes. This has now been addressed. * More useful configuration and debug information is included in tracebacks if an application exception occurs. * Authenticated user id, unit id and the NetEpi instance name are now included in the RTT (round-trip-time) "perceived performance" data written to the web server log for each user interaction. This makes identification of network performance issues affecting individual users or groups of users at a particular location much easier. * After much experimentation, problems with unexpected behavior when using the browser back buttons on the Opera and Konqueror web browsers have now been addressed. The browser back button now behaves as expected (that is, the same way that it behaves when Gecko-based browsers such as Mozilla and Firefox, or Microsoft Internet Explorer version 6 or 7 are used). In the Safari browser, the browser back button is now effectively disabled when accessing NetEpi. This is an improvement on the unexpected behaviour of the browser back button in Safari browser when accessing previous versions of NetEpi. It should be noted that many web applications have major difficulties with the non-standard behaviour of the browser back button in the Safari browser (and possibly in the related WebKit browser engine). Of course, Safari users can still use the "<<Back" buttons provided in the NetEpi application: these work exactly as expected in Safari and in all other Web browsers. * Numerous minor bug fixes and other minor cosmetic adjustments have been made. * Updates to technical and system documentation. SUMMARY OF CHANGES IN VERSION 1.0.4 RELATIVE TO VERSION 1.0.3 =============================================================== Version 1.0.4 provides the ability to set the preferred date input and output format on an instance-wide basis, and/or by individual users. Three date formats can be specified: DMY (DD/MM/YYYY format), MDY (MM/DD/YYYY format) or ISO (YYYY-MM-DD format). All dates and date/time values are stored in the database in a format-neutral manner, thus there is no problem if different users of the same NetEpi database instance use different preferences for the date format, and individual users can change their preferred date format on-the-fly without problems. This feature, together with customisable state/territory/region fields introduced in Version 1.0.3 and the ability to customise the labels of the demographic fields added to Version 0.94, should allow NetEpi Collection to be more easily adapted for use in English-speaking locales outside Australia. A fully internationalised version accommodating non-English locales is possible but collaborators are required - the current NetEpi team cannot create such a fully-internationalised version without assistance, although they would very much like to do so. Additionally, Version 1.0.4 fixes several minor bugs - a list of fixes can be found in the doc/CHANGELOG file. Support for a new Python-to-PostgreSQL adaptor being developed by Object Craft Pty Ltd (http://www.object-craft.com.au) has been added. The free, open-source Object Craft adaptor is still be tested but when released, NetEpi Collection installations running Version 1.0.4 or later will automatically make use of it if it is installed. The release of the Object Craft Python-to-PostgreSQL adaptor, which promises to be considerably faster than existing Python-to-PostgreSQL adaptors, will be announced on the netepi-discuss mailing list as well as elsewhere. Finally, a PDF version of a presentation on NetEpi Collection and NetEpi Analysis, given at the School of Information Technologies at the University of Sydney in June 2007 has been included in documentation section of the NetEpi page on SourceForge - see http://sourceforge.net/docman/?group_id=123700 SUMMARY OF CHANGES IN VERSION 1.0.3 RELATIVE TO VERSION 1.0.2 =============================================================== Version 1.0.3 provides the ability to customise the list of geographical states, territories and regions in the address part of the demographics section. The global list of states and territories for an entire instance of NetEpi Collection can be customised, and this can be further customised on a per-syndrome or per-case-definition basis if required. The customised lists of states and territories are automatically taken into account when performing general searches. Additionally, Version 1.0.3 fixes a small number of minor but annoying bugs - a list of fixes can be found in the doc/CHANGELOG file. Special thanks to Stefan Stirzaker, Office of Health Protection, Surveillance Branch, Surveillance Policy & Systems Section, Population Health Division, Australian Government Department of Health and Ageing, for reporting the bugs in question. SUMMARY OF CHANGES IN VERSION 1.0.2 RELATIVE TO VERSION 1.0beta =============================================================== This is a bug-fix release only, no new features or facilities have been added. A list of fixes and other minor cosmetic changes can be found in the doc/CHANGELOG file. Special thanks to Francois Marsan for finding and carefully reporting a number of obscure and not-so-obscure bugs that had eluded us. SUMMARY OF CHANGES IN VERSION 1.0beta RELATIVE TO VERSION 0.99 ============================================================== The major addition to Version 1.0beta is the inclusion of a comprehensive record merging facility. This provides a mechanism to identify potentially duplicated PERSON records (using a bigram-based fuzzy matching algorithm, although arbitrary pairs of records can also be merged), and the user can then selectively merge demographic details and associated case, contact and task records, for each pair of duplicated person records. This may result in duplicated case or contact records for the resulting "merged" person, so there is an additional facility which can be used to merge case or contact records for a given person. Similarly for each case or contact record, there is a facility to merge data form records of the same type. In these merge facilities, each of which can be accessed independently of the others, the user can select whether to retain data from "record A" or "record B", on a data-item-by-data-item basis, or may chose to include information from both A and B records and edit the resulting combined data field. Much effort was put into designing a simple user interface to these merge facilities which make the complex merging task as quick and easy as possible for the end user. Unlike deletions, merges of records cannot be undone, but full details of all merge actions are captured in the audit trail log, allowing manual separation of merged records if required subsequently. Another major change in this version is the renaming of the application from "NetEpi Case Manager" to "NetEpi Collection", which better reflects the fairly generic role it plays, while also sounding less clinical. Other significant enhancements to Version 1.0beta include: * Provision of a read-only mode, in which the privileges of selected users can be restricted so that they can only view data, but not edit or delete it. The usual fine-grained access control mechanisms still apply to such read-only users. * Pull-down menus have replaced a plethora of buttons on the case and contact editing pages. The result is a cleaner look with no loss in usability (we feel, feedback welcome). * Labelling of cases versus contacts has been made smarter in order to reduce the occasional semantic confusion that was evident in parts of the application. * On certain pages more contextual information with respect to the current user or current case or contact has been provided to assist users in regaining their "bearings" after being interrupted while using the system. * Visual feedback is now provided each time a record of any type is updated. * Most error messages and warnings now appear at the top of the page, where they are harder to overlook. * Access to the built-in line-listing/reports facility is now restricted to those users who have been granted the "bulk export" privilege. * The "Next" button on search pages is now the default, so that the Enter key can be used to cause a search to be performed (thus improving end user ergonomics). * The "round-trip-time" facility, which measures and captures the response time (including network-related delays and latency) of NetEpi from the point-of-view of the end user, has been enhanced to work correctly when the Microsoft Internet Explorer browser is used, and now also records a timestamp for each response time captured in the web server log. Utilities to extract these response times from the web server log for analysis and presentation in statistical or other visualisation packages have also been added, including a script to import the data into NetEpi Analysis. * Another utility, called "httpinteract", has been included. It is a simple tool which can be used to acquire time-series data about network performance from end-user's workstations or access points. We have found it useful in pinpointing when and where network bandwidth, latency or congestion may be inadequate for satisfactory use of NetEpi, so that appropriate remedial action can be taken - such network problems can almost always be solved. * The deletion status of records is clearly shown when they are printed out. * Facilities to browse all cases for a given person, and to jump directly to the parent case of a contact, were added. * Unit tests and some Selenium functional tests were updated to work correctly with the current version. * System documentation was brought up-to-date. Finally, a lot of work has also gone into the creation of a "live CD" for demonstration purposes. This "live CD", which is based on the popular Ubuntu Linux distribution, allows most recent (that is, less than four or five years old) desktop or laptop computers to be booted directly from the live CD into a cut-down version of Ubuntu Linux, with a full, working copy of NetEpi Collection installed and ready to use. Data can be stored between sessions on a USB memory stick or external hard drive. No software or files are actually installed on the host computer - it runs entirely from the CD-ROM. The demonstration system includes a full Web server and can thus be accessed over a network by multiple users, as well as locally. Introductory "screencasts" and other background material will be included on the final NetEpi live CD. However, at this stage the live CD is still undergoing testing, but we have included the scripts needed to build the live CD in the NetEpi Collection distribution tarball for those who wish to create their own customised version. However, these scripts are complex and dangerous, and should only be run and modified by experienced system administrators and developers who know exactly what they are doing. They are only needed to create new versions of a live CD and should be completely ignored by NetEpi users and most system administrators. An .iso file of a demo live CD will be made available for download (and then burning onto a CD-ROM) at the time of the final release of Version 1.0. SUMMARY OF CHANGES IN VERSION 0.99 RELATIVE TO VERSION 0.98 =========================================================== Apart from several minor bug fixes, some general cleaning up of the code base and some additional unit tests, the very big addition to Version 0.99 is a built-in "line-listing" reporting facility. This facility allows tabular "line-listing" reports to be produced through a simple and easy-to-use interface. Filters and sorting orders based on demographic data and on data items contained in syndrome/case definition-specific forms can be defined, and the resulting record sets appear in the report or can be used as a "browse list" to page through case or contact records in the edit screens, one at a time. Summary or user-selectable fields (columns) from forms can also be included in the reports. The (still experimental) case-to-contact relationship visualisation tool has also been integrated into the reporting framework to take advantage of the filtering facilities it provides. Report definitions (including the filtering parameters) can be saved for re-use later, and these saved report definitions can be shared with other members of the user's business unit or with all users on the system. SUMMARY OF CHANGES IN VERSION 0.98 RELATIVE TO VERSION 0.97 =========================================================== Version 0.98 brings the following (in no particular order): * A (global) count of active cases of each syndrome is now shown on the home page. * An indication of number of contacts is now shown on the main case edit page. * The ability to examine the details of users in each business unit from task assignment and ACL (access control list) pages. * All current and enabled syndromes/case definitions are now shown on the main page, not just those the unit (or rather users in that unit) has access to, but the "add" button is suppressed if the unit does not have edit rights for that syndrome/case definition. * A facility to allow NetEpi administrators to "clear" a syndrome/case definition of data - this deletes all cases, contacts, form instances (but not form definitions!) and tasks associated with a syndrome/case definition (without deleting the syndrome/case definition itself). This is very useful for clearing out training or test data from a syndrome/case definition prior to "production" or real-life use. An additional confirmation was added because this facility permanently deletes data. * A facility by which a NetEpi administrator can use the web interface to permanently delete a syndrome/case definition and all associated cases, forms, tasks and log entries. This allows redundant, obsolete or test/dummy syndromes/case definitions to be removed from an existing NetEpi instance, or for a NetEpi instance to be cloned (using PostgreSQL database back-up and restore utilities) and then unwanted syndromes/case definitions removed. An additional confirmation was added because this facility permanently deletes data. * No longer indicate nature of login failures to improve security. * Add additional demographic fields for one extra set of alternative address and other contact information (which can be relabelled for each case definition/syndrome) * Improvements to form definition importing (form definition import name matching a little smarter, make form import seed the "forms" table if necessary). * A new command line facility to import and export form definitions in batches from a Collection instance. * "Onset date" and "Notification date" error messages now honour syndrome-specific labelling for these fields. * The ability to view logs associated with a contact. * The main application structure graph was updated, and an admin application structure graph was added. SUMMARY OF CHANGES IN VERSION 0.97 RELATIVE TO VERSION 0.96 =========================================================== The major additions to Version 0.97 are: * Ability to add a contact record and post-hoc associate it with a case, and/or dissociate it from a case and re-assign to a different case, and handle the merging of ACL (access rights) necessitated by such changes. * Improvements to the form data roll-forward facility so that incompatible changes to form filed data types that would lead to data loss or truncation can be readily identified and corrected. * Ability to print the data associated with a case or contact as a "report" (rather like a set a already-filled-in forms) * Ability to optionally include or exclude deleted records from data exports * Restriction of ability to export data to only some users who have been explicitly granted the right to do so. * Improvements to the information captured in the audit log, particularly with respect to contact records and their association with case records. * Require confirmation when undeleting cases or contacts. * Require confirmation needed when deleting a user in the admin application. * Fixed bug when a users from a disabled unit tried to log in. * Simplification of conditional question skip/enable subsystem. * Additional guards against inadvertent failure to save changes in admin interface In addition, numerous minor cosmetic changes and bug fixes have been implemented. SUMMARY OF CHANGES IN VERSION 0.96 RELATIVE TO VERSION 0.95 =========================================================== The major addition to Version 0.96 is a conditional form input skip/enable feature, which allows parts of questions, whole questions or multiple questions on a form to be selectively enabled or disabled based on categorical data elsewhere on the same form. Skip instructions are automatically generated for printed forms or where Javascript is unavailable or disabled. A large improvement to usability is also provided by some clever JavaScript which captures the "Back" button on the user's browser and makes it behave like the "<<Back"" navigation buttons in the application itself. This effectively removes a major source of user frustration by avoiding browser-generated "re-post" dialogue boxes appearing on screen. In addition, a large number of bug fixes have been made and the interface to parts of the admin application has been made more consistent and foolproof - it is now very hard to inadvertently forget to save changes made in the admin application. Also, the question editor pages in the admin form definition editor facility has been revised. SUMMARY OF CHANGES IN VERSION 0.95 RELATIVE TO VERSION 0.94 =========================================================== The major addition to Version 0.95 is a simple (but we hope effective) workflow subsystem, which allows "tasks", such as completing a case or contact follow-up form, to be assigned to individual users, business units or arbitrary "task queues" to which users and business units can be subscribed. These tasks can be scheduled for immediate or delayed attention, and users have access to a list of tasks assigned to them or otherwise available to them through their membership of a business unit or subscription to a task queue. Clicking on an assigned task automatically loads the correct case or contact record and opens the correct data form to be completed. Additional instructions can be added to tasks if necessary. This subsystem is intended to allow tasks generated by a large number of cases or contacts of cases of, say, a novel strain of influenza to be distributed to many workers located in many business units across the health system. It should also be useful for many other purposes, including reminders to oneself to follow-up missing data or check responses and so on. Other features added to Version 0.95 include better visual feedback when data in forms is updated, better indication of the deletion status of records, improvements to the form editor, and various minor cosmetic and labelling improvements. SUMMARY OF CHANGES IN VERSION 0.94 RELATIVE TO VERSION 0.90 =========================================================== Following is a summary, in no particular order, of the major changes visible to or of relevance to end-users and/or administrators, in NetEpi Collection Version 0.94, relative to NetEpi Collection Version 0.90 which was released in June 2005. Note that Versions 0.91 and 0.92 were intermediate versions which were not released publicly and Version 0.93 was quickly superseded by Version 0.94. In addition, there has been considerable refactoring and general tidying-up of the underlying programme code, as well as several bug fixes and security improvements. * Problem with download of exported data files via Microsoft Internet Explorer fixed. * Added a new class of user (called "unit admins") who can administer users in their unit via a new page accessible from the end-user (not admin) application. This removes a potential bottleneck of admins having to remotely vet and approve large numbers of new user accounts in a short time during an emergency. * Added JavaScript to track and report client's submit RTT (round-trip-time), added code to Request object to log reported RTT. This allows the total response time, as perceived by the end user, to be monitored centrally - in particular, problems related to network congestion can be detected, as well as problems due excessive server load. * Added the ability to print selectable sets of blank forms, on a per-syndrome basis, for use if the system is off-line, down or otherwise unavailable. * Ability to add certain rights to groups of users, and also ability to add certain rights to individual users. These include the right to see or edit all records. * Version information added to login screens to help avoid confusion during support calls. * Ability to save user preferences, including preferences for phonetic searching, results per page and pop-up calendars (see below). * Added client-side sorting of various tables in the admin application. * JavaScript used to to scroll to first error in forms. * Form definitions are now stored in XML form in the main database, not as Python files in the Web server file system. This improves security and makes it much easier to back-up the entire state of the system, without having to interrupt use of the system in any way. * Added ability to export and import form definitions in XML form, which lays the foundations for a shared and/or distributed form definition "library". * Form inputs that are required (mandatory) are now visually identified. * Added "definition last updated" and other useful metadata to form definitions. * Merge demogfields-branch * Added additional demographic/ID fields: mobile_phone, fax_phone, e_mail, passport_number and passport_country, interpreter required/language, to make the system better suited for use in border screening at airports etc. * Added ability to relabel or hide demographic/ID fields on a per-syndrome basis. * Added per-syndrome case status field, renamed field to just "status". * Storage of case and contact data unified. This allows a great deal more flexibility, including the ability to specify multiple "contact syndromes" for different types of contacts of cases. * Added interactive pop-up date entry widget (calendar). * Allowed allow a person to be contact of a case for more than one contact syndrome; included contact type in search results; revised styling of search results for cases and contacts to make them slightly clearer. * Simplified application navigation slightly (removed user details link from page banner, use tools instead), carry more context across new/edit/search screens. * Added paging to contacts list to allow cases with large numbers of contacts to be more easily managed. * Added experimental Case/Contact relationship visualisation using GraphViz. * Changes to allow PostgreSQL versions 8.0 and 8.1 to be used, as well as versions 7.3 and 7.4 as supported previously. * Deleting/hiding of cases and contacts now fully implemented. * Major speed improvements to phonetic searches. * Updated Collection-ER documentation to reflect schema changes. * Added a confirmation dialog when admins enable a user, to ensure that they have checked the new user's bona fides. * Add logging of case access (ACL) control changes. * Added support for use of Trac-style wiki mark-up for text used in various places in the application (see doc/NetEpi_wiki_markup.html ).

    posted 622 days ago

Rate and Review

Be the first person to add a text review.

Would you recommend this project?






<

Related Projects

Thanks for your rating!

Would you also like to write a review?





Skip Review