use of org.akaza.openclinica.view.Page in project OpenClinica by OpenClinica.
the class AdministrativeEditingServlet method getServletPage.
// < ResourceBundleresexception,respage;
/*
* (non-Javadoc)
*
* @see
* org.akaza.openclinica.control.submit.DataEntryServlet#getServletPage()
*/
@Override
protected String getServletPage(HttpServletRequest request) {
FormProcessor fp = new FormProcessor(request);
String tabId = fp.getString("tab", true);
String sectionId = fp.getString(DataEntryServlet.INPUT_SECTION_ID, true);
String eventCRFId = fp.getString(INPUT_EVENT_CRF_ID, true);
if (StringUtil.isBlank(sectionId) || StringUtil.isBlank(tabId)) {
return Page.ADMIN_EDIT_SERVLET.getFileName();
} else {
Page target = Page.ADMIN_EDIT_SERVLET;
String s = target.getFileName().trim();
String url = null;
if (s.contains("?")) {
String[] t = s.split("\\?");
String x = "";
String y = t[0] + "?";
if (t.length > 1) {
if (t[1].contains("&")) {
String[] ts = t[1].split("&");
for (int i = 0; i < ts.length; ++i) {
if (ts[i].contains("eventCRFId=")) {
ts[i] = "eventCRFId=" + eventCRFId;
x += "e";
} else if (ts[i].contains("sectionId=")) {
ts[i] = "sectionId=" + sectionId;
x += "s";
} else if (ts[i].contains("tab=")) {
ts[i] = "tab=" + tabId;
x += "t";
}
y += ts[i] + "&";
}
} else {
if (t[1].contains("eventCRFId=")) {
t[1] = "eventCRFId=" + eventCRFId;
x += "e";
} else if (t[1].contains("sectionId=")) {
t[1] = "sectionId=" + sectionId;
x += "s";
} else if (t[1].contains("tab=")) {
t[1] = "tab=" + tabId;
x += "t";
}
y += t[1] + "&";
}
if (x.length() < 3) {
if (!x.contains("e")) {
y += "eventCRFId=" + eventCRFId + "&";
}
if (!x.contains("s")) {
y += "sectionId=" + sectionId + "&";
}
if (!x.contains("t")) {
y += "tab=" + tabId + "&";
}
}
y = y.substring(0, y.length() - 1);
//target.setFileName(y);
url = y;
} else {
LOGGER.info("It's a wrong servlet page:" + s);
}
} else {
//target.setFileName(target.getFileName() + "?eventCRFId=" + eventCRFId + "§ionId=" + sectionId + "&tab=" + tabId);
url = target.getFileName() + "?eventCRFId=" + eventCRFId + "§ionId=" + sectionId + "&tab=" + tabId;
}
//target.setFileName(target.getFileName() + "?eventCRFId=" + eventCRFId + "§ionId=" + sectionId + "&tab=" + tabId);
return url;
}
}
use of org.akaza.openclinica.view.Page in project OpenClinica by OpenClinica.
the class ShowFileServlet method processRequest.
@Override
public void processRequest() throws Exception {
FormProcessor fp = new FormProcessor(request);
int fileId = fp.getInt("fileId");
int dsId = fp.getInt("datasetId");
DatasetDAO dsdao = new DatasetDAO(sm.getDataSource());
DatasetBean db = (DatasetBean) dsdao.findByPK(dsId);
ArchivedDatasetFileDAO asdfdao = new ArchivedDatasetFileDAO(sm.getDataSource());
ArchivedDatasetFileBean asdfBean = (ArchivedDatasetFileBean) asdfdao.findByPK(fileId);
ArrayList newFileList = new ArrayList();
newFileList.add(asdfBean);
// request.setAttribute("filelist",newFileList);
ArrayList filterRows = ArchivedDatasetFileRow.generateRowsFromBeans(newFileList);
EntityBeanTable table = fp.getEntityBeanTable();
String[] columns = { resword.getString("file_name"), resword.getString("run_time"), resword.getString("file_size"), resword.getString("created_date"), resword.getString("created_by") };
table.setColumns(new ArrayList(Arrays.asList(columns)));
table.hideColumnLink(0);
table.hideColumnLink(1);
table.hideColumnLink(2);
table.hideColumnLink(3);
table.hideColumnLink(4);
// table.setQuery("ExportDataset?datasetId=" +db.getId(), new
// HashMap());
// trying to continue...
// session.setAttribute("newDataset",db);
request.setAttribute("dataset", db);
request.setAttribute("file", asdfBean);
table.setRows(filterRows);
table.computeDisplay();
request.setAttribute("table", table);
Page finalTarget = Page.EXPORT_DATA_CUSTOM;
finalTarget.setFileName("/WEB-INF/jsp/extract/generateMetadataFile.jsp");
forwardPage(finalTarget);
}
use of org.akaza.openclinica.view.Page in project OpenClinica by OpenClinica.
the class ResolveDiscrepancyServlet method processRequest.
/*
* (non-Javadoc)
*
* @see org.akaza.openclinica.control.core.SecureController#processRequest()
*/
@Override
protected void processRequest() throws Exception {
FormProcessor fp = new FormProcessor(request);
int noteId = fp.getInt(INPUT_NOTE_ID);
String module = (String) session.getAttribute("module");
StudySubjectDAO studySubjectDAO = new StudySubjectDAO(sm.getDataSource());
DiscrepancyNoteDAO dndao = new DiscrepancyNoteDAO(sm.getDataSource());
dndao.setFetchMapping(true);
// check that the note exists
DiscrepancyNoteBean discrepancyNoteBean = (DiscrepancyNoteBean) dndao.findByPK(noteId);
if (!discrepancyNoteBean.isActive()) {
throw new InconsistentStateException(Page.MANAGE_STUDY_SERVLET, resexception.getString("you_are_trying_resolve_discrepancy_not_exist"));
}
// check that the note has not already been closed
ArrayList children = dndao.findAllByParent(discrepancyNoteBean);
discrepancyNoteBean.setChildren(children);
// This logic has been reverted, issue-7459
// if (parentNoteIsClosed(discrepancyNoteBean)) {
// throw new InconsistentStateException(Page.VIEW_DISCREPANCY_NOTES_IN_STUDY_SERVLET, respage
// .getString("the_discrepancy_choose_has_been_closed_resolved_create_new"));
// }
// all clear, send the user to the resolved screen
String entityType = discrepancyNoteBean.getEntityType().toLowerCase();
discrepancyNoteBean.setResStatus(ResolutionStatus.get(discrepancyNoteBean.getResolutionStatusId()));
discrepancyNoteBean.setDisType(DiscrepancyNoteType.get(discrepancyNoteBean.getDiscrepancyNoteTypeId()));
// View Study Events <<
if (currentRole.getRole().equals(Role.MONITOR) && !"itemdata".equalsIgnoreCase(entityType) && !"eventcrf".equalsIgnoreCase(entityType)) {
redirectMonitor(module, discrepancyNoteBean);
return;
}
// If Study is Frozen or Locked
if (currentStudy.getStatus().isFrozen() && !"itemdata".equalsIgnoreCase(entityType) && !"eventcrf".equalsIgnoreCase(entityType)) {
redirectMonitor(module, discrepancyNoteBean);
return;
}
boolean toView = false;
boolean isCompleted = false;
if ("itemdata".equalsIgnoreCase(entityType)) {
ItemDataDAO iddao = new ItemDataDAO(sm.getDataSource());
ItemDataBean idb = (ItemDataBean) iddao.findByPK(discrepancyNoteBean.getEntityId());
EventCRFDAO ecdao = new EventCRFDAO(sm.getDataSource());
EventCRFBean ecb = (EventCRFBean) ecdao.findByPK(idb.getEventCRFId());
StudySubjectBean studySubjectBean = (StudySubjectBean) studySubjectDAO.findByPK(ecb.getStudySubjectId());
discrepancyNoteBean.setSubjectId(studySubjectBean.getId());
discrepancyNoteBean.setItemId(idb.getItemId());
if (ecb.getStatus().equals(Status.UNAVAILABLE)) {
isCompleted = true;
}
// we want to go to view note page if the note is
toView = true;
// for item data
}
// logger.info("set up pop up url: " + createNoteURL);
// System.out.println("set up pop up url: " + createNoteURL);
boolean goNext = prepareRequestForResolution(request, sm.getDataSource(), currentStudy, discrepancyNoteBean, isCompleted);
Page p = getPageForForwarding(discrepancyNoteBean, isCompleted);
// logger.info("found page for forwarding: " + p.getFileName());
if (p == null) {
throw new InconsistentStateException(Page.VIEW_DISCREPANCY_NOTES_IN_STUDY_SERVLET, resexception.getString("the_discrepancy_note_triying_resolve_has_invalid_type"));
} else {
if (p.getFileName().contains("?")) {
if (!p.getFileName().contains("fromViewNotes=1")) {
p.setFileName(p.getFileName() + "&fromViewNotes=1");
}
} else {
p.setFileName(p.getFileName() + "?fromViewNotes=1");
}
String createNoteURL = CreateDiscrepancyNoteServlet.getAddChildURL(discrepancyNoteBean, ResolutionStatus.CLOSED, true);
setPopUpURL(createNoteURL);
}
if (!goNext) {
setPopUpURL("");
addPageMessage(respage.getString("you_may_not_perform_admin_edit_on_CRF_not_completed_by_user"));
p = Page.VIEW_DISCREPANCY_NOTES_IN_STUDY_SERVLET;
}
forwardPage(p);
}
use of org.akaza.openclinica.view.Page in project OpenClinica by OpenClinica.
the class DoubleDataEntryServlet method getServletPage.
/*
* (non-Javadoc)
*
* @see
* org.akaza.openclinica.control.submit.DataEntryServlet#getServletPage()
*/
@Override
protected String getServletPage(HttpServletRequest request) {
FormProcessor fp = new FormProcessor(request);
String tabId = fp.getString("tab", true);
String sectionId = fp.getString(DataEntryServlet.INPUT_SECTION_ID, true);
String eventCRFId = fp.getString(INPUT_EVENT_CRF_ID, true);
if (StringUtil.isBlank(sectionId) || StringUtil.isBlank(tabId)) {
return Page.DOUBLE_DATA_ENTRY_SERVLET.getFileName();
} else {
Page target = Page.DOUBLE_DATA_ENTRY_SERVLET;
return target.getFileName() + "?eventCRFId=" + eventCRFId + "§ionId=" + sectionId + "&tab=" + tabId;
// return target;
}
}
use of org.akaza.openclinica.view.Page in project OpenClinica by OpenClinica.
the class SecureController method forwardPage.
/**
* <P>
* Forwards to a jsp page. Additions to the forwardPage() method involve checking the session for the bread crumb trail
* and setting it, if necessary. Setting it here allows the developer to only have to update the
* <code>BreadcrumbTrail</code> class.
*
* @param jspPage The page to go to.
* @param checkTrail The command to check for, and set a trail in the session.
*/
protected void forwardPage(Page jspPage, boolean checkTrail) {
Page page1 = Page.valueOf(jspPage.name());
String temp;
// YW 10-03-2007 <<
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Pragma", "no-cache");
response.setDateHeader("Expires", -1);
response.setHeader("Cache-Control", "no-store");
if (request.getAttribute(POP_UP_URL) == null) {
request.setAttribute(POP_UP_URL, "");
}
try {
// Added 01/19/2005 for breadcrumbs, tbh
if (checkTrail) {
BreadcrumbTrail bt = new BreadcrumbTrail();
if (session != null) {
// added bu jxu, fixed bug for log out
/* ArrayList trail = (ArrayList) session.getAttribute("trail");
if (trail == null) {
trail = bt.generateTrail(jspPage, request);
} else {
bt.setTrail(trail);
trail = bt.generateTrail(jspPage, request);
}
session.setAttribute("trail", trail);*/
panel = (StudyInfoPanel) session.getAttribute(STUDY_INFO_PANEL);
if (panel == null) {
panel = new StudyInfoPanel();
panel.setData(jspPage, session, request);
} else {
panel.setData(jspPage, session, request);
}
session.setAttribute(STUDY_INFO_PANEL, panel);
}
// we are also using checkTrail to update the panel, tbh
// 01/31/2005
}
temp = page1.getFileName();
// above added 01/19/2005, tbh
context.getRequestDispatcher(temp).forward(request, response);
} catch (Exception se) {
/* if ("View Notes".equals(jspPage.getTitle())) {
String viewNotesURL = jspPage.getFileName();
if (viewNotesURL != null && viewNotesURL.contains("listNotes_p_=")) {
String[] ps = viewNotesURL.split("listNotes_p_=");
String t = ps[1].split("&")[0];
int p = t.length() > 0 ? Integer.valueOf(t).intValue() : -1;
if (p > 1) {
viewNotesURL = viewNotesURL.replace("listNotes_p_=" + p, "listNotes_p_=" + (p - 1));
//forwardPage(Page.setNewPage(viewNotesURL, "View Notes"));
try {
getServletContext().getRequestDispatcher(viewNotesURL).forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else if (p <= 0) {
forwardPage(Page.VIEW_DISCREPANCY_NOTES_IN_STUDY);
}
}
}
*/
logger.error(se.getMessage(), se);
} finally {
page1 = null;
jspPage = null;
temp = null;
}
}
Aggregations