Update of /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin
In directory sfp-cvsdas-4.v30.ch3.sourceforge.com:/tmp/cvs-serv3092/web/admin
Modified Files:
providersearchrecordshtm.jsp admincontrol.jsp
preferenceaddpreference.jsp admindisplaymygroup.jsp
adminnewgroup.jsp providerRole.jsp providerupdateprovider.jsp
provideraddarecord.jsp providerupdate.jsp
securitysearchrecordshtm.jsp securitysearchresults.jsp
gstreport.jsp logReport.jsp sitesAdminDetail.jsp
sitesAdmin.jsp securityaddarecord.jsp
provideraddarecordhtm.jsp unLock.jsp
Log Message:
adding full multi-office support with site-aware filtering. Contributed by Dr.Eric Tam
Index: preferenceaddpreference.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/preferenceaddpreference.jsp,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -d -r1.15 -r1.16
*** preferenceaddpreference.jsp 5 Sep 2010 07:05:24 -0000 1.15
--- preferenceaddpreference.jsp 30 Nov 2010 08:17:54 -0000 1.16
***************
*** 25,36 ****
-->
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/caisi-tag.tld" prefix="caisi"%>
<%@ page import="java.sql.*, java.util.*" errorPage="errorpage.jsp"%>
! <jsp:useBean id="apptMainBean" class="oscar.AppointmentMainBean" scope="session" />
<%@page import="org.oscarehr.common.model.ProviderPreference"%>
! <%@page import="org.oscarehr.web.admin.ProviderPreferencesUIBean"%><html:html locale="true">
<head>
<script type="text/javascript" src="<%= request.getContextPath() %>/js/global.js"></script>
--- 25,55 ----
-->
+ <%@ taglib uri="/WEB-INF/security.tld" prefix="security"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/caisi-tag.tld" prefix="caisi"%>
<%@ page import="java.sql.*, java.util.*" errorPage="errorpage.jsp"%>
! <%@ page import="oscar.login.DBHelp"%>
! <jsp:useBean id="apptMainBean" class="oscar.AppointmentMainBean"
! scope="session" />
<%@page import="org.oscarehr.common.model.ProviderPreference"%>
! <%@page import="org.oscarehr.web.admin.ProviderPreferencesUIBean"%>
! <%
! if(session.getAttribute("user") == null ) response.sendRedirect("../logout.jsp");
! String curProvider_no = (String) session.getAttribute("user");
!
! if(session.getAttribute("userrole") == null ) response.sendRedirect("../logout.jsp");
! String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
!
! boolean isSiteAccessPrivacy=false;
! %>
!
!
! <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
! <%isSiteAccessPrivacy=true; %>
! </security:oscarSec>
!
! <html:html locale="true">
<head>
<script type="text/javascript" src="<%= request.getContextPath() %>/js/global.js"></script>
***************
*** 46,49 ****
--- 65,91 ----
</table>
<%
+ boolean isAccessPass = true;
+
+ if (isSiteAccessPrivacy) {
+ //multisite : check provider no
+ String provider_no = request.getParameter("provider_no");
+ String sqlStr = "select COUNT(*) as cou from providersite where provider_no = " + provider_no
+ + " and site_id in (select site_id from providersite where provider_no = " + curProvider_no + ") ";
+ DBHelp dbObj = new DBHelp();
+ ResultSet rs = dbObj.searchDBRecord(sqlStr);
+
+ if(rs.next()){
+ int ret = rs.getInt("cou");
+ if(ret >= 1){
+ isAccessPass = true;
+ }
+ else {
+ isAccessPass = false;
+ }
+ }
+ rs.close();
+ }
+
+ if (!isSiteAccessPrivacy || isAccessPass) {
ProviderPreference providerPreference=ProviderPreferencesUIBean.updateOrCreateProviderPreferences(request);
***************
*** 60,64 ****
<h1><bean:message key="admin.preferenceaddarecord.msgSuccessful" />
</h1>
! <!-- footer -->
<hr width="100%" color="navy">
<table border="0" cellspacing="0" cellpadding="0" width="100%">
--- 102,113 ----
<h1><bean:message key="admin.preferenceaddarecord.msgSuccessful" />
</h1>
! <%
! }
! else {
! %>
! <h1><bean:message key="admin.preferenceaddpreference.msgAccessFailure" />
! <%
! }
! %> <!-- footer -->
<hr width="100%" color="navy">
<table border="0" cellspacing="0" cellpadding="0" width="100%">
Index: providerRole.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/providerRole.jsp,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** providerRole.jsp 29 Jul 2010 00:05:24 -0000 1.19
--- providerRole.jsp 30 Nov 2010 08:17:54 -0000 1.20
***************
*** 25,29 ****
<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
! <%@ page import="oscar.util.*" %>
<%@ page import="oscar.login.*" %>
<%@ page import="oscar.log.*" %>
--- 25,29 ----
<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
! <%@ page import="oscar.util.*,oscar.*" %>
<%@ page import="oscar.login.*" %>
<%@ page import="oscar.log.*" %>
***************
*** 40,43 ****
--- 40,51 ----
</security:oscarSec>
+ <%
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
<%
//check to see if new case management is request
***************
*** 71,75 ****
// get role from database
Vector vecRoleName = new Vector();
! String sql = "select * from secRole order by role_name";
ResultSet rs = dbObj.searchDBRecord(sql);
while (rs.next()) {
--- 79,93 ----
// get role from database
Vector vecRoleName = new Vector();
! String sql;
! String adminRoleName = "";
! if (isSiteAccessPrivacy) {
! //multisites ,remove admin role from dropdown list
! OscarProperties props = OscarProperties.getInstance();
! adminRoleName = props.getProperty("multioffice.admin.role.name", "");
! sql = "select * from secRole where role_name <> '" + adminRoleName + "' order by role_name";
! }
! else {
! sql = "select * from secRole order by role_name";
! }
ResultSet rs = dbObj.searchDBRecord(sql);
while (rs.next()) {
***************
*** 293,298 ****
firstName = "%";
}
! String query = "select u.id, u.role_name, p.provider_no, p.first_name, p.last_name from provider p LEFT JOIN secUserRole u ON ";
! query += " p.provider_no=u.provider_no where p.last_name like '" + lastName + "' and p.first_name like '" + firstName + "' and p.status='1' order by p.first_name, p.last_name, u.role_name";
rs = dbObj.searchDBRecord(query);
Vector<Properties> vec = new Vector<Properties>();
--- 311,331 ----
firstName = "%";
}
!
!
! String query;
!
! if (isSiteAccessPrivacy){
! //multisites: only select providers have same site with current user
! query = "select u.id, u.role_name, p.provider_no, p.first_name, p.last_name from provider p LEFT JOIN secUserRole u ON ";
! query += " p.provider_no=u.provider_no LEFT JOIN providersite ps ON p.provider_no = ps.provider_no ";
! query += " where p.last_name like '" + lastName + "' and p.first_name like '" + firstName + "' and p.status='1' ";
! query += " and not exists(select * from secUserRole scr where scr.provider_no = p.provider_no and scr.role_name = '" + adminRoleName + "') " ;
! query += " and ps.site_id in (select site_id from providersite where provider_no = " + curUser_no + ") order by p.first_name, p.last_name, u.role_name";
! }
! else {
! query = "select u.id, u.role_name, p.provider_no, p.first_name, p.last_name from provider p LEFT JOIN secUserRole u ON ";
! query += " p.provider_no=u.provider_no where p.last_name like '" + lastName + "' and p.first_name like '" + firstName + "' and p.status='1' order by p.first_name, p.last_name, u.role_name";
! }
! //System.out.println(query);
rs = dbObj.searchDBRecord(query);
Vector<Properties> vec = new Vector<Properties>();
Index: admincontrol.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/admincontrol.jsp,v
retrieving revision 1.36
retrieving revision 1.37
diff -C2 -d -r1.36 -r1.37
*** admincontrol.jsp 15 Nov 2010 03:26:15 -0000 1.36
--- admincontrol.jsp 30 Nov 2010 08:17:54 -0000 1.37
***************
*** 41,48 ****
--- 41,60 ----
%>
+ <%
+ if(session.getAttribute("user") == null ) response.sendRedirect("../logout.jsp");
+ String curProvider_no = (String) session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
<%@ page errorPage="errorpage.jsp"%>
<jsp:useBean id="apptMainBean" class="oscar.AppointmentMainBean"
scope="session" />
+
<%
String orderby="", limit="", limit1="", limit2="";
***************
*** 153,157 ****
{"search_wlstatus", "select * from waitingList where demographic_no=? AND is_history='N' order by onListSince DESC"},
{"search_waiting_list", "select * from waitingListName where group_no='" + session.getAttribute("groupno") +"' AND is_history='N' order by name"},
!
};
}else{
--- 165,174 ----
{"search_wlstatus", "select * from waitingList where demographic_no=? AND is_history='N' order by onListSince DESC"},
{"search_waiting_list", "select * from waitingListName where group_no='" + session.getAttribute("groupno") +"' AND is_history='N' order by name"},
! //muti-site query
! {"site_searchproviderall","select p.provider_no, p.last_name, p.first_name from provider p INNER JOIN providersite s ON p.provider_no = s.provider_no WHERE s.site_id IN (SELECT site_id from providersite where provider_no=?) AND p.status='1' order by last_name"},
! {"site_searchmygroupall" ,"select p.* from mygroup p INNER JOIN providersite s ON p.provider_no = s.provider_no WHERE s.site_id IN (SELECT site_id from providersite where provider_no=?) order by mygroup_no"},
! {"site_preference_search_titlename", "select p.* from preference p INNER JOIN providersite s ON p.provider_no = s.provider_no where p."+fieldname+ " "+regularexp+" ? AND s.site_id IN (SELECT site_id from providersite where provider_no= ? ) " +orderby + " "+limit},
! {"site_security_search_titlename", "select p.* from security p INNER JOIN providersite s ON p.provider_no = s.provider_no where p."+fieldname+ " "+regularexp+" ? AND s.site_id IN (SELECT site_id from providersite where provider_no= " + curProvider_no + " ) " +orderby + " "+limit},
! {"site_provider_search_titlename", "select p.provider_no,p.first_name,p.last_name,p.specialty,p.sex,p.team,p.phone,p.status from provider p where "+fieldname+ " "+regularexp+" ? and exists(select * from providersite s where p.provider_no = s.provider_no and s.site_id IN (SELECT site_id from providersite where provider_no=" + curProvider_no + ")) " +orderby + " "+limit},
};
}else{
***************
*** 198,202 ****
{"search_wlstatus", "select * from waitingList where demographic_no=? AND is_history='N' order by onListSince DESC"},
{"search_waiting_list", "select * from waitingListName where group_no='" + session.getAttribute("groupno") +"' AND is_history='N' order by name"},
!
};
}
--- 215,224 ----
{"search_wlstatus", "select * from waitingList where demographic_no=? AND is_history='N' order by onListSince DESC"},
{"search_waiting_list", "select * from waitingListName where group_no='" + session.getAttribute("groupno") +"' AND is_history='N' order by name"},
! //muti-site query
! {"site_searchproviderall","select p.provider_no, p.last_name, p.first_name from provider p INNER JOIN providersite s ON p.provider_no = s.provider_no WHERE s.site_id IN (SELECT site_id from providersite where provider_no=?) AND p.status='1' order by last_name"},
! {"site_searchmygroupall" ,"select p.* from mygroup p INNER JOIN providersite s ON p.provider_no = s.provider_no WHERE s.site_id IN (SELECT site_id from providersite where provider_no=?) order by mygroup_no"},
! {"site_preference_search_titlename", "select p.* from preference p INNER JOIN providersite s ON p.provider_no = s.provider_no where p."+fieldname+ " "+regularexp+" ? AND s.site_id IN (SELECT site_id from providersite where provider_no=?) " +orderby + " "+limit},
! {"site_security_search_titlename", "select p.* from security p INNER JOIN providersite s ON p.provider_no = s.provider_no where p."+fieldname+ " "+regularexp+" ? AND s.site_id IN (SELECT site_id from providersite where provider_no= " + curProvider_no + " ) " +orderby + " "+limit},
! {"site_provider_search_titlename", "select p.provider_no,p.first_name,p.last_name,p.specialty,p.sex,p.team,p.phone,p.status from provider p where "+fieldname+ " "+regularexp+" ? and exists(select * from providersite s where p.provider_no = s.provider_no and s.site_id IN (SELECT site_id from providersite where provider_no=" + curProvider_no + ")) " +orderby + " "+limit},
};
}
Index: adminnewgroup.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/adminnewgroup.jsp,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** adminnewgroup.jsp 24 Nov 2010 03:55:33 -0000 1.13
--- adminnewgroup.jsp 30 Nov 2010 08:17:54 -0000 1.14
***************
*** 27,30 ****
--- 27,31 ----
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
+ <%@ taglib uri="/WEB-INF/security.tld" prefix="security"%>
<%
***************
*** 36,39 ****
--- 37,54 ----
scope="session" />
+ <%
+ if(session.getAttribute("user") == null ) response.sendRedirect("../logout.jsp");
+ String curProvider_no = (String) session.getAttribute("user");
+
+ if(session.getAttribute("userrole") == null ) response.sendRedirect("../logout.jsp");
+ String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
<html:html locale="true">
<head>
***************
*** 121,128 ****
size="-2">(Max. 10 chars.)</font></td>
</tr>
! <%
ResultSet rsgroup = null;
int i=0;
! rsgroup = apptMainBean.queryResults("searchproviderall");
while (rsgroup.next()) {
i++;
--- 136,152 ----
size="-2">(Max. 10 chars.)</font></td>
</tr>
!
!
! <%
ResultSet rsgroup = null;
int i=0;
! if (isSiteAccessPrivacy)
! {
! rsgroup = apptMainBean.queryResults(curProvider_no,"site_searchproviderall");
! }
! else
! {
! rsgroup = apptMainBean.queryResults("searchproviderall");
! }
while (rsgroup.next()) {
i++;
Index: providerupdate.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/providerupdate.jsp,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -d -r1.18 -r1.19
*** providerupdate.jsp 8 Oct 2010 14:22:01 -0000 1.18
--- providerupdate.jsp 30 Nov 2010 08:17:54 -0000 1.19
***************
*** 4,7 ****
--- 4,12 ----
import="java.sql.*, oscar.login.*, java.util.*,oscar.*,oscar.oscarDB.*,oscar.util.SqlUtils,oscar.oscarProvider.data.ProviderBillCenter"
errorPage="errorpage.jsp"%>
+
+ <%@page import="org.oscarehr.common.dao.SiteDao"%>
+ <%@page import="org.springframework.web.context.support.WebApplicationContextUtils"%>
+ <%@page import="org.oscarehr.common.model.Site"%>
+
<jsp:useBean id="apptMainBean" class="oscar.AppointmentMainBean"
scope="session" />
***************
*** 79,83 ****
--- 84,151 ----
param[19]=new DBPreparedHandlerParam((String)session.getAttribute("user"));
param[20]=new DBPreparedHandlerParam(request.getParameter("provider_no"));
+ //multi-office provide id formalize check, can be turn off on properties multioffice.formalize.provider.id
+ boolean isProviderFormalize = true;
+ String errMsgProviderFormalize = "admin.provideraddrecord.msgAdditionFailure";
+ Integer min_value = 0;
+ Integer max_value = 0;
+
+ if (org.oscarehr.common.IsPropertiesOn.isProviderFormalizeEnable()) {
+
+ String StrProviderId = request.getParameter("provider_no");
+ OscarProperties props = OscarProperties.getInstance();
+
+ String[] provider_sites = {};
+
+ // get provider id ranger
+ if (request.getParameter("provider_type").equalsIgnoreCase("doctor")) {
+ //provider is doctor, get provider id range from Property
+ min_value = new Integer(props.getProperty("multioffice.formalize.doctor.minimum.provider.id", ""));
+ max_value = new Integer(props.getProperty("multioffice.formalize.doctor.maximum.provider.id", ""));
+ }
+ else {
+ //non-doctor role
+ provider_sites = request.getParameterValues("sites");
+ provider_sites = (provider_sites == null ? new String[] {} : provider_sites);
+
+ if (provider_sites.length > 1) {
+ //non-doctor can only have one site
+ isProviderFormalize = false;
+ errMsgProviderFormalize = "admin.provideraddrecord.msgFormalizeProviderIdMultiSiteFailure";
+ }
+ else {
+ if (provider_sites.length == 1) {
+ //get provider id range from site
+ String provider_site_id = provider_sites[0];
+ SiteDao siteDao = (SiteDao)WebApplicationContextUtils.getWebApplicationContext(application).getBean("siteDao");
+ Site provider_site = siteDao.getById(new Integer(provider_site_id));
+ min_value = provider_site.getProviderIdFrom();
+ max_value = provider_site.getProviderIdTo();
+ }
+ }
+ }
+
+ if (isProviderFormalize) {
+ try {
+ Integer providerId = Integer.parseInt(StrProviderId);
+
+ if (request.getParameter("provider_type").equalsIgnoreCase("doctor") || provider_sites.length == 1) {
+ if (!(providerId >= min_value && providerId <=max_value)) {
+ // providerId is not in the range
+ isProviderFormalize = false;
+ errMsgProviderFormalize = "admin.provideraddrecord.msgFormalizeProviderIdFailure";
+ }
+
+ }
+
+ } catch(NumberFormatException e) {
+ //providerId is not a number
+ isProviderFormalize = false;
+ errMsgProviderFormalize = "admin.provideraddrecord.msgFormalizeProviderIdFailure";
+ }
+ }
+
+ }
+ if (!org.oscarehr.common.IsPropertiesOn.isProviderFormalizeEnable() || isProviderFormalize) {
DBPreparedHandlerParam[] paramArch =new DBPreparedHandlerParam[] {new DBPreparedHandlerParam(request.getParameter("provider_no"))};
apptMainBean.queryExecuteUpdate(paramArch, "provider_archive_record");
***************
*** 107,111 ****
<%
}
! %>
<p></p>
<%@ include file="footer2htm.jsp"%>
--- 175,189 ----
<%
}
! }
! else {
! if (!isProviderFormalize) {
! //output ProviderFormalize error message
! %>
! <h1><bean:message key="<%=errMsgProviderFormalize%>" /> </h1>
! Provider # range from : <%=min_value %> To : <%=max_value %>
! <%
! }
! }
! %>
<p></p>
<%@ include file="footer2htm.jsp"%>
Index: gstreport.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/gstreport.jsp,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** gstreport.jsp 16 Nov 2010 08:35:39 -0000 1.8
--- gstreport.jsp 30 Nov 2010 08:17:54 -0000 1.9
***************
*** 4,7 ****
--- 4,28 ----
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
+ <%@ taglib uri="/WEB-INF/security.tld" prefix="security"%>
+
+ <%
+ if(session.getAttribute("user") == null ) response.sendRedirect("../logout.jsp");
+ String curProvider_no = (String) session.getAttribute("user");
+
+ if(session.getAttribute("userrole") == null ) response.sendRedirect("../logout.jsp");
+ String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
+ boolean isTeamAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
+ <security:oscarSec objectName="_team_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isTeamAccessPrivacy =true; %>
+ </security:oscarSec>
+
<%
GstReport gstReport = new GstReport();
***************
*** 22,26 ****
BigDecimal gst = new BigDecimal(0);
Vector list = gstReport.getGST(providerNo, startDate, endDate);
! List pList = (Vector)(new JdbcBillingPageUtil()).getCurProviderStr();
%>
<link rel="stylesheet" type="text/css" media="all"
--- 43,57 ----
BigDecimal gst = new BigDecimal(0);
Vector list = gstReport.getGST(providerNo, startDate, endDate);
!
! List pList = new Vector();;
! if (isTeamAccessPrivacy) {
! pList= (Vector)(new JdbcBillingPageUtil()).getCurTeamProviderStr(curProvider_no);
! }
! else if (isSiteAccessPrivacy) {
! pList= (Vector)(new JdbcBillingPageUtil()).getCurSiteProviderStr(curProvider_no);
! }
! else {
! pList= (Vector)(new JdbcBillingPageUtil()).getCurProviderStr();
! }
%>
<link rel="stylesheet" type="text/css" media="all"
Index: admindisplaymygroup.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/admindisplaymygroup.jsp,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** admindisplaymygroup.jsp 24 Nov 2010 03:55:33 -0000 1.13
--- admindisplaymygroup.jsp 30 Nov 2010 08:17:54 -0000 1.14
***************
*** 27,30 ****
--- 27,31 ----
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
+ <%@ taglib uri="/WEB-INF/security.tld" prefix="security"%>
<%
***************
*** 32,35 ****
--- 33,53 ----
response.sendRedirect("../login.htm");
%>
+
+ <%
+ if(session.getAttribute("user") == null ) response.sendRedirect("../logout.jsp");
+ String curProvider_no = (String) session.getAttribute("user");
+
+ if(session.getAttribute("userrole") == null ) response.sendRedirect("../logout.jsp");
+ String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
+
+
<%@ page import="java.util.*,java.sql.*"
errorPage="../provider/errorpage.jsp"%>
***************
*** 79,83 ****
boolean bNewNo=false;
String oldNo="";
! rsgroup = apptMainBean.queryResults("searchmygroupall");
while (rsgroup.next()) {
if(!(rsgroup.getString("mygroup_no").equals(oldNo)) ) {
--- 97,108 ----
boolean bNewNo=false;
String oldNo="";
! if (isSiteAccessPrivacy)
! {
! rsgroup = apptMainBean.queryResults(curProvider_no,"site_searchmygroupall");
! }
! else
! {
! rsgroup = apptMainBean.queryResults("searchmygroupall");
! }
while (rsgroup.next()) {
if(!(rsgroup.getString("mygroup_no").equals(oldNo)) ) {
Index: provideraddarecordhtm.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/provideraddarecordhtm.jsp,v
retrieving revision 1.40
retrieving revision 1.41
diff -C2 -d -r1.40 -r1.41
*** provideraddarecordhtm.jsp 24 Nov 2010 03:52:19 -0000 1.40
--- provideraddarecordhtm.jsp 30 Nov 2010 08:17:54 -0000 1.41
***************
*** 2,5 ****
--- 2,7 ----
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/caisi-tag.tld" prefix="caisi"%>
+ <%@ taglib uri="/WEB-INF/security.tld" prefix="security"%>
+
<%@ page
import="java.util.*, oscar.oscarProvider.data.*"%>
***************
*** 33,36 ****
--- 35,50 ----
suggestProviderNo = "000000".substring(suggestProviderNo.length()) + suggestProviderNo;
%>
+
+ <%
+ if(session.getAttribute("userrole") == null ) response.sendRedirect("../logout.jsp");
+ String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
<!--
/*
***************
*** 144,148 ****
<td>
<% SiteDao siteDao = (SiteDao)WebApplicationContextUtils.getWebApplicationContext(application).getBean("siteDao");
! List<Site> sites = siteDao.getAllActiveSites();
for (int i=0; i<sites.size(); i++) {
%>
--- 158,162 ----
<td>
<% SiteDao siteDao = (SiteDao)WebApplicationContextUtils.getWebApplicationContext(application).getBean("siteDao");
! List<Site> sites = ( isSiteAccessPrivacy ? siteDao.getActiveSitesByProviderNo(curProvider_no) : siteDao.getAllActiveSites());
for (int i=0; i<sites.size(); i++) {
%>
Index: logReport.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/logReport.jsp,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** logReport.jsp 6 Oct 2010 21:52:12 -0000 1.17
--- logReport.jsp 30 Nov 2010 08:17:54 -0000 1.18
***************
*** 31,34 ****
--- 31,36 ----
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
+ <%@ taglib uri="/WEB-INF/security.tld" prefix="security"%>
+
<%
if(session.getAttribute("user") == null )
***************
*** 36,41 ****
--- 38,51 ----
String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
String curUser_no = (String)session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
%>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
+
<%
String tdTitleColor = "#CCCC99";
***************
*** 55,59 ****
Properties propName = new Properties();
// select provider list
! sql = "select * from provider p order by p.first_name, p.last_name ";
ResultSet rs = dbObj.queryResults(sql);
--- 65,74 ----
Properties propName = new Properties();
// select provider list
! if (isSiteAccessPrivacy) {
! sql = "select p.* from provider p INNER JOIN providersite s ON p.provider_no = s.provider_no WHERE s.site_id IN (SELECT site_id from providersite where provider_no=" + curUser_no + ") order by p.first_name, p.last_name";
! }
! else {
! sql = "select * from provider p order by p.first_name, p.last_name ";
! }
ResultSet rs = dbObj.queryResults(sql);
***************
*** 179,184 ****
if("*".equals(providerNo)) {
bAll = true;
! sql = "select * from log force index (datetime) where dateTime <= ?";
! sql += " and dateTime >= ? and content like '" + content + "' order by dateTime desc ";
}
rs = dbObj.queryResults(sql, params);
--- 194,207 ----
if("*".equals(providerNo)) {
bAll = true;
! if (isSiteAccessPrivacy) {
! sql = "select * from log force index (datetime) where dateTime <= ?";
! sql += " and dateTime >= ? and content like '" + content + "' ";
! sql += "and provider_no IN (SELECT provider_no FROM providersite WHERE site_id IN (SELECT site_id from providersite where provider_no= " + curUser_no +") )";
! sql += " order by dateTime desc ";
! }
! else {
! sql = "select * from log force index (datetime) where dateTime <= ?";
! sql += " and dateTime >= ? and content like '" + content + "' order by dateTime desc ";
! }
}
rs = dbObj.queryResults(sql, params);
Index: unLock.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/unLock.jsp,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** unLock.jsp 24 Nov 2010 04:10:03 -0000 1.10
--- unLock.jsp 30 Nov 2010 08:17:54 -0000 1.11
***************
*** 38,41 ****
--- 38,50 ----
<%
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
+
+ <%
String ip = request.getRemoteAddr();
String msg = "Unlock";
***************
*** 55,58 ****
--- 64,86 ----
}
}
+
+ //multi-office limit
+ if (isSiteAccessPrivacy && vec.size() > 0) {
+ DBHelp dbObj = new DBHelp();
+ String sqlString = "select user_name from security p inner join providersite s ON p.provider_no = s.provider_no WHERE s.site_id IN (SELECT site_id from providersite where provider_no=" + curUser_no + ")";
+
+ ResultSet rs = dbObj.searchDBRecord(sqlString);
+ List<String> userList = new ArrayList<String>();
+ if (rs.next()) {
+ userList.add(rs.getString(1));
+ }
+
+ for(int i=0; i<vec.size(); i++) {
+ if (!userList.contains((String)vec.get(i))) {
+ vec.remove((String)vec.get(i));
+ }
+ }
+ }
+
%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
Index: providerupdateprovider.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/providerupdateprovider.jsp,v
retrieving revision 1.34
retrieving revision 1.35
diff -C2 -d -r1.34 -r1.35
*** providerupdateprovider.jsp 24 Nov 2010 03:52:19 -0000 1.34
--- providerupdateprovider.jsp 30 Nov 2010 08:17:54 -0000 1.35
***************
*** 37,44 ****
--- 37,46 ----
*/
-->
+ <%@ taglib uri="/WEB-INF/security.tld" prefix="security"%>
<%@page import="org.oscarehr.common.dao.SiteDao"%>
<%@page import="org.springframework.web.context.support.WebApplicationContextUtils"%>
<%@page import="org.oscarehr.common.model.Site"%>
+ <%@page import="oscar.login.*"%>
<%@page import="org.oscarehr.PMmodule.dao.ProviderDao"%><html:html locale="true">
<head>
***************
*** 56,59 ****
--- 58,86 ----
</head>
+ <%
+ if(session.getAttribute("user") == null ) response.sendRedirect("../logout.jsp");
+ String curProvider_no = (String) session.getAttribute("user");
+
+ if(session.getAttribute("userrole") == null ) response.sendRedirect("../logout.jsp");
+ String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
+ List<Integer> siteIDs = new ArrayList<Integer>();
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%
+ isSiteAccessPrivacy=true;
+ DBHelp dbObj = new DBHelp();
+ String sqlString = "SELECT site_id from providersite where provider_no=" + curProvider_no;
+ ResultSet siters = dbObj.searchDBRecord(sqlString);
+
+ while (siters.next()) {
+ siteIDs.add(siters.getInt("site_id"));
+ }
+
+ siters.close();
+ %>
+ </security:oscarSec>
+
<body background="../images/gray_bg.jpg" bgproperties="fixed"
onLoad="setfocus()" topmargin="0" leftmargin="0" rightmargin="0">
***************
*** 119,123 ****
for (int i=0; i<sites.size(); i++) {
%>
! <input type="checkbox" name="sites" value="<%= sites.get(i).getSiteId() %>" <%= psites.contains(sites.get(i))?"checked='checked'":"" %>><%= sites.get(i).getName() %><br />
<%
}
--- 146,151 ----
for (int i=0; i<sites.size(); i++) {
%>
! <input type="checkbox" name="sites" value="<%= sites.get(i).getSiteId() %>" <%= psites.contains(sites.get(i))?"checked='checked'":"" %> <%=((!isSiteAccessPrivacy) || siteIDs.contains(sites.get(i).getSiteId()) ? "" : " disabled ") %>>
! <%= sites.get(i).getName() %><br />
<%
}
Index: provideraddarecord.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/provideraddarecord.jsp,v
retrieving revision 1.27
retrieving revision 1.28
diff -C2 -d -r1.27 -r1.28
*** provideraddarecord.jsp 8 Oct 2010 14:01:20 -0000 1.27
--- provideraddarecord.jsp 30 Nov 2010 08:17:54 -0000 1.28
***************
*** 3,6 ****
--- 3,11 ----
if(session.getAttribute("userrole") == null ) response.sendRedirect("../logout.jsp");
String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
+
+ if(session.getAttribute("user") == null ) response.sendRedirect("../logout.jsp");
+ String curProvider_no = (String) session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
%>
<security:oscarSec roleName="<%=roleName$%>"
***************
*** 10,13 ****
--- 15,22 ----
</security:oscarSec>
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
***************
*** 16,19 ****
--- 25,33 ----
<%@ page import="oscar.log.LogAction,oscar.log.LogConst"%>
<%@ page import="oscar.log.*, oscar.oscarDB.*"%>
+
+ <%@page import="org.oscarehr.common.dao.SiteDao"%>
+ <%@page import="org.springframework.web.context.support.WebApplicationContextUtils"%>
+ <%@page import="org.oscarehr.common.model.Site"%>
+
<%@ page
import="org.apache.commons.lang.StringEscapeUtils,oscar.oscarProvider.data.ProviderBillCenter,oscar.util.SqlUtils"%>
***************
*** 90,93 ****
--- 104,167 ----
param[20]=(String)session.getAttribute("user");
}
+
+ //multi-office provide id formalize check, can be turn off on properties multioffice.formalize.provider.id
+ boolean isProviderFormalize = true;
+ String errMsgProviderFormalize = "admin.provideraddrecord.msgAdditionFailure";
+ Integer min_value = 0;
+ Integer max_value = 0;
+
+ if (org.oscarehr.common.IsPropertiesOn.isProviderFormalizeEnable()) {
+
+ String StrProviderId = request.getParameter("provider_no");
+ OscarProperties props = OscarProperties.getInstance();
+
+ String[] provider_sites = {};
+
+ // get provider id ranger
+ if (request.getParameter("provider_type").equalsIgnoreCase("doctor")) {
+ //provider is doctor, get provider id range from Property
+ min_value = new Integer(props.getProperty("multioffice.formalize.doctor.minimum.provider.id", ""));
+ max_value = new Integer(props.getProperty("multioffice.formalize.doctor.maximum.provider.id", ""));
+ }
+ else {
+ //non-doctor role
+ provider_sites = request.getParameterValues("sites");
+ provider_sites = (provider_sites == null ? new String[] {} : provider_sites);
+
+ if (provider_sites.length > 1) {
+ //non-doctor can only have one site
+ isProviderFormalize = false;
+ errMsgProviderFormalize = "admin.provideraddrecord.msgFormalizeProviderIdMultiSiteFailure";
+ }
+ else {
+ if (provider_sites.length == 1) {
+ //get provider id range from site
+ String provider_site_id = provider_sites[0];
+ SiteDao siteDao = (SiteDao)WebApplicationContextUtils.getWebApplicationContext(application).getBean("siteDao");
+ Site provider_site = siteDao.getById(new Integer(provider_site_id));
+ min_value = provider_site.getProviderIdFrom();
+ max_value = provider_site.getProviderIdTo();
+ }
+ }
+ }
+ if (isProviderFormalize) {
+ try {
+ Integer providerId = Integer.parseInt(StrProviderId);
+ if (request.getParameter("provider_type").equalsIgnoreCase("doctor") || provider_sites.length == 1) {
+ if (!(providerId >= min_value && providerId <=max_value)) {
+ // providerId is not in the range
+ isProviderFormalize = false;
+ errMsgProviderFormalize = "admin.provideraddrecord.msgFormalizeProviderIdFailure";
+ }
+ }
+ } catch(NumberFormatException e) {
+ //providerId is not a number
+ isProviderFormalize = false;
+ errMsgProviderFormalize = "admin.provideraddrecord.msgFormalizeProviderIdFailure";
+ }
+ }
+ }
+
+ if (!org.oscarehr.common.IsPropertiesOn.isProviderFormalizeEnable() || isProviderFormalize) {
for(int i=0; i< param.length; i++)
{
***************
*** 158,161 ****
--- 232,245 ----
<%
}
+ }
+ else {
+ if (!isProviderFormalize) {
+ %>
+ <h1><bean:message key="<%=errMsgProviderFormalize%>" /> </h1>
+ Provider # range from : <%=min_value %> To : <%=max_value %>
+ <%
+ }
+ }
+ //apptMainBean.closePstmtConn();
%> <%@ include file="footer2htm.jsp"%></center>
Index: sitesAdminDetail.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/sitesAdminDetail.jsp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** sitesAdminDetail.jsp 15 May 2010 22:10:50 -0000 1.4
--- sitesAdminDetail.jsp 30 Nov 2010 08:17:54 -0000 1.5
***************
*** 102,105 ****
--- 102,109 ----
</nested:select></td></tr>
<tr><td>Postal Code:</td><td><nested:text property="site.postal"></nested:text></td></tr>
+ <% if (org.oscarehr.common.IsPropertiesOn.isProviderFormalizeEnable()) { %>
+ <tr><td>ProviderID From:</td><td><nested:text property="site.providerIdFrom"></nested:text></td></tr>
+ <tr><td>ProviderID To:</td><td><nested:text property="site.providerIdTo"></nested:text></td></tr>
+ <% } %>
</table>
Index: securitysearchresults.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/securitysearchresults.jsp,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** securitysearchresults.jsp 30 Jul 2010 02:32:32 -0000 1.12
--- securitysearchresults.jsp 30 Nov 2010 08:17:54 -0000 1.13
***************
*** 24,28 ****
*/
-->
!
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
--- 24,28 ----
*/
-->
! <%@ taglib uri="/WEB-INF/security.tld" prefix="security"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
***************
*** 61,64 ****
--- 61,76 ----
</script>
</head>
+
+ <%
+ if(session.getAttribute("userrole") == null ) response.sendRedirect("../logout.jsp");
+ String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
<body background="../images/gray_bg.jpg" bgproperties="fixed"
onLoad="setfocus()" topmargin="0" leftmargin="0" rightmargin="0">
***************
*** 89,94 ****
<td valign="middle" rowspan="2" ALIGN="left"><input type="text"
NAME="keyword" SIZE="17" MAXLENGTH="100"> <INPUT
! TYPE="hidden" NAME="orderby" VALUE="user_name"> <INPUT
! TYPE="hidden" NAME="dboperation" VALUE="security_search_titlename">
<INPUT TYPE="hidden" NAME="limit1" VALUE="0"> <INPUT
TYPE="hidden" NAME="limit2" VALUE="10"> <INPUT TYPE="hidden"
--- 101,114 ----
<td valign="middle" rowspan="2" ALIGN="left"><input type="text"
NAME="keyword" SIZE="17" MAXLENGTH="100"> <INPUT
! TYPE="hidden" NAME="orderby" VALUE="user_name">
! <%if (isSiteAccessPrivacy) {%>
! <INPUT TYPE="hidden" NAME="dboperation" VALUE="site_security_search_titlename">
! <%}
! else {
! %>
! <INPUT TYPE="hidden" NAME="dboperation" VALUE="security_search_titlename">
! <%
! }
! %>
<INPUT TYPE="hidden" NAME="limit1" VALUE="0"> <INPUT
TYPE="hidden" NAME="limit2" VALUE="10"> <INPUT TYPE="hidden"
Index: sitesAdmin.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/sitesAdmin.jsp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** sitesAdmin.jsp 15 May 2010 22:10:50 -0000 1.2
--- sitesAdmin.jsp 30 Nov 2010 08:17:54 -0000 1.3
***************
*** 87,91 ****
<display-el:column property="province" title="Province" />
<display-el:column property="postal" title="Postal Code" />
!
</display-el:table>
--- 87,94 ----
<display-el:column property="province" title="Province" />
<display-el:column property="postal" title="Postal Code" />
! <% if (org.oscarehr.common.IsPropertiesOn.isProviderFormalizeEnable()) { %>
! <display-el:column property="providerIdFrom" title="ProviderID From" />
! <display-el:column property="providerIdTo" title="ProviderID To" />
! <% } %>
</display-el:table>
Index: securitysearchrecordshtm.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/securitysearchrecordshtm.jsp,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** securitysearchrecordshtm.jsp 24 Nov 2010 03:52:19 -0000 1.9
--- securitysearchrecordshtm.jsp 30 Nov 2010 08:17:54 -0000 1.10
***************
*** 27,30 ****
--- 27,32 ----
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
+ <%@ taglib uri="/WEB-INF/security.tld" prefix="security"%>
+
<html:html locale="true">
<head>
***************
*** 62,65 ****
--- 64,78 ----
</table>
+ <%
+ if(session.getAttribute("userrole") == null ) response.sendRedirect("../logout.jsp");
+ String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
<table cellspacing="0" cellpadding="2" width="100%" border="0"
BGCOLOR="#C4D9E7">
***************
*** 81,86 ****
<td valign="middle" rowspan="2" ALIGN="left"><input type="text"
NAME="keyword" SIZE="17" MAXLENGTH="100"> <INPUT
! TYPE="hidden" NAME="orderby" VALUE="user_name"> <INPUT
! TYPE="hidden" NAME="dboperation" VALUE="security_search_titlename">
<INPUT TYPE="hidden" NAME="limit1" VALUE="0"> <INPUT
TYPE="hidden" NAME="limit2" VALUE="10"> <INPUT TYPE="hidden"
--- 94,107 ----
<td valign="middle" rowspan="2" ALIGN="left"><input type="text"
NAME="keyword" SIZE="17" MAXLENGTH="100"> <INPUT
! TYPE="hidden" NAME="orderby" VALUE="user_name">
! <%if (isSiteAccessPrivacy) {%>
! <INPUT TYPE="hidden" NAME="dboperation" VALUE="site_security_search_titlename">
! <%}
! else {
! %>
! <INPUT TYPE="hidden" NAME="dboperation" VALUE="security_search_titlename">
! <%
! }
! %>
<INPUT TYPE="hidden" NAME="limit1" VALUE="0"> <INPUT
TYPE="hidden" NAME="limit2" VALUE="10"> <INPUT TYPE="hidden"
Index: securityaddarecord.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/securityaddarecord.jsp,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** securityaddarecord.jsp 24 Nov 2010 03:52:19 -0000 1.23
--- securityaddarecord.jsp 30 Nov 2010 08:17:54 -0000 1.24
***************
*** 29,32 ****
--- 29,44 ----
</security:oscarSec>
+ <%
+ if(session.getAttribute("user") == null ) response.sendRedirect("../logout.jsp");
+ String curProvider_no = (String) session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
+
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
***************
*** 165,169 ****
<option value="">-- select one --</option>
<%
! List<Map> resultList = oscarSuperManager.find("adminDao", "provider_search_providerno", new Object[] {});
for (Map provider : resultList) {
%>
--- 177,189 ----
<option value="">-- select one --</option>
<%
! List<Map> resultList ;
! if (isSiteAccessPrivacy) {
! Object[] param =new Object[1];
! param[0] = curProvider_no;
! resultList = oscarSuperManager.find("adminDao", "site_provider_search_providerno", param);
! }
! else {
! resultList = oscarSuperManager.find("adminDao", "provider_search_providerno", new Object[] {});
! }
for (Map provider : resultList) {
%>
Index: providersearchrecordshtm.jsp
===================================================================
RCS file: /cvsroot/oscarmcmaster/oscar_mcmaster/web/admin/providersearchrecordshtm.jsp,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** providersearchrecordshtm.jsp 24 Nov 2010 03:52:19 -0000 1.12
--- providersearchrecordshtm.jsp 30 Nov 2010 08:17:54 -0000 1.13
***************
*** 27,30 ****
--- 27,46 ----
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
+ <%@ taglib uri="/WEB-INF/security.tld" prefix="security"%>
+
+ <%
+ if(session.getAttribute("user") == null ) response.sendRedirect("../logout.jsp");
+ String curProvider_no = (String) session.getAttribute("user");
+
+ if(session.getAttribute("userrole") == null ) response.sendRedirect("../logout.jsp");
+ String roleName$ = (String)session.getAttribute("userrole") + "," + (String) session.getAttribute("user");
+
+ boolean isSiteAccessPrivacy=false;
+ %>
+
+ <security:oscarSec objectName="_site_access_privacy" roleName="<%=roleName$%>" rights="r" reverse="false">
+ <%isSiteAccessPrivacy=true; %>
+ </security:oscarSec>
+
<html:html locale="true">
***************
*** 102,107 ****
<td valign="middle" rowspan="2" ALIGN="left"><input type="text"
NAME="keyword" SIZE="17" MAXLENGTH="100"> <INPUT
! TYPE="hidden" NAME="orderby" VALUE="last_name"> <INPUT
! TYPE="hidden" NAME="dboperation" VALUE="provider_search_titlename">
<INPUT TYPE="hidden" NAME="limit1" VALUE="0"> <INPUT
TYPE="hidden" NAME="limit2" VALUE="10"> <INPUT TYPE="hidden"
--- 118,132 ----
<td valign="middle" rowspan="2" ALIGN="left"><input type="text"
NAME="keyword" SIZE="17" MAXLENGTH="100"> <INPUT
! TYPE="hidden" NAME="orderby" VALUE="last_name">
! <%if (isSiteAccessPrivacy) {%>
! <INPUT TYPE="hidden" NAME="dboperation" VALUE="site_provider_search_titlename">
! <%}
! else {
! %>
! <INPUT TYPE="hidden" NAME="dboperation" VALUE="provider_search_titlename">
! <%
! }
! %>
!
<INPUT TYPE="hidden" NAME="limit1" VALUE="0"> <INPUT
TYPE="hidden" NAME="limit2" VALUE="10"> <INPUT TYPE="hidden"
|