changeset 142:df6ca03c4bf9 busy-msg-bean

try to set busy state e.g. while saving via bean property. does not work yet.
author Robert Casties <casties@mpiwg-berlin.mpg.de>
date Fri, 23 Jun 2017 18:28:10 +0200
parents ccbdf0893f50
children
files src/main/java/de/mpiwg/itgroup/ismi/entry/beans/AbstractBean.java src/main/java/de/mpiwg/itgroup/ismi/entry/beans/AbstractISMIBean.java src/main/java/de/mpiwg/itgroup/ismi/entry/beans/CurrentPersonBean.java src/main/java/de/mpiwg/itgroup/ismi/entry/beans/SessionBean.java src/main/webapp/templates/main_template.xhtml
diffstat 5 files changed, 57 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/main/java/de/mpiwg/itgroup/ismi/entry/beans/AbstractBean.java	Fri Jun 23 18:26:12 2017 +0200
+++ b/src/main/java/de/mpiwg/itgroup/ismi/entry/beans/AbstractBean.java	Fri Jun 23 18:28:10 2017 +0200
@@ -70,6 +70,10 @@
 		this.getSessionBean().addErrorMsg(msg);
 	}
 	
+	public void setBusyMsg(String msg) {
+		this.getSessionBean().setBusyMsg(msg);
+	}
+	
 	public void addException(Exception e){
 		this.getSessionBean().addErrorMsg("Internal error: " + e.getMessage());
 	}
--- a/src/main/java/de/mpiwg/itgroup/ismi/entry/beans/AbstractISMIBean.java	Fri Jun 23 18:26:12 2017 +0200
+++ b/src/main/java/de/mpiwg/itgroup/ismi/entry/beans/AbstractISMIBean.java	Fri Jun 23 18:28:10 2017 +0200
@@ -162,6 +162,9 @@
 	 * Add save confirmation to message.
 	 */
 	protected void printSuccessSavingEntity() {
+		// reset busy
+		this.setBusyMsg(null);
+		// set message
 		this.addGeneralMsg("The entity was successfully saved!");
 		this.addGeneralMsg("Its ID is " + this.entity.getId());
 	}
--- a/src/main/java/de/mpiwg/itgroup/ismi/entry/beans/CurrentPersonBean.java	Fri Jun 23 18:26:12 2017 +0200
+++ b/src/main/java/de/mpiwg/itgroup/ismi/entry/beans/CurrentPersonBean.java	Fri Jun 23 18:28:10 2017 +0200
@@ -252,9 +252,14 @@
 		try {
 			
 			long start = System.currentTimeMillis();
+			// set busy
+			setBusyMsg("Saving entity...");
 			
 			CheckResults cr = getCheckResults();
 			if (cr.hasErrors){
+				// reset busy
+				setBusyMsg(null);
+				// set error
 				getSessionBean().setErrorMessages(cr);
 				getSessionBean().setDisplayError(true);
 				return "SAVE_ERROR";
--- a/src/main/java/de/mpiwg/itgroup/ismi/entry/beans/SessionBean.java	Fri Jun 23 18:26:12 2017 +0200
+++ b/src/main/java/de/mpiwg/itgroup/ismi/entry/beans/SessionBean.java	Fri Jun 23 18:28:10 2017 +0200
@@ -330,6 +330,7 @@
 
 	private List<String> generalMsgList = new ArrayList<String>();
 	private List<String> errorMsgList = new ArrayList<String>();
+	private String busyMsg = "";
 
 	public List<String> getErrorMsgList() {
 		return errorMsgList;
@@ -363,6 +364,14 @@
 		}
 	}
 
+	public void setBusyMsg(String msg) {
+		this.busyMsg = msg;
+	}
+	
+	public String getBusyMsg() {
+		return this.busyMsg;
+	}
+	
 	public void actionCloseErrorMsgDialog(ActionEvent event) {
 		this.errorMsgList = new ArrayList<String>();
 	}
--- a/src/main/webapp/templates/main_template.xhtml	Fri Jun 23 18:26:12 2017 +0200
+++ b/src/main/webapp/templates/main_template.xhtml	Fri Jun 23 18:28:10 2017 +0200
@@ -19,11 +19,10 @@
 
 	<h:form>
 
-		<!-- Message -->
+		<!-- message box -->
 		<h:panelGrid id="msgPp">
 			<a4j:outputPanel ajaxRendered="true">
 
-
 				<h:panelGroup rendered="#{!empty Session.generalMsgList}">
 					<div style="z-index: 100;" class="rf-pp-shade">
 						<button class="rf-pp-btn" tabindex="-1" accesskey="" />
@@ -55,10 +54,11 @@
 					</h:panelGrid>
 
 				</h:panelGroup>
+
 			</a4j:outputPanel>
 		</h:panelGrid>
 
-		<!-- Message -->
+		<!-- error message box -->
 		<h:panelGrid id="errorMsgPp">
 			<a4j:outputPanel ajaxRendered="true">
 				<h:panelGroup rendered="#{!empty Session.errorMsgList}">
@@ -93,6 +93,39 @@
 			</a4j:outputPanel>
 		</h:panelGrid>
 
+        <!-- busy box -->
+        <h:panelGrid id="msgBusy">
+            <a4j:outputPanel ajaxRendered="true">
+
+                <h:panelGroup rendered="#{!empty Session.busyMsg}">
+                    <div style="z-index: 100;" class="rf-pp-shade">
+                        <button class="rf-pp-btn" tabindex="-1" accesskey="" />
+                    </div>
+
+                    <h:panelGrid columns="1" styleClass="ismi-pp-cntr">
+
+                        <div class="ismi-pp-hdr">
+                            <div class="ismi-pp-hdr-cnt">Message</div>
+                        </div>
+
+                        <h:panelGrid columns="1" styleClass="ismi-pp-main-panel">
+                            <h:panelGrid columns="2">
+                                <h:graphicImage url="/resources/images/info_32.png" />
+                                <h:panelGrid style="text-align:left">
+                                  <h:outputText value="#{Session.busyMsg}" />
+                                </h:panelGrid>
+                            </h:panelGrid>
+                        </h:panelGrid>
+
+                    </h:panelGrid>
+
+                </h:panelGroup>
+
+            </a4j:outputPanel>
+        </h:panelGrid>
+
+
+        <!-- page header -->
 		<div id="header">
 
 			<div id="icon">