OpenClinic Changelog

This is a non-exhaustive (but still near complete) changelog for OpenClinic including beta and release candidate versions.


  • Add
  • Fix
  • Change

Changes since 0.8 (2013-01-07)

  1. Source code repository at GitHub
  2. New italian translation thanks to Francesco Assisi
  3. Fixed deletion of staff (second surname issue)
  4. Fixed installation wizard problems in Chrome browsers

Changes since 0.7 (2004-12-26)

  1. Code compatibility with PHP5 (incompatible with PHP4) and MySQL 5.5
  2. The storage engine used in MySQL is MyISAM although the default is InnoDB
  3. Removed all CSS themes and only includes one by default (new page structure)
  4. Traditional Chinese is activated and added the translation in this language
  5. Updated the dutch translation
  6. Reorganization of directories and files in the project (very extensive and deep..., the code does not look anything like the previous version)
  7. Changed the style of static HTML pages
  8. Added a print CSS for static HTML pages
  9. Reset buttons are removed from the forms
  10. Added a list of links to the fields with errors on forms with errors
  11. Fixed the error when deleting a patient or a medical problem in version 0.7
  12. CSRF and Session Fixation Protection
  13. Unobtrusive JavaScript in all pages
  14. Changed the structure of XML database dumps (based on Propel)
  15. Created a script to update the database automatically
  16. Created a class to use flash messages and avoid passing parameters in URLs
  17. Improvements in the breadcrumbs on pages
  18. The second surname is not required to fill in forms
  19. Contextual help links are eliminated (because help is not made)

Changes since 0.6 (2003-12-21)

  1. Session has an own name
  2. Action delete had been actived if login of the current user was changed
  3. Link 'Report Bugs' had an incorrect CSS class
  4. Improvements in accessibility to open new windows
  5. Existing login message in user_new.php fixed
  6. DbConnection class: connection parameters are set in constructor function
  7. Improvements in file shared/navigation_links.php
  8. New file lib/debug_lib.php: new application constant OPEN_DEBUG (true | false)
  9. Added searchUser() method to Access_Query class
  10. Added Id CVS variable in header of all SQL files
  11. Suppression of javascript protocol in href attributes
  12. New file lib/misc_lib.php: new global constant OPEN_FIELD_PREVIEW_LIMIT
  13. Addition of bread crumb in all pages than need it
  14. Fixed problems with inexistent things
  15. Changes in connect method of Query class to permit connection parameters
  16. In $returnPage variable saves GET and POST parameters also
  17. DTD XHTML 1.1 in all project pages
  18. Added affectedRows() method to Query class
  19. Changes in input_lib.php file (new parameter $disabled in showCheckBox and showRadioButton functions, $events paremeter becomes $addendum, new parameter $error in showSelectArray function)
  20. No GET values to *_del.php files (via POST now)
  21. existLogin() method has changed idUser parameter for idMember
  22. Fixed logout link in timeout session
  23. If items per page equal to zero, searchs return all results without pagination
  24. Function getFiles() has a new parameter to indicate allowed extensions of files
  25. Better i18n of dates
  26. Fixed problem with NULL closing_date in medical problems
  27. Fixed XSS attacks with JavaScript event handlers in input fields and GET and POST vars
  28. Added localDate() function to lang_lib.php file
  29. All methods named fetch*() have been renamed to fetch()
  30. New option CREATE DATABASE __dbname__ in MySQL dumps and table summary
  31. Three new files in directory shared to clear code: i18n.php, session_info.php, xhtml_start.php
  32. Profiles option in admin tab has been removed (and profile_tbl from database too)
  33. Fixed MSIE bugs relationship with table less design
  34. All application constants have OPEN_ or DLIB_ prefix to avoid interferences with PHP constants
  35. New function showFetchError() in lib/error_lib.php file (changes in DbConnection and Query classes)
  36. errorOccurred() method changes name to isError() in Query class
  37. user_edit.php redirects correctly now to user_edit_form.php in case of error
  38. Redirections to avoid reload problem in insertions, updates or deletions processes
  39. Problems with dumps as files (urldecode of data is unnecessary)
  40. New method isActivated() in User_Query class to know if a login is activated or not
  41. If an user is deactivated, is redirected to login suspended page at first time
  42. Custom error handler for log to screen or/and to a file (new constants in read_settings.php file: OPEN_SCREEN_ERRORS, OPEN_LOG_ERRORS, OPEN_LOG_FILE)
  43. New methods in Query class: getPrimaryKey(), getRowData()
  44. Record log process improvements: now is saved entire record data
  45. New constant in global_constants.php file: OPEN_SEPARATOR for implode(), explode() functions; OPEN_MSG_INFO, OPEN_MSG_WARNING, OPEN_MSG_ERROR for messages
  46. New functions html*() in input_lib.php file
  47. Added html_lib.php file in lib directory: htmlTable(), showTable(), htmlMessage(), showMessage() functions
  48. CSS2 table less based themes, changes in theme_tbl table and admin/theme_*.php files (new file admin/theme_preload_css.php)
  49. Changes in current user are made immediately
  50. New constant OPEN_BUFFER in read_settings.php file to use ob_*() functions (but by default, value is false) (experimental support)
  51. Field collegiate_number has been replaced with id_member in patient_tbl and problem_tbl tables. Field id_member has been added in deleted_patient_tbl, deleted_problem_tbl tables too. After upgrade OpenClinic from 0.6 version is recommended check all patients and problems information (doctor you are assigned to, doctor who treated you)

Changes since 0.5 (2003-06-30)

  1. Added new themes to the project: LibXML, SerialZ, Closer, GG Interactive
  2. Changes in DbConnection class (documentation)
  3. Added exec() method to Query class (this implicates changes in all *_Query.php files)
  4. classes/Install_Query.php file (Install_Query class) has been removed from project (this implicates changes in parse_sql_file.php and install.php files)
  5. Changed passwords coded method in MySQL fields (it is MD5 now)
  6. Error in medical/test_edit.php file (path_filename)
  7. Internal changes in classes (coding_guidelines.html)
  8. $HTTP_*_VARS now are $_* superglobals arrays
  9. Now current password is needed to change the password
  10. It is possible define a color as #rgb format in New/Edit Theme pages
  11. Added new options in dumps: DELETE * FROM __table__, USE __dbname__
  12. Added new files to the project: lib/lang_lib.php, lib/nls.php
  13. Files named noauth.php are no_authorization.php now
  14. Added Id CVS variable in header of all PHP, HTML and JavaScript files
  15. Added new files to the project: admin/staff_validate_post.php, admin/theme_validate_post.php, admin/user_validate_post.php, medical/patient_validate_post.php, medical/problem_validate_post.php, medical/test_validate_post.php
  16. Fixed mess between opened and closed medical problems (medical/problem_view.php file)
  17. Translation method has been changed. Now it is made with GNU gettext and PO (and binary MO) files (classes/Localize.php file has been deleted from project)
  18. All 'print' language constructions have been changed for 'echo' language constructions
  19. Now OpenClinic installation is also translated (to the browser language if it is available)
  20. Better internal documentation in class files
  21. Fixed SELECT sentences with text fields (urlencode)
  22. Added showInputButton(), showInputFile(), showRadioButton() functions in lib/input_lib.php file
  23. Changes in lib/input_lib.php functions
  24. shared/suspended.php file is shared/login_suspended.php now
  25. Constants OPEN_NUM, OPEN_ASSOC, OPEN_BOTH have been deleted from file shared/global_constants.php (this implicates changes in various classes/*_Query.php files)
  26. Now shared/global_constants.php is required in shared/read_settings.php file
  27. All form passwords are encoded with MD5 method
  28. Added lib/file_lib.php file to the project
  29. Created a directory to store medical problem tests
  30. It is possible making a remote installation of a SQL file
  31. Added new field in problem_tbl and deleted_problem_tbl tables (last_update_date)
  32. OpenClinic CSS changed. New design does not use tables for layout purposes. Layout is made with div and span tags. It looks fine in last generation browsers
  33. Added new constant ALLOWED_HTML_TAGS in global_constants.php file (more secure classes)
  34. Now session_cache_limiter() function is in read_settings.php file
  35. All visible pages have a title page
  36. 'Delete Connection with Medical Problem' shows medical problem header information now
  37. Function showResultPages displays all pages when it is necessary now
  38. New link 'OpenClinic Readme' in footer pages
  39. Various database fields have changed: subjetive -> subjective (problem_tbl, deleted_problem_tbl), objetive -> objective (problem_tbl, deleted_problem_tbl), wife_childs_status_health -> spouse_childs_status_health (deleted_patient_tbl, history_tbl), sur_name1 -> surname1 (staff_tbl, patient_tbl, deleted_patient_tbl), sur_name2 -> surname2 (staff_tbl, patient_tbl, deleted_patient_tbl)
  40. Inclusion of OpenClinic version in database dumps downloads
  41. In login_form.php direct connections, it redirects to home/index.php now
  42. Changes in input_lib.php functions parameters

Changes since 0.4 (2003-05-17)

  1. Added install/wizard.php file to the project
  2. Added css/wizard.css file to the project
  3. Added DLIB_MYSQL_VERSION constant to the admin/dump_defines.php file
  4. Added new themes to the project: Thai Appserv, OpenClinic Wizard, Izhal, Invision
  5. Tables array is now in install/parse_sql_file.php file
  6. The file openclinic/index.php has been modified (checks if database connection is good)
  7. Error in new user process (classes/User.php file, $value => $pwd)
  8. The files medical/test_new.php and medical/test_new_form.php have been modified
  9. Error in new/edit medical test process (in Opera and Mozilla browsers)
  10. Error in patient deletion process (medical problems)
  11. The file medical/problem_search.php has been modified (more secure)
  12. Error in restore backup process when there is a semicolon in data (parse_sql_file.php)
  13. The file scripts/.htaccess has been removed
  14. Doctor can not edit or delete medical tests of a medical problem
  15. OpenClinic Logos changed thanks to Coresis (project OpenGraphics)
  16. Added scripts/wizard.js file to the project
  17. Added nl2br() function to medical/*_view.php files

Changes since 0.3 (2003-03-02)

  1. Added bulgarian language (pazoff)
  2. Added showNavLinks() function (shared/navigation_links.php file)
  3. Improvements in search engine (medical/patient_fields.php, medical/patient_search.php, classes/Patient_Query.php)
  4. Added setItemsPerPage(), getCurrentRow(), getRowCount(), getPageCount(), search() methods to Problem_Query class
  5. Added medical/problem_search.php, medical/problem_search_fields.php files to the project
  6. Added freeResult() method to DbConnection and Query classes
  7. Fixed medical/print_medical_record.php errors ($staff)
  8. Fixed medical/problem_view.php errors ($staff, new != reset)
  9. Fixed medical/patient_view.php errors ($staff)
  10. Added numRows() method to Query class
  11. Fixed medical/problem_new.php and medical/problem_edit.php errors (key=)
  12. Fixed medical/connection_new.php errors (key=)
  13. Added medical/visited_list.php file to the project
  14. Added new themes to the project: XP Style (jact), Autumn Violets (pazoff)
  15. New patient list (3 last visited patients) in normal version
  16. More visual improvements (CSS and images)
  17. Fixed more XHTML 1.0 errors (nested lists)
  18. Fixed stranger characters introduction in login_form.php (urlencode in login.php)
  19. Added lib/validator_lib.php file to the project
  20. Added fetchAll() method to DbConnection class
  21. Added fetchRow() and fetchAll() methods to Query class (changes in all *_Query.php files)
  22. New feature in Admin tab: Log Statistics
  23. Added fetchAccess() and select() methods to Access_Query class
  24. Added fetchRecord() and select() methods to Record_Query class
  25. Added admin/log_stats.php, admin/log_access_list.php and admin/log_record_list.php files to the project
  26. Added htmlspecialchars(), intval() functions to classes files
  27. Use of showInputHidden() function in the web forms
  28. Added showCheckBox() function (lib/input_lib.php file)
  29. Checking of magic_quotes_gpc in setter methods
  30. Added emulation of transactions in critical operations (ignore_user_abort function)
  31. Added coding_guidelines.html file to the project

Changes since 0.2 (2003-02-08)

  1. Visual improvements (CSS)
  2. Fixed medical/relative_list.php errors (medical/patient_del.php)
  3. Fixed admin/setting_edit.php errors
  4. Fixed medical/connection_list.php errors (medical/problem_del.php)
  5. Added access_log_tbl table to database. It is necessary to store application user's accesses
  6. Added Access_Query class
  7. Changed link to admin/user_new_form.php in admin/staff_list.php
  8. Improved internationalization of the application (encoding, charset, dir). Changes in locale/*/header.php files
  9. Added record_log_tbl table to database. It is necessary to log record operations
  10. Added Record_Query class
  11. Added shared/record_log.php file
  12. Added getLastId() method to the Problem_Query class
  13. Added getLastId() method to the Test_Query class

Changes since 0.1 (2003-01-25)

  1. Fixed medical/problem_edit_form.php errors
  2. Improved date format
  3. Fixed some XHTML 1.0 errors
  4. Better clinic image selection (<select> tag)
  5. Demo version doesn't have user's control
  6. Modified connect() method in DbConnection class
  7. Added affectedRows() method to DbConnection class
  8. Added rowSeek() method to DbConnection class
  9. Added lastInsertId() method to DbConnection class
  10. Added medical/history_personal_view.php and medical/history_family_view.php files
  11. Added $onlyDoctor and $hasMedicalAdminAuth variables
  12. Added admin/dump_optimize_db.php file
  13. Added htmlspecialchars() function to the lib/input_lib.php functions
  14. Added showInputHidden() function to the lib/input_lib.php file
  15. Improved SQL dumps of database
  16. Fixed History_Query errors
  17. Added historic tables: deleted_patient_tbl, deleted_problem_tbl
  18. Fixed date format errors