2 * user_data_view_model.js
5 * @link http://www.open-emr.org
6 * @author Kevin Yeh <kevin.y@integralemr.com>
7 * @author Brady Miller <brady.g.miller@gmail.com>
8 * @author Ranganath Pathak <pathak@scrs1.org>
9 * @author Jerry Padgett <sjpadgett@gmail.com>
10 * @copyright Copyright (c) 2016 Kevin Yeh <kevin.y@integralemr.com>
11 * @copyright Copyright (c) 2016 Brady Miller <brady.g.miller@gmail.com>
12 * @copyright Copyright (c) 2019 Ranganath Pathak <pathak@scrs1.org>
13 * @copyright Copyright (c) 2018-2019 Jerry Padgett <sjpadgett@gmail.com>
14 * @license https://github.com/openemr/openemr/blob/master/LICENSE GNU General Public License 3
17 function user_data_view_model(username,fname,lname,authGrp)
20 self.username=ko.observable(username);
21 self.fname=ko.observable(fname);
22 self.lname=ko.observable(lname);
23 self.authorization_group=ko.observable(authGrp);
24 self.messages=ko.observable(false);
25 self.portal=ko.observable(isPortalEnabled);
26 self.portalAlerts=ko.observable("");
27 self.portalAudits=ko.observable("");
28 self.portalMail=ko.observable("");
29 self.portalChats=ko.observable("");
30 self.portalPayments=ko.observable("");
36 function viewPtFinder(myMessage, searchAnyType, event)
38 event.stopImmediatePropagation;
40 let srchBox = document.getElementById("anySearchBox");
41 var searchAnyType = searchAnyType;
44 let finderUrl = webroot_url+"/interface/main/finder/dynamic_finder.php";
45 let srchBoxVal = srchBox.value.trim();
46 let srchBoxWidth = srchBox.offsetWidth;
47 let srchBoxLength = srchBoxWidth < 50 ? 0 : srchBoxVal.length;// to let input box with values be displayed on mousedown on Smartphones
49 if (srchBoxLength > 0 ) {
50 finderUrl += "?search_any=" + encodeURIComponent(srchBoxVal);
51 navigateTab(finderUrl,"fin", function () {
52 activateTabByName("fin",true);
55 } else if (srchBoxLength == 0 && srchBoxWidth > 50) {
56 if (searchAnyType == 'dual') {
58 navigateTab(finderUrl,"fin", function () {
59 activateTabByName("fin",true);
61 } else if (searchAnyType == 'comprehensive') {
69 function viewTgFinder()
71 navigateTab(webroot_url+"/interface/therapy_groups/index.php?method=listGroups","gfn", function () {
72 activateTabByName("gfn",true);
76 function viewMessages()
78 navigateTab(webroot_url+"/interface/main/messages/messages.php?form_active=1","msg", function () {
79 activateTabByName("msg",true);
83 function viewPortalAudits()
85 navigateTab(webroot_url+"/portal/patient/onsiteactivityviews","msc", function () {
86 activateTabByName("msc",true);
90 function viewPortalMail()
92 navigateTab(webroot_url+"/portal/messaging/messages.php","por", function () {
93 activateTabByName("por",true);
97 function viewPortalChats()
99 navigateTab(webroot_url+"/portal/messaging/secure_chat.php","pop", function () {
100 activateTabByName("pop",true);
104 function viewPortalPayments()
106 navigateTab(webroot_url+"/portal/patient/onsiteactivityviews","msc", function () {
107 activateTabByName("msc",true);
111 function editSettings()
113 navigateTab(webroot_url+"/interface/super/edit_globals.php?mode=user","msc", function () {
114 activateTabByName("msc",true);
118 function changePassword()
120 navigateTab(webroot_url+"/interface/usergroup/user_info.php","msc", function () {
121 activateTabByName("msc",true);
127 navigateTab(webroot_url+"/interface/usergroup/mfa_registrations.php","msc", function () {
128 activateTabByName("msc",true);
134 top.restoreSession();
135 top.window.location=webroot_url+"/interface/logout.php";