/* * OpenClinica is distributed under the * GNU Lesser General Public License (GNU LGPL). * For details see: http://www.openclinica.org/license * copyright 2003-2005 Akaza Research */ package org.akaza.openclinica.control.rule; import org.akaza.openclinica.bean.core.Role; import org.akaza.openclinica.bean.rule.RuleExecutionBusinessObject; import org.akaza.openclinica.control.core.SecureController; import org.akaza.openclinica.i18n.core.LocaleResolver; import org.akaza.openclinica.view.Page; import org.akaza.openclinica.web.InsufficientPermissionException; import java.util.Locale; /** * Execute a Cross Edit Check * * @author Krikor Krumlian * */ public class ExecuteCrossEditCheckServlet extends SecureController { Locale locale; public static final String DIS_TYPES = "discrepancyTypes"; public static final String RES_STATUSES = "resolutionStatuses"; public static final String ENTITY_ID = "id"; public static final String PARENT_ID = "parentId";// parent note id public static final String ENTITY_TYPE = "name"; public static final String ENTITY_COLUMN = "column"; public static final String ENTITY_FIELD = "field"; public static final String FORM_DISCREPANCY_NOTES_NAME = "fdnotes"; public static final String DIS_NOTE = "discrepancyNote"; public static final String WRITE_TO_DB = "writeToDB"; public static final String PRESET_RES_STATUS = "strResStatus"; /* * (non-Javadoc) * * @see org.akaza.openclinica.control.core.SecureController#mayProceed() */ @Override public void mayProceed() throws InsufficientPermissionException { locale = LocaleResolver.getLocale(request); if (ub.isSysAdmin()) { return; } Role r = currentRole.getRole(); if (r.equals(Role.STUDYDIRECTOR) || r.equals(Role.COORDINATOR) || r.equals(Role.INVESTIGATOR) || r.equals(Role.RESEARCHASSISTANT) || r.equals(Role.RESEARCHASSISTANT2)) { return; } addPageMessage(respage.getString("no_have_correct_privilege_current_study") + respage.getString("change_study_contact_sysadmin")); throw new InsufficientPermissionException(Page.MENU_SERVLET, resexception.getString("may_not_submit_data"), "1"); } @Override protected void processRequest() throws Exception { // FormProcessor fp = new FormProcessor(request); String eventCrfId = request.getParameter("eventCrfId"); RuleExecutionBusinessObject ruleExecutionBusinessObject = new RuleExecutionBusinessObject(sm, currentStudy, ub); ruleExecutionBusinessObject.runRule(Integer.parseInt(eventCrfId)); // forwardPage(Page.SUBMIT_DATA_SERVLET); forwardPage(Page.LIST_STUDY_SUBJECTS_SERVLET); // >> changed tbh, 06/2009 } }