RegistrationApp 1.1 UI element to toggle allowmanualidentifier

0 views
Skip to first unread message

Craig A.

unread,
Feb 27, 2015, 2:00:09 AM2/27/15
to d...@openmrs.org
Hi Everyone,

Question up front: 
1) The default value for "allowmanualidentifier" is set to true in the new registrationapp. Should this be defaulted to false with a UI interface in the reference application that allows users to toggle? Should this be somewhere in the configure metadata section of the reference app?

Background:
I upgraded my registration core and app modules to the version released by Darius on the MavenRepo. The new functionality is fantastic and I'm already integrating it into my module. As a module developer it's straightforward for me to toggle the manual override of the patientId. However, this default behavior and the addition of this question to the registration flow may cause problems for implementers.

Sincerely,
Craig 


Mark Goodrich

unread,
Feb 27, 2015, 8:35:30 AM2/27/15
to d...@openmrs.org
Craig,

Glad you like the additional functionality.  Yes, ideally there should be a UI interface that allows end users to modify parameters such as this without having to delve in and modify json configuration.  I don't know when we will be prioritizing it building such as interface however.

It also could be argued that it "allow manual identifier" should be false by default.  I'd be fine with changing this behaviour if others felt similarly.

Mark
--
OpenMRS Developers: http://om.rs/dev
Post: d...@openmrs.org | Unsubscribe: dev+uns...@openmrs.org
Manage your OpenMRS subscriptions: http://om.rs/id
 
Visit OpenMRS Talk at http://om.rs/talk for chat and discussions!
To unsubscribe from this group and stop receiving emails from it, send an email to dev+uns...@openmrs.org.

Darius Jazayeri

unread,
Feb 27, 2015, 11:05:55 AM2/27/15
to dev
Hi Craig,

Definitely we want good, intuitive UIs for configuring things. Unfortunately resource constraints usually prevent us from getting those out until well after the functionality itself is available...

The idea for the OpenMRS 2.2 release is that (a) there is a preconfigured registration app that aims for some 80% use case; (b) there is a very non-intuitive UI for Admin-defined apps (see RA-558) and we'll document this as best we can.

To the specific point, I think I agree that in the out-of-the-box setup, allowManualIdentifiers should be false. Can you make a (trivial) pull request for this?

-Darius

Craig A.

unread,
Feb 27, 2015, 11:41:40 AM2/27/15
to d...@openmrs.org
Hi Darius,

Thank for this description. I see the constraints that you mention and hope that I can learn how to contribute simple functions like this in the future. Here's the pull request.

Sincerely,
Craig

Craig A.

unread,
Feb 28, 2015, 9:46:54 PM2/28/15
to dev
Hi Guys,

I slept on it and this is bugging me. I'd like to try developing this feature. I know how to write the app extension and groovy page, but don't know how the "allow manual identifier" is stored, nor what the controller should look like. Can you point me to any code where something like this is done for another app?

Thanks,
Craig

Darius Jazayeri

unread,
Mar 1, 2015, 12:46:23 PM3/1/15
to dev
Hi Craig,

The way this works is that the code behind the register patient app is an "app template", plus java and gsp that support different functionality based on the configuration. Different implementation can have different app definitions (which inherit from the app template), and an implementation can even define multiple registration apps within one OpenMRS installation, each with a different configuration. (E.g. at Mirebalais hospital we have an ED registration app that has the unidentified patient option turned on, and an everywhere-else registration that has it turned off.)

So, if someone has installed the reference application out of the box, they're going to get the code defined at https://github.com/openmrs/openmrs-module-referenceapplication/blob/master/omod/src/main/resources/apps/refapp_registrationapp_app.json#L19

Whereas an implementation that doesn't want that can (either through code, or via the administrative UI we talked about earlier on the thread) disable that, and define their own desired app.

We don't have great examples of creating intuitive UIs for admins to control apps. This example that Rafal built around configuring extensions for forms is relevant: http://demo.openmrs.org/openmrs/formentryapp/forms.page?app=formentryapp.forms

Basically, I think we'd want to introduce some functionality in the Manage Apps page so that, if you choose a specific app template, then instead of editing it via the generic (big textarea) screen, you get a custom screen for editing that kind of app. And we'd custom-write a single page for editing a Registration app.

Does that make some sense?

-Darius

Craig A.

unread,
Mar 2, 2015, 5:41:23 AM3/2/15
to dev
Hi Darius,

This sounds like the perfect approach. I just saw the manage apps changes in the RA and that is a huge leap forward. I'm just learning java and MVC. Is there anything I can contribute as an implementer with documentation or another area?

Sincerely,
Craig

Darius Jazayeri

unread,
Mar 2, 2015, 9:52:56 PM3/2/15
to dev
Hi Craig,

Something that would be great to do is to document what is now possible via Manage Apps. Want to take this on?

The place to document this would be at https://wiki.openmrs.org/x/zgBYAw but I think we should actually duplicate this page, leaving the current one as the 2.1 documentation, and creating a new one as 2.2 Implementer Documentation.

@Maurya, if this is a step in the process that you're following, can you go ahead and do it, and point Craig to the new page? If it's not, let's add it to the 2.x release manager manual. :-)

-Darius

Craig A.

unread,
Mar 3, 2015, 11:04:55 PM3/3/15
to dev
Hi Darius,

I will do it. @Maurya, can you give me a rough deadline to have this documentation complete?

Sincerely,
Craig
Reply all
Reply to author
Forward
0 new messages