We plan to enhance and expand the number of patient reports that are available in OpenEMR. They will enable OpenEMR to meet the certification requirements of Patient Lists. Please review the proposed solution below:
Initial coding for Patient Lists has been completed. You can log into http://www.medbloom.com to see the reports. For data range, please start with 2008/01/01.
An important aside is none of the search functioning is working; I could
get nothing to return for nay search (except that all pt get returned when
click a ‘diagnosis’ search).
My contributions are:
—INCORPORATED NEW SECURITY METHODS ((set global reverse magic quotes
flag, set no fake globals flag, use sql binding/placemakers(stop
sql-injection), use htmlspecialchars(stop xss attacks)) Note no need for
formdata.inc.php functions anymore when use this stuff.
—FIXED incorrect demographics2.php links
—CHANGED FULL PHP tags, <?php instead of <?
—USED generate_display_field() for output of a list item.
—USED dropdown_facility function
Please make sure that you have data in all the tables. The search functions work on local computer as well as at www.medbloom.com. You can log in to see them.
We will review your patch and incorporate the suggested changes shortly.
Thomas,
My changes are extensive in order for your programmers to learn the new security implementation (you’ll be better off just starting from my patch because the extensive htmlspecialchars use basically makes back patching almost impossible). These security steps are discussed here: http://sourceforge.net/projects/openemr/forums/forum/202506/topic/3530656
It actually makes the code much cleaner, because do not need to use the confusing formdata.inc.php functions anymore (sort of a lie, rarely will need to escape a variable if it’s a column label in a sql statement).
New pages should follow this method (changes to old pages can use old formdat.inc.php method unless page has been converted to the new method).
-brady
TESTING REVIEW:
–Need to ensure the functionality of the original prescription report (that you deleted) is still working. In your code, if I create a new user and make a prescription for the new user, it does not show up in the report. However, it does show up in old deleted report.
–No point in me testing the rest of the functionality until above works. I will say that I noted the age filter is not working (if I use it in the diagnosis function, it will include patients that should not be included (ie. do not fit within the filter). Please ensure comprehensive testing before next submission, since this is getting close to being able to commit to the codebase.
Also, base your patches on the most current cvs codebase. I think your now basing it off your first version off your reports; since I’m not sure what your basing it off, this is another source of potential issues with your code when we test it.
Sorry about the patch. I applied the latest file without first applying your patch. I have resubmitted the patch. There are only a few lines of changes.
Visolve will do the QA. The patient links work at www.medbloom.com. So we will wait to hear from Visolve.
Make your patches from the most recent cvs(either SF development tip or the github master branch), so anybody can test your stuff. I can easily compare across your branches from git.
Why are you sending code to QA that does not work in the development tip (having it work at www.medbloom.com isn’t useful for the codebase). You guys need to test and get your stuff working from the development tip. One cardinal rule of open source is to not break functionality; the prescription report obviously does not work like the previous report. Sending code that doesn’t even fulfill this minimal testing requirement to QA by visolve is just wasting resources. You guys need to get in the habit of testing from the tip.
Of course, the programmer is using patch from Github Master. It’s tested to work on his local machine and at www.medbloom.com so that everyone can see the changes and that everyone can see the development and testing are done.
We didn’t have access to the SF Tip or the Github Master before (remember)? Please provide instructions if there is another way to test.
Also, starting today, the programmer(s) will work with GitHub directly under username “ossllc”. I will monitor their work from time to time. Please grant access to that account.
You guys aren’t using git in an ideal way. I suggest not ever touching your master or rel-320 branches on your repository; you only update these from the official github openemr repository. I’d suggest making another repository(even better for each programmer to have their own repository, since it’s very easy to grab branches from each other). I recommend initially following these instructions, which I created for new git users to get started “correctly” with OpenEMR: http://www.openmedsoftware.org/wiki/Git_for_dummies
For testing, I place this script in the git directory (one above openemr), and run it whenever I want to do a native test (on mandriva, but can quickly script any OS):
So running above script will place newly created version of whatever git branch is checked out to be tested. Doing this kind of testing is vital (this is why most programmers, such as Rod, myself, Aron, Visolve and others can check in straightforward code without a QA cycle). If you then combine this testing with correct use of git/github, then the sky it the limit for your programmers.