IHRIS Suite 4.0 Development: Difference between revisions

From IHRIS Wiki
Line 87: Line 87:
**If two successive forms have storage mechanisms subclassing I2CE_FormStorage_DB try to use a sub-select rather than process through PHP
**If two successive forms have storage mechanisms subclassing I2CE_FormStorage_DB try to use a sub-select rather than process through PHP
*replace instances of ''foreach($something) { $this->template->appendTemplateFile('some.html',$appendNode);}'' with ''$add_node = $this->template->loadHTMLFile('some.html'); foreach ($something) { $this->template->appendNode($add_node->clone(true),$append_node);}''
*replace instances of ''foreach($something) { $this->template->appendTemplateFile('some.html',$appendNode);}'' with ''$add_node = $this->template->loadHTMLFile('some.html'); foreach ($something) { $this->template->appendNode($add_node->clone(true),$append_node);}''
*Add tasks to Qualify


==Version 4.0.3==
==Version 4.0.3==
*Fix sysV magic data storage mechanism
*Fix sysV magic data storage mechanism
*Add in [[Extending Form Limits| extended form limits]]
*Add in [[Extending Form Limits| extended form limits]]

Revision as of 10:40, 21 October 2009

Version 4.0.0

Intended for release week of July 13, 2009.

Version 4.0.1

High Priority

  • add time stamp to PDF
  • add form documentor as a CLI page

Low Priority

  • Training Sample data should be separated from Medical Sample Data. Currently ManageMedicalData enables SampleData-training_course_category which requires training-course.

Completed

  • Debug training module
  • Ensure all templates are localized (done in 4.0.0)
  • Cleanup ISCO-88 Job Codes (done in development for 4.0.1)
  • Finish Flat Storage mechanism for forms.
  • Add in Multi-Flat Storage mechanism for forms
  • Fix this: http://www.2shared.com/file/6929841/7587e315/bad_css.html
  • Add cache stale times on a per form basis
  • Add cache stale times on a per form storage mechanism basis
  • Add ability to turn of form caching by background process
  • Add cache stale times on a per report basis
  • Add ability to turn of report generation by background process
  • Change so that caching a report triggers the caching of the forms needed for the report if they are stale
  • Change so that forced caching a report triggers forced caching of the forms needed for the report
  • Replace I2CE_Form::validate() mapped values check with something from I2CE_List, e.g. monsterMash()
  • separate form field validation logic into the appropriate modules
  • fix bug in export of custom reports to html
  • logout page now really logs out
  • added command line option --clear_cache=1 which will clear the magic data cache
  • added special URL: $site_url/clear_cache.php which will clear the magic data cache, the apc cache and destroy the session
  • fix limits for dates
  • fix bug in setting the order in which fields are displayed in a report view
  • fix bug in defining a form relationship when linking from a form.
  • added index to string_Value column of last_entry table to speed of cache generation
  • added in index on mapped fields in hippo_tables to speed up report generation,
  • fixed ie7 javascript errors that were causing problems for custom reports
  • upgraded to mootools 1.2.3
  • speed display of lists in administer database
  • added a db-like version of magic data form storage which is used if the "permanent" magic data storage is in the config table (this causes localization support to be dropped from magic data)
  • fixed issue for default display of custom reports where limits where lost when resorting the table
  • Add paging for list display pages
  • add photo upload
  • add resume upload
  • Fix bug with report views not displaying fields the first time you try to edit it
  • Report limits with dates are being set to the current date by default
  • Fix sort order of headers on report views
  • Migrate iHRIS Qualify

Version 4.0.2

High Priority

Unprioritized

  • Make iHRIS work out of the box on RHEL:
    • Mysql's unix socket often lives in /var/lib/mysql (or elsewhere), not /var/run/mysqld. (jstrope)
    • Fedora has no /etc/timezone -- that info lives in /etc/sysconfig/clock (but you can't just do a file_get_contents on it -- has comments and dditional info and the time zones don't always match the format returned by date_default_timezone_get) (jstrope)
    • iHRIS didn't give much of an indication of why the initialization failed. If you had an error handler that said "set your date.timezone setting in php.ini", that would probably suffice. (jstrope)
  • use date picker for DATE_YMD from field
  • add resume upload
  • add in limits for dates where date is(requested form MVC):
    • after a given time period from now (e.g. after 6 months pervious to now)
      • period in months (as int)
      • period in year (as int)
    • before a given time period from now (e.g. after 6 months pervious to now)
      • period in months (as int)
      • period in year (as int)
  • CSV/Excel report export -- add option to show metadata about what limits were chosen, when report was generated (ask Julie S.)
  • XML Export for report
    • Add option to import XSLT to transform XML export
  • Cleanup user and user_form.
    • Can user use the flat storage?
    • Do we want make flat storage a requirement for user?
  • Add in different role/password authentifications for users
    • openMRS, DHIS users
    • LDAP?
  • Add in Simply Joined mechanisim for forms to enable reading in data from openMRS style vertical tables.
  • Move all string from php to templates
  • Remove all mootools' $ references from javascript
  • Custom Reports: when a form is componentized, add "easy" option to limit based on the components. e.g. show only the people within "Northern Region"
    Optionally define and use the metadata at /modules/forms/form_storage/options/$storage/component/name
  • Go through configuration .xml and add locale='en_US' tags where appropriate.
  • Review strings in .pot files to ensure that they translatable as sentences and rework templates/make printf substitutions as appropriate
  • Fixup selection list to be a tree for position+facility rather than a drop down list:
    we should be able to set position+facility to have default display fields 'facility+location:county:district:[region]:country'
    the problem is that currently, facility+location can take values in either the forms 'county' or 'district' and using the the above display fields string, we would only list the facilities whose location are a county.
  • Speedup validation of mapfields w/ unique_field set to be something like 'country:region'
    • short circuit and return once a match is found instead of getting all the matches
  • Speedup I2CE_List::monsterMash and I2Ce_List::createDataTree
    • If two successive forms have storage mechanisms subclassing I2CE_FormStorage_DB try to use a sub-select rather than process through PHP
  • replace instances of foreach($something) { $this->template->appendTemplateFile('some.html',$appendNode);} with $add_node = $this->template->loadHTMLFile('some.html'); foreach ($something) { $this->template->appendNode($add_node->clone(true),$append_node);}
  • Add tasks to Qualify

Version 4.0.3