001 /*
002 * Copyright 2007 The Kuali Foundation
003 *
004 * Licensed under the Educational Community License, Version 1.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.opensource.org/licenses/ecl1.php
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016 package edu.sampleu.travel.krad.controller;
017
018 import javax.servlet.http.HttpServletRequest;
019 import javax.servlet.http.HttpServletResponse;
020
021 import org.kuali.rice.krad.uif.UifParameters;
022 import org.kuali.rice.krad.util.GlobalVariables;
023 import org.kuali.rice.krad.web.controller.UifControllerBase;
024 import org.kuali.rice.krad.web.form.UifFormBase;
025 import org.springframework.stereotype.Controller;
026 import org.springframework.validation.BindingResult;
027 import org.springframework.web.bind.annotation.ModelAttribute;
028 import org.springframework.web.bind.annotation.RequestMapping;
029 import org.springframework.web.bind.annotation.RequestMethod;
030 import org.springframework.web.servlet.ModelAndView;
031
032 import edu.sampleu.travel.krad.form.UILayoutTestForm;
033
034 /**
035 * Controller for the Test UI Page
036 *
037 * @author Kuali Rice Team (rice.collab@kuali.org)
038 */
039 @Controller
040 @RequestMapping(value = "/uicomponents")
041 public class UIComponentsTestController extends UifControllerBase {
042
043 @Override
044 protected UILayoutTestForm createInitialForm(HttpServletRequest request) {
045 return new UILayoutTestForm();
046 }
047
048 @Override
049 @RequestMapping(params = "methodToCall=start")
050 public ModelAndView start(@ModelAttribute("KualiForm") UifFormBase form, BindingResult result,
051 HttpServletRequest request, HttpServletResponse response) {
052 UILayoutTestForm uiTestForm = (UILayoutTestForm) form;
053
054 return super.start(uiTestForm, result, request, response);
055 }
056
057 @RequestMapping(method = RequestMethod.POST, params = "methodToCall=save")
058 public ModelAndView save(@ModelAttribute("KualiForm") UILayoutTestForm uiTestForm, BindingResult result,
059 HttpServletRequest request, HttpServletResponse response) {
060
061 return getUIFModelAndView(uiTestForm, uiTestForm.getViewId(), "page2");
062 }
063
064 @RequestMapping(method = RequestMethod.POST, params = "methodToCall=close")
065 public ModelAndView close(@ModelAttribute("KualiForm") UILayoutTestForm uiTestForm, BindingResult result,
066 HttpServletRequest request, HttpServletResponse response) {
067
068 return getUIFModelAndView(uiTestForm, uiTestForm.getViewId(), "page1");
069 }
070
071 /**
072 * Handles menu navigation between view pages
073 */
074 @RequestMapping(method = RequestMethod.POST, params = "methodToCall=navigate")
075 public ModelAndView navigate(@ModelAttribute("KualiForm") UifFormBase form, BindingResult result,
076 HttpServletRequest request, HttpServletResponse response) {
077 String pageId = form.getActionParamaterValue(UifParameters.NAVIGATE_TO_PAGE_ID);
078
079 if(pageId.equals("uifpage7")){
080 GlobalVariables.getMessageMap().putError("gField1", "serverTestError");
081 GlobalVariables.getMessageMap().putError("gField1", "serverTestError2");
082 GlobalVariables.getMessageMap().putError("gField2", "serverTestError");
083 GlobalVariables.getMessageMap().putError("gField3", "serverTestError");
084 GlobalVariables.getMessageMap().putWarning("gField1", "serverTestWarning");
085 GlobalVariables.getMessageMap().putWarning("gField2", "serverTestWarning");
086 GlobalVariables.getMessageMap().putInfo("gField2", "serverTestInfo");
087 GlobalVariables.getMessageMap().putInfo("gField3", "serverTestInfo");
088 }
089 // only refreshing page
090 form.setRenderFullView(false);
091
092 return getUIFModelAndView(form, form.getViewId(), pageId);
093 }
094 }