myfaces-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ima...@apache.org
Subject svn commit: r528425 - in /myfaces/tomahawk/trunk/sandbox: core/src/main/java/org/apache/myfaces/custom/dialog/ core/src/main/java/org/apache/myfaces/custom/submitOnEvent/ core/src/main/resources/org/apache/myfaces/custom/dialog/ core/src/main/resources...
Date Fri, 13 Apr 2007 10:17:24 GMT
Author: imario
Date: Fri Apr 13 03:17:22 2007
New Revision: 528425

URL: http://svn.apache.org/viewvc?view=rev&rev=528425
Log:
fixed some minor bugs in ModalDialog.
enhanced ModalDialog to allow embedding another view (via iframe), this includes a window-style
title area with close button.
enhanced SubmitOnEvent to being able to acto on dialog dismiss if _myfaces_ok is set to true

Added:
    myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/
    myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/
    myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/close.gif
  (with props)
    myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/modalDialog.css
  (with props)
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialogView.jsp
      - copied, changed from r527095, myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialog.jsp
Modified:
    myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialog.java
    myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialogRenderer.java
    myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialogTag.java
    myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/submitOnEvent/SubmitOnEventRenderer.java
    myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/submitOnEvent/resource/submitOnEvent.js
    myfaces/tomahawk/trunk/sandbox/core/src/main/tld/myfaces_sandbox.tld
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialog.jsp

Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialog.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialog.java?view=diff&rev=528425&r1=528424&r2=528425
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialog.java
(original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialog.java
Fri Apr 13 03:17:22 2007
@@ -19,12 +19,12 @@
 
 package org.apache.myfaces.custom.dialog;
 
+import org.apache.myfaces.custom.dojo.DojoWidget;
+
 import javax.faces.component.UIPanel;
 import javax.faces.context.FacesContext;
 import javax.faces.el.ValueBinding;
 
-import org.apache.myfaces.custom.dojo.DojoWidget;
-
 public class ModalDialog extends UIPanel implements DojoWidget {
 
     public static final String COMPONENT_TYPE = "org.apache.myfaces.ModalDialog";
@@ -36,24 +36,29 @@
 
     private String _style;
     private String _styleClass;
-    
-     private String _widgetId = null;
- 
-     public String getDialogAttr() {
+
+    private String _widgetId = null;
+
+	private String _viewId;
+
+	private String _dialogTitle;
+	private Boolean _closeButton;
+
+	public String getDialogAttr() {
         if(_dialogAttr != null)
             return _dialogAttr;
         ValueBinding vb = getValueBinding("dialogAttr");
         return vb != null ? (String)vb.getValue(getFacesContext()) :null;
 	}
 
-    public String getDialogId() {
+	public String getDialogId() {
         if(_dialogId != null)
             return _dialogId;
         ValueBinding vb = getValueBinding("dialogId");
         return vb != null ? (String)vb.getValue(getFacesContext()) :null;
 	}
- 
-    
+
+
     public String getDialogVar() {
         if(_dialogVar != null)
             return _dialogVar;
@@ -68,6 +73,13 @@
         return vb != null ? (String)vb.getValue(getFacesContext()) :null;
 	}
 
+	public String getViewId() {
+        if(_viewId != null)
+            return _viewId;
+        ValueBinding vb = getValueBinding("viewId");
+        return vb != null ? (String)vb.getValue(getFacesContext()) :null;
+	}
+
 	//@Override
 	public boolean getRendersChildren() {
     	return true;
@@ -94,6 +106,21 @@
         return vb != null ? (String)vb.getValue(getFacesContext()) : null;
     }
 
+	public String getDialogTitle()
+    {
+        if (_dialogTitle != null) return _dialogTitle;
+        ValueBinding vb = getValueBinding("dialogTitle");
+        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
+    }
+
+	public boolean getCloseButton()
+    {
+        if (_closeButton != null) return _closeButton.booleanValue();
+
+		ValueBinding vb = getValueBinding("closeButton");
+        return vb != null ? Boolean.TRUE.equals(vb.getValue(getFacesContext())) : false;
+    }
+
 	public String getWidgetVar() {
         return getDialogVar();
     }
@@ -110,22 +137,28 @@
         ////restorestate widgetId begin
         _widgetId = (String)values[7];
         ////restorestate widgetId end
-
-    }
+		_viewId = (String) values[8];
+		_dialogTitle = (String) values[9];
+		_closeButton = (Boolean) values[10];
+	}
 
 	public Object saveState(FacesContext facesContext) {
-        Object[] values = new Object[8];
-        values[0] = super.saveState(facesContext);
-        values[1] = _dialogVar;
-        values[2] = _dialogId;
-        values[3] = _dialogAttr;
-        values[4] = _hiderIds;
-        values[5] = _style;
-        values[6] = _styleClass;
-        ////savestate widgetId begin
-        values[7] = _widgetId;
-        ////savestate widgetId end
-        return values;
+        return new Object[]
+		{
+			super.saveState(facesContext),
+			_dialogVar,
+			_dialogId,
+			_dialogAttr,
+			_hiderIds,
+			_style,
+			_styleClass,
+			////savestate widgetId begin
+			_widgetId,
+			////savestate widgetId end
+			_viewId,
+			_dialogTitle,
+			_closeButton
+		};
     }
 
     public void setDialogAttr(String dialogAttr) {
@@ -157,7 +190,22 @@
         _widgetId = widgetId;
     }
 
-    public void setWidgetVar(String widgetVar) {
+	public void setViewId(String viewId)
+	{
+		this._viewId = viewId;
+	}
+
+	public void setDialogTitle(String dialogTitle)
+	{
+		this._dialogTitle = dialogTitle;
+	}
+
+	public void setCloseButton(boolean closeButton)
+	{
+		this._closeButton = closeButton?Boolean.TRUE:Boolean.FALSE;
+	}
+
+	public void setWidgetVar(String widgetVar) {
        setDialogVar(widgetVar);
     }
 }

Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialogRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialogRenderer.java?view=diff&rev=528425&r1=528424&r2=528425
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialogRenderer.java
(original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialogRenderer.java
Fri Apr 13 03:17:22 2007
@@ -19,19 +19,24 @@
 
 package org.apache.myfaces.custom.dialog;
 
-import java.io.IOException;
-import java.util.StringTokenizer;
-
-import javax.faces.component.UIComponent;
-import javax.faces.context.FacesContext;
-import javax.faces.context.ResponseWriter;
-
 import org.apache.myfaces.custom.dojo.DojoUtils;
+import org.apache.myfaces.renderkit.html.util.AddResource;
+import org.apache.myfaces.renderkit.html.util.AddResourceFactory;
 import org.apache.myfaces.shared_tomahawk.renderkit.JSFAttr;
 import org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils;
+import org.apache.myfaces.shared_tomahawk.renderkit.html.HTML;
 import org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlRenderer;
 import org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlRendererUtils;
 
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.context.ResponseWriter;
+import java.io.IOException;
+import java.util.StringTokenizer;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Arrays;
+
 public class ModalDialogRenderer extends HtmlRenderer {
     public static final String RENDERER_TYPE = "org.apache.myfaces.ModalDialog";
 
@@ -45,28 +50,46 @@
                                  DojoUtils.getDjConfigInstance(context));
         DojoUtils.addRequire(context, component, "dojo.widget.Dialog");
 
-        writeModalDialogBegin((ModalDialog) component, context.getResponseWriter());
+        writeModalDialogBegin(context, (ModalDialog) component, context.getResponseWriter());
     }
 
     //@Override
     public void encodeEnd(FacesContext context, UIComponent component) throws IOException
{
-        StringBuffer buf = new StringBuffer();
+		ModalDialog dlg = (ModalDialog) component;
+
+		StringBuffer buf = new StringBuffer();
 
         buf.append("</div>");
 
-        context.getResponseWriter().write(buf.toString());
+		writeDialogLoader(context, dlg, buf);
+
+		context.getResponseWriter().write(buf.toString());
+
+		if (dlg.getViewId() != null)
+		{
+			RendererUtils.renderChildren(context, component);
+        	HtmlRendererUtils.writePrettyLineSeparator(context);
+		}
     }
 
-    private void appendHiderIds(StringBuffer buf, ModalDialog dlg) {
-        String[] hiders = null;
-        if (dlg.getHiderIds() != null) {
-            hiders = dlg.getHiderIds().split(",");
+    private void appendHiderIds(StringBuffer buf, ModalDialog dlg)
+	{
+		List hiders = new ArrayList();
+
+		if (dlg.getHiderIds() != null)
+		{
+            hiders.addAll(Arrays.asList(dlg.getHiderIds().split(",")));
         }
+		if (dlg.getCloseButton() && dlg.getDialogTitle() != null)
+		{
+			hiders.add(dlg.getDialogVar() + "Closer");
+		}
 
-        for (int i = 0; i < hiders.length; i++) {
+		for (int i = 0; i < hiders.size(); i++)
+		{
             String varName = "btn" + i;
             buf.append("var ").append(varName).append(" = document.getElementById(\"")
-            .append(hiders[i].trim()).append("\");")
+            .append(((String) hiders.get(i)).trim()).append("\");")
             .append(dlg.getDialogVar()).append(".setCloseControl(").append(varName).append(");");
         }
     }
@@ -87,33 +110,16 @@
             catch(NumberFormatException e) {
                 value = new StringBuffer("\"").append(value).append("\"").toString();
             }
-            buf.append(attribute).append(":").append(value).append(", ");
+            buf.append(", ").append(attribute).append(":").append(value);
         }
-        buf.setLength(buf.length() - 2);
     }
 
-    private void writeModalDialogBegin(ModalDialog dlg, ResponseWriter writer) throws IOException
{
+    private void writeModalDialogBegin(FacesContext context, ModalDialog dlg, ResponseWriter
writer) throws IOException {
         StringBuffer buf = new StringBuffer();
-        buf.append("<script type=\"text/javascript\">")
-        .append("var ").append(dlg.getDialogVar()).append(";")
-        .append("function "+dlg.getDialogVar()+"_loader(e) {").append(dlg.getDialogVar())
-        .append(" = dojo.widget.createWidget(\"dialog\", {id:")
-        .append("\"").append(dlg.getDialogId()).append("\", ");
-
-        appendDialogAttributes(buf, dlg);
-
-        String dlgId = dlg.getId() != null ?
-                       dlg.getId() :
-                       new StringBuffer(dlg.getDialogId()).append(DIV_ID_PREFIX).toString();
-        buf.append("}, dojo.byId(\"")
-        .append(dlgId).append("\"));");
 
-        appendHiderIds(buf, dlg);
-
-        buf.append("}")
-        .append("setTimeout('"+dlg.getDialogVar()+"_loader();',500);")
-        .append("</script>");
+		// writeDialogLoader(context, dlg, buf);
 
+		String dlgId = getDialogId(dlg);
         buf.append("<div id=\"").append(dlgId).append("\"");
         if(dlg.getStyle() != null)
             buf.append(" style=\"").append(dlg.getStyle()).append("\"");
@@ -123,8 +129,72 @@
 
         writer.write(buf.toString());
     }
-    
-    public boolean getRendersChildren()
+
+	private String getDialogId(ModalDialog dlg)
+	{
+		String dlgId = dlg.getId() != null ?
+					   dlg.getId() :
+					   new StringBuffer(dlg.getDialogId()).append(DIV_ID_PREFIX).toString();
+		return dlgId;
+	}
+
+	private String writeDialogLoader(FacesContext context, ModalDialog dlg, StringBuffer buf)
+	{
+		String dlgId = getDialogId(dlg);
+		buf.append("<script type=\"text/javascript\">")
+        .append("var ").append(dlg.getDialogVar()).append(";")
+        .append("function "+dlg.getDialogVar()+"_loader(e) {").append(dlg.getDialogVar())
+        .append(" = dojo.widget.createWidget(\"dialog\", {id:")
+        .append("\"").append(dlg.getDialogId()).append("\"");
+
+		appendDialogAttributes(buf, dlg);
+
+		buf.append("}, dojo.byId(\"").append(dlgId).append("\"));");
+
+		appendHiderIds(buf, dlg);
+
+		if (dlg.getViewId() != null)
+		{
+			appendShowHideView(context, buf, dlg);
+		}
+
+		buf.append("}")
+        // .append("setTimeout('"+dlg.getDialogVar()+"_loader();',500);")
+		.append(dlg.getDialogVar()+"_loader();")
+        .append("</script>");
+		return dlgId;
+	}
+
+	private void appendShowHideView(FacesContext context, StringBuffer buf, ModalDialog dlg)
+	{
+		buf.append(dlg.getDialogVar())
+			.append(".onShow = function() {")
+			.append("var content = document.getElementById(\"modalDialogContent")
+			.append(dlg.getDialogVar())
+			.append("\"); ")
+			.append("window._myfaces_currentModal=")
+			.append(dlg.getDialogVar())
+			.append("; ")
+			.append(dlg.getDialogVar())
+			.append("._myfaces_ok=false; ")
+			.append("content.contentWindow.location.replace('")
+			.append(context.getExternalContext().getRequestContextPath())
+			.append("/")
+			.append(dlg.getViewId())
+			.append("'); ")
+			.append("}; ");
+
+		buf.append(dlg.getDialogVar())
+			.append(".onHide = function() {")
+			.append("window._myfaces_currentModal=null;")
+			.append("var content = document.getElementById(\"modalDialogContent")
+			.append(dlg.getDialogVar())
+			.append("\"); ")
+			.append("content.contentWindow.location.replace('javascript:false;'); ")
+			.append("}; ");
+	}
+
+	public boolean getRendersChildren()
     {
         return true;
     }
@@ -136,9 +206,78 @@
      */
     public void encodeChildren(FacesContext facesContext, UIComponent uiComponent) throws
IOException
     {
+		ModalDialog dlg = (ModalDialog) uiComponent;
+		ResponseWriter writer = facesContext.getResponseWriter();
 
-        RendererUtils.renderChildren(facesContext, uiComponent);
-        HtmlRendererUtils.writePrettyLineSeparator(facesContext);
-    }
-    
+		UIComponent titleFacet = dlg.getFacet("titleBar");
+		if (titleFacet != null)
+		{
+			RendererUtils.renderChild(facesContext, titleFacet);
+		}
+		else if (dlg.getDialogTitle() != null)
+		{
+			AddResourceFactory.getInstance(facesContext).addStyleSheet(facesContext, AddResource.HEADER_BEGIN,
 ModalDialog.class, "modalDialog.css");
+
+			writer.startElement(HTML.TABLE_ELEM, dlg);
+			writer.writeAttribute(HTML.CLASS_ATTR, "modalDialogDecoration " + getStyleName(dlg, "Decoration")
, null);
+			writer.writeAttribute(HTML.CELLPADDING_ATTR, "2", null);
+			writer.writeAttribute(HTML.CELLSPACING_ATTR, "0", null);
+
+			writer.startElement(HTML.TR_ELEM, dlg);
+			writer.writeAttribute(HTML.CLASS_ATTR, "modalDialogTitle " + getStyleName(dlg, "Title"),
null);
+
+			writer.startElement(HTML.TD_ELEM, dlg);
+			writer.writeAttribute(HTML.CLASS_ATTR, "modalDialogTitleLeft " + getStyleName(dlg, "TitleLeft"),
null);
+			writer.writeText(dlg.getDialogTitle(), null);
+			writer.endElement(HTML.TD_ELEM);
+
+			writer.startElement(HTML.TD_ELEM, dlg);
+			writer.writeAttribute(HTML.CLASS_ATTR, "modalDialogTitleRight " + getStyleName(dlg, "TitleRight"),
null);
+			if (dlg.getCloseButton())
+			{
+				String imageUri = AddResourceFactory.getInstance(facesContext).getResourceUri(facesContext,
ModalDialog.class, "close.gif");
+				writer.startElement(HTML.IMG_ELEM, dlg);
+				writer.writeAttribute(HTML.ID_ATTR, dlg.getDialogVar() + "Closer", null);
+				writer.writeAttribute(HTML.SRC_ATTR, imageUri, null);
+				writer.writeAttribute(HTML.CLASS_ATTR, "modalDialogCloser " + getStyleName(dlg, "Closer"),
null);
+				writer.endElement(HTML.IMG_ELEM);
+			}
+			writer.endElement(HTML.TD_ELEM);
+
+			writer.endElement(HTML.TR_ELEM);
+			writer.endElement(HTML.TABLE_ELEM);
+		}
+
+		if (dlg.getViewId() != null)
+		{
+			renderDialogViewFrame(facesContext, dlg);
+		}
+		else
+		{
+			RendererUtils.renderChildren(facesContext, uiComponent);
+        	HtmlRendererUtils.writePrettyLineSeparator(facesContext);
+		}
+	}
+
+	private String getStyleName(ModalDialog dlg, String suffix)
+	{
+		if (dlg.getStyleClass() != null)
+		{
+			return dlg.getStyleClass() + suffix;
+		}
+
+		return "";
+	}
+
+	private void renderDialogViewFrame(FacesContext facesContext, ModalDialog dlg) throws IOException
+	{
+		ResponseWriter writer = facesContext.getResponseWriter();
+
+		writer.startElement(HTML.IFRAME_ELEM, dlg);
+		writer.writeAttribute(HTML.ID_ATTR, "modalDialogContent" + dlg.getDialogVar(), null);
+		writer.writeAttribute(HTML.CLASS_ATTR, "modalDialogContent " + getStyleName(dlg, "Content"),
null);
+		writer.writeAttribute(HTML.SCROLLING_ATTR, "auto", null);
+		writer.writeAttribute(HTML.FRAMEBORDER_ATTR, "0", null);
+		writer.endElement(HTML.IFRAME_ELEM);
+	}
 }

Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialogTag.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialogTag.java?view=diff&rev=528425&r1=528424&r2=528425
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialogTag.java
(original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/dialog/ModalDialogTag.java
Fri Apr 13 03:17:22 2007
@@ -28,31 +28,28 @@
  * @version 02.09.2006 12:04:26
  */
 public class ModalDialogTag extends HtmlComponentTagBase {
-    private static final String TAG_PARAM_DIALOG_ATTR = "dialogAttr";
 
+    private static final String TAG_PARAM_DIALOG_ATTR = "dialogAttr";
     private static final String TAG_PARAM_DIALOG_ID   = "dialogId";
-
     private static final String TAG_PARAM_DIALOG_VAR  = "dialogVar";
-
     private static final String TAG_PARAM_HIDER_IDS   = "hiderIds";
-
-    public static final String  TAG_PARAM_WidgetId    = "widgetId";
-
-    public static final String  TAG_PARAM_WidgetVar   = "widgetVar";
+    private static final String TAG_PARAM_WIDGET_ID = "widgetId";
+    private static final String TAG_PARAM_WIDGET_VAR = "widgetVar";
+	private static final String TAG_PARAM_VIEW_ID = "viewId";
+	private static final String TAG_PARAM_DIALOG_TITLE = "dialogTitle";
+	private static final String TAG_PARAM_CLOSE_BUTTON = "closeButton";
 
     private String              _dialogAttr;
-
     private String              _dialogId;
-
     private String              _dialogVar;
-
     private String              _hiderIds;
+    private String              _widgetId;
+    private String              _widgetVar;
+	private String				_viewId;
+	private String				_dialogTitle;
+	private String				_closeButton;
 
-    private String              _widgetId             = null;
-
-    private String              _widgetVar            = null;
-
-    public String getComponentType() {
+	public String getComponentType() {
         return ModalDialog.COMPONENT_TYPE;
     }
 
@@ -68,8 +65,10 @@
         _hiderIds = null;
         _widgetVar = null;
         _widgetId = null;
-
-    }
+		_viewId = null;
+		_dialogTitle = null;
+		_closeButton = null;
+	}
 
     public void setDialogAttr(String dialogAttr) {
         _dialogAttr = dialogAttr;
@@ -95,16 +94,47 @@
         _widgetVar = widgetVar;
     }
 
-    
-    protected void setProperties(UIComponent uiComponent) {
+	public String getViewId()
+	{
+		return _viewId;
+	}
+
+	public void setViewId(String viewId)
+	{
+		this._viewId = viewId;
+	}
+
+	public String getDialogTitle()
+	{
+		return _dialogTitle;
+	}
+
+	public void setDialogTitle(String dialogTitle)
+	{
+		this._dialogTitle = dialogTitle;
+	}
+
+	public String getCloseButton()
+	{
+		return _closeButton;
+	}
+
+	public void setCloseButton(String closeButton)
+	{
+		this._closeButton = closeButton;
+	}
+
+	protected void setProperties(UIComponent uiComponent) {
         super.setProperties(uiComponent);
         super.setStringProperty(uiComponent, TAG_PARAM_DIALOG_VAR, _dialogVar);
         super.setStringProperty(uiComponent, TAG_PARAM_DIALOG_ID, _dialogId);
         super.setStringProperty(uiComponent, TAG_PARAM_DIALOG_ATTR, _dialogAttr);
         super.setStringProperty(uiComponent, TAG_PARAM_HIDER_IDS, _hiderIds);
-        super.setStringProperty(uiComponent, TAG_PARAM_WidgetVar, _widgetVar);
-        super.setStringProperty(uiComponent, TAG_PARAM_WidgetId, _widgetId);
-
-    }
+        super.setStringProperty(uiComponent, TAG_PARAM_WIDGET_VAR, _widgetVar);
+        super.setStringProperty(uiComponent, TAG_PARAM_WIDGET_ID, _widgetId);
+		super.setStringProperty(uiComponent, TAG_PARAM_VIEW_ID, _viewId);
+		super.setStringProperty(uiComponent, TAG_PARAM_DIALOG_TITLE, _dialogTitle);
+		super.setBooleanProperty(uiComponent, TAG_PARAM_CLOSE_BUTTON, _closeButton);
+	}
 
 }

Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/submitOnEvent/SubmitOnEventRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/submitOnEvent/SubmitOnEventRenderer.java?view=diff&rev=528425&r1=528424&r2=528425
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/submitOnEvent/SubmitOnEventRenderer.java
(original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/submitOnEvent/SubmitOnEventRenderer.java
Fri Apr 13 03:17:22 2007
@@ -18,10 +18,11 @@
  */
 package org.apache.myfaces.custom.submitOnEvent;
 
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Set;
-import java.util.TreeSet;
+import org.apache.myfaces.renderkit.html.util.AddResource;
+import org.apache.myfaces.renderkit.html.util.AddResourceFactory;
+import org.apache.myfaces.shared_tomahawk.renderkit.html.HTML;
+import org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlRenderer;
+import org.apache.myfaces.custom.dialog.ModalDialog;
 
 import javax.faces.component.UICommand;
 import javax.faces.component.UIComponent;
@@ -31,11 +32,10 @@
 import javax.faces.component.UISelectOne;
 import javax.faces.context.FacesContext;
 import javax.faces.context.ResponseWriter;
-
-import org.apache.myfaces.renderkit.html.util.AddResource;
-import org.apache.myfaces.renderkit.html.util.AddResourceFactory;
-import org.apache.myfaces.shared_tomahawk.renderkit.html.HTML;
-import org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlRenderer;
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.Set;
+import java.util.TreeSet;
 
 /**
  * Attach an event handler to an input element or use a global event handler to
@@ -62,7 +62,9 @@
         UIComponent parent = uiComponent.getParent();
         if (parent != null)
         {
-            if (UIInput.COMPONENT_FAMILY.equals(parent.getFamily()) || parent instanceof
UIInput)
+            if (UIInput.COMPONENT_FAMILY.equals(parent.getFamily())
+				|| parent instanceof UIInput
+				|| parent instanceof ModalDialog)
             {
                 triggerComponent = parent;
             }
@@ -70,7 +72,7 @@
             {
                 forComponent = parent;
             }
-        }
+		}
 
 		if (triggerComponent != null && !triggerComponent.isRendered())
 		{
@@ -125,8 +127,15 @@
         js.append("','");
         if (triggerComponent != null)
         {
-            js.append(triggerComponent.getClientId(facesContext));
-        }
+			if (triggerComponent instanceof ModalDialog)
+			{
+				js.append(((ModalDialog) triggerComponent).getDialogVar());
+			}
+			else
+			{
+				js.append(triggerComponent.getClientId(facesContext));
+			}
+		}
         js.append("','");
         js.append(forComponent.getClientId(facesContext));
         // js.append("');");

Added: myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/close.gif
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/close.gif?view=auto&rev=528425
==============================================================================
Binary file - no diff available.

Propchange: myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/close.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/modalDialog.css
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/modalDialog.css?view=auto&rev=528425
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/modalDialog.css
(added)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/modalDialog.css
Fri Apr 13 03:17:22 2007
@@ -0,0 +1,37 @@
+.modalDialogDecoration
+{
+	border-style: none;
+}
+
+.modalDialogTitle
+{
+	background-color: #6996cd;
+	color: white;
+	height: 20px;
+	vertical-align: middle;
+}
+
+.modalDialogTitleLeft
+{
+	text-align: left;
+	white-space: nowrap;
+}
+
+.modalDialogTitleRight
+{
+	text-align: right;
+	white-space: nowrap;
+}
+
+.modalDialogCloser
+{
+	width: 12px;
+	height: 12px;
+}
+
+.modalDialogContent
+{
+	vertical-align: top;
+	background-color: white;
+	color: black;
+}
\ No newline at end of file

Propchange: myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/modalDialog.css
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/modalDialog.css
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Propchange: myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/dialog/resource/modalDialog.css
------------------------------------------------------------------------------
    svn:mime-type = text/css

Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/submitOnEvent/resource/submitOnEvent.js
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/submitOnEvent/resource/submitOnEvent.js?view=diff&rev=528425&r1=528424&r2=528425
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/submitOnEvent/resource/submitOnEvent.js
(original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/submitOnEvent/resource/submitOnEvent.js
Fri Apr 13 03:17:22 2007
@@ -21,8 +21,15 @@
 {
 	// alert("eventType:" + eventType + " callback:" + callbackFunction + " input:" + inputComponentId
+ " click:" + clickComponentId);
 
-    var inputComponents = [];
-    if (inputComponentId != null && inputComponentId != '')
+	var dojoWidget = false;
+
+	var inputComponents = [];
+	if (eventType == "dialogok")
+	{
+		inputComponents = [ eval(inputComponentId) ];
+		dojoWidget = true;
+	}
+	else if (inputComponentId != null && inputComponentId != '')
     {
         inputComponents = document.getElementsByName(inputComponentId);
 	}
@@ -74,7 +81,21 @@
             return orgApacheMyfacesSubmitOnEventSetEvent(event, orgApacheMyfacesSubmitOnEventKeypress(event,
clickComponentId));
         };
     }
-    else
+	else if (eventType == "dialogok")
+	{
+		var dialog = eval(inputComponentId);
+		if (dialog)
+		{
+			handler=function()
+			{
+				if (dialog._myfaces_ok)
+				{
+					orgApacheMyfacesSubmitOnEventGeneral(clickComponentId);
+				}
+			}
+		}
+	}
+	else
     {
         handler=function(event)
         {
@@ -85,7 +106,7 @@
 	for (var cmpNum = 0; cmpNum < inputComponents.length; cmpNum++)
 	{
 		var inputComponent = inputComponents[cmpNum];
-		if (!orgApacheMyfacesSubmitOnEventIsFormElement(inputComponent))
+		if (!dojoWidget && !orgApacheMyfacesSubmitOnEventIsFormElement(inputComponent))
 		{
 			continue;
 		}
@@ -156,7 +177,16 @@
 		setupHandler = handler;
 	}
 
-	if (component.addEventListener)
+	if (eventType == "dialogok")
+	{
+		component._myfaces_submitOnEvent_onHide=component.onHide;
+		component.onHide=function()
+		{
+			this._myfaces_submitOnEvent_onHide();
+			setupHandler();
+		}
+	}
+	else if (component.addEventListener)
 	{
 		component.addEventListener(eventType, setupHandler, false);
 	}

Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/tld/myfaces_sandbox.tld
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/tld/myfaces_sandbox.tld?view=diff&rev=528425&r1=528424&r2=528425
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/tld/myfaces_sandbox.tld (original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/tld/myfaces_sandbox.tld Fri Apr 13 03:17:22
2007
@@ -170,7 +170,7 @@
             <name>var</name>
             <required>true</required>
             <rtexprvalue>false</rtexprvalue>
-            <description>Variable this bundle will be stored under, e.g. mybundle.
Use #{mybundle.propertykey} or #{mybundle['propertykey']} to access the keys of the bundle.</description>
           
+            <description>Variable this bundle will be stored under, e.g. mybundle.
Use #{mybundle.propertykey} or #{mybundle['propertykey']} to access the keys of the bundle.</description>
         </attribute>
         <attribute>
             <name>basename</name>
@@ -618,7 +618,7 @@
 			<description>The fieldset's legend.</description>
 		</attribute>
 	</tag>
-	
+
 	<!-- imageLoop-->
     <tag>
         <name>imageLoop</name>
@@ -1275,14 +1275,14 @@
 			<required>false</required>
 			<rtexprvalue>false</rtexprvalue>
             <description>Does a periodical refresh of the partial page inside the ppr
group. In milliseconds.
-                         No partialTriggers are needed. 
+                         No partialTriggers are needed.
             </description>
         </attribute>
         <attribute>
 			<name>showDebugMessages</name>
 			<required>false</required>
 			<rtexprvalue>false</rtexprvalue>
-			
+
             <description>If false, alert messages which can be fired after a ppr response
are not displayed in the browser.
                          May switched to true in test environments. Default: false
             </description>
@@ -1291,7 +1291,7 @@
 			<name>stateUpdate</name>
 			<required>false</required>
 			<rtexprvalue>false</rtexprvalue>
-            <description>If set to false, there will be no stateUpdate on server side
due to the partialPage refresh. 
+            <description>If set to false, there will be no stateUpdate on server side
due to the partialPage refresh.
                          Default: true
             </description>
         </attribute>
@@ -1329,35 +1329,35 @@
 			<type>java.lang.String</type>
 			<description>Remote href for iframe simulation</description>
 		</attribute>
-	
+
 		<attribute>
 			<name>adjustPaths</name>
 			<required>false</required>
 			<rtexprvalue>false</rtexprvalue>
 			<description>Path adjustment as defined by dojo</description>
 		</attribute>
-	
+
 		<attribute>
 			<name>extractContent</name>
 			<required>false</required>
 			<rtexprvalue>false</rtexprvalue>
 			<description>Defined by dojo, see the examples</description>
 		</attribute>
-	
+
 		<attribute>
 			<name>parseContent</name>
 			<required>false</required>
 			<rtexprvalue>false</rtexprvalue>
 			<description>Defined by dojo see the examples</description>
 		</attribute>
-	
+
 		<attribute>
 			<name>preload</name>
 			<required>false</required>
 			<rtexprvalue>false</rtexprvalue>
 			<description>Content Preloading</description>
 		</attribute>
-	
+
 		<attribute>
 			<name>handler</name>
 			<required>false</required>
@@ -1367,7 +1367,7 @@
 				Javascript function which should generate the content
 			</description>
 		</attribute>
-	
+
 		<attribute>
 			<name>scriptScope</name>
 			<required>false</required>
@@ -1375,14 +1375,14 @@
 			<type>java.lang.String</type>
 			<description>Scopecontainer for downloaded Scripts</description>
 		</attribute>
-	
+
 		<attribute>
 			<name>refreshOnShow</name>
 			<required>false</required>
 			<rtexprvalue>false</rtexprvalue>
 			<description>Description for the attribute</description>
 		</attribute>
-	
+
 		<attribute>
 			<name>layoutAlign</name>
 			<required>false</required>
@@ -1548,12 +1548,37 @@
         </attribute>
         <attribute>
             <name>hiderIds</name>
-            <required>true</required>
+            <required>false</required>
             <rtexprvalue>false</rtexprvalue>
             <type>java.lang.String</type>
             <description>A comma separated list with ids of input-elements, which can
tell (by javascript-code) the dialog to hide.</description>
         </attribute>
-    </tag>
+
+		<attribute>
+			<name>viewId</name>
+			<required>false</required>
+			<rtexprvalue>false</rtexprvalue>
+			<type>java.lang.String</type>
+			<description>The URL of the view to show within the content area of the dialog</description>
+		</attribute>
+
+		<attribute>
+			<name>dialogTitle</name>
+			<required>false</required>
+			<rtexprvalue>false</rtexprvalue>
+			<type>java.lang.String</type>
+			<description>The title text to show in the title area</description>
+		</attribute>
+
+		<attribute>
+			<name>closeButton</name>
+			<required>false</required>
+			<rtexprvalue>false</rtexprvalue>
+			<type>java.lang.String</type>
+			<description>true|false - Set to true if a close button should be rendere within
the title area (requires a dialogTitle)</description>
+		</attribute>
+
+	</tag>
 
 	<!-- Validator for csv validation items -->
 	<tag>
@@ -1574,7 +1599,7 @@
         </description>
         &submit_on_event_attributes;
     </tag>
-    
+
     <tag>
         <name>excelExport</name>
         <tag-class>org.apache.myfaces.custom.excelexport.ExcelExportTag</tag-class>
@@ -1614,7 +1639,7 @@
         &ui_component_attributes;
         &sortable_column_attributes;
      </tag>
-     
+
      <!-- ValidationScript -->
      <tag>
         <name>validationScript</name>

Modified: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialog.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialog.jsp?view=diff&rev=528425&r1=528424&r2=528425
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialog.jsp (original)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialog.jsp Fri Apr 13
03:17:22 2007
@@ -17,13 +17,34 @@
 	            /*positioning outside of the visible scope to prevent some ui glitches visibility
hidden does not work*/
 	            position:absolute;
 	            left: -800px;
-	            top:-800px;
+	            top: -800px;
 	        }
-    	</style>
+
+			.viewDialog {
+				background : #eee;
+				border : 1px solid #999;
+				-moz-border-radius : 5px;
+				padding : 4px;
+				/*positioning outside of the visible scope to prevent some ui glitches visibility hidden
does not work*/
+				position:absolute;
+				left: -800px;
+				top: -800px;
+			}
+
+			.viewDialogDecoration {
+				width: 600px;
+			}
+
+			.viewDialogContent {
+				width: 600px;
+				height: 500px;
+			}
+
+		</style>
 	</head>
 	<body>
 		<f:view>
-		
+
 			<h:panelGrid columns="2" style="width:700px;">
 				<h:outputLabel value="Email" for="email1" styleClass="label" />
 				<h:panelGrid columns="4" width="180">
@@ -65,6 +86,21 @@
 				</h:panelGrid>
 			</h:panelGrid>
 
+			<h:panelGrid columns="3">
+
+				<t:outputText value="Show dialog using another view in its content" />
+
+				<h:outputLink value="#"
+					onclick="viewDialog.show();">
+					<h:outputText value="open dialog" />
+				</h:outputLink>
+
+				<h:form>
+					<h:commandButton id="dismissAction" value="action after dismiss" />
+				</h:form>
+
+			</h:panelGrid>
+
 			<s:modalDialog dialogId="DialogContent" dialogVar="dojoDialog"
 				dialogAttr="bgColor='white' bgOpacity='0.5' toggle='fade' toggleDuration='250'"
 				hiderIds="cancel1,cancel2,cancel3" styleClass="dojoDialog">
@@ -89,7 +125,7 @@
 
 			<s:modalDialog dialogId="FormDialog" dialogVar="dojoDialogOuterform"
 				dialogAttr="bgColor='white' bgOpacity='0.5' toggle='fade' toggleDuration='250'"
-				hiderIds="cancel1x,cancel2x,cancel3x" styleClass="dojoDialog">
+				styleClass="dojoDialog">
 				<h:form id="dialogform">
 
 					<h:panelGrid columns="1">
@@ -116,10 +152,22 @@
 						</h:commandLink>
 					</h:panelGrid>
 				</h:form>
+			</s:modalDialog>
+
+
+			<s:modalDialog
+				dialogId="viewDialog"
+				dialogVar="viewDialog"
+				styleClass="viewDialog"
+				dialogTitle="ViewId Dialog"
+				closeButton="true"
+				viewId="dojo/dojoDialogView.jsf">
+
+				<s:submitOnEvent event="dialogok" for="dismissAction" />
 
 			</s:modalDialog>
-      
-      <%@ include file="../inc/page_footer.jsp"%>
+
+	  <%@ include file="../inc/page_footer.jsp"%>
 
 		</f:view>
 	</body>

Copied: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialogView.jsp (from
r527095, myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialog.jsp)
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialogView.jsp?view=diff&rev=528425&p1=myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialog.jsp&r1=527095&p2=myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialogView.jsp&r2=528425
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialog.jsp (original)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/dojo/dojoDialogView.jsp Fri Apr
13 03:17:22 2007
@@ -8,119 +8,22 @@
 		<meta http-equiv="Content-Type"
 			content="text/html; charset=iso-8859-1" />
 		<link type="text/css" rel="stylesheet" href="/css/basic.css" />
-		 <style type="text/css">
-        	.dojoDialog {
-	            background : #eee;
-	            border : 1px solid #999;
-	            -moz-border-radius : 5px;
-	            padding : 4px;
-	            /*positioning outside of the visible scope to prevent some ui glitches visibility
hidden does not work*/
-	            position:absolute;
-	            left: -800px;
-	            top:-800px;
-	        }
-    	</style>
 	</head>
 	<body>
 		<f:view>
-		
-			<h:panelGrid columns="2" style="width:700px;">
-				<h:outputLabel value="Email" for="email1" styleClass="label" />
-				<h:panelGrid columns="4" width="180">
-					<t:inputText id="email1" value="Test" forceId="true" size="30" />
-					<f:verbatim>&#160;</f:verbatim>
-					<t:message for="email1" />
-					<h:outputLink value="#"
-						onclick="dojoDialog.show();document.getElementById('filter1').focus();">
-						<h:outputText value="search" />
-					</h:outputLink>
-				</h:panelGrid>
-			</h:panelGrid>
-			<h:panelGrid columns="2" style="width:700px;">
-				<h:outputLabel value="Email" for="email2" styleClass="label" />
-				<h:panelGrid columns="4" width="180">
-					<t:inputText id="email2" value="Test" forceId="true" size="30" />
-					<f:verbatim>&#160;</f:verbatim>
-					<t:message for="email2" />
-					<h:outputLink value="#"
-						onclick="dojoDialog.show();document.getElementById('filter2').focus();">
-						<h:outputText value="search" />
-					</h:outputLink>
-				</h:panelGrid>
-			</h:panelGrid>
-			<h:panelGrid columns="2" style="width:700px;">
-				<h:outputLabel value="Email" for="email3" styleClass="label" />
-				<h:panelGrid columns="4" width="180">
-					<t:inputText id="email3" value="Test" forceId="true" size="30" />
-					<f:verbatim>&#160;</f:verbatim>
-					<t:message for="email3" />
-					<h:outputLink value="#"
-						onclick="dojoDialog.show();document.getElementById('filter3').focus();">
-						<h:outputText value="search" />
-					</h:outputLink>
-					<h:outputLink value="#" onclick="dojoDialogOuterform.show();">
-						<h:outputText value="searchOuterForm" />
-					</h:outputLink>
-
-				</h:panelGrid>
-			</h:panelGrid>
 
-			<s:modalDialog dialogId="DialogContent" dialogVar="dojoDialog"
-				dialogAttr="bgColor='white' bgOpacity='0.5' toggle='fade' toggleDuration='250'"
-				hiderIds="cancel1,cancel2,cancel3" styleClass="dojoDialog">
-				<h:panelGrid columns="1">
-					<h:panelGrid columns="2">
-						<t:inputText id="filter1" forceId="true" value="Test" size="25" />
-						<t:commandButton id="cancel1" forceId="true" value="Cancel"
-							onclick="dojo.widget.byId('DialogContent').hide();" />
-					</h:panelGrid>
-					<h:panelGrid columns="2">
-						<t:inputText id="filter2" forceId="true" value="Test" size="25" />
-						<t:commandButton id="cancel2" forceId="true" value="Cancel"
-							onclick="dojo.widget.byId('DialogContent').hide();" />
-					</h:panelGrid>
-					<h:panelGrid columns="2">
-						<t:inputText id="filter3" forceId="true" value="Test" size="25" />
-						<t:commandButton id="cancel3" forceId="true" value="Cancel"
-							onclick="dojo.widget.byId('DialogContent').hide();" />
-					</h:panelGrid>
-				</h:panelGrid>
-			</s:modalDialog>
+			<h:outputText value="This is the text from the dojo/dojoDialogView.jsp file" />
 
-			<s:modalDialog dialogId="FormDialog" dialogVar="dojoDialogOuterform"
-				dialogAttr="bgColor='white' bgOpacity='0.5' toggle='fade' toggleDuration='250'"
-				hiderIds="cancel1x,cancel2x,cancel3x" styleClass="dojoDialog">
-				<h:form id="dialogform">
+			<h:panelGrid columns="1">
+				<h:outputLink
+					value="#"
+					onclick="window.parent._myfaces_currentModal._myfaces_ok=true;window.parent._myfaces_currentModal.hide();">
+					<h:outputText value="close window" />
+				</h:outputLink>
 
-					<h:panelGrid columns="1">
-						<h:panelGrid columns="2">
-							<t:inputText id="filter1Outerform" forceId="true" value="Test"
-								size="25" />
-							<t:commandButton id="cancel1Outerform" forceId="true"
-								value="Cancel" onclick="dojo.widget.byId('FormDialog').hide();" />
-						</h:panelGrid>
-						<h:panelGrid columns="2">
-							<t:inputText id="filter2Outerform" forceId="true" value="Test"
-								size="25" />
-							<t:commandButton id="cancel2Outerform" forceId="true"
-								value="Cancel" onclick="dojo.widget.byId('FormDialog').hide();" />
-						</h:panelGrid>
-						<h:panelGrid columns="2">
-							<t:inputText id="filter3Outerform" forceId="true" value="Test"
-								size="25" />
-							<t:commandButton id="cancel3Outerform" forceId="true"
-								value="Cancel" onclick="dojo.widget.byId('FormDialog').hide();" />
-						</h:panelGrid>
-						<h:commandLink id="outerformsubmit">
-							<h:outputFormat value="Submit" />
-						</h:commandLink>
-					</h:panelGrid>
-				</h:form>
-
-			</s:modalDialog>
-      
-      <%@ include file="../inc/page_footer.jsp"%>
+			</h:panelGrid>
 
 		</f:view>
+
 	</body>
 </html>



Mime
View raw message