/* * 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.admin; import org.akaza.openclinica.control.core.SecureController; import org.akaza.openclinica.dao.admin.CRFDAO; import org.akaza.openclinica.dao.login.UserAccountDAO; import org.akaza.openclinica.dao.managestudy.StudyDAO; import org.akaza.openclinica.dao.submit.SubjectDAO; import org.akaza.openclinica.i18n.core.LocaleResolver; import org.akaza.openclinica.view.Page; import org.akaza.openclinica.web.InsufficientPermissionException; import java.util.ArrayList; import java.util.Locale; /** * @author ssachs * * TODO To change the template for this generated type comment go to Window - * Preferences - Java - Code Style - Code Templates */ public class AdminSystemServlet extends SecureController { Locale locale; // < ResourceBundleresword,resexception; /* * (non-Javadoc) * * @see org.akaza.openclinica.control.core.SecureController#processRequest() */ @Override protected void processRequest() throws Exception { // find last 5 modifed studies StudyDAO sdao = new StudyDAO(sm.getDataSource()); ArrayList studies = (ArrayList) sdao.findAllByLimit(true); request.setAttribute("studies", studies); ArrayList allStudies = (ArrayList) sdao.findAll(); request.setAttribute("allStudyNumber", new Integer(allStudies.size())); UserAccountDAO udao = new UserAccountDAO(sm.getDataSource()); ArrayList users = (ArrayList) udao.findAllByLimit(true); request.setAttribute("users", users); ArrayList allUsers = (ArrayList) udao.findAll(); request.setAttribute("allUserNumber", new Integer(allUsers.size())); SubjectDAO subdao = new SubjectDAO(sm.getDataSource()); ArrayList subjects = (ArrayList) subdao.findAllByLimit(true); request.setAttribute("subjects", subjects); ArrayList allSubjects = (ArrayList) subdao.findAll(); request.setAttribute("allSubjectNumber", new Integer(allSubjects.size())); CRFDAO cdao = new CRFDAO(sm.getDataSource()); ArrayList crfs = (ArrayList) cdao.findAllByLimit(true); request.setAttribute("crfs", crfs); ArrayList allCrfs = (ArrayList) cdao.findAll(); request.setAttribute("allCrfNumber", new Integer(allCrfs.size())); resetPanel(); panel.setOrderedData(true); setToPanel(resword.getString("in_the_application"), ""); if (allSubjects.size() > 0) { setToPanel(resword.getString("subjects"), new Integer(allSubjects.size()).toString()); } if (allUsers.size() > 0) { setToPanel(resword.getString("users"), new Integer(allUsers.size()).toString()); } if (allStudies.size() > 0) { setToPanel(resword.getString("studies"), new Integer(allStudies.size()).toString()); } if (allCrfs.size() > 0) { setToPanel(resword.getString("CRFs"), new Integer(allCrfs.size()).toString()); } panel.setStudyInfoShown(false); forwardPage(Page.ADMIN_SYSTEM); } /* * (non-Javadoc) * * @see org.akaza.openclinica.control.core.SecureController#mayProceed() */ @Override protected void mayProceed() throws InsufficientPermissionException { locale = LocaleResolver.getLocale(request); // < resword = // ResourceBundle.getBundle("org.akaza.openclinica.i18n.words",locale); // < // resexception=ResourceBundle.getBundle("org.akaza.openclinica.i18n.exceptions",locale); if (!ub.isSysAdmin()) { throw new InsufficientPermissionException(Page.MENU, "You may not perform administrative functions", "1"); } return; } @Override protected String getAdminServlet() { return SecureController.ADMIN_SERVLET_CODE; } }