[jboss-cvs] jboss-seam/examples/wiki/view ...

Christian Bauer christian at hibernate.org
Mon May 7 07:42:31 EDT 2007


  User: cbauer  
  Date: 07/05/07 07:42:31

  Modified:    examples/wiki/view        fileEdit.xhtml userRegister.xhtml
                        userList.xhtml adminHome.xhtml dirEdit.xhtml
                        userHome.xhtml docEdit.xhtml
  Log:
  Switched to tabbed ajax forms
  
  Revision  Changes    Path
  1.16      +57 -74    jboss-seam/examples/wiki/view/fileEdit.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: fileEdit.xhtml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/view/fileEdit.xhtml,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -b -r1.15 -r1.16
  --- fileEdit.xhtml	4 May 2007 12:35:28 -0000	1.15
  +++ fileEdit.xhtml	7 May 2007 11:42:31 -0000	1.16
  @@ -7,6 +7,7 @@
                   xmlns:h="http://java.sun.com/jsf/html"
                   xmlns:wiki="http://jboss.com/products/seam/wiki"
                   xmlns:j4j="http://javascript4jsf.dev.java.net/"
  +                xmlns:a="https://ajax4jsf.dev.java.net/ajax"
                   template="themes/#{wikiPreferences.themeName}/template.xhtml">
   
   <ui:define name="includeHeaders">
  @@ -89,16 +90,9 @@
                       </div>
                   </s:div>
   
  -                <s:validateAll>
  -
  -                    <s:decorate>
  -                        <div class="entry">
  -                            <div class="label">Name:</div>
  -                            <div class="input">
  -                                <h:inputText tabindex="1" size="50" maxlength="255" id="name" required="true"
  -                                             value="#{fileHome.instance.name}"/>
  -                            </div>
  -                        </div>
  +                <s:decorate id="nameDecorate" template="includes/formFieldDecorate.xhtml">
  +                    <ui:define name="label">Name</ui:define>
  +                    <h:inputText tabindex="1" size="50" maxlength="255" required="true" value="#{fileHome.instance.name}"/>
                       </s:decorate>
   
                       <ui:include src="includes/accessLevelSelector.xhtml"/>
  @@ -161,21 +155,10 @@
   
                       </s:div>
   
  -                    <s:div>
  -                        <s:decorate>
  -                            <div class="entry">
  -                                <div class="label">Upload file (max. #{wiki:displayFilesize(org.jboss.seam.web.multipartFilter.maxRequestSize)}):</div>
  -                                <div class="input">
  -                                    <s:fileUpload id="upload" data="#{fileHome.filedata}"
  -                                                  contentType="#{fileHome.contentType}"
  -                                                  fileName="#{fileHome.filename}"/>
  -                                </div>
  -                            </div>
  +                <s:decorate id="uploadDecorate" template="includes/formFieldDecorate.xhtml">
  +                    <ui:define name="label">Upload (max. #{wiki:displayFilesize(org.jboss.seam.web.multipartFilter.maxRequestSize)})</ui:define>
  +                    <s:fileUpload id="upload" data="#{fileHome.filedata}" contentType="#{fileHome.contentType}" fileName="#{fileHome.filename}"/>
                           </s:decorate>
  -                    </s:div>
  -
  -                </s:validateAll>
  -
   
               </div>
               <div class="formControls wideLabels">
  
  
  
  1.4       +56 -89    jboss-seam/examples/wiki/view/userRegister.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: userRegister.xhtml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/view/userRegister.xhtml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -b -r1.3 -r1.4
  --- userRegister.xhtml	22 Apr 2007 19:19:29 -0000	1.3
  +++ userRegister.xhtml	7 May 2007 11:42:31 -0000	1.4
  @@ -46,78 +46,49 @@
           </div>
   
           <div class="formFields formBorder wideLabels">
  -            <s:validateAll>
   
  -                <s:decorate id="firstnameDecorate">
  -                    <div class="entry">
  -                        <div class="label">First name:</div>
  -                        <div class="input">
  -                            <h:inputText tabindex="1" size="40" maxlength="63" required="true"
  -                                         id="firstname" value="#{userHome.instance.firstname}">
  +            <s:decorate id="firstnameDecorate" template="includes/formFieldDecorate.xhtml">
  +                <ui:define name="label">First name</ui:define>
  +                <h:inputText tabindex="1" size="40" maxlength="63" required="true" value="#{userHome.instance.firstname}">
                                   <a:support event="onblur" reRender="firstnameDecorate"/>
                               </h:inputText>
  -                        </div>
  -                    </div>
                   </s:decorate>
   
  -                <s:decorate  id="lastnameDecorate">
  -                    <div class="entry">
  -                        <div class="label">Last name:</div>
  -                        <div class="input">
  -                            <h:inputText tabindex="2" size="40" maxlength="63" required="true"
  -                                         id="lastname" value="#{userHome.instance.lastname}">
  +            <s:decorate id="lastnameDecorate" template="includes/formFieldDecorate.xhtml">
  +                <ui:define name="label">Last name</ui:define>
  +                <h:inputText tabindex="1" size="40" maxlength="63" required="true" value="#{userHome.instance.lastname}">
                                   <a:support event="onblur" reRender="lastnameDecorate"/>
                               </h:inputText>
  -                        </div>
  -                    </div>
                   </s:decorate>
   
  -                <s:decorate id="emailDecorate">
  -                    <div class="entry">
  -                        <div class="label">E-Mail:</div>
  -                        <div class="input">
  -                            <h:inputText tabindex="3" size="40" maxlength="255" required="true"
  -                                         id="email" value="#{userHome.instance.email}">
  +            <s:decorate id="emailDecorate" template="includes/formFieldDecorate.xhtml">
  +                <ui:define name="label">E-Mail</ui:define>
  +                <h:inputText tabindex="3" size="40" maxlength="255" required="true" value="#{userHome.instance.email}">
                                   <a:support event="onblur" reRender="emailDecorate"/>
                               </h:inputText>
  -                        </div>
  -                    </div>
                   </s:decorate>
   
  -                <s:decorate id="usernameDecorate">
  -                    <div class="entry">
  -                        <div class="label">Username:</div>
  -                        <div class="input">
  -                            <h:inputText tabindex="4" size="16" maxlength="16" required="true"
  -                                         id="username" value="#{userHome.instance.username}">
  +            <s:decorate id="usernameDecorate" template="includes/formFieldDecorate.xhtml">
  +                <ui:define name="label">Username</ui:define>
  +                <h:inputText tabindex="4" size="16" maxlength="16" required="true" value="#{userHome.instance.username}">
                                   <a:support event="onblur" action="#{userHome.validateUsername}" reRender="usernameDecorate"/>
                               </h:inputText>
  -                        </div>
  -                    </div>
                   </s:decorate>
   
  -                <s:decorate id="passwordDecorate">
  -                    <div class="entry">
  -                        <div class="label">Password:</div>
  -                        <div class="input">
  +            <s:decorate id="passwordDecorate" template="includes/formFieldDecorate.xhtml">
  +                <ui:define name="label">Password</ui:define>
                               <h:inputSecret tabindex="5" size="15" maxlength="15"
  -                                           id="password" redisplay="true" value="#{userHome.password}">
  +                               redisplay="true" value="#{userHome.password}">
                                   <a:support event="onblur" action="#{userHome.validatePassword}" reRender="passwordDecorate"/>
                               </h:inputSecret>
  -                        </div>
  -                    </div>
                   </s:decorate>
   
  -                <s:decorate id="passwordControlDecorate">
  -                    <div class="entry">
  -                        <div class="label">Repeat password:</div>
  -                        <div class="input">
  +            <s:decorate id="passwordControlDecorate" template="includes/formFieldDecorate.xhtml">
  +                <ui:define name="label">Repeat password</ui:define>
                               <h:inputSecret tabindex="6" size="15" maxlength="15"
  -                                           id="passwordControl" redisplay="true" value="#{userHome.passwordControl}">
  +                               redisplay="true" value="#{userHome.passwordControl}">
                               <a:support event="onblur" action="#{userHome.validatePasswordControl}" reRender="passwordControlDecorate"/>
                           </h:inputSecret>
  -                        </div>
  -                    </div>
                   </s:decorate>
   
                   <s:div rendered="#{not s:hasPermission('User', 'isAdmin', currentUser)}">
  @@ -128,18 +99,14 @@
                           </div>
                       </s:div>
   
  -                    <s:decorate>
  -                        <s:div styleClass="entry">
  -                            <div class="label">Enter response:</div>
  -                            <div class="input">
  -                                <h:inputText tabindex="7" size="15" id="verifyCaptcha" value="#{captcha.response}" required="true"/>
  -                            </div>
  -                        </s:div>
  +                <s:decorate id="verifyCaptchaDecorate" template="includes/formFieldDecorate.xhtml">
  +                    <ui:define name="label">Enter repsonse</ui:define>
  +                    <h:inputSecret tabindex="7" size="5" maxlength="5" required="true"
  +                                   redisplay="true" id="verifyCaptcha" value="#{captcha.response}">
  +                    </h:inputSecret>
                       </s:decorate>
                   </s:div>
   
  -            </s:validateAll>
  -
           </div>
   
           <div class="formControls wideLabels">
  
  
  
  1.16      +3 -1      jboss-seam/examples/wiki/view/userList.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: userList.xhtml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/view/userList.xhtml,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -b -r1.15 -r1.16
  --- userList.xhtml	26 Apr 2007 15:11:51 -0000	1.15
  +++ userList.xhtml	7 May 2007 11:42:31 -0000	1.16
  @@ -209,9 +209,11 @@
               </h:column>
   
               <h:column rendered="#{s:hasPermission('User', 'isAdmin', currentUser)}">
  -                <s:link action="editUser" value="Edit" propagation="none">
  +                <s:link action="editUser" propagation="none"
  +                               styleClass="buttonNonpersistent">
                       <f:param name="lastConversationId" value="#{conversation.id}"/>
                       <f:param name="userId" value="#{u.id}"/>
  +                    <span class="buttonLabel">Edit</span>
                   </s:link>
               </h:column>
   
  
  
  
  1.5       +38 -40    jboss-seam/examples/wiki/view/adminHome.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: adminHome.xhtml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/view/adminHome.xhtml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -b -r1.4 -r1.5
  --- adminHome.xhtml	5 May 2007 00:34:13 -0000	1.4
  +++ adminHome.xhtml	7 May 2007 11:42:31 -0000	1.5
  @@ -5,8 +5,8 @@
                   xmlns:ui="http://java.sun.com/jsf/facelets"
                   xmlns:f="http://java.sun.com/jsf/core"
                   xmlns:h="http://java.sun.com/jsf/html"
  -                xmlns:rich="http://richfaces.ajax4jsf.org/rich"
                   xmlns:a="https://ajax4jsf.dev.java.net/ajax"
  +                xmlns:j4j="http://javascript4jsf.dev.java.net/"
                   xmlns:wiki="http://jboss.com/products/seam/wiki"
                   template="themes/#{wikiPreferences.themeName}/template.xhtml">
   
  @@ -41,18 +41,20 @@
   
   <ui:define name="content">
   
  +<div id="formMessageBox" class="messageBox"><table id="formMessageTable"/></div>
  +
   <h:form><div class="form">
   
       <script type="text/javascript">jQuery(function() {
  -        jQuery('#formTabs').tabs();
  +        jQuery('#formTabs').tabs({onClick: function(){formTabClicked()} });
       });</script>
       <div id="formTabs">
   
           <ul>
  -            <li><a href="#systemStats">System Statistics</a></li>
  -            <li><a href="#rolesPermissions">Roles &amp; Permissions</a></li>
  -            <li><a href="#linkProtocols">Link Protocols</a></li>
  -            <li><a href="#systemPrefs">Preferences</a></li>
  +            <li id="systemStatsTab"><a href="#systemStats">System Statistics</a></li>
  +            <li id="rolesPermissionsTab"><a href="#rolesPermissions">Roles &amp; Permissions</a></li>
  +            <li id="linkProtocolsTab"><a href="#linkProtocols">Link Protocols</a></li>
  +            <li id="systemPrefsTab"><a href="#systemPrefs">Preferences</a></li>
           </ul>
   
           <div id="systemStats">
  @@ -63,7 +65,8 @@
               Not Implemented
           </div>
   
  -        <div id="linkProtocols" style="padding:25px;">
  +        <div id="linkProtocols" style="padding:10px;">
  +
               <p>
                   Link protocols enable custom prefixes in wiki text links, e.g. you can write
                   [=>jbseam://123] and have it rendered as a link to http://my.jbseam.site/123.
  @@ -71,6 +74,7 @@
                   rendered broken.
               </p>
   
  +            <a:region>
               <h:dataTable id="linkProtocolTable" var="lp"
                            value="#{linkProtocols}"
                            rendered="#{linkProtocols.rowCount >0}"
  @@ -95,46 +99,40 @@
                       #{lp.link}
                   </h:column>
                   <h:column>
  -                    <h:commandLink id="removeLinkProtocol" styleClass="buttonNonpersistent"
  -                                   action="#{adminHome.removeLinkProtocol()}"><span class="buttonLabel">Remove</span></h:commandLink>
  +                    <a:commandLink id="removeLinkProtocol" styleClass="buttonNonpersistent" reRender="linkProtocolTable"
  +                                   action="#{adminHome.removeLinkProtocol()}"><span class="buttonLabel">Remove</span></a:commandLink>
                   </h:column>
               </h:dataTable>
  +            </a:region>
   
  +            <a:region>
  +            <s:div id="linkProtocolForm" styleClass="formFields wideLabels">
   
  -            <div class="form" id="linkProtocolForm">
  -
  -                <h:panelGrid columns="3" style="margin-top: 15px;"
  -                             styleClass="datatable topLeftBottomBorder"
  -                             headerClass="regularHeader rightBorder"
  -                             columnClasses="tenPercentColumn alignRight formFields, twentyPercentColumn alignRight formFields,
  -                                            defaultColumn alignLeft rightBorder formFields"
  -                             cellpadding="0" cellspacing="0" border="0">
  -
  -                    <f:facet name="header">
  -                        <h:outputText value="New link protocol"/>
  -                    </f:facet>
  -
  -                    <h:panelGroup>
  -                        <h:outputText styleClass="label" value="Prefix:"/>&#160;
  -                        <h:inputText id="lpPrefix" value="#{adminHome.linkProtocol.prefix}" maxlength="10" size="10" tabindex="1"/>
  -                    </h:panelGroup>
  -
  -                    <h:panelGroup>
  -                        <h:outputText styleClass="label" value="Target link (with [[link]] placeholder):"/>&#160;
  -                        <h:inputText id="lpLink" value="#{adminHome.linkProtocol.link}" maxlength="1000" size="40" tabindex="1"/>
  -                    </h:panelGroup>
  -
  -                    <h:commandLink id="addLinkProtocol" styleClass="buttonNonpersistent"
  -                                   action="#{adminHome.addLinkProtocol()}"><span class="buttonLabel">Add</span></h:commandLink>
  -
  -                </h:panelGrid>
  +                <s:decorate id="prefixDecorate" template="includes/formFieldDecorate.xhtml">
  +                    <ui:define name="label">Prefix</ui:define>
  +                    <h:inputText id="prefix" value="#{adminHome.linkProtocol.prefix}" maxlength="10" size="10" tabindex="1"/>
  +                </s:decorate>
  +
  +                <s:decorate id="linkDecorate" template="includes/formFieldDecorate.xhtml">
  +                    <ui:define name="label">Target with [[link]] placeholder</ui:define>
  +                    <h:inputText id="link" value="#{adminHome.linkProtocol.link}" maxlength="1000" size="40" tabindex="1"/>
  +                </s:decorate>
   
  +                <div class="entry">
  +                    <div class="label">&#160;</div>
  +                    <div class="input">
  +                        <a:commandLink id="addLinkProtocol" styleClass="buttonNonpersistent" reRender="linkProtocolTable, linkProtocolForm"
  +                                       action="#{adminHome.addLinkProtocol}"><span class="buttonLabel">Add</span></a:commandLink>
  +                    </div>
               </div>
  +            </s:div>
  +            </a:region>
   
           </div>
   
           <div id="systemPrefs">
               <ui:include src="includes/preferencesEditor.xhtml">
  +                <ui:param name="tabId" value="systemPrefsTab"/>
                   <ui:param name="preferenceComponents" value="#{systemPreferenceComponents}"/>
               </ui:include>
           </div>
  @@ -147,9 +145,9 @@
               <div class="label">&#160;</div>
               <div class="input">
   
  -                <h:commandLink id="update" styleClass="button"
  +                <a:commandLink id="update" styleClass="button saveButton" reRender="body"
                                  action="#{adminHome.update}"
  -                               tabindex="9" accesskey="U"><span class="buttonLabel"><u>U</u>pdate</span></h:commandLink>
  +                               tabindex="9" accesskey="S"><span class="buttonLabel"><u>S</u>ave Settings</span></a:commandLink>
   
               </div>
           </div>
  
  
  
  1.22      +6 -9      jboss-seam/examples/wiki/view/dirEdit.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: dirEdit.xhtml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/view/dirEdit.xhtml,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -b -r1.21 -r1.22
  --- dirEdit.xhtml	4 May 2007 12:35:28 -0000	1.21
  +++ dirEdit.xhtml	7 May 2007 11:42:31 -0000	1.22
  @@ -62,7 +62,7 @@
                     rendered="#{directoryHome.managed}"/>
   </div>
   
  -<div class="formFields formBorder wideLabels">
  +<div class="formFields formBorder">
   
       <s:validateAll>
   
  @@ -86,14 +86,11 @@
               </div>
           </s:div>
   
  -        <s:decorate>
  -            <div class="entry">
  -                <div class="label">Name:</div>
  -                <div class="input">
  -                    <h:inputText size="40" maxlength="255" id="name" required="true" tabindex="1"
  -                                 value="#{directoryHome.instance.name}"/>
  -                </div>
  -            </div>
  +        <s:decorate id="nameDecorate" template="includes/formFieldDecorate.xhtml">
  +            <ui:define name="label">Name</ui:define>
  +            <h:inputText size="40" maxlength="255" required="true" tabindex="1" value="#{directoryHome.instance.name}">
  +                <a:support event="onblur" reRender="nameDecorate"/>
  +            </h:inputText>
           </s:decorate>
   
           <ui:include src="includes/accessLevelSelector.xhtml"/>
  
  
  
  1.9       +74 -85    jboss-seam/examples/wiki/view/userHome.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: userHome.xhtml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/view/userHome.xhtml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -b -r1.8 -r1.9
  --- userHome.xhtml	5 May 2007 00:34:13 -0000	1.8
  +++ userHome.xhtml	7 May 2007 11:42:31 -0000	1.9
  @@ -47,18 +47,20 @@
       </ui:include>
   </s:span>
   
  +<div id="formMessageBox" class="messageBox"><table id="formMessageTable"/></div>
  +
   <h:form>
       <div class="form">
   
       <script type="text/javascript">jQuery(function() {
  -        jQuery('#formTabs').tabs();
  +        jQuery('#formTabs').tabs({onClick: function(){formTabClicked()} });
       });</script>
       <div id="formTabs">
   
           <ul>
  -            <li><a href="#userProfile">Profile</a></li>
  -            <li><a href="#userAccount">Account</a></li>
  -            <li><a href="#userPreferences">Preferences</a></li>
  +            <li id="userProfileTab"><a href="#userProfile">Profile</a></li>
  +            <li id="userAccountTab"><a href="#userAccount">Account</a></li>
  +            <li id="userPrefsTab"><a href="#userPreferences">Preferences</a></li>
           </ul>
   
           <div id="userProfile">
  @@ -66,84 +68,70 @@
           </div>
   
           <div id="userAccount">
  +
  +            <a:region>
               <div class="formFields wideLabels">
                   <s:validateAll>
   
  -                    <s:decorate id="firstnameDecorate">
  -                        <div class="entry">
  -                            <div class="label">First name:</div>
  -                            <div class="input">
  -                                <h:inputText tabindex="1" size="40" maxlength="63" required="true"
  -                                             id="firstname" value="#{userHome.instance.firstname}">
  +                    <s:decorate id="firstnameDecorate" template="includes/formFieldDecorate.xhtml">
  +                        <ui:param name="tabId" value="userAccountTab"/>
  +                        <ui:param name="fieldId" value="firstname"/>
  +                        <ui:define name="label">First name</ui:define>
  +                        <h:inputText tabindex="1" size="40" maxlength="63" required="true" value="#{userHome.instance.firstname}">
                                       <a:support event="onblur" reRender="firstnameDecorate"/>
                                   </h:inputText>
  -                            </div>
  -                        </div>
                       </s:decorate>
   
  -                    <s:decorate  id="lastnameDecorate">
  -                        <div class="entry">
  -                            <div class="label">Last name:</div>
  -                            <div class="input">
  -                                <h:inputText tabindex="2" size="40" maxlength="63" required="true"
  -                                             id="lastname" value="#{userHome.instance.lastname}">
  +                    <s:decorate id="lastnameDecorate" template="includes/formFieldDecorate.xhtml">
  +                        <ui:param name="tabId" value="userAccountTab"/>
  +                        <ui:param name="fieldId" value="lastname"/>
  +                        <ui:define name="label">Last name</ui:define>
  +                        <h:inputText tabindex="1" size="40" maxlength="63" required="true" value="#{userHome.instance.lastname}">
                                       <a:support event="onblur" reRender="lastnameDecorate"/>
                                   </h:inputText>
  -                            </div>
  -                        </div>
                       </s:decorate>
   
  -                    <s:decorate id="emailDecorate">
  -                        <div class="entry">
  -                            <div class="label">E-Mail:</div>
  -                            <div class="input">
  -                                <h:inputText tabindex="3" size="40" maxlength="255" required="true"
  -                                             id="email" value="#{userHome.instance.email}"
  +                    <s:decorate id="emailDecorate" template="includes/formFieldDecorate.xhtml">
  +                        <ui:param name="tabId" value="userAccountTab"/>
  +                        <ui:param name="fieldId" value="email"/>
  +                        <ui:define name="label">E-Mail</ui:define>
  +                        <h:inputText tabindex="3" size="40" maxlength="255" required="true" value="#{userHome.instance.email}"
                                                disabled="#{userHome.instance.username == guestUser.username}">
                                       <a:support event="onblur" reRender="emailDecorate"/>
                                   </h:inputText>
  -                            </div>
  -                        </div>
                       </s:decorate>
   
  -                    <s:decorate id="usernameDecorate">
  -                        <div class="entry">
  -                            <div class="label">Username:</div>
  -                            <div class="input">
  -                                <h:inputText tabindex="4" size="16" maxlength="16" required="true"
  -                                             id="username" value="#{userHome.instance.username}"
  +                    <s:decorate id="usernameDecorate" template="includes/formFieldDecorate.xhtml">
  +                        <ui:param name="tabId" value="userAccountTab"/>
  +                        <ui:param name="fieldId" value="username"/>
  +                        <ui:define name="label">Username</ui:define>
  +                        <h:inputText tabindex="4" size="16" maxlength="16" required="true" value="#{userHome.instance.username}"
                                                disabled="#{userHome.instance.username == adminUser.username
                                                            or userHome.instance.username == guestUser.username}">
                                       <a:support event="onblur" action="#{userHome.validateUsername}" reRender="usernameDecorate"/>
                                   </h:inputText>
  -                            </div>
  -                        </div>
                       </s:decorate>
   
  -                    <s:decorate id="passwordDecorate">
  -                        <div class="entry">
  -                            <div class="label">Password:</div>
  -                            <div class="input">
  +                    <s:decorate id="passwordDecorate" template="includes/formFieldDecorate.xhtml">
  +                        <ui:param name="tabId" value="userAccountTab"/>
  +                        <ui:param name="fieldId" value="password"/>
  +                        <ui:define name="label">Password</ui:define>
                                   <h:inputSecret tabindex="5" size="15" maxlength="15"
  -                                               id="password" redisplay="true" value="#{userHome.password}"
  +                                       redisplay="true" value="#{userHome.password}"
                                                  disabled="#{userHome.instance.username == guestUser.username}">
                                       <a:support event="onblur" action="#{userHome.validatePassword}" reRender="passwordDecorate"/>
                                   </h:inputSecret>
  -                            </div>
  -                        </div>
                       </s:decorate>
   
  -                    <s:decorate id="passwordControlDecorate">
  -                        <div class="entry">
  -                            <div class="label">Repeat password:</div>
  -                            <div class="input">
  +                    <s:decorate id="passwordControlDecorate" template="includes/formFieldDecorate.xhtml">
  +                        <ui:param name="tabId" value="userAccountTab"/>
  +                        <ui:param name="fieldId" value="passwordControl"/>
  +                        <ui:define name="label">Repeat password</ui:define>
                                   <h:inputSecret tabindex="6" size="15" maxlength="15"
  -                                               id="passwordControl" redisplay="true" value="#{userHome.passwordControl}"
  +                                       redisplay="true" value="#{userHome.passwordControl}"
                                                  disabled="#{userHome.instance.username == guestUser.username}">
                                   <a:support event="onblur" action="#{userHome.validatePasswordControl}" reRender="passwordControlDecorate"/>
                               </h:inputSecret>
  -                            </div>
  -                        </div>
                       </s:decorate>
   
                       <s:div rendered="#{s:hasPermission('User', 'isAdmin', currentUser)
  @@ -160,13 +148,11 @@
   
                       </s:div>
   
  -                    <s:div styleClass="entry">
  +                    <s:div styleClass="entry" rendered="#{userHome.instance.id != adminUser.id and userHome.instance.id != guestUser.id}">
                           <s:div styleClass="label">Roles:</s:div>
                           <div class="input">
                               <h:selectManyListbox value="#{userHome.roles}" tabindex="8"
  -                                    disabled="#{!s:hasPermission('User', 'editRoles', currentUser)
  -                                                or userHome.instance.id == adminUser.id
  -                                                or userHome.instance.id == guestUser.id}"
  +                                    disabled="#{!s:hasPermission('User', 'editRoles', currentUser)}"
                                       converter="#{entityConverter}">
                                   <s:selectItems value="#{rolesList}"
                                                  var="role"
  @@ -177,11 +163,14 @@
   
                   </s:validateAll>
               </div>
  +            </a:region>
  +            
           </div>
   
           <div id="userPreferences">
               <div class="formFields wideLabels">
                   <ui:include src="includes/preferencesEditor.xhtml">
  +                    <ui:param name="tabId" value="userPrefsTab"/>
                       <ui:param name="preferenceComponents" value="#{userPreferenceComponents}"/>
                   </ui:include>
               </div>
  @@ -201,9 +190,9 @@
                                              and s:hasPermission('User', 'isAdmin', currentUser)}"
                                  action="#{userHome.createHomeDirectory}"><span class="buttonLabel">Create Home Directory</span></h:commandLink>
   
  -                <h:commandLink id="update" styleClass="button"
  +                <a:commandLink id="update" styleClass="button saveButton" reRender="body"
                                  action="#{userHome.update}"
  -                               tabindex="9" accesskey="U"><span class="buttonLabel"><u>U</u>pdate</span></h:commandLink>
  +                               tabindex="9" accesskey="S"><span class="buttonLabel"><u>S</u>ave Settings</span></a:commandLink>
   
                   <h:outputLink id="delete" value="#" tabindex="9" accesskey="D" styleClass="button"
                                 rendered="#{s:hasPermission('User', 'delete', userHome.instance)}"><j4j:idProxy
  
  
  
  1.32      +150 -127  jboss-seam/examples/wiki/view/docEdit.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: docEdit.xhtml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/view/docEdit.xhtml,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -b -r1.31 -r1.32
  --- docEdit.xhtml	4 May 2007 18:25:51 -0000	1.31
  +++ docEdit.xhtml	7 May 2007 11:42:31 -0000	1.32
  @@ -48,6 +48,8 @@
   
   <ui:define name="content">
   
  +    <div id="formMessageBox" class="messageBox"><table id="formMessageTable"/></div>
  +
       <s:span rendered="#{documentHome.managed}">
           <ui:include src="includes/directorySelector.xhtml">
               <ui:param name="home" value="#{documentHome}"/>
  @@ -67,51 +69,30 @@
       </s:span>
   
       <h:form>
  -
           <div class="form">
  -            <div class="formHead">
  -                <h:outputText value="New document: #{documentHome.instance.name}" rendered="#{!documentHome.managed}"/>
  -                <h:outputText value="Editing document: #{documentHome.instance.name}"
  -                              rendered="#{documentHome.managed}"/>
  -            </div>
  -
  -            <div class="formFields formBorder">
  -
  -                <s:div styleClass="entry" rendered="#{documentHome.managed}">
  -                    <div class="label">In directory:</div>
  -                    <div class="output">
  -                        <s:span id="directoryNameDisplay">#{documentHome.parentDirectory}</s:span>
  -
  -                        <h:outputLink id="selectDirectory" value="#" tabindex="1" styleClass="buttonNonpersistent"><j4j:idProxy
  -                                        id="openDialogDirectorySelection"/><span class="buttonLabel">...</span></h:outputLink>
  -                    </div>
  -                </s:div>
   
  -                <s:div styleClass="entry" rendered="#{documentHome.managed}">
  -                    <div class="label">Created On:</div>
  -                    <div class="output">
  -                        <h:outputText value="#{documentHome.instance.createdOn}">
  -                            <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
  -                        </h:outputText>
  -                        <s:span id="ownerDisplay">&#160;(#{documentHome.instance.createdBy.username})</s:span>
  -                        <h:outputLink id="selectOwner" value="#" tabindex="1" styleClass="buttonNonpersistent"
  -                                      rendered="#{s:hasPermission('User', 'isAdmin', currentUser)}"><j4j:idProxy
  -                                        id="openDialogOwnerSelection"/><span class="buttonLabel">...</span></h:outputLink>
  -                    </div>
  -                </s:div>
  -
  -                <s:validateAll>
  -
  -                    <ui:include src="includes/accessLevelSelector.xhtml"/>
  +            <script type="text/javascript">jQuery(function() {
  +                jQuery('#formTabs').tabs({onClick: function(){formTabClicked()} });
  +            });</script>
  +            <div id="formTabs">
   
  -                    <s:decorate>
  -                        <div class="entry">
  -                            <div class="label">Name:</div>
  -                            <div class="input">
  -                                <h:inputText tabindex="2" size="80" maxlength="255" id="name" required="true"
  -                                             value="#{documentHome.instance.name}"/>
  -                            </div>
  -                        </div>
  +                <ul>
  +                    <li id="docContentTab"><a href="#docContent">Content</a></li>
  +                    <li id="docPropertiesTab"><a href="#docProperties">Properties</a></li>
  +                </ul>
  +
  +                <div id="docContent">
  +
  +                    <a:region>
  +                        <div class="formFields">
  +
  +                            <s:decorate id="nameDecorate" template="includes/formFieldDecorate.xhtml">
  +                                <ui:param name="tabId" value="docContentTab"/>
  +                                <ui:param name="fieldId" value="name"/>
  +                                <ui:define name="label">Name</ui:define>
  +                                <h:inputText tabindex="2" size="80" maxlength="255" required="true" value="#{documentHome.instance.name}">
  +                                    <a:support event="onblur" reRender="nameDecorate"/>
  +                                </h:inputText>
                       </s:decorate>
   
                       <s:div styleClass="entry">
  @@ -122,11 +103,10 @@
                           </div>
                       </s:div>
   
  -                    <s:decorate>
  -                        <div class="entry">
  -                            <div class="label">Content:</div>
  -                            <s:div styleClass="input">
  -
  +                            <s:decorate id="contentDecorate" template="includes/formFieldDecorate.xhtml">
  +                                <ui:param name="tabId" value="docContentTab"/>
  +                                <ui:param name="fieldId" value="content"/>
  +                                <ui:define name="label">Content</ui:define>
                                   <script type="text/javascript">jQuery(function() {
                                       jQuery("#contentTextEdit").Resizable({
                                           minHeight: 50,
  @@ -139,25 +119,31 @@
                                       });
                                   });</script>
                                   <div id="contentTextEdit">
  -                                    <h:inputTextarea tabindex="3" required="true"
  +                                    <s:span rendered="#{documentHome.enabledPreview}">
  +                                        <h:inputTextarea tabindex="3"
                                                        cols="#{docEditorPreferences.properties['regularEditAreaColumns']}"
                                                        rows="#{docEditorPreferences.properties['regularEditAreaRows']}"
  -                                                     id="contentTextArea"
  +                                                         id="contentTextAreaWithPreview"
                                                        value="#{documentHome.formContent}">
                                           <a:support event="onkeyup" reRender="preview" requestDelay="3000" eventQueue="editKeyPress"/>
                                       </h:inputTextarea>
  +                                    </s:span>
  +                                    <s:span rendered="#{!documentHome.enabledPreview}">
  +                                        <h:inputTextarea tabindex="3"
  +                                                         cols="#{docEditorPreferences.properties['regularEditAreaColumns']}"
  +                                                         rows="#{docEditorPreferences.properties['regularEditAreaRows']}"
  +                                                         id="contentTextArea"
  +                                                         value="#{documentHome.formContent}"/>
  +                                    </s:span>
                                       <div id="contentTextEditResizeHandle"/>
                                   </div>
  -
  -                            </s:div>
  -                        </div>
                       </s:decorate>
   
                       <s:div styleClass="entry">
                           <div class="label">&#160;</div>
                           <div class="input">
                               <h:selectBooleanCheckbox value="#{documentHome.enabledPreview}" tabindex="3">
  -                                <a:support event="onchange" reRender="preview,pluginSwitch"/>
  +                                        <a:support event="onchange" reRender="preview,contentDecorate,pluginSwitch"/>
                               </h:selectBooleanCheckbox>
                               Show interactive preview
                           </div>
  @@ -175,8 +161,44 @@
                           </s:div>
                       </s:div>
   
  +                        </div>
  +                    </a:region>
  +
  +                </div>
  +
  +                <div id="docProperties">
  +
  +                    <a:region>
  +                        <div class="formFields">
  +
  +                            <s:div styleClass="entry" rendered="#{documentHome.managed}">
  +                                <div class="label">In directory:</div>
  +                                <div class="output">
  +                                    <s:span id="directoryNameDisplay">#{documentHome.parentDirectory}</s:span>
  +
  +                                    <h:outputLink id="selectDirectory" value="#" tabindex="1" styleClass="buttonNonpersistent"><j4j:idProxy
  +                                                    id="openDialogDirectorySelection"/><span class="buttonLabel">...</span></h:outputLink>
  +                                </div>
  +                            </s:div>
  +
  +                            <s:div styleClass="entry" rendered="#{documentHome.managed}">
  +                                <div class="label">Created On:</div>
  +                                <div class="output">
  +                                    <h:outputText value="#{documentHome.instance.createdOn}">
  +                                        <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
  +                                    </h:outputText>
  +                                    <s:span id="ownerDisplay">&#160;(#{documentHome.instance.createdBy.username})</s:span>
  +                                    <h:outputLink id="selectOwner" value="#" tabindex="1" styleClass="buttonNonpersistent"
  +                                                  rendered="#{s:hasPermission('User', 'isAdmin', currentUser)}"><j4j:idProxy
  +                                                    id="openDialogOwnerSelection"/><span class="buttonLabel">...</span></h:outputLink>
  +                                </div>
  +                            </s:div>
  +
  +                            <ui:include src="includes/accessLevelSelector.xhtml"/>
  +
  +
                       <s:div styleClass="entry">
  -                        <div class="label">&#160;</div>
  +                                <div class="label">Options:</div>
                           <div class="input">
                               <h:selectBooleanCheckbox value="#{documentHome.instance.enableComments}" tabindex="3">
                                   <a:support event="onchange" reRender="commentFormSwitch"/>
  @@ -213,22 +235,25 @@
                           </s:div>
                       </s:div>
   
  -                </s:validateAll>
  +                        </div>
  +                    </a:region>
   
               </div>
  -            <div class="formControls">
   
  +            </div>
  +
  +            <div class="formControls">
                   <div class="entry">
                       <div class="label">&#160;</div>
                       <div class="input">
   
                           <h:commandLink id="save" action="#{documentHome.persist}"
                                          rendered="#{!documentHome.managed}"
  -                                       tabindex="4" accesskey="S" styleClass="button"><span class="buttonLabel"><u>S</u>ave</span></h:commandLink>
  +                                       tabindex="4" accesskey="S" styleClass="button saveButton"><span class="buttonLabel"><u>S</u>ave</span></h:commandLink>
   
                           <h:commandLink id="update" action="#{documentHome.update}"
                                      rendered="#{documentHome.managed}"
  -                                   tabindex="4" accesskey="U" styleClass="button"><span class="buttonLabel"><u>U</u>pdate</span></h:commandLink>
  +                                   tabindex="4" accesskey="U" styleClass="button saveButton"><span class="buttonLabel"><u>U</u>pdate</span></h:commandLink>
   
                           <h:outputLink id="delete" value="#" tabindex="4" accesskey="D" styleClass="button"
                                         rendered="#{documentHome.managed and documentHome.instance.id != wikiStart.id}"><j4j:idProxy
  @@ -236,11 +261,9 @@
   
                       </div>
                   </div>
  -
               </div>
   
           </div>
  -
       </h:form>
   
       <s:div styleClass="documentDisplay" id="preview">
  
  
  



More information about the jboss-cvs-commits mailing list