Onsite patient portal

When i complete a form on the portal and submit it for review it does not make it back to the emr system. Normally i could go under miscellaneous ->portal dashboard and go under audit to see it, but now it no longer shows that since the update. The forms still show and the submit button works, they just never make it to the emr system

hi @harmone75 ,
The most recent patch (patch 2 of 5.0.2) addressed a security vulnerability in the patient portal, however, looks like we introduced a bug or two, which are working on fixing:
Portal ACL broken 5.0.3 and 5.0.2 · Issue #3486 · openemr/openemr · GitHub

I would like to see a docker or a demo which uses nginx is one available?
I have not been able to get my patient portal to work. It is imperative for me to get any portal to work, because currently I am trying to start a new practice with no capital for staff. I would like patients to make their own appointments and have telemedicine visits.

Btw, when I go to my on site patient portal, I get this page:

" Oh Snap!


You may want to try returning to the the previous page and verifying that all fields have been filled out correctly.

If you continue to experience this error please contact support.

Onsite Patient Portal Rel v5.0.2 Copyright © 2020 By sjpadgett@gmail.com"


@gutiersa @harmone75
This is a temporary solution so you can work while Brady and I finish brain storming the issue.
Unzip in openemr root. Four files.

portal.zip (9.9 KB)

Thank you, i will implement this shortly

Well, because I thought my problem is that I have a multi-site install, I decided to do a single site install. Not only that, but I decided to not implement ssl before my setup.php (which I tend to do initially). These are the errors thrown at the screen, After enabling the onsite portal:

Original Stack Trace:
#0 /usr/local/www/myopenemr/library/translation.inc.php(44): ExceptionThrower::HandleError()
#1 /usr/local/www/myopenemr/library/htmlspecialchars.inc.php(138): xl()
#2 /usr/local/www/myopenemr/library/htmlspecialchars.inc.php(158): hsc_private_xl_or_warn()
#3 /usr/local/www/myopenemr/portal/patient/templates/ProviderHome.tpl.php(12): xlt()
#4 /usr/local/www/myopenemr/portal/patient/fwk/libs/savant/Savant3.php(1022): include(’/usr/local/www/…’)
#5 /usr/local/www/myopenemr/portal/patient/fwk/libs/savant/Savant3.php(958): Savant3->fetch()
#6 /usr/local/www/myopenemr/portal/patient/fwk/libs/savant/Savant3.php(944): Savant3->getOutput()
#7 /usr/local/www/myopenemr/portal/patient/fwk/libs/verysimple/Phreeze/SavantRenderEngine.php(69): Savant3->display()
#8 /usr/local/www/myopenemr/portal/patient/fwk/libs/verysimple/Phreeze/Controller.php(850): SavantRenderEngine->display()
#9 /usr/local/www/myopenemr/portal/patient/libs/Controller/ProviderController.php(51): Controller->Render()
#10 /usr/local/www/myopenemr/portal/patient/fwk/libs/verysimple/Phreeze/Dispatcher.php(169): ProviderController->Home()
#11 /usr/local/www/myopenemr/portal/patient/index.php(50): Dispatcher::Dispatch()
#12 {main}

In addition to the above error, the default error template could not be displayed:
Trying to access array offset on value of type bool in translation.inc.php at line 44
#0 /usr/local/www/myopenemr/library/translation.inc.php(44): ExceptionThrower::HandleError()
#1 /usr/local/www/myopenemr/library/htmlspecialchars.inc.php(138): xl()
#2 /usr/local/www/myopenemr/library/htmlspecialchars.inc.php(158): hsc_private_xl_or_warn()
#3 /usr/local/www/myopenemr/portal/patient/templates/DefaultErrorFatal.tpl.php(9): xlt()
#4 /usr/local/www/myopenemr/portal/patient/fwk/libs/savant/Savant3.php(1022): include(’/usr/local/www/…’)
#5 /usr/local/www/myopenemr/portal/patient/fwk/libs/savant/Savant3.php(958): Savant3->fetch()
#6 /usr/local/www/myopenemr/portal/patient/fwk/libs/savant/Savant3.php(944): Savant3->getOutput()
#7 /usr/local/www/myopenemr/portal/patient/fwk/libs/verysimple/Phreeze/SavantRenderEngine.php(69): Savant3->display()
#8 /usr/local/www/myopenemr/portal/patient/index.php(74): SavantRenderEngine->display()
#9 {main}

Oh, groovy, I too, will get it going immediately. thanks

Nope, now I get the above error in the multi site install. You must have already patched the second patch.

No, this is not an nginx thing.
I just finished installing an apache instance. either I am missing a php74 thing, or this is a bug.

I’ll try a debugging environment.

How about if I wanted to test drive the Wordpress portal. It is not a bad idea to have a site that is separate from the openemr one no?
Is the wordpress one something that is still doable?

Also about private messaging, what is everybody using? Is the solution still phimail? What if I wanted to implement my own. Is that so hard?
If you prefer that I create a separate thread, I can do that.

Ok, it seems so far the onsite patient portal in openemr does not support php74 yet. That is why I have been getting the error message. The developers, @sjpadgett is working on this.

I am having this problem again. I am now using xampp in windows. I tried the portal.zip package above but it did not help. Does anyone remember what is the problem here?

By this problem I mean, the documents that are sent from the patient portal, are not getting queued into the medical record “patient activities” tab.


When you say its not getting queued into the medical record patient activities. Is that prior to document approval your trying to do or after approving the receipt of the document via the portal audits?

As a second check on the file allocation are you able to see them at all in the patient records after portal audit approval and if so are you able to see the folder “patient activities” as well?

1 Like

Hi, thanks for your reply.
I actually went into the database and changed a field. Then the documents started showing up again.
This is what I did:

I went into the database and changed the “pending_action” field in the “onsite_portal_activity” table, from I think “editing” to “review” (I believe), so they would show up in the portal back end. I now see all the forms, including those that have not been completed by the patients. There might have been a bug at one time; which is that when the patients completed the forms and sent the forms for review, the program did not change this field from “editing” to “review”. Hence, the forms did not show up in my end.



From changing and testing it is possible for database to get out of sync. It’s just ya really have to try hard at it Sandra.:wink: hint…

1 Like

While reviewing patient forms submitted by the patients via the inpatient portal, I notice that some patients submit forms without a signature.
I am needing to send these forms back to the patients, such that they need not re-complete the form.

A “Return to patient” button would be awesome in the future, however we don’t have that currently.

What do I need to change in the onsite_portal_activity table such that the form appears back in the patient’s portal?

Sandra Gutierrez

yep, that’d be nice but I won’t be doing anymore portal development most likely.

Now that we have the tools; SMART on FHIR, apis and identity server, smart web/mobile apps should be our go to.

In this case for portal, as long as you haven’t charted document it is still available to patient for edit. Send a message to patient via Dashboard mail.

I am not sure, I will check

I had the same error, which I tried to replicate, but I am not able to because the portal is working without a glitch. I would advise to any one installing openEMR to setup their own private server and and install it in a test environment before releasing it for production. This is a very stable application and when setup correctly is one of the best open source software out there. I have a test server in windows server and wamp, works flawlessly. When this app is install make sure your php7 does not have deprecated features. By the way the most stable installation are the ones from the openEMR express cloud server on Amazon Servers.