These tabbed iFrames sound like they would be extremely useful for advancing the development of a physician - patient - all-in-one interface for controlling the entire encounter without jumping all over the EMR. I know I repeat like an old scratched 78 record over and over, (hey I still own some fine 78’s) but I feel strongly that the clunky interface for the doctor seeing the patient is holding back OpenEMR from conquering the world.
Jack
The goal will eventually be to have the changes merged into the existing modules with conditionals, but for the experimental stage, I want to have separate files so I don’t have to worry so much about maintaining compatibility in the original files. Also, doing it this way will allow a user to switch between the interfaces seamlessly without needing access to the administrative pages. There is going to be a link at the top of the page to switch between them. This way if while using the new interface a user encounters a problem he can switch back with little disruption.
I have enough faith in git’s abilities to track changes that it won’t be a problem to merge things down the line.
Anyway, it’ll all be clearer when I get the first revisions going.
Hi Kevin,
Sounds like a good plan. Let us know when there’s something to test. Also, for the future, note that the Administration->Globals can be “chosen” to also be used as per-user settings in Miscellaneous->Preferences.
-brady
I think it’s going to be important to also have the option of split screens, so the user can see 1 or 2 other panels at the same time they are filling out a form or whatever. I’m already talking with a client with that need. So maybe the general case is some user-defined arrangement of “frames” (could be just one) with each having a tabbed display.
Nifty. The checkboxes would be nice for advanced users. But would also have the option for having it work (and look) like simple tabs, since I think this would be more intuitive for basic users.
Checkboxes were simple to get working quickly, and could work in conjunction with “basic” tabs. Mostly just a proof of concept.
I’m trying to do my best to keep the logic for display of hiding/showing/splitting tabs etc. cleanly separated from the UI control scheme itself to allow for options.
One of my biggest complaints about the current scheme is that there aren’t good abstractions in left_nav.php for stuff like that. (there are lots of different ways that the states of the top/bottom checkboxes are examined for different ways that navigation can happen.)
Yes it would be important to add functions in left_nav to abstract everything that affects the layout. There are some already but it’s not comprehensive.
I think I’ve got a good working initial version of this if folks want to check it out. https://github.com/yehster/openemr/tree/jqTabs
Some things to note… I changed login.php so it brings you to the new layout first, but if you have trouble, hitting the home button in the tabs based interface will bring you back to the old frames based layout.
Also, if you need split screen/simultaneous display of multiple forms, in main_screen_tab.php there is a line
<?php $buttonStyle="radio" ?>
you can change radio to checkbox,
The new “left_nav_tab.php” is essentially just the original left_nav.php with some new functions included at the bottom. I won’t ultimately have such a large duplication of code, but it was easier for development to do it that way.
Starting to look like something. Some bugs I am seeing that are not in the above screenshot:
-The left menu entries are always expanded (links work, but can’t contraxt/expand the sections)
-The user information on the title bar is not showing up
-The encounter drop down on the title bar is not showing up
Brady,
What browser? Any useful javascript console errors? Curious about immediately after the main_screen_tab.php files loads and also when you try to load a patient.