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

Christian Bauer christian at hibernate.org
Tue Sep 4 05:33:18 EDT 2007


  User: cbauer  
  Date: 07/09/04 05:33:18

  Added:       examples/wiki/view                                 
                        dirEdit_d.xhtml dirDisplay_m.xhtml fileEdit_d.xhtml
                        docHistory_d.xhtml docDisplay_d.xhtml
                        docEdit_m.xhtml docDisplay_m.xhtml docEdit_d.xhtml
                        search_d.xhtml search_m.xhtml adminHome_m.xhtml
                        dirDisplay_d.xhtml userRegister_m.xhtml
                        docHistory_m.xhtml userRegister_d.xhtml
                        userList_m.xhtml adminHome_d.xhtml fileEdit_m.xhtml
                        userHome_m.xhtml dirEdit_m.xhtml userHome_d.xhtml
                        userList_d.xhtml
  Removed:     examples/wiki/view                                 
                        docEdit.xhtml adminHome.xhtml docHistory.xhtml
                        userList.xhtml dirEdit.xhtml userRegister.xhtml
                        dirDisplay.xhtml docDisplay.xhtml search.xhtml
                        fileEdit.xhtml userHome.xhtml
  Log:
  New skin for cellphones
  
  Revision  Changes    Path
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/dirEdit_d.xhtml
  
  Index: dirEdit_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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: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="screenname">
      <h:outputText value="Create directory" rendered="#{!directoryHome.managed}"/>
      <h:outputText value="Edit directory" rendered="#{directoryHome.managed}"/>
  </ui:define>
  
  <ui:define name="controlTwo">
  
      <s:link id="exitManaged" styleClass="linkNavigation" rendered="#{directoryHome.managed}" action="exitManaged"
              accesskey="E"><u>E</u>xit Editor</s:link>
  
      <s:link id="exitUnmanaged" styleClass="linkNavigation" rendered="#{!directoryHome.managed}" action="exitUnmanaged"
              accesskey="E"><u>E</u>xit Editor</s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
  <s:span rendered="#{s:hasPermission('User', 'isAdmin', currentUser) and directoryHome.managed and directoryHome.instance.id != wikiPreferences.memberAreaId}">
      <ui:include src="includes/ownerSelector.xhtml">
          <ui:param name="home" value="#{directoryHome}"/>
      </ui:include>
  </s:span>
  
  <s:span rendered="#{directoryHome.managed and !empty directoryHome.parentDirectory and directoryHome.instance.id != wikiPreferences.memberAreaId}">
      <ui:include src="includes/deleteConfirmation.xhtml">
          <ui:param name="home" value="#{directoryHome}"/>
      </ui:include>
  </s:span>
  
  
  <h:form id="directoryEditForm" styleClass="box">
  <div class="form">
  
  <ui:include src="includes/statusIndicator.xhtml"/>
  
  <div class="formHead">
      <h:outputText value="New directory" rendered="#{!directoryHome.managed}"/>
      <h:outputText value="Edit directory" rendered="#{directoryHome.managed}"/>
  </div>
  
  <div class="formFields formBorder">
  
      <s:validateAll>
  
          <s:div styleClass="entry" rendered="#{!empty directoryHome.parentDirectory}">
              <div class="label">Parent:</div>
              <div class="output">
                  <h:outputText value="#{directoryHome.parentDirectory.name}"/>
              </div>
          </s:div>
  
          <s:div styleClass="entry" rendered="#{directoryHome.managed}">
              <div class="label">Created On:</div>
              <div class="output">
                  <h:outputText value="#{directoryHome.instance.createdOn}">
                      <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
                  </h:outputText>
                  <s:span id="ownerDisplay">&#160;(#{directoryHome.instance.createdBy.username})</s:span>
                  <h:outputLink id="selectOwner" value="#" tabindex="1" styleClass="buttonNonpersistent"
                                rendered="#{s:hasPermission('User', 'isAdmin', currentUser) and directoryHome.instance.id != wikiPreferences.memberAreaId}"><j4j:idProxy
                                  id="openDialogOwnerSelection"/><span class="buttonLabel">...</span></h:outputLink>
              </div>
          </s:div>
  
          <s:decorate id="nameDecorate" template="includes/formFieldDecorate.xhtml">
              <ui:define name="label">Name</ui:define>
              <h:inputText size="25" maxlength="255" required="true" tabindex="1" value="#{directoryHome.instance.name}">
                  <a:support status="directoryEditForm:status" event="onblur" reRender="nameDecorate"/>
              </h:inputText>
          </s:decorate>
  
          <s:decorate id="descriptionDecorate" template="includes/formFieldDecorate.xhtml">
              <ui:define name="label">Description</ui:define>
              <h:inputText size="50" maxlength="512" required="false" tabindex="1" value="#{directoryHome.instance.description}">
                  <a:support status="directoryEditForm:status" event="onblur" reRender="descriptionDecorate"/>
              </h:inputText>
          </s:decorate>
  
          <s:span rendered="#{directoryHome.instance.id != wikiPreferences.memberAreaId}">
              <ui:include src="includes/accessLevelSelector.xhtml"/>
          </s:span>
  
      </s:validateAll>
  
      <s:span id="defaultDocumentSelector">
          <s:div styleClass="entry" rendered="#{directoryHome.managed and !empty directoryHome.parentDirectory and !empty directoryHome.childDocuments}">
              <div class="label">Default document:</div>
              <div class="input">
                  <h:selectOneMenu value="#{directoryHome.instance.defaultDocument}" converter="#{restrictedEntityConverter}" tabindex="2">
                      <s:selectItems value="#{directoryHome.childDocuments}"
                                     var="document"
                                     label="#{wiki:truncateString(document.name, 40, '...')}"
                                     noSelectionLabel="No default document"/>
                  </h:selectOneMenu>
              </div>
          </s:div>
      </s:span>
  
      <s:div styleClass="entry"
             rendered="#{!empty directoryHome.instance.children and s:hasPermission('Node', 'editMenu', directoryHome.instance)}">
          <div class="label">Menu items:</div>
          <div class="input">
  
              <h:dataTable id="menuItemTable" var="node" style="width:50%"
                           value="#{directoryHome.instance.children}"
                           styleClass="datatable"
                           columnClasses="onePercentColumn alignCenter, onePercentColumn alignCenter, onePercentColumn alignCenter, onePercentColumn alignCenter, defaultColumn alignLeft"
                           rowClasses="rowEven,rowOdd"
                           cellpadding="0" cellspacing="0" border="0">
  
                  <h:column>
                      <a:commandLink rendered="#{uiComponent['directoryEditForm:menuItemTable'].rowIndex != 0}"
                                     status="directoryEditForm:status"
                                     action="#{directoryHome.moveNode(uiComponent['directoryEditForm:menuItemTable'].rowIndex, uiComponent['directoryEditForm:menuItemTable'].rowIndex-1)}"
                                     reRender="menuItemTable, defaultDocumentSelector">
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/up.gif" width="18" height="18"/>
                      </a:commandLink>
                  </h:column>
                  <h:column>
                      <a:commandLink rendered="#{uiComponent['directoryEditForm:menuItemTable'].rowIndex != uiComponent['directoryEditForm:menuItemTable'].rowCount-1}"
                                     status="directoryEditForm:status"
                                     action="#{directoryHome.moveNode(uiComponent['directoryEditForm:menuItemTable'].rowIndex, uiComponent['directoryEditForm:menuItemTable'].rowIndex+1)}"
                                     reRender="menuItemTable, defaultDocumentSelector">
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/down.gif" width="18" height="18"/>
                      </a:commandLink>
                  </h:column>
  
                  <h:column>
                      <h:selectBooleanCheckbox value="#{node.menuItem}" tabindex="3"/>
                  </h:column>
  
                  <h:column>
                      <a:outputPanel>
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.dir.gif"
                                          width="18" height="20"
                                          rendered="#{wiki:isDirectory(node)}"/>
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.doc.gif"
                                          width="18" height="20"
                                          rendered="#{wiki:isDocument(node)}"/>
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/#{fileMetaMap[node.contentType].displayIcon}"
                                          width="18" height="20"
                                          rendered="#{wiki:isFile(node) and !empty fileMetaMap[node.contentType]}"/>
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/#{fileMetaMap['generic'].displayIcon}"
                                          width="18" height="20"
                                          rendered="#{wiki:isFile(node) and empty fileMetaMap[node.contentType]}"/>
                      </a:outputPanel>
                  </h:column>
  
                  <h:column>
                      <a:outputPanel>
                          <h:outputText value="#{wiki:truncateString(node.name, 40, '...')}"/>
                      </a:outputPanel>
                  </h:column>
  
              </h:dataTable>
  
          </div>
      </s:div>
  
      <s:div styleClass="entry">
          <div class="label">&#160;</div>
          <div class="input">
              <h:selectBooleanCheckbox value="#{directoryHome.hasFeed}" tabindex="2"
                                       disabled="#{empty directoryHome.parentDirectory}"/>
              Enable syndication feed (disabling invalidates subcriber link)
              <a:commandLink id="resetFeed" reRender="messageBoxContainer"
                             action="#{directoryHome.resetFeed}"
                             rendered="#{!empty directoryHome.instance.feed}"
                             styleClass="buttonNonpersistent"><span class="buttonLabel">Reset Feed</span></a:commandLink>
          </div>
      </s:div>
  
  </div>
  <div class="formControls wideLabels">
  
      <div class="entry">
          <div class="label">&#160;</div>
          <div class="input">
  
              <h:commandLink id="save" styleClass="button"
                             action="#{directoryHome.persist}"
                             rendered="#{!directoryHome.managed}"
                             tabindex="6" accesskey="S"><span class="buttonLabel"><u>S</u>ave</span></h:commandLink>
  
              <h:commandLink id="update" styleClass="button"
                             action="#{directoryHome.update}"
                             rendered="#{directoryHome.managed}"
                             tabindex="7" accesskey="U"><span class="buttonLabel"><u>U</u>pdate</span></h:commandLink>
  
              <h:outputLink id="delete" value="#" tabindex="8" accesskey="D" styleClass="button"
                            rendered="#{directoryHome.managed and !empty directoryHome.parentDirectory and directoryHome.instance.id != wikiPreferences.memberAreaId}"><j4j:idProxy
                      id="openDialogDelete"/><span class="buttonLabel"><u>D</u>elete</span></h:outputLink>
  
          </div>
      </div>
  
  </div>
  
  </div>
  </h:form>
  
  
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  </ui:composition>
  
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/dirDisplay_m.xhtml
  
  Index: dirDisplay_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">Directory: #{directoryHome.instance.name}</ui:define>
  
  <ui:define name="control">
  
      <s:fragment rendered="#{!empty directoryHome.parentDirectory}">
  
          <s:link id="createDir"  styleClass="linkNavigation" accesskey="S" view="/dirEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'create', directoryHome.instance)}">New <u>S</u>ubdirectory
              <f:param name="directoryId"/>
              <f:param name="parentDirectoryId" value="#{directoryHome.instance.id}"/>
          </s:link>
  
          <s:link id="editDir"    styleClass="linkNavigation" accesskey="E" view="/dirEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'edit', directoryHome.instance)}"><u>E</u>dit Directory</s:link>
  
          <s:link id="createDoc" styleClass="linkNavigation" accesskey="N" view="/docEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'create', directoryHome.instance)}"><u>N</u>ew Document
              <f:param name="documentId"/>
              <f:param name="parentDirectoryId" value="#{directoryHome.instance.id}"/>
          </s:link>
  
          <s:link id="uploadFile" styleClass="linkNavigation" accesskey="U" view="/fileEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'create', directoryHome.instance)}"><u>U</u>pload File
              <f:param name="fileId"/>
              <f:param name="parentDirectoryId" value="#{directoryHome.instance.id}"/>
          </s:link>
  
      </s:fragment>
  
      <s:fragment rendered="#{empty directoryHome.parentDirectory}">
          <s:link id="createArea" styleClass="linkNavigation" accesskey="N" view="/dirEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'create', directoryHome.instance)}"><u>N</u>ew Area
              <f:param name="directoryId"/>
              <f:param name="parentDirectoryId" value="#{directoryHome.instance.id}"/>
          </s:link>
  
          <s:link id="editRoot" styleClass="linkNavigation" accesskey="E" view="/dirEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'edit', directoryHome.instance)}"><u>E</u>dit Wiki Root
              <f:param name="parentDirectoryId"/>
          </s:link>
  
      </s:fragment>
  
      <h:outputLink value="#{facesContext.externalContext.request.contextPath}/servlets/feeds/atom.seam?feedId=#{directoryHome.instance.feed.id}"
                    styleClass="linkNavigation" rendered="#{not empty directoryHome.instance.feed}">Subscribe</h:outputLink>
  
  </ui:define>
  
  <ui:define name="content">
  
  <div class="directoryPathPanel">
  
      <s:link view="/dirDisplay_#{skin}.xhtml" value="#{wikiRoot.name}" styleClass="directoryButton" tabindex="1">
          <f:param name="directoryId" value="#{wikiRoot.id}"/>
      </s:link>
      <h:outputText value="/" styleClass="directorySeparator"/>
  
      <h:panelGroup>
          <ui:repeat var="directory" value="#{breadcrumb}">
              <s:link view="/dirDisplay_#{skin}.xhtml" value="#{directory.name}" styleClass="directoryButton" tabindex="1">
                  <f:param name="directoryId" value="#{directory.id}"/>
              </s:link>
              <h:outputText value="/" styleClass="directorySeparator" rendered="#{directory != directoryHome.instance}"/>
          </ui:repeat>
      </h:panelGroup>
  </div>
  
  <s:div styleClass="directoryEmpty" rendered="#{empty directoryHome.instance.children}">
          <s:link view="/dirDisplay_#{skin}.xhtml" tabindex="1" accesskey="."
                  rendered="#{!empty directoryHome.parentDirectory and s:hasPermission('Node','read',directoryHome.parentDirectory)}">
              <f:param name="directoryId" value="#{directoryHome.parentDirectory.id}"/>
              <h:panelGrid columns="2">
                  <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.dirup.gif" width="18" height="20"/>
                  <h:outputText value=".."/>
              </h:panelGrid>
          </s:link>
          <h:outputText rendered="#{empty directoryHome.parentDirectory or !s:hasPermission('Node','read',directoryHome.parentDirectory)}"
                        value="This directory is empty."/>
  
  </s:div>
  
  <h:dataTable id="directoryTable" var="node"
               value="#{directoryHome.instance.children}"
               rendered="#{!empty directoryHome.instance.children}"
               styleClass="datatable topLeftBottomBorder"
               headerClass="regularHeader rightBorder"
               columnClasses="onePercentColumn rightBorder alignCenter, defaultColumn rightBorder alignLeft"
               rowClasses="rowOdd,rowEven"
               cellpadding="0" cellspacing="0" border="0">
  
      <h:column>
          <f:facet name="header">
              <s:link view="/dirDisplay_#{skin}.xhtml" tabindex="1" accesskey="."
                      rendered="#{!empty directoryHome.parentDirectory and s:hasPermission('Node','read',directoryHome.parentDirectory)}">
                  <f:param name="directoryId" value="#{directoryHome.parentDirectory.id}"/>
                  <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.dirup.gif" width="18" height="20"/>
              </s:link>
          </f:facet>
          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.dir.gif"
                          width="18" height="20"
                          rendered="#{wiki:isDirectory(node)}"/>
          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.doc.gif"
                          width="18" height="20"
                          rendered="#{wiki:isDocument(node) and node != directoryHome.instance.defaultDocument}"/>
          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.doc.default.gif"
                          width="18" height="20"
                          rendered="#{wiki:isDocument(node) and node == directoryHome.instance.defaultDocument}"/>
  
          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/#{fileMetaMap[node.contentType].displayIcon}"
                          width="18" height="20"
                          rendered="#{wiki:isFile(node) and !empty fileMetaMap[node.contentType]}"/>
          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/#{fileMetaMap['generic'].displayIcon}"
                          width="18" height="20"
                          rendered="#{wiki:isFile(node) and empty fileMetaMap[node.contentType]}"/>
      </h:column>
  
      <h:column>
  
          <s:span rendered="#{wiki:isDirectory(node)}">
              <s:link id="browseDirectory" value="#{wiki:truncateString(node.name, 40, '...')}"
                      view="/dirDisplay_#{skin}.xhtml"
                      rendered="#{s:hasPermission('Node','read',node)}" tabindex="2">
                  <f:param name="directoryId" value="#{node.id}"/>
              </s:link>
              <h:outputText value="#{wiki:truncateString(node.name, 40, '...')}" rendered="#{!s:hasPermission('Node','read',node)}"/>
          </s:span>
  
          <s:span rendered="#{wiki:isDocument(node)}">
              <h:outputLink value="#{wiki:renderURL(node)}" rendered="#{s:hasPermission('Node','read',node)}" tabindex="2">
                  <h:outputText value="#{wiki:truncateString(node.name, 40, '...')}"/>
              </h:outputLink>
              <h:outputText value="#{node.name}" rendered="#{!s:hasPermission('Node','read',node)}"/>
          </s:span>
  
          <s:span rendered="#{wiki:isFile(node) and s:hasPermission('Node', 'edit', node)}">
              <s:link id="editFile" value="#{wiki:truncateString(node.name, 30, '...')}" tabindex="2" view="/fileEdit_#{skin}.xhtml">
                  <f:param name="fileId" value="#{node.id}"/>
                  <f:param name="parentDirectoryId" value="#{directoryHome.instance.id}"/>
              </s:link>
              <h:outputText value=" (#{wiki:displayFilesize(node.filesize)}, #{node.contentType})"/>
          </s:span>
          <h:panelGroup rendered="#{wiki:isFile(node) and !s:hasPermission('Node', 'edit', node)}">
              <h:outputLink value="#{wiki:renderURL(node)}">
                  <h:outputText value="#{wiki:truncateString(node.name, 30, '...')} (#{wiki:displayFilesize(node.filesize)}, #{node.contentType})"/>
              </h:outputLink>
          </h:panelGroup>
  
      </h:column>
  
  </h:dataTable>
  
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/fileEdit_d.xhtml
  
  Index: fileEdit_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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: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="screenname">
      <h:outputText value="Upload File" rendered="#{!fileHome.managed}"/>
      <h:outputText value="Edit File" rendered="#{fileHome.managed}"/>
  </ui:define>
  
  <ui:define name="controlTwo">
  
      <s:link id="exit" styleClass="linkNavigation" action="exit" accesskey="E"><u>E</u>xit Editor</s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
      <s:span rendered="#{fileHome.managed}">
          <ui:include src="includes/directorySelector.xhtml">
              <ui:param name="home" value="#{fileHome}"/>
          </ui:include>
      </s:span>
  
      <s:span rendered="#{s:hasPermission('User', 'isAdmin', currentUser) and fileHome.managed}">
          <ui:include src="includes/ownerSelector.xhtml">
              <ui:param name="home" value="#{fileHome}"/>
          </ui:include>
      </s:span>
  
      <s:span rendered="#{fileHome.managed}">
          <ui:include src="includes/deleteConfirmation.xhtml">
              <ui:param name="home" value="#{fileHome}"/>
          </ui:include>
      </s:span>
  
      <h:form id="fileEditForm" styleClass="box" enctype="multipart/form-data">
          <div class="form">
  
              <ui:include src="includes/statusIndicator.xhtml"/>
  
              <div class="formHead">
                  <h:outputText value="Create file" rendered="#{!fileHome.managed}"/>
                  <h:outputText value="Edit file" rendered="#{fileHome.managed}"/>
              </div>
  
              <div class="formFields formBorder wideLabels">
  
                  <s:div styleClass="entry">
                      <div class="label">Directory:</div>
                      <div class="output">
                          <s:span id="directoryNameDisplay">#{fileHome.parentDirectory.name}</s:span>
  
                          <h:outputLink rendered="#{fileHome.managed}" 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="#{fileHome.managed}">
                      <div class="label">Created On:</div>
                      <div class="output">
                          <h:outputText value="#{fileHome.instance.createdOn}">
                              <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
                          </h:outputText>
                          <s:span id="ownerDisplay">&#160;(#{fileHome.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:decorate id="nameDecorate" template="includes/formFieldDecorate.xhtml">
                      <ui:define name="label">Name</ui:define>
                      <h:inputText size="50" maxlength="255" required="true" tabindex="1" value="#{fileHome.instance.name}">
                          <a:support status="fileEditForm:status" event="onblur" reRender="nameDecorate"/>
                      </h:inputText>
                  </s:decorate>
  
                  <ui:include src="includes/accessLevelSelector.xhtml"/>
  
                  <s:div id="details" rendered="#{fileHome.managed}">
  
                      <div class="entry">
                          <div class="label">File Details:</div>
                          <div class="output">
                              <h:panelGroup>
                                  <h:outputLink value="#{wiki:renderURL(fileHome.instance)}">
                                      <h:outputText value="#{fileHome.instance.filename}, #{wiki:displayFilesize(fileHome.instance.filesize)}, #{fileHome.instance.contentType}"/>
                                  </h:outputLink>
                              </h:panelGroup>
                          </div>
                      </div>
  
                  </s:div>
  
                  <s:div rendered="#{fileHome.managed and empty fileHome.instance.imageMetaInfo and not empty fileHome.availableImporters}">
                      <div class="entry">
                          <div class="label">Converters:</div>
                          <div class="input">
                              <h:selectOneMenu value="#{fileHome.selectedImporter}" tabindex="1">
                                  <s:selectItems value="#{fileHome.availableImporters}"
                                                 var="imp"
                                                 label="#{imp.description}"
                                                 noSelectionLabel="Don't convert file"/>
                                  <a:support status="fileEditForm:status" event="onchange" reRender="uploadControl"/>
                              </h:selectOneMenu>
                          </div>
                      </div>
                  </s:div>
  
                  <s:div rendered="#{fileHome.managed and not empty fileHome.instance.imageMetaInfo}">
  
                      <div class="entry">
                          <div class="label">Original Image Size:</div>
                          <div class="output">#{fileHome.instance.imageMetaInfo.sizeX} x #{fileHome.instance.imageMetaInfo.sizeY} pixel</div>
                      </div>
  
                      <s:div styleClass="entry" id="imagePreview">
                          <div class="label">Image Preview:</div>
                          <div class="output">
                              <h:panelGrid columns="1">
                                  <h:panelGroup>
                                      <a:region>
                                          <a:commandLink status="fileEditForm:status" id="zoomOut" tabindex="2" action="#{fileHome.zoomPreviewOut}" reRender="imagePreview" alt="Zoom Out">
                                              <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/minus.gif" width="18" height="18"/>
                                          </a:commandLink>
                                          <a:commandLink status="fileEditForm:status" id="actualSize" tabindex="2" action="#{fileHome.zoomActualSize}" reRender="imagePreview" alt="Actual Size">
                                              <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/equals.gif" width="18" height="18"/>
                                          </a:commandLink>
                                          <a:commandLink status="fileEditForm:status" id="zoomIn" tabindex="2" action="#{fileHome.zoomPreviewIn}" reRender="imagePreview" alt="Zoom In">
                                              <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/plus.gif" width="18" height="18"/>
                                          </a:commandLink>
                                      </a:region>
                                  </h:panelGroup>
                                  <h:outputLink value="#{facesContext.externalContext.requestContextPath}/servlets/files/download.seam?fileId=#{fileHome.instance.id}">
                                      <s:graphicImage value="#{fileHome.instance.data}" style="border: 1px solid black;">
                                          <s:transformImageSize width="#{fileHome.imagePreviewSize}" maintainRatio="true"/>
                                      </s:graphicImage>
                                  </h:outputLink>
                              </h:panelGrid>
                          </div>
                      </s:div>
  
                      <div class="entry">
                          <div class="label">Show in documents:</div>
                          <div class="input">
                              <h:selectOneMenu value="#{fileHome.instance.imageMetaInfo.thumbnail}" styleClass="" tabindex="4">
                                  <f:selectItem itemLabel="Small thumbnail" itemValue="S"/>
                                  <f:selectItem itemLabel="Medium thumbnail" itemValue="M"/>
                                  <f:selectItem itemLabel="Large thumbnail" itemValue="L"/>
                                  <f:selectItem itemLabel="Full size " itemValue="F"/>
                                  <f:selectItem itemLabel="As attachment" itemValue="A"/>
                              </h:selectOneMenu>
                          </div>
                      </div>
  
                  </s:div>
  
                  <s:div id="uploadControl">
                      <s:decorate id="uploadDecorate" template="includes/formFieldDecorate.xhtml" rendered="#{empty fileHome.selectedImporter}">
                          <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>
  
              </div>
              <div class="formControls wideLabels">
  
                  <div class="entry">
                      <div class="label">&#160;</div>
                      <div class="input">
  
                          <h:commandLink id="save" action="#{fileHome.persist}"
                                         rendered="#{!fileHome.managed}"
                                         tabindex="5" accesskey="S" styleClass="button"><span class="buttonLabel"><u>S</u>ave</span></h:commandLink>
  
                          <h:commandLink id="update" action="#{fileHome.update}"
                                     rendered="#{fileHome.managed}"
                                     tabindex="6" accesskey="U" styleClass="button"><span class="buttonLabel"><u>U</u>pdate</span></h:commandLink>
  
                          <h:outputLink id="delete" value="#" tabindex="7" accesskey="D" styleClass="button"
                                        rendered="#{fileHome.managed}"><j4j:idProxy
                                  id="openDialogDelete"/><span class="buttonLabel"><u>D</u>elete</span></h:outputLink>
  
                      </div>
                  </div>
  
              </div>
  
          </div>
      </h:form>
  
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  
  </ui:composition>
  
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/docHistory_d.xhtml
  
  Index: docHistory_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:a="https://ajax4jsf.dev.java.net/ajax"
                  xmlns:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/template.xhtml">
  
  <ui:define name="screenname">Document History</ui:define>
  
  <ui:define name="controlTwo">
  
      <s:link id="close" styleClass="linkNavigation" action="exit" accesskey="E">Clos<u>e</u></s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
  <h:form rendered="#{historicalNodeList.rowCount >0}" styleClass="box">
  
  <div class="form">
      <div class="formHead">Document History: #{nodeHistory.currentNode.name}</div>
      <div class="formFields formBorder">
  
          <s:div styleClass="entry">
              <div class="label">Current revision:</div>
              <div class="output">
                  <h:outputText value="#{nodeHistory.currentNode.revision}"/>
              </div>
          </s:div>
  
          <s:div styleClass="entry">
              <div class="label">Parent:</div>
              <div class="output">
                  <h:outputText value="#{nodeHistory.currentNode.parent.name}"/>
              </div>
          </s:div>
  
          <s:div styleClass="entry">
              <div class="label">Created On:</div>
              <div class="output">
                  <h:outputText value="#{nodeHistory.currentNode.createdOn}">
                      <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
                  </h:outputText>
                  (#{nodeHistory.currentNode.createdBy.username})
              </div>
          </s:div>
  
          <s:div styleClass="entry" rendered="#{!empty nodeHistory.currentNode.lastModifiedBy}">
              <div class="label">Last Modified On:</div>
              <div class="output">
                  <h:outputText value="#{nodeHistory.currentNode.lastModifiedOn}">
                      <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
                  </h:outputText>
                  (#{nodeHistory.currentNode.lastModifiedBy.username})
              </div>
          </s:div>
  
          <s:div styleClass="entry">
              <div class="label">Historical revisions:</div>
              <div class="input">
  
                  <h:dataTable id="historyTable" var="hnode" style="width:50%"
                               value="#{historicalNodeList}"
                               styleClass="datatable topLeftBottomBorder"
                               columnClasses="onePercentColumn rightBorder alignCenter,
                                              twentyPercentColumn rightBorder alignLeft,
                                              twentyPercentColumn rightBorder alignCenter"
                               rowClasses="rowEven, rowOdd"
                               cellpadding="0" cellspacing="0" border="0">
  
                      <h:column>
                          #{hnode.revision}
                      </h:column>
  
                      <h:column>
                          <h:outputText value="#{hnode.lastModifiedOn}">
                              <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
                          </h:outputText>
                          <h:outputText value="&#160;(#{hnode.lastModifiedByUsername})" rendered="#{!empty hnode.lastModifiedByUsername}"/>
                          <h:outputText value="&#160;(unknown)" rendered="#{empty hnode.lastModifiedByUsername}"/>
                      </h:column>
  
                      <h:column>
                          <a:commandLink id="show"
                                         action="#{nodeHistory.displayHistoricalRevision}"
                                         reRender="messageBoxContainer, diffResult, historicalPreview"
                                         tabindex="3" styleClass="buttonNonpersistent"><span class="buttonLabel">Show</span></a:commandLink>
                          <a:commandLink id="diff"
                                         action="#{nodeHistory.diff}"
                                         reRender="messageBoxContainer, diffResult, historicalPreview"
                                         tabindex="3" styleClass="buttonNonpersistent"><span class="buttonLabel">Diff</span></a:commandLink>
                          <h:commandLink id="rollback"
                                         action="#{nodeHistory.rollback}"
                                         tabindex="4" styleClass="buttonNonpersistent"
                                         rendered="#{s:hasPermission('Node', 'edit', nodeHistory.currentNode)}"><span class="buttonLabel">Rollback</span></h:commandLink>
                      </h:column>
  
                  </h:dataTable>
  
              </div>
          </s:div>
  
      </div>
  
      <s:fragment rendered="#{s:hasPermission('User', 'isAdmin', currentUser)}">
          <div class="formControls">
              <div class="entry">
                  <div class="label">&#160;</div>
                  <div class="input">
  
                      <h:commandLink id="purge" action="#{nodeHistory.purgeHistory}"
                                 tabindex="4" accesskey="U" styleClass="button"><span class="buttonLabel">P<u>u</u>rge History</span></h:commandLink>
      
                  </div>
              </div>
          </div>
      </s:fragment>
  
  </div>
  </h:form>
  
  <br/>
  
  <s:div id="diffResult">
      <s:div styleClass="box diffOutput" rendered="#{not empty nodeHistory.diffResult}">
          <script type="text/javascript">jQuery(function() {
              wrapBoxes();
          });</script>
          <h:outputText value="#{nodeHistory.diffResult}" escape="false"/>
      </s:div>
  </s:div>
  
  <s:div id="historicalPreview">
      <s:div id="documentDisplayContainer"
             rendered="#{not empty nodeHistory.displayedHistoricalNode}"
             styleClass="box">
          <script type="text/javascript">jQuery(function() {
              wrapBoxes();
          });</script>
          <s:div id="documentDisplay" styleClass="documentDisplay">
              <wiki:formattedText value="#{nodeHistory.displayedHistoricalNode.content}"
                                  linkStyleClass="regularLink"
                                  brokenLinkStyleClass="brokenLink"
                                  attachmentLinkStyleClass="regularLink"
                                  thumbnailLinkStyleClass="regularLink"
                                  renderBaseDocument="#{nodeHistory.currentNode}"
                                  renderBaseDirectory="#{nodeHistory.currentNode.parent}"
                                  enablePlugins="false"/>
          </s:div>
      </s:div>
  </s:div>
  
  
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  </ui:composition>
  
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/docDisplay_d.xhtml
  
  Index: docDisplay_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  xmlns:j4j="http://javascript4jsf.dev.java.net/"
                  template="themes/#{wikiPreferences.themeName}/template.xhtml">
  
  <ui:define name="screenname">#{documentHome.instance.name}</ui:define>
  
  <ui:define name="controlTwo">
  
      <s:link id="createDoc" styleClass="linkNavigation" accesskey="C" view="/docEdit_#{skin}.xhtml"
              rendered="#{s:hasPermission('Node', 'create', documentHome.instance.parent)}"><u>C</u>reate
          <f:param name="documentId" value=""/>
          <f:param name="parentDirectoryId" value="#{documentHome.instance.parent.id}"/>
      </s:link>
  
      <s:link id="editDoc" styleClass="linkNavigation" accesskey="E" view="/docEdit_#{skin}.xhtml"
              rendered="#{s:hasPermission('Node', 'edit', documentHome.instance)}"><u>E</u>dit</s:link>
  
      <s:link id="showHistory" styleClass="linkNavigation" accesskey="I" view="/docHistory_#{skin}.xhtml"
              rendered="#{documentHome.historicalNodesPresent}">H<u>i</u>story
          <f:param name="nodeId" value="#{documentHome.nodeId}"/>
      </s:link>
  
      <s:link id="browseDir" styleClass="linkNavigation" accesskey="B" view="/dirDisplay_#{skin}.xhtml"><u>B</u>rowse
          <f:param name="directoryId" value="#{documentHome.parentDirectory.id}"/>
      </s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
      <div id="documentDisplayContainer" class="box">
          <s:div id="documentDisplay" styleClass="documentDisplay">
              <s:div rendered="#{documentHome.instance.nameAsTitle}"><h1 class="documentTitle">#{documentHome.instance.name}</h1></s:div>
              <wiki:formattedText value="#{documentHome.instance.content}"
                                  linkStyleClass="regularLink"
                                  brokenLinkStyleClass="brokenLink"
                                  attachmentLinkStyleClass="regularLink"
                                  thumbnailLinkStyleClass="regularLink"
                                  renderBaseDocument="#{documentHome.instance}"
                                  renderBaseDirectory="#{documentHome.parentDirectory}"
                                  enablePlugins="true"/>
          </s:div>
      </div>
  
      <ui:include src="includes/attachmentDisplay.xhtml"/>
  
      <ui:include src="includes/commentsDisplay.xhtml"/>
  
      <ui:include src="includes/commentForm.xhtml"/>
  
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  </ui:composition>
  
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/docEdit_m.xhtml
  
  Index: docEdit_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">
      <h:outputText value="Create document" rendered="#{!documentHome.managed}"/>
      <h:outputText value="Edit document" rendered="#{documentHome.managed}"/>
  </ui:define>
  
  <ui:define name="control">
  
      <s:link id="exitManaged" styleClass="linkNavigation" rendered="#{documentHome.managed}" action="exitManaged">Exit Editor</s:link>
  
      <s:link id="exitUnmanaged" styleClass="linkNavigation" rendered="#{!documentHome.managed}" action="exitUnmanaged">Exit Editor</s:link>
      
  </ui:define>
  
  <ui:define name="content">
  
      <h:form><s:validateAll>
  
          <div>Directory:&#160;#{documentHome.parentDirectory.name}</div>
          <div class="errorMessage"><h:message for="name"/></div>
          <div>Name:&#160;
              <h:inputText id="name" size="30" maxlength="255" required="true" value="#{documentHome.instance.name}"/>
          </div>
          <div>
              <h:selectBooleanCheckbox value="#{documentHome.instance.nameAsTitle}"/>
              &#160;Render name as document title
          </div>
          <div>
              <h:selectBooleanCheckbox value="#{documentHome.minorRevision}"/>
              &#160;Minor change, don't create a new revision
          </div>
  
          <s:fragment rendered="#{not documentHome.managed}">
              <div>
                  <h:selectBooleanCheckbox value="#{documentHome.pushOnFeeds}">
                  </h:selectBooleanCheckbox>
                  &#160;Create entry on parent directory feeds
              </div>
              <div>
                  <h:selectBooleanCheckbox value="#{documentHome.pushOnSiteFeed}"/>
                  &#160;Create entry on global site feed (requires entry on parent feeds)
              </div>
          </s:fragment>
  
          <s:fragment rendered="#{documentHome.managed}">
              <s:fragment rendered="#{documentHome.siteFeedEntryPresent}">
                  <div>
                      <h:selectBooleanCheckbox value="#{documentHome.pushOnFeeds}"/>
                      &#160;Push changes onto feeds
                  </div>
              </s:fragment>
              <s:fragment rendered="#{not documentHome.siteFeedEntryPresent}">
                  <s:div styleClass="entry">
                      <div>
                          <h:selectBooleanCheckbox value="#{documentHome.pushOnFeeds}"/>
                          Push changes onto feeds of parent directories
                      </div>
                  </s:div>
                  <s:div id="pushOnSiteFeedSwitch">
                      <div>
                          <h:selectBooleanCheckbox value="#{documentHome.pushOnSiteFeed}"/>
                          &#160;Create entry on  global site feed (requires changes on parent feeds)
                      </div>
                  </s:div>
              </s:fragment>
          </s:fragment>
  
          <div class="errorMessage"><h:message for="contentTextArea"/></div>
          <div>
              <h:inputTextarea required="true"
                               cols="45"
                               rows="15"
                               id="contentTextArea"
                               value="#{documentHome.formContent}"/>
          </div>
  
          <s:div styleClass="formControls">
              <h:commandButton action="#{documentHome.persist}" rendered="#{!documentHome.managed}" value="Save"/>
              <h:commandButton action="#{documentHome.update}" rendered="#{documentHome.managed}" value="Update"/>
              <h:commandButton action="#{documentHome.remove}" rendered="#{documentHome.managed and documentHome.instance.id != wikiStart.id}" value="Delete"/>
          </s:div>
  
      </s:validateAll></h:form>
  
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/docDisplay_m.xhtml
  
  Index: docDisplay_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">#{documentHome.instance.name}</ui:define>
  
  <ui:define name="control">
  
      <s:link id="createDoc" styleClass="linkNavigation" view="/docEdit_#{skin}.xhtml"
              rendered="#{s:hasPermission('Node', 'create', documentHome.instance.parent)}">Create
          <f:param name="documentId" value=""/>
          <f:param name="parentDirectoryId" value="#{documentHome.instance.parent.id}"/>
      </s:link>
  
      <s:link id="editDoc" styleClass="linkNavigation" view="/docEdit_#{skin}.xhtml"
              rendered="#{s:hasPermission('Node', 'edit', documentHome.instance)}">Edit</s:link>
  
      <s:link id="showHistory" styleClass="linkNavigation" view="/docHistory_#{skin}.xhtml"
              rendered="#{documentHome.historicalNodesPresent}">History
          <f:param name="nodeId" value="#{documentHome.nodeId}"/>
      </s:link>
  
      <s:link id="browseDir" styleClass="linkNavigation" view="/dirDisplay_#{skin}.xhtml">Browse
          <f:param name="directoryId" value="#{documentHome.parentDirectory.id}"/>
      </s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
      <s:div id="documentDisplay" styleClass="documentDisplay">
          <s:div rendered="#{documentHome.instance.nameAsTitle}"><h1 class="documentTitle">#{documentHome.instance.name}</h1></s:div>
          <wiki:formattedText value="#{wiki:disableFloats(documentHome.instance.content)}"
                              linkStyleClass="regularLink"
                              brokenLinkStyleClass="brokenLink"
                              attachmentLinkStyleClass="regularLink"
                              thumbnailLinkStyleClass="regularLink"
                              renderBaseDocument="#{documentHome.instance}"
                              renderBaseDirectory="#{documentHome.parentDirectory}"
                              enablePlugins="true"/>
      </s:div>
  
      <ui:include src="includes/attachmentDisplay.xhtml"/>
  
      <s:fragment rendered="#{not empty commentHome.comments and documentHome.instance.enableComments}">
          <br/>
          <h:dataTable value="#{commentHome.comments}" var="c"
                       rowClasses="rowOdd,rowEven"
                       cellpadding="0" cellspacing="0" border="0">
              <h:column>
                  <f:facet name="header">
                      #{wiki:sizeOf(commentHome.comments)} comment(s):
                  </f:facet>
  
                  <div class="commentSubject">
                      <h:outputText value="#{c.subject}" rendered="#{documentHome.instance.name != c.subject}"/>
                  </div>
  
                  <div class="commentAuthorDate">
                  <span class="commentDate">
                      <h:outputText value="#{c.createdOn}">
                          <f:convertDateTime pattern="dd. MMM yyyy, HH:mm" timeZone="#{wikiPreferences.timeZone}"/>
                      </h:outputText>
                      <h:outputText value="&#160;#{wikiPreferences.timeZone}"/>
                  </span>
                      <s:span>&#160;(
                          <s:span styleClass="commentAuthor" rendered="#{empty c.fromUserHomepage}">#{c.fromUserName}</s:span>
                          <s:span styleClass="commentAuthor" rendered="#{!empty c.fromUserHomepage}"><a
                                  href="http://#{c.fromUserHomepage}">#{c.fromUserName}</a></s:span>
                          <s:span styleClass="commentAuthor" rendered="#{!empty c.fromUserEmail}">,&#160;
                              <h:outputLink value="#{wiki:escapeEmailURL(wiki:concat('mailto:', c.fromUserEmail))}">#{wiki:escapeAtSymbol(c.fromUserEmail)}</h:outputLink>
                          </s:span>)
                      </s:span>
                  </div>
  
                  <s:div styleClass="commentText" rendered="#{c.useWikiText}">
                      <s:formattedText value="#{c.text}"/>
                  </s:div>
                  <s:div styleClass="commentText" rendered="#{not c.useWikiText and documentHome.instance.name != c.subject}" style="margin-top:15px;">
                      <h:outputText value="#{wiki:escapeHTML(c.text, true)}" escape="false"/>
                  </s:div>
                  <s:div styleClass="commentText" rendered="#{not c.useWikiText and documentHome.instance.name == c.subject}">
                      <h:outputText value="#{wiki:escapeHTML(c.text, true)}" escape="false"/>
                  </s:div>
  
                  <div align="right">
                      <h:form rendered="#{s:hasPermission('Comment', 'delete', documentHome.instance)}">
                          <h:commandButton action="#{commentHome.remove(c.id)}" value="Remove Comment"/>
                      </h:form>
                  </div>
  
              </h:column>
          </h:dataTable>
      </s:fragment>
  
      <s:fragment rendered="#{documentHome.instance.enableComments and documentHome.instance.enableCommentForm}">
          <br/>
          <div class="boxHeader">Post Comment:</div>
          <h:form id="commentForm"><s:validateAll>
  
              <div class="errorMessage"><h:message for="userName"/></div>
              <div>Name:&#160;<br/><h:inputText size="30" maxlength="100" required="true" id="userName" value="#{commentHome.comment.fromUserName}"/></div>
  
              <div class="errorMessage"><h:message for="userEmail"/></div>
              <div>E-mail address (optional):&#160;<br/><h:inputText size="30" maxlength="255" required="false" id="userEmail" value="#{commentHome.comment.fromUserEmail}"/></div>
  
              <div class="errorMessage"><h:message for="userHomepage"/></div>
              <div>Homepage URL (optional):&#160;<br/><h:inputText size="30" maxlength="1000" required="false" id="userHomepage" value="#{commentHome.comment.fromUserHomepage}"/></div>
  
              <div class="errorMessage"><h:message for="subject"/></div>
              <div>Subject:&#160;<br/><h:inputText size="30" maxlength="255" required="true" id="subject" value="#{commentHome.comment.subject}"/></div>
  
              <div class="errorMessage"><h:message for="comment"/></div>
              <div>
                  <h:inputTextarea required="true"
                                   cols="45"
                                   rows="5"
                                   id="comment"
                                   value="#{commentHome.comment.text}"/>
              </div>
  
              <s:div rendered="#{!identity.loggedIn}">
                  <div>Verification question:&#160;What is the result of&#160;<h:outputText value="#{captcha.question}"/>?</div>
                  <div class="errorMessage"><h:message for="verifyCaptcha"/></div>
                  <div>Enter response:&#160;</div>
                  <h:inputText size="5" maxlength="5" required="true" id="verifyCaptcha" value="#{captcha.response}"/>
              </s:div>
  
              <div class="formControls">
                  <h:commandButton action="#{commentHome.persist}" value="Post Comment"/>
              </div>
      
          </s:validateAll></h:form>
      </s:fragment>
  
  
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/docEdit_d.xhtml
  
  Index: docEdit_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:a="https://ajax4jsf.dev.java.net/ajax"
                  xmlns:wiki="http://jboss.com/products/seam/wiki"
                  xmlns:j4j="http://javascript4jsf.dev.java.net/"
                  template="themes/#{wikiPreferences.themeName}/template.xhtml">
  
  <ui:define name="screenname">
      <h:outputText value="Create document" rendered="#{!documentHome.managed}"/>
      <h:outputText value="Edit document" rendered="#{documentHome.managed}"/>
  </ui:define>
  
  <ui:define name="controlTwo">
  
      <s:link id="exitManaged" styleClass="linkNavigation" rendered="#{documentHome.managed}" action="exitManaged"
              accesskey="E"><u>E</u>xit Editor</s:link>
  
      <s:link id="exitUnmanaged" styleClass="linkNavigation" rendered="#{!documentHome.managed}" action="exitUnmanaged"
              accesskey="E"><u>E</u>xit Editor</s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
      <s:span rendered="#{documentHome.managed}">
          <ui:include src="includes/directorySelector.xhtml">
              <ui:param name="home" value="#{documentHome}"/>
          </ui:include>
      </s:span>
  
      <s:span rendered="#{s:hasPermission('User', 'isAdmin', currentUser) and documentHome.managed}">
          <ui:include src="includes/ownerSelector.xhtml">
              <ui:param name="home" value="#{documentHome}"/>
          </ui:include>
      </s:span>
  
      <s:span rendered="#{documentHome.managed and documentHome.instance.id != wikiStart.id}">
          <ui:include src="includes/deleteConfirmation.xhtml">
              <ui:param name="home" value="#{documentHome}"/>
          </ui:include>
      </s:span>
  
  
      <div id="docEditFormContainer" class="box">
      <h:form id="docEditForm">
          <div class="form">
  
              <ui:include src="includes/statusIndicator.xhtml"/>
  
              <script type="text/javascript">jQuery(function() {
                  jQuery('#formTabs').tabs(2, {onClick: function(){formTabClicked()} });
              });</script>
              <div id="formTabs" class="formTabs">
  
                  <ul>
                      <li class="formTabsTitle">
                          <h:outputText value="Create document" rendered="#{!documentHome.managed}"/>
                          <h:outputText value="Edit document" rendered="#{documentHome.managed}"/>
                      </li>
                      <li id="docContentTab"><a href="#docContent" accesskey="C"><u>C</u>ontent</a></li>
                      <li id="docPropertiesTab"><a href="#docProperties" accesskey="T">Proper<u>t</u>ies</a></li>
                  </ul>
  
                  <div id="formTabsTitle"/>
  
                  <div id="docContent">
  
                      <a:region>
                          <div class="formFields">
  
                              <s:div styleClass="entry">
                                  <div class="label">Directory:</div>
                                  <div class="output">
                                      <s:span id="directoryNameDisplay">#{documentHome.parentDirectory.name}</s:span>
  
                                      <h:outputLink id="selectDirectory" rendered="#{documentHome.managed}" 
                                                    value="#" tabindex="1"
                                                    styleClass="buttonNonpersistent"><j4j:idProxy
                                              id="openDialogDirectorySelection"/><span class="buttonLabel">...</span></h:outputLink>
                                  </div>
                              </s:div>
  
                              <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="70" maxlength="255" required="true" value="#{documentHome.instance.name}">
                                      <a:support status="docEditForm:status" event="onblur" reRender="nameDecorate"/>
                                  </h:inputText>
                              </s:decorate>
  
                              <s:div styleClass="entry">
                                  <div class="label">&#160;</div>
                                  <div class="input">
                                      <h:selectBooleanCheckbox value="#{documentHome.instance.nameAsTitle}" tabindex="2"/>
                                      Render name as document title
                                  </div>
                              </s:div>
  
                              <s:div styleClass="entry" rendered="#{documentHome.managed}">
                                  <div class="label">&#160;</div>
                                  <div class="input">
                                      <h:selectBooleanCheckbox value="#{documentHome.minorRevision}" tabindex="3"/>
                                      Minor change, don't create a new revision
                                  </div>
                              </s:div>
  
                              <s:fragment rendered="#{not documentHome.managed}">
                                  <s:div styleClass="entry">
                                      <div class="label">&#160;</div>
                                      <div class="input">
                                          <h:selectBooleanCheckbox value="#{documentHome.pushOnFeeds}" tabindex="3">
                                              <a:support status="docEditForm:status" event="onchange" reRender="pushOnSiteFeedSwitchUnmanaged"/>
                                          </h:selectBooleanCheckbox>
                                          Create entry on parent directory feeds
                                      </div>
                                  </s:div>
                                  <s:div id="pushOnSiteFeedSwitchUnmanaged">
                                      <s:div styleClass="entry">
                                          <div class="label">&#160;</div>
                                          <div class="input">
                                              <h:selectBooleanCheckbox disabled="#{not documentHome.pushOnFeeds}" value="#{documentHome.pushOnSiteFeed}" tabindex="3"/>
                                              Create entry on global site feed
                                          </div>
                                      </s:div>
                                  </s:div>
                              </s:fragment>
  
                              <s:fragment rendered="#{documentHome.managed}">
                                  <s:fragment rendered="#{documentHome.siteFeedEntryPresent}">
                                      <s:div styleClass="entry">
                                          <div class="label">&#160;</div>
                                          <div class="input">
                                              <h:selectBooleanCheckbox value="#{documentHome.pushOnFeeds}" tabindex="3"/>
                                              Push changes onto feeds
                                          </div>
                                      </s:div>
                                  </s:fragment>
                                  <s:fragment rendered="#{not documentHome.siteFeedEntryPresent}">
                                      <s:div styleClass="entry">
                                          <div class="label">&#160;</div>
                                          <div class="input">
                                              <h:selectBooleanCheckbox value="#{documentHome.pushOnFeeds}" tabindex="3">
                                                  <a:support status="docEditForm:status" event="onchange" reRender="pushOnSiteFeedSwitch"/>
                                              </h:selectBooleanCheckbox>
                                              Push changes onto feeds of parent directories
                                          </div>
                                      </s:div>
                                      <s:div id="pushOnSiteFeedSwitch">
                                          <s:div styleClass="entry">
                                              <div class="label">&#160;</div>
                                              <div class="input">
                                                  <h:selectBooleanCheckbox disabled="#{not documentHome.pushOnFeeds}" value="#{documentHome.pushOnSiteFeed}" tabindex="3"/>
                                                  Create entry on  global site feed
                                              </div>
                                          </s:div>
                                      </s:div>
                                  </s:fragment>
                              </s:fragment>
  
                              <s:decorate id="contentDecorate" template="includes/formFieldDecorate.xhtml">
                                  <ui:param name="tabId" value="docContentTab"/>
                                  <ui:param name="fieldId" value="contentTextArea"/>
                                  <ui:define name="label">Content</ui:define>
                                  <script type="text/javascript">if(!$.browser.safari &amp;&amp; !$.browser.msie){
                                      jQuery(function() {
                                          jQuery("#contentTextEdit").Resizable({
                                              minHeight: 50,
                                              handlers: {
                                                  s: '#contentTextEditResizeHandle'
                                              },
                                              onResize: function(size) {
                                                  jQuery("textarea", this).css({ height: size.height + "px" });
                                              }
                                          });
                                          jQuery("#contentTextEditResizeHandle").show();
                                      }
                                  )};</script>
                                  <div id="contentTextEdit" class="textEditResizable">
                                      <h:inputTextarea tabindex="3"
                                                       required="true"
                                                       cols="#{docEditorPreferences.properties['regularEditAreaColumns']}"
                                                       rows="#{docEditorPreferences.properties['regularEditAreaRows']}"
                                                       id="contentTextArea"
                                                       value="#{documentHome.formContent}">
                                          <a:support status="docEditForm:status" rendered="#{documentHome.enabledPreview}" event="onkeyup" reRender="preview" requestDelay="3000" eventsQueue="editKeyPress"/>
                                          <a:support status="docEditForm:status" event="onblur" reRender="contentDecorate"/>
                                      </h:inputTextarea>
                                      <div id="contentTextEditResizeHandle" class="textEditResizeHandle" style="display:none"/>
                                  </div>
                              </s:decorate>
  
                              <s:div styleClass="entry">
                                  <div class="label">&#160;</div>
                                  <div class="input">
                                      <h:selectBooleanCheckbox value="#{documentHome.enabledPreview}" tabindex="3">
                                          <a:support status="docEditForm:status" event="onchange" reRender="preview,contentDecorate,pluginSwitch"/>
                                      </h:selectBooleanCheckbox>
                                      Show interactive preview
                                  </div>
                              </s:div>
  
                              <s:div id="pluginSwitch">
                                  <s:div styleClass="entry" rendered="#{documentHome.enabledPreview}">
                                      <div class="label">&#160;</div>
                                      <div class="input">
                                          <h:selectBooleanCheckbox value="#{documentHome.showPluginPrefs}" tabindex="3">
                                              <a:support status="docEditForm:status" event="onchange" reRender="preview"/>
                                          </h:selectBooleanCheckbox>
                                          Show plugin settings in preview
                                      </div>
                                  </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">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">Options:</div>
                                  <div class="input">
                                      <h:selectBooleanCheckbox value="#{documentHome.instance.enableComments}" tabindex="3">
                                          <a:support status="docEditForm:status" event="onchange" reRender="commentFormSwitch"/>
                                      </h:selectBooleanCheckbox>
                                      Enable comments
                                  </div>
                              </s:div>
  
                              <s:div id="commentFormSwitch">
                                  <s:div styleClass="entry">
                                      <div class="label">&#160;</div>
                                      <div class="input">
                                          <h:selectBooleanCheckbox disabled="#{not documentHome.instance.enableComments}" value="#{documentHome.instance.enableCommentForm}" tabindex="3"/>
                                          Allow posting of new comments
                                      </div>
                                  </s:div>
                              </s:div>
  
                          </div>
                      </a:region>
  
                  </div>
  
              </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 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 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
                                  id="openDialogDelete"/><span class="buttonLabel"><u>D</u>elete</span></h:outputLink>
  
                      </div>
                  </div>
              </div>
  
          </div>
      </h:form>
  
      </div>
  
      <br/>
  
      <s:div id="preview">
          <s:div id="documentDisplayContainer"
                 rendered="#{documentHome.enabledPreview}"
                 styleClass="box">
              <script type="text/javascript">jQuery(function() {
                  wrapBoxes();
              });</script>
              <s:div id="documentDisplay" styleClass="documentDisplay">
                  <s:div rendered="#{documentHome.instance.nameAsTitle}"><h1 class="documentTitle">#{documentHome.instance.name}</h1></s:div>
                  <wiki:formattedText value="#{documentHome.instance.content}"
                                      linkStyleClass="regularLink"
                                      brokenLinkStyleClass="brokenLink"
                                      attachmentLinkStyleClass="regularLink"
                                      thumbnailLinkStyleClass="regularLink"
                                      renderBaseDocument="#{documentHome.instance}"
                                      renderBaseDirectory="#{documentHome.parentDirectory}"
                                      enablePlugins="true"/>
              </s:div>
          </s:div>
  
          <s:div rendered="#{documentHome.enabledPreview}">
              <ui:include src="includes/attachmentDisplay.xhtml"/>
          </s:div>
      </s:div>
  
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  
  </ui:composition>
  
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/search_d.xhtml
  
  Index: search_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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: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">
  
  <ui:define name="screenname">Search: #{wikiSearch.simpleQuery}</ui:define>
  
  <ui:define name="controlTwo">
  
      <s:link id="close" styleClass="linkNavigation" view="/wiki.xhtml" propagation="end" accesskey="E">Clos<u>e</u></s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
      <h:form id="searchForm" styleClass="box">
          <s:div styleClass="form" id="searchControl">
  
              <ui:include src="includes/statusIndicator.xhtml"/>
  
              <a:region>
  
              <h:panelGrid columns="5"
                           styleClass="datatable topLeftBottomBorder"
                           headerClass="regularHeader rightBorder"
                           columnClasses="twentyPercentColumn formFields, twentyPercentColumn formFields,
                                          twentyPercentColumn formFields, twentyPercentColumn formFields,
                                          defaultColumn alignCenter rightBorder formFields"
                           cellpadding="0" cellspacing="0" border="0">
  
                  <f:facet name="header">
                      <h:outputText value="Search"/>
                  </f:facet>
  
                  <h:panelGrid columns="2" cellpadding="0" cellspacing="0" border="0">
                      <h:outputText styleClass="label" value="In:&#160;"/>
                      <h:selectOneMenu value="#{wikiSearch.selectedSearchableEntity}" tabindex="1">
                          <s:selectItems value="#{searchRegistry.searchableEntities}"
                                         var="se"
                                         label="#{se.description}"
                                         noSelectionLabel="All"/>
                          <a:support status="searchForm:status" event="onchange" reRender="searchControl, searchPager, searchResult" action="#{wikiSearch.search}"/>
                      </h:selectOneMenu>
                  </h:panelGrid>
  
                  <h:panelGrid columns="2" rendered="#{empty wikiSearch.selectedSearchableEntity}" cellpadding="0" cellspacing="0" border="0">
                      <h:outputText styleClass="label" value="Terms:&#160;"/>
                      <h:inputText value="#{wikiSearch.simpleQuery}" size="28" maxlength="1000" tabindex="1"/>
                  </h:panelGrid>
                  <s:span rendered="#{not empty wikiSearch.selectedSearchableEntity}">&#160;</s:span>
  
                  <h:panelGrid columns="2" rendered="#{empty wikiSearch.selectedSearchableEntity}" cellpadding="0" cellspacing="0" border="0">
                      <h:selectBooleanCheckbox value="#{wikiSearch.simpleQueryMatchExactPhrase}" tabindex="1"/>
                      <h:outputText styleClass="label" style="white-space:nowrap;" value="&#160;Exact phrase"/>
                  </h:panelGrid>
                  <s:span rendered="#{not empty wikiSearch.selectedSearchableEntity}">&#160;</s:span>
  
                  <h:panelGrid columns="2" cellpadding="0" cellspacing="0" border="0">
                      <h:outputText styleClass="label" value="Results:&#160;"/>
                      <h:selectOneMenu value="#{wikiSearch.pageSize}" id="pageSize" tabindex="1">
                          <f:selectItem itemLabel="5" itemValue="5"/>
                          <f:selectItem itemLabel="15" itemValue="15"/>
                          <f:selectItem itemLabel="50" itemValue="50"/>
                          <a:support status="searchForm:status" event="onchange" reRender="searchControl, searchPager, searchResult" action="#{wikiSearch.search}"/>
                      </h:selectOneMenu>
                  </h:panelGrid>
  
                  <a:commandLink id="find" styleClass="buttonNonpersistent" reRender="workspaceSwitcher, searchControl, searchPager, searchResult"
                                 status="searchForm:status"
                                 action="#{wikiSearch.search()}"
                                 tabindex="1" accesskey="F"><span class="buttonLabel"><u>F</u>ind</span></a:commandLink>
  
              </h:panelGrid>
  
              <s:div id="searchOptions">
  
                  <s:div rendered="#{!empty wikiSearch.selectedSearchableEntity}">
  
                      <h:dataTable id="searchOptionsTable"
                                   rendered="#{not empty wikiSearch.selectedSearchableEntity}"
                                   var="search"
                                   value="#{wikiSearch.searches[wikiSearch.selectedSearchableEntity]}"
                                   styleClass="datatable topBorder topLeftBottomBorder"
                                   columnClasses="tenPercentColumn alignLeft formFields, defaultColumn alignLeft formFields rightBorder"
                                   cellpadding="0" cellspacing="0" border="0">
  
                          <h:column>
                              <h:outputText styleClass="label" value="#{search.property.description}"/>
                          </h:column>
  
                          <h:column>
  
                              <h:panelGrid columns="5" rendered="#{search.property.type == 'PHRASE'}">
                                  <h:inputText value="#{search.terms['include']}" size="32" tabindex="1"/>
                                  <h:outputText styleClass="label" value="&#160;Exclude:&#160;"/>
                                  <h:inputText value="#{search.terms['exclude']}" size="32" tabindex="1"/>
                                  <h:selectBooleanCheckbox value="#{search.terms['matchExactPhrase']}" tabindex="1"/>
                                  <h:outputText styleClass="label" value="&#160;Match exact phrase"/>
                              </h:panelGrid>
  
                              <s:div rendered="#{search.property.type == 'PASTDATE'}">
                                  <h:selectOneMenu value="#{search.terms['numOfDays']}" tabindex="1">
                                      <f:selectItem itemLabel="at any time" itemValue=""/>
                                      <f:selectItem itemLabel="last 7 days" itemValue="7"/>
                                      <f:selectItem itemLabel="last 30 days" itemValue="30"/>
                                      <f:selectItem itemLabel="last 6 months" itemValue="180"/>
                                  </h:selectOneMenu>
                              </s:div>
  
                          </h:column>
  
                      </h:dataTable>
                  </s:div>
  
              </s:div>
  
              </a:region>
          </s:div>
  
          <s:div id="searchPager">
              <h:panelGrid columns="5" styleClass="pager"
                           columnClasses="pagerIconColumn,pagerIconColumn,pagerTextColumn,pagerIconColumn,pagerIconColumn"
                           cellpadding="0" cellspacing="0" border="0"
                           rendered="#{wikiSearch.totalCount > 0}">
  
                  <h:commandLink action="#{wikiSearch.firstPage()}" rendered="#{wikiSearch.previousPageAvailable}" tabindex="7">
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/page.first.gif" width="13" height="11"/>
                  </h:commandLink>
                  <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/blank.gif" width="13" height="11"
                                  rendered="#{!wikiSearch.previousPageAvailable}"/>
  
                  <h:commandLink action="#{wikiSearch.previousPage()}" rendered="#{wikiSearch.previousPageAvailable}" tabindex="7">
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/page.previous.gif" width="13" height="11"/>
                  </h:commandLink>
                  <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/blank.gif" width="13" height="11"
                                  rendered="#{!wikiSearch.previousPageAvailable}"/>
  
                  <h:outputText value="#{wikiSearch.firstRow} to
                                       #{wikiSearch.lastRow} of
                                       #{wikiSearch.totalCount} hit(s)"/>
  
                  <h:commandLink action="#{wikiSearch.nextPage()}" rendered="#{wikiSearch.nextPageAvailable}" tabindex="7">
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/page.next.gif" width="13" height="11"/>
                  </h:commandLink>
                  <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/blank.gif" width="13" height="11"
                                  rendered="#{!wikiSearch.nextPageAvailable}"/>
  
                  <h:commandLink action="#{wikiSearch.lastPage()}" rendered="#{wikiSearch.nextPageAvailable}" tabindex="7">
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/page.last.gif" width="13" height="11"/>
                  </h:commandLink>
                  <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/blank.gif" width="13" height="11"
                                  rendered="#{!wikiSearch.nextPageAvailable}"/>
  
              </h:panelGrid>
          </s:div>
  
          <s:div id="searchResult">
  
              <h:dataTable id="searchResultTable" var="hit"
                           value="#{wikiSearch.searchResult}"
                           rendered="#{wikiSearch.searchResult.size() > 0}"
                           styleClass="datatable topLeftBottomBorder"
                           columnClasses="rightBorder alignLeft minorPadding"
                           rowClasses="rowOdd,rowEven"
                           cellpadding="0" cellspacing="0" border="0">
  
                  <h:column>
  
                      <h:panelGrid columns="2">
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/#{hit.icon}" width="18" height="20"/>
                          <h:outputLink value="#{hit.link}" tabindex="1"><h:outputText escape="false" value="#{hit.title}"/></h:outputLink>
                      </h:panelGrid>
                      <h:outputText escape="false" value="#{hit.fragment}"/>
                  </h:column>
  
              </h:dataTable>
  
              <s:div styleClass="formFields minorPadding" rendered="#{wikiSearch.totalCount == 0}">
                  <h:outputText value="No hits, please try again."/>
              </s:div>
  
          </s:div>
  
      </h:form>
  
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  </ui:composition>
  
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/search_m.xhtml
  
  Index: search_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">Search: #{wikiSearch.simpleQuery}</ui:define>
  
  <ui:define name="control">
  
      <s:link id="close" styleClass="linkNavigation" view="/wiki.xhtml" propagation="end">Close</s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
      <h:form id="searchForm">
  
          <h:inputText value="#{wikiSearch.simpleQuery}" size="28" maxlength="1000"/>
          <h:commandButton action="#{wikiSearch.search()}" value="Find"/>
  
      </h:form>
  
      <s:div id="searchPager">
          <h:form>
              <h:panelGrid columns="5"
                           cellpadding="0" cellspacing="0" border="0"
                           rendered="#{wikiSearch.totalCount > 0}">
                  <h:commandButton  action="#{wikiSearch.firstPage()}" rendered="#{wikiSearch.previousPageAvailable}" value="First Page"/>
                  <h:commandButton  action="#{wikiSearch.previousPage()}" rendered="#{wikiSearch.previousPageAvailable}" value="Previous Page"/>
                  <h:outputText value="#{wikiSearch.firstRow} to #{wikiSearch.lastRow} of #{wikiSearch.totalCount} hit(s)"/>
                  <h:commandButton action="#{wikiSearch.nextPage()}" rendered="#{wikiSearch.nextPageAvailable}" value="Next Page"/>
                  <h:commandButton action="#{wikiSearch.lastPage()}" rendered="#{wikiSearch.nextPageAvailable}" value="Last Page"/>
              </h:panelGrid>
          </h:form>
      </s:div>
  
      <s:div id="searchResult">
  
          <h:dataTable id="searchResultTable" var="hit"
                       value="#{wikiSearch.searchResult}"
                       rendered="#{wikiSearch.searchResult.size() > 0}"
                       rowClasses="rowOdd,rowEven"
                       cellpadding="0" cellspacing="0" border="0">
  
              <h:column>
                  <h:panelGrid columns="2">
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/#{hit.icon}" width="18" height="20"/>
                      <h:outputLink value="#{hit.link}" tabindex="1"><h:outputText escape="false" value="#{hit.title}"/></h:outputLink>
                  </h:panelGrid>
                  <h:outputText escape="false" value="#{hit.fragment}"/>
              </h:column>
  
          </h:dataTable>
  
          <s:div styleClass="formFields minorPadding" rendered="#{wikiSearch.totalCount == 0}">
              <h:outputText value="No hits, please try again."/>
          </s:div>
  
      </s:div>
  
  
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/adminHome_m.xhtml
  
  Index: adminHome_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">Administration</ui:define>
  
  <ui:define name="content">
      Administration is not available with this skin.
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/dirDisplay_d.xhtml
  
  Index: dirDisplay_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/template.xhtml">
  
  <ui:define name="screenname">#{directoryHome.instance.name}</ui:define>
  
  <ui:define name="controlTwo">
  
      <s:fragment rendered="#{!empty directoryHome.parentDirectory}">
  
          <s:link id="createDir"  styleClass="linkNavigation" accesskey="S" view="/dirEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'create', directoryHome.instance)}">New <u>S</u>ubdirectory
              <f:param name="directoryId"/>
              <f:param name="parentDirectoryId" value="#{directoryHome.instance.id}"/>
          </s:link>
  
          <s:link id="editDir"    styleClass="linkNavigation" accesskey="E" view="/dirEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'edit', directoryHome.instance)}"><u>E</u>dit Directory</s:link>
  
          <s:link id="createDoc" styleClass="linkNavigation" accesskey="N" view="/docEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'create', directoryHome.instance)}"><u>N</u>ew Document
              <f:param name="documentId"/>
              <f:param name="parentDirectoryId" value="#{directoryHome.instance.id}"/>
          </s:link>
  
          <s:link id="uploadFile" styleClass="linkNavigation" accesskey="U" view="/fileEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'create', directoryHome.instance)}"><u>U</u>pload File
              <f:param name="fileId"/>
              <f:param name="parentDirectoryId" value="#{directoryHome.instance.id}"/>
          </s:link>
  
      </s:fragment>
  
      <s:fragment rendered="#{empty directoryHome.parentDirectory}">
          <s:link id="createArea" styleClass="linkNavigation" accesskey="N" view="/dirEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'create', directoryHome.instance)}"><u>N</u>ew Area
              <f:param name="directoryId"/>
              <f:param name="parentDirectoryId" value="#{directoryHome.instance.id}"/>
          </s:link>
  
          <s:link id="editRoot" styleClass="linkNavigation" accesskey="E" view="/dirEdit_#{skin}.xhtml"
                  rendered="#{s:hasPermission('Node', 'edit', directoryHome.instance)}"><u>E</u>dit Wiki Root
              <f:param name="parentDirectoryId"/>
          </s:link>
  
      </s:fragment>
  
      <h:outputLink value="#{facesContext.externalContext.request.contextPath}/servlets/feeds/atom.seam?feedId=#{directoryHome.instance.feed.id}"
                    styleClass="linkNavigation" rendered="#{not empty directoryHome.instance.feed}">Subscribe</h:outputLink>
  
  </ui:define>
  
  <ui:define name="content">
  <div class="box">
  
      <div class="directoryPathPanel">
  
          <s:link view="/dirDisplay_#{skin}.xhtml" value="#{wikiRoot.name}" styleClass="directoryButton" tabindex="1">
              <f:param name="directoryId" value="#{wikiRoot.id}"/>
          </s:link>
          <h:outputText value="/" styleClass="directorySeparator"/>
  
          <h:panelGroup>
              <ui:repeat var="directory" value="#{breadcrumb}">
                  <s:link view="/dirDisplay_#{skin}.xhtml" value="#{directory.name}" styleClass="directoryButton" tabindex="1">
                      <f:param name="directoryId" value="#{directory.id}"/>
                  </s:link>
                  <h:outputText value="/" styleClass="directorySeparator" rendered="#{directory != directoryHome.instance}"/>
              </ui:repeat>
          </h:panelGroup>
      </div>
  
      <s:div styleClass="directoryEmpty" rendered="#{empty directoryHome.instance.children}">
              <s:link view="/dirDisplay_#{skin}.xhtml" tabindex="1" accesskey="."
                      rendered="#{!empty directoryHome.parentDirectory and s:hasPermission('Node','read',directoryHome.parentDirectory)}">
                  <f:param name="directoryId" value="#{directoryHome.parentDirectory.id}"/>
                  <h:panelGrid columns="2">
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.dirup.gif" width="18" height="20"/>
                      <h:outputText value=".."/>
                  </h:panelGrid>
              </s:link>
              <h:outputText rendered="#{empty directoryHome.parentDirectory or !s:hasPermission('Node','read',directoryHome.parentDirectory)}"
                            value="This directory is empty."/>
  
      </s:div>
  
      <h:dataTable id="directoryTable" var="node"
                   value="#{directoryHome.instance.children}"
                   rendered="#{!empty directoryHome.instance.children}"
                   styleClass="datatable topLeftBottomBorder"
                   headerClass="regularHeader rightBorder"
                   columnClasses="onePercentColumn rightBorder alignCenter, defaultColumn rightBorder alignLeft,
                                  tenPercentColumn rightBorder alignLeft, fifteenPercentColumn rightBorder alignLeft,
                                  fifteenPercentColumn rightBorder alignLeft,twentyPercentColumn rightBorder alignCenter"
                   rowClasses="rowOdd,rowEven"
                   cellpadding="0" cellspacing="0" border="0">
  
          <h:column>
              <f:facet name="header">
                  <s:link view="/dirDisplay_#{skin}.xhtml" tabindex="1" accesskey="."
                          rendered="#{!empty directoryHome.parentDirectory and s:hasPermission('Node','read',directoryHome.parentDirectory)}">
                      <f:param name="directoryId" value="#{directoryHome.parentDirectory.id}"/>
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.dirup.gif" width="18" height="20"/>
                  </s:link>
              </f:facet>
              <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.dir.gif"
                              width="18" height="20"
                              rendered="#{wiki:isDirectory(node)}"/>
              <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.doc.gif"
                              width="18" height="20"
                              rendered="#{wiki:isDocument(node) and node != directoryHome.instance.defaultDocument}"/>
              <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/icon.doc.default.gif"
                              width="18" height="20"
                              rendered="#{wiki:isDocument(node) and node == directoryHome.instance.defaultDocument}"/>
  
              <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/#{fileMetaMap[node.contentType].displayIcon}"
                              width="18" height="20"
                              rendered="#{wiki:isFile(node) and !empty fileMetaMap[node.contentType]}"/>
              <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/#{fileMetaMap['generic'].displayIcon}"
                              width="18" height="20"
                              rendered="#{wiki:isFile(node) and empty fileMetaMap[node.contentType]}"/>
          </h:column>
  
          <h:column>
              <f:facet name="header">
                  Name
              </f:facet>
  
              <s:span rendered="#{wiki:isDirectory(node)}">
                  <s:link id="browseDirectory" value="#{wiki:truncateString(node.name, 40, '...')}"
                          view="/dirDisplay_#{skin}.xhtml"
                          rendered="#{s:hasPermission('Node','read',node)}" tabindex="2">
                      <f:param name="directoryId" value="#{node.id}"/>
                  </s:link>
                  <h:outputText value="#{wiki:truncateString(node.name, 40, '...')}" rendered="#{!s:hasPermission('Node','read',node)}"/>
              </s:span>
  
              <s:span rendered="#{wiki:isDocument(node)}">
                  <h:outputLink value="#{wiki:renderURL(node)}" rendered="#{s:hasPermission('Node','read',node)}" tabindex="2">
                      <h:outputText value="#{wiki:truncateString(node.name, 40, '...')}"/>
                  </h:outputLink>
                  <h:outputText value="#{node.name}" rendered="#{!s:hasPermission('Node','read',node)}"/>
              </s:span>
  
              <s:span rendered="#{wiki:isFile(node) and s:hasPermission('Node', 'edit', node)}">
                  <s:link id="editFile" value="#{wiki:truncateString(node.name, 30, '...')}" tabindex="2" view="/fileEdit_#{skin}.xhtml">
                      <f:param name="fileId" value="#{node.id}"/>
                      <f:param name="parentDirectoryId" value="#{directoryHome.instance.id}"/>
                  </s:link>
                  <h:outputText value=" (#{wiki:displayFilesize(node.filesize)}, #{node.contentType})"/>
              </s:span>
              <h:panelGroup rendered="#{wiki:isFile(node) and !s:hasPermission('Node', 'edit', node)}">
                  <h:outputLink value="#{wiki:renderURL(node)}">
                      <h:outputText value="#{wiki:truncateString(node.name, 30, '...')} (#{wiki:displayFilesize(node.filesize)}, #{node.contentType})"/>
                  </h:outputLink>
              </h:panelGroup>
  
          </h:column>
  
          <h:column>
              <f:facet name="header">
                  Owner
              </f:facet>
              #{node.createdBy.fullname}
          </h:column>
  
          <h:column>
              <f:facet name="header">
                  Read Access
              </f:facet>
              #{wiki:truncateString(wiki:resolveAccessLevel(node.readAccessLevel).roleNames, 15, '...')}
          </h:column>
  
          <h:column>
              <f:facet name="header">
                  Write Access
              </f:facet>
              #{wiki:truncateString(wiki:resolveAccessLevel(node.writeAccessLevel).roleNames, 15, '...')}
          </h:column>
  
          <h:column rendered="#{!empty node.lastModifiedOn and !empty node.lastModifiedBy}">
              <f:facet name="header">
                  Last Modified On
              </f:facet>
              <h:outputText value="#{node.lastModifiedOn}">
                  <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
              </h:outputText>
              (#{node.lastModifiedBy.username})
          </h:column>
  
          <h:column rendered="#{empty node.lastModifiedOn or empty node.lastModifiedBy}">
              <f:facet name="header">
                  Last Modified On
              </f:facet>
              -
          </h:column>
  
      </h:dataTable>
  
  </div>
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  </ui:composition>
  
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/userRegister_m.xhtml
  
  Index: userRegister_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">Registration</ui:define>
  
  <ui:define name="content">
      Registration is not available with this skin.
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/docHistory_m.xhtml
  
  Index: docHistory_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">Document History: #{nodeHistory.currentNode.name}</ui:define>
  
  <ui:define name="control">
      <s:link id="close" styleClass="linkNavigation" action="exit">Close</s:link>
  </ui:define>
  
  <ui:define name="content">
  
  <h:form rendered="#{historicalNodeList.rowCount >0}" styleClass="box">
  
      <div>Current revision:&#160;<h:outputText value="#{nodeHistory.currentNode.revision}"/></div>
      <div>Parent:&#160;<h:outputText value="#{nodeHistory.currentNode.parent.name}"/></div>
      <div>Created On:&#160;
          <h:outputText value="#{nodeHistory.currentNode.createdOn}">
              <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
          </h:outputText>
          (#{nodeHistory.currentNode.createdBy.username})
      </div>
      <div>Last Modified On:&#160;
          <h:outputText value="#{nodeHistory.currentNode.lastModifiedOn}">
              <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
          </h:outputText>
          (#{nodeHistory.currentNode.lastModifiedBy.username})
      </div>
      <div>Historical revisions:</div>
  
      <h:dataTable id="historyTable" var="hnode"
                   value="#{historicalNodeList}"
                   rowClasses="rowEven, rowOdd"
                   cellpadding="5" cellspacing="0" border="1">
  
          <h:column>
              #{hnode.revision}
          </h:column>
  
          <h:column>
              <h:outputText value="#{hnode.lastModifiedOn}">
                  <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
              </h:outputText>
              <h:outputText value="&#160;(#{hnode.lastModifiedByUsername})" rendered="#{!empty hnode.lastModifiedByUsername}"/>
              <h:outputText value="&#160;(unknown)" rendered="#{empty hnode.lastModifiedByUsername}"/>
          </h:column>
  
          <h:column>
              <h:commandButton action="#{nodeHistory.displayHistoricalRevision}" value="Show"/>
          </h:column>
          <h:column>
              <h:commandButton action="#{nodeHistory.diff}" value="Diff"/>
          </h:column>
          <h:column>
              <h:commandButton action="#{nodeHistory.rollback}" value="Rollback"
                               rendered="#{s:hasPermission('Node', 'edit', nodeHistory.currentNode)}"/>
          </h:column>
  
      </h:dataTable>
  
      <s:div rendered="#{s:hasPermission('User', 'isAdmin', currentUser)}" styleClass="formControls">
          <h:commandButton id="purge" action="#{nodeHistory.purgeHistory}" value="Purge History"/>
      </s:div>
  
  </h:form>
  
  <br/>
  
  <s:div id="diffResult">
      <s:div rendered="#{not empty nodeHistory.diffResult}">
          <h:outputText value="#{nodeHistory.diffResult}" escape="false"/>
      </s:div>
  </s:div>
  
  <s:div id="historicalPreview">
      <s:div id="documentDisplayContainer"
             rendered="#{not empty nodeHistory.displayedHistoricalNode}">
          <s:div id="documentDisplay" styleClass="documentDisplay">
              <wiki:formattedText value="#{nodeHistory.displayedHistoricalNode.content}"
                                  linkStyleClass="regularLink"
                                  brokenLinkStyleClass="brokenLink"
                                  attachmentLinkStyleClass="regularLink"
                                  thumbnailLinkStyleClass="regularLink"
                                  renderBaseDocument="#{nodeHistory.currentNode}"
                                  renderBaseDirectory="#{nodeHistory.currentNode.parent}"
                                  enablePlugins="false"/>
          </s:div>
      </s:div>
  </s:div>
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/userRegister_d.xhtml
  
  Index: userRegister_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:a="https://ajax4jsf.dev.java.net/ajax"
                  xmlns:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/template.xhtml">
  
  <ui:define name="screenname">Registration</ui:define>
  
  <ui:define name="controlTwo">
  
      <s:link id="close" styleClass="linkNavigation" view="/wiki.xhtml" propagation="end" accesskey="E">Clos<u>e</u></s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
  <h:form id="userRegisterForm" styleClass="box">
      <div class="form">
  
          <ui:include src="includes/statusIndicator.xhtml"/>
  
          <div class="formHead">
              <h:outputText rendered="#{not s:hasPermission('User', 'isAdmin', currentUser)}" value="Register new account"/>
              <h:outputText rendered="#{s:hasPermission('User', 'isAdmin', currentUser)}" value="Create new account"/>
          </div>
  
          <div class="formFields formBorder wideLabels">
  
              <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 status="userRegisterForm:status" event="onblur" reRender="firstnameDecorate"/>
                  </h:inputText>
              </s:decorate>
  
              <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 status="userRegisterForm:status" event="onblur" reRender="lastnameDecorate"/>
                  </h:inputText>
              </s:decorate>
  
              <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 status="userRegisterForm:status" event="onblur" reRender="emailDecorate"/>
                  </h:inputText>
              </s:decorate>
  
              <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" id="username" value="#{userHome.instance.username}">
                      <a:support status="userRegisterForm:status" event="onblur" action="#{userHome.validateUsername}" reRender="usernameDecorate"/>
                  </h:inputText>
              </s:decorate>
  
              <s:decorate id="passwordDecorate" template="includes/formFieldDecorate.xhtml">
                  <ui:define name="label">Password</ui:define>
                  <h:inputSecret tabindex="5" size="15" maxlength="15"
                                 redisplay="true" value="#{userHome.password}">
                      <a:support status="userRegisterForm:status" event="onblur" action="#{userHome.validatePassword}" reRender="passwordDecorate"/>
                  </h:inputSecret>
              </s:decorate>
  
              <s:decorate id="passwordControlDecorate" template="includes/formFieldDecorate.xhtml">
                  <ui:define name="label">Repeat password</ui:define>
                  <h:inputSecret tabindex="6" size="15" maxlength="15"
                                 redisplay="true" value="#{userHome.passwordControl}">
                      <a:support status="userRegisterForm:status" event="onblur" action="#{userHome.validatePasswordControl}" reRender="passwordControlDecorate"/>
                  </h:inputSecret>
              </s:decorate>
  
              <s:div rendered="#{not s:hasPermission('User', 'isAdmin', currentUser)}">
                  <s:div styleClass="entry">
                      <div class="label">Verification question:</div>
                      <div class="output">
                          What is the result of&#160;<h:outputText value="#{captcha.question}"/>?
                      </div>
                  </s:div>
  
                  <s:decorate id="verifyCaptchaDecorate" template="includes/formFieldDecorate.xhtml">
                      <ui:define name="label">Enter response</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>
  
          </div>
  
          <div class="formControls wideLabels">
  
              <div class="entry">
                  <div class="label">&#160;</div>
                  <div class="input">
  
                      <h:commandLink id="register" styleClass="button" rendered="#{not s:hasPermission('User', 'isAdmin', currentUser)}"
                                     action="#{userHome.persist}"
                                     tabindex="8" accesskey="G"><span class="buttonLabel">Re<u>g</u>ister</span></h:commandLink>
  
                      <h:commandLink id="create" styleClass="button" rendered="#{s:hasPermission('User', 'isAdmin', currentUser)}"
                                     action="#{userHome.persist}"
                                     tabindex="8" accesskey="C"><span class="buttonLabel"><u>C</u>reate Account</span></h:commandLink>
                  </div>
              </div>
  
          </div>
  
      </div>
  </h:form>
  
  
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  </ui:composition>
  
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/userList_m.xhtml
  
  Index: userList_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">User List</ui:define>
  
  <ui:define name="content">
      User search is not available with this skin.
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/adminHome_d.xhtml
  
  Index: adminHome_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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: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">
  
  <ui:define name="screenname">
      <h:outputText value="System Administration"/>
  </ui:define>
  
  <ui:define name="controlTwo">
  
      <s:link id="close" styleClass="linkNavigation" view="/wiki.xhtml" propagation="end" accesskey="E">Clos<u>e</u></s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
  <script type="text/javascript" src="seam/resource/remoting/resource/remote.js"></script>
  <script type="text/javascript" src="seam/resource/remoting/interface.js?adminHome"></script>
  <script type="text/javascript">
      Seam.Remoting.displayLoadingMessage = function() {};
      Seam.Remoting.hideLoadingMessage = function() {};
  
      var adminHome = Seam.Component.getInstance("adminHome");
  
      jQuery(function() { jQuery("#indexingProgressbarContainer").hide(); } );
      function getIndexingProgress(ofOperation) {
          Seam.Remoting.getContext().setConversationId('#{conversation.id}');
          adminHome.getIndexingProgress(ofOperation, indexingProgressCallback);
      }
      function indexingProgressCallback(progress) {
          if (progress != null &amp;&amp; progress.status == 'Complete') {
              adminHome.resetIndexingProgress(progress.ofOperation);
              jQuery(".resetIndexButton").show();
              jQuery("#indexingProgressbarContainer").hide();
              reloadIndexStatistics();
          } else if (progress != null) {
              jQuery(".resetIndexButton").hide();
              jQuery("#indexingProgressbarContainer").show();
              jQuery("#indexingProgressbar").reportprogress(progress.percentComplete);
              jQuery("#indexingProgressbarLabel").empty();
              jQuery("#indexingProgressbarLabel").append(progress.status);
              setTimeout("getIndexingProgress('" + progress.ofOperation + "')", 1000);
          }
      }
  </script>
  
  <h:form id="adminForm" styleClass="box">
      <div class="form">
  
          <ui:include src="includes/statusIndicator.xhtml"/>
  
          <script type="text/javascript">jQuery(function() {
              jQuery('#formTabs').tabs(2, {onClick: function(){formTabClicked()} });
          });</script>
          <div id="formTabs">
  
          <ul>
              <li class="formTabsTitle">
                  <h:outputText value="Administration"/>
              </li>
              <li id="systemStatsTab"><a href="#systemStats" accesskey="Y">S<u>y</u>stem Statistics</a></li>
              <li id="rolesPermissionsTab"><a href="#rolesPermissions" accesskey="O">R<u>o</u>les &amp; Permissions</a></li>
              <li id="linkProtocolsTab"><a href="#linkProtocols" accesskey="L"><u>L</u>ink Protocols</a></li>
              <li id="systemPrefsTab"><a href="#systemPrefs" accesskey="R">P<u>r</u>eferences</a></li>
          </ul>
  
          <div id="formTabsTitle"/>
  
          <div id="systemStats">
              <div class="formFields" style="padding: 20px;">
                  <a:region>
  
                  <a:jsFunction name="reloadIndexStatistics"
                                reRender="indexStatistics"
                                action="#{adminHome.loadIndexedEntities}"/>
                  <div id="indexingProgressbarContainer" class="progressbarContainer">
                      <span id="indexingProgressbarLabel" class="progressbarLabel"/>
                      <div id="indexingProgressbar" class="progressbar"/>
                  </div>
  
                  <h:dataTable id="indexStatistics" var="ie"
                               value="#{indexedEntities}"
                               rendered="#{indexedEntities.rowCount >0}"
                               styleClass="datatable topLeftBottomBorder"
                               headerClass="regularHeader rightBorder"
                               columnClasses="twentyPercentColumn rightBorder alignLeft,
                                              tenPercentColumn rightBorder alignCenter,
                                              tenPercentColumn rightBorder alignCenter,
                                              tenPercentColumn rightBorder alignRight,
                                              tenPercentColumn rightBorder alignCenter"
                               rowClasses="rowOdd,rowEven"
                               cellpadding="0" cellspacing="0" border="0">
  
                      <h:column>
                          <f:facet name="header">
                              Search index
                          </f:facet>
                          #{ie.description}
                      </h:column>
                      <h:column>
                          <f:facet name="header">
                              # of indexed documents
                          </f:facet>
                          #{ie.numOfIndexedDocuments}
                      </h:column>
                      <h:column>
                          <f:facet name="header">
                              # of indexed terms
                          </f:facet>
                          #{ie.numOfIndexedTerms}
                      </h:column>
                      <h:column>
                          <f:facet name="header">
                              Index size
                          </f:facet>
                          #{wiki:displayFilesize(ie.indexSizeInBytes)}
                      </h:column>
                      <h:column>
                          <script type="text/javascript">
                              jQuery(function(){ getIndexingProgress("#{ie.clazz.name}") });
                          </script>
                          <a:commandLink status="adminForm:status" id="resetSearchIndex" styleClass="button resetIndexButton" reRender="indexStatistics"
                                         action="#{adminHome.resetSearchIndex()}"><span class="buttonLabel">Rebuild Index</span></a:commandLink>
                      </h:column>
                  </h:dataTable>
  
                  </a:region>
              </div>
          </div>
  
          <div id="rolesPermissions">
              Not Implemented
          </div>
  
          <div id="linkProtocols">
              <div class="formFields" style="padding: 20px;">
              <a:region>
  
              <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.
                  If you remove an existing link protocol that is in use, all links will be
                  rendered broken.
              </p>
  
              <h:dataTable id="linkProtocolTable" var="lp"
                           value="#{linkProtocols}"
                           rendered="#{linkProtocols.rowCount >0}"
                           styleClass="datatable topLeftBottomBorder"
                           headerClass="regularHeader rightBorder"
                           columnClasses="twentyPercentColumn rightBorder alignLeft,
                                          defaultColumn rightBorder alignLeft,
                                          tenPercentColumn rightBorder alignCenter"
                           rowClasses="rowOdd,rowEven"
                           cellpadding="0" cellspacing="0" border="0">
  
                  <h:column>
                      <f:facet name="header">
                              Prefix
                      </f:facet>
                      #{lp.prefix}
                  </h:column>
                  <h:column>
                      <f:facet name="header">
                              Target Link
                      </f:facet>
                      #{lp.link}
                  </h:column>
                  <h:column>
                      <a:commandLink status="adminForm:status" 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">
  
                  <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 status="adminForm:status" 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>
  
          <div id="systemPrefs">
              <div class="formFields">
                  <ui:include src="includes/preferencesEditor.xhtml">
                      <ui:param name="tabId" value="systemPrefsTab"/>
                      <ui:param name="preferenceComponents" value="#{systemPreferenceComponents}"/>
                  </ui:include>
              </div>
          </div>
  
      </div>
  
      <div class="formControls wideLabels">
  
          <div class="entry">
              <div class="label">&#160;</div>
              <div class="input">
  
                  <a:commandLink status="adminForm:status" id="update" styleClass="button saveButton" reRender="body"
                                 action="#{adminHome.update}"
                                 tabindex="9" accesskey="S"><span class="buttonLabel"><u>S</u>ave Settings</span></a:commandLink>
  
              </div>
          </div>
  
      </div>
  
  </div></h:form>
  
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  </ui:composition>
  
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/fileEdit_m.xhtml
  
  Index: fileEdit_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">
      <h:outputText value="Upload File" rendered="#{!fileHome.managed}"/>
      <h:outputText value="Edit File" rendered="#{fileHome.managed}"/>
  </ui:define>
  
  <ui:define name="control">
  
      <s:link id="exit" styleClass="linkNavigation" action="exit">Exit</s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
      <h:form enctype="multipart/form-data"><s:validateAll>
  
          <div>Directory:&#160;#{fileHome.parentDirectory.name}</div>
          <div class="errorMessage"><h:message for="name"/></div>
          <div>Name:&#160;
              <h:inputText id="name" size="30" maxlength="255" required="true" value="#{fileHome.instance.name}"/>
          </div>
          <s:div rendered="#{fileHome.managed}">
              File Details:&#160;
              <h:panelGroup>
                  <h:outputLink value="#{wiki:renderURL(fileHome.instance)}">
                      <h:outputText value="#{fileHome.instance.filename}, #{wiki:displayFilesize(fileHome.instance.filesize)}, #{fileHome.instance.contentType}"/>
                  </h:outputLink>
              </h:panelGroup>
          </s:div>
  
          <s:div rendered="#{fileHome.managed and not empty fileHome.instance.imageMetaInfo}">
              <div>
                  Original Image Size:&#160;#{fileHome.instance.imageMetaInfo.sizeX} x #{fileHome.instance.imageMetaInfo.sizeY} pixel
              </div>
              <h:panelGrid columns="1">
                  <h:panelGroup>
                      <h:commandButton id="zoomOut" action="#{fileHome.zoomPreviewOut}" value="Zoom Out"/>
                      <h:commandButton id="actualSize" action="#{fileHome.zoomActualSize}" value="Actual Size"/>
                      <h:commandButton id="zoomIn" action="#{fileHome.zoomPreviewIn}" value="Zoom In"/>
                  </h:panelGroup>
                  <h:outputLink value="#{facesContext.externalContext.requestContextPath}/servlets/files/download.seam?fileId=#{fileHome.instance.id}">
                      <s:graphicImage value="#{fileHome.instance.data}" style="border: 1px solid black;">
                          <s:transformImageSize width="#{fileHome.imagePreviewSize}" maintainRatio="true"/>
                      </s:graphicImage>
                  </h:outputLink>
              </h:panelGrid>
              <div>Show in documents:&#160;
                  <h:selectOneMenu value="#{fileHome.instance.imageMetaInfo.thumbnail}">
                      <f:selectItem itemLabel="Small thumbnail" itemValue="S"/>
                      <f:selectItem itemLabel="Medium thumbnail" itemValue="M"/>
                      <f:selectItem itemLabel="Large thumbnail" itemValue="L"/>
                      <f:selectItem itemLabel="Full size " itemValue="F"/>
                      <f:selectItem itemLabel="As attachment" itemValue="A"/>
                  </h:selectOneMenu>
              </div>
          </s:div>
  
          <div>
              Upload (max. #{wiki:displayFilesize(org.jboss.seam.web.multipartFilter.maxRequestSize)}):&#160;
              <s:fileUpload id="upload" data="#{fileHome.filedata}" contentType="#{fileHome.contentType}" fileName="#{fileHome.filename}"/>
          </div>
  
          <div class="formControls">
  
              <h:commandButton action="#{fileHome.persist}" rendered="#{!fileHome.managed}" value="Save"/>
              <h:commandButton action="#{fileHome.update}" rendered="#{fileHome.managed}" value="Update"/>
              <h:commandButton action="#{fileHome.remove}" rendered="#{fileHome.managed}" value="Delete"/>
  
          </div>
  
      </s:validateAll></h:form>
  
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/userHome_m.xhtml
  
  Index: userHome_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">Member Account</ui:define>
  
  <ui:define name="content">
      Account management is not available with this skin.
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/dirEdit_m.xhtml
  
  Index: dirEdit_m.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/#{skin}/template.xhtml">
  
  <ui:define name="screenname">
      <h:outputText value="Create directory" rendered="#{!directoryHome.managed}"/>
      <h:outputText value="Edit directory" rendered="#{directoryHome.managed}"/>
  </ui:define>
  
  <ui:define name="control">
  
      <s:link id="exitManaged" styleClass="linkNavigation" rendered="#{directoryHome.managed}" action="exitManaged">Exit Editor</s:link>
  
      <s:link id="exitUnmanaged" styleClass="linkNavigation" rendered="#{!directoryHome.managed}" action="exitUnmanaged">Exit Editor</s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
      <h:form><s:validateAll>
  
          <s:div rendered="#{!empty directoryHome.parentDirectory}">Parent:&#160;#{directoryHome.parentDirectory.name}</s:div>
          <div class="errorMessage"><h:message for="name"/></div>
          <div>Name:&#160;
              <h:inputText id="name" size="30" maxlength="255" required="true" value="#{directoryHome.instance.name}"/>
          </div>
          <div class="errorMessage"><h:message for="description"/></div>
          <div>Description:&#160;
              <h:inputText id="description" size="30" maxlength="512" required="false" value="#{directoryHome.instance.description}"/>
          </div>
          <div>Default Document:&#160;
              <h:selectOneMenu value="#{directoryHome.instance.defaultDocument}" converter="#{restrictedEntityConverter}">
                  <s:selectItems value="#{directoryHome.childDocuments}"
                                 var="document"
                                 label="#{wiki:truncateString(document.name, 40, '...')}"
                                 noSelectionLabel="No default document"/>
              </h:selectOneMenu>
          </div>
          <div>
              <h:selectBooleanCheckbox value="#{directoryHome.hasFeed}"
                                       disabled="#{empty directoryHome.parentDirectory}"/>
              &#160;Enable syndication feed (disabling invalidates subcriber link)
  
          </div>
  
          <s:div styleClass="formControls">
              <h:commandButton action="#{directoryHome.persist}" rendered="#{!directoryHome.managed}" value="Save"/>
              <h:commandButton action="#{directoryHome.update}" rendered="#{directoryHome.managed}" value="Update"/>
              <h:commandButton action="#{directoryHome.remove}"
                               rendered="#{empty directoryHome.instance.children
                                          and directoryHome.managed
                                          and !empty directoryHome.parentDirectory
                                          and directoryHome.instance.id != wikiPreferences.memberAreaId}" value="Delete"/>
          </s:div>
  
      </s:validateAll></h:form>
  
  </ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/userHome_d.xhtml
  
  Index: userHome_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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: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">
  
  <ui:define name="screenname">
      <h:outputText value="Member Account '#{userHome.instance.username}'"/>
  </ui:define>
  
  <ui:define name="controlTwo">
  
      <s:link id="close" styleClass="linkNavigation" view="/wiki.xhtml" propagation="end" accesskey="E">Clos<u>e</u></s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
  <s:span rendered="#{s:hasPermission('User', 'delete', userHome.instance)}">
      <ui:include src="includes/deleteConfirmation.xhtml">
          <ui:param name="home" value="#{userHome}"/>
      </ui:include>
  </s:span>
  
  <h:form id="userHomeForm" styleClass="box" enctype="multipart/form-data">
      <div class="form">
  
          <ui:include src="includes/statusIndicator.xhtml"/>
  
          <script type="text/javascript">jQuery(function() {
              jQuery('#formTabs').tabs(2, {onClick: function(){formTabClicked()} });
          });</script>
  
          <div id="formTabs">
  
          <ul>
              <li class="formTabsTitle">
                  <h:outputText value="Edit user"/>
              </li>
              <li id="userAccountTab"><a href="#userAccount" accesskey="N">Accou<u>n</u>t</a></li>
              <li id="userProfileTab"><a href="#userProfile" accesskey="I">Prof<u>i</u>le</a></li>
              <li id="userPrefsTab"><a href="#userPreferences" accesskey="R">P<u>r</u>eferences</a></li>
          </ul>
  
          <div id="formTabsTitle"/>
  
          <div id="userAccount">
  
              <div class="formFields wideLabels">
                  <s:validateAll>
  
                      <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 status="userHomeForm:status" event="onblur" reRender="firstnameDecorate"/>
                          </h:inputText>
                      </s:decorate>
  
                      <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 status="userHomeForm:status" event="onblur" reRender="lastnameDecorate"/>
                          </h:inputText>
                      </s:decorate>
  
                      <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 status="userHomeForm:status" event="onblur" reRender="emailDecorate"/>
                          </h:inputText>
                      </s:decorate>
  
                      <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 status="userHomeForm:status" event="onblur" action="#{userHome.validateUsername}" reRender="usernameDecorate"/>
                          </h:inputText>
                      </s:decorate>
  
                      <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"
                                         redisplay="true" value="#{userHome.password}"
                                         disabled="#{userHome.instance.username == guestUser.username}">
                              <a:support status="userHomeForm:status" event="onblur" action="#{userHome.validatePassword}" reRender="passwordDecorate"/>
                          </h:inputSecret>
                      </s:decorate>
  
                      <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"
                                         redisplay="true" value="#{userHome.passwordControl}"
                                         disabled="#{userHome.instance.username == guestUser.username}">
                              <a:support status="userHomeForm:status" event="onblur" action="#{userHome.validatePasswordControl}" reRender="passwordControlDecorate"/>
                          </h:inputSecret>
                      </s:decorate>
  
                      <s:div rendered="#{s:hasPermission('User', 'isAdmin', currentUser)
                                         and userHome.instance.id != adminUser.id
                                         and userHome.instance.id != guestUser.id
                                         and userHome.instance.id != currentUser.id}">
                          <s:div styleClass="entry">
                              <div class="label">&#160;</div>
                              <div class="input">
                                  <h:selectBooleanCheckbox value="#{userHome.instance.activated}" tabindex="6"/>
                                  Account is active
                              </div>
                          </s:div>
  
                      </s:div>
  
                      <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)}"
                                      converter="#{entityConverter}">
                                  <s:selectItems value="#{rolesList}"
                                                 var="role"
                                                 label="#{role.displayName} (Access level: #{role.accessLevel})"/>
                              </h:selectManyListbox>
                          </div>
                      </s:div>
  
                  </s:validateAll>
              </div>
  
          </div>
  
          <div id="userProfile">
  
              <div class="formFields wideLabels">
                  <s:validateAll>
  
                      <s:div styleClass="entry" rendered="#{!empty userHome.instance.profile.image}">
                          <div class="label">Portrait:</div>
                          <div class="output">
                              <s:graphicImage value="#{userHome.instance.profile.image}" style="border: 1px solid black;"/>
                          </div>
                      </s:div>
  
                      <s:decorate id="uploadDecorate" template="includes/formFieldDecorate.xhtml">
                          <ui:param name="tabId" value="userProfileTab"/>
                          <ui:param name="fieldId" value="userimage"/>
                          <ui:define name="label">Upload Portrait (max. #{wiki:displayFilesize(200000)})</ui:define>
                          <s:fileUpload id="upload" data="#{userHome.portraitImageData}"
                                                    contentType="#{userHome.portraitContentType}"/>
                      </s:decorate>
  
                      <ui:include src="includes/wikiTextEditor.xhtml">
                          <ui:param name="tabId" value="userProfileTab"/>
                          <ui:param name="textEditorId" value="bio"/>
                          <ui:param name="namingContainer" value="userHomeForm"/>
                          <ui:param name="label" value="Bio"/>
                          <ui:param name="valueBinding" value="#{userHome.instance.profile.bio}"/>
                          <ui:param name="valueMaxLength" value="1000"/>
                          <ui:param name="previewBaseDocument" value="#{wikiStart}"/>
                          <ui:param name="previewBaseDirectory" value="#{wikiStart.parent}"/>
                      </ui:include>
  
                      <s:decorate id="websiteDecorate" template="includes/formFieldDecorate.xhtml">
                          <ui:param name="tabId" value="userProfileTab"/>
                          <ui:param name="fieldId" value="website"/>
                          <ui:define name="label">Website</ui:define>
                          <h:inputText tabindex="1" size="60" maxlength="1000" value="#{userHome.instance.profile.website}">
                              <a:support status="userHomeForm:status" event="onblur" reRender="websiteDecorate"/>
                          </h:inputText>
                      </s:decorate>
  
                      <s:decorate id="locationDecorate" template="includes/formFieldDecorate.xhtml">
                          <ui:param name="tabId" value="userProfileTab"/>
                          <ui:param name="fieldId" value="location"/>
                          <ui:define name="label">Location</ui:define>
                          <h:inputText tabindex="1" size="40" maxlength="255" value="#{userHome.instance.profile.location}">
                              <a:support status="userHomeForm:status" event="onblur" reRender="locationDecorate"/>
                          </h:inputText>
                      </s:decorate>
  
                      <s:decorate id="occupationDecorate" template="includes/formFieldDecorate.xhtml">
                          <ui:param name="tabId" value="userProfileTab"/>
                          <ui:param name="fieldId" value="occupation"/>
                          <ui:define name="label">Occupation</ui:define>
                          <h:inputText tabindex="1" size="60" maxlength="1000" value="#{userHome.instance.profile.occupation}">
                              <a:support status="userHomeForm:status" event="onblur" reRender="occupationDecorate"/>
                          </h:inputText>
                      </s:decorate>
  
                      <ui:include src="includes/wikiTextEditor.xhtml">
                          <ui:param name="tabId" value="userProfileTab"/>
                          <ui:param name="textEditorId" value="signature"/>
                          <ui:param name="namingContainer" value="userHomeForm"/>
                          <ui:param name="label" value="Signature"/>
                          <ui:param name="valueBinding" value="#{userHome.instance.profile.signature}"/>
                          <ui:param name="valueMaxLength" value="1000"/>
                          <ui:param name="previewBaseDocument" value="#{wikiStart}"/>
                          <ui:param name="previewBaseDirectory" value="#{wikiStart.parent}"/>
                      </ui:include>
  
                  </s:validateAll>
              </div>
  
          </div>
  
          <div id="userPreferences">
              <div class="formFields">
                  <ui:include src="includes/preferencesEditor.xhtml">
                      <ui:param name="tabId" value="userPrefsTab"/>
                      <ui:param name="preferenceComponents" value="#{userPreferenceComponents}"/>
                  </ui:include>
              </div>
          </div>
  
      </div>
  
      <div class="formControls wideLabels">
          <div class="entry">
              <div class="label">&#160;</div>
              <div class="input">
  
                  <h:commandLink id="createHomeDirectory" styleClass="buttonNonpersistent"
                                 rendered="#{empty userHome.instance.memberHome
                                             and userHome.instance.id != guestUser.id
                                             and userHome.instance.id != adminUser.id
                                             and s:hasPermission('User', 'isAdmin', currentUser)}"
                                 action="#{userHome.createHomeDirectory}"><span class="buttonLabel">Create Home Directory</span></h:commandLink>
  
                  <h:commandLink id="update" styleClass="button saveButton"
                                 action="#{userHome.update}"
                                 tabindex="9" accesskey="S"><span class="buttonLabel"><u>S</u>ave Settings</span></h:commandLink>
  
                  <h:outputLink id="delete" value="#" tabindex="9" accesskey="D" styleClass="button"
                                rendered="#{s:hasPermission('User', 'delete', userHome.instance)}"><j4j:idProxy
                          id="openDialogDelete"/><span class="buttonLabel"><u>D</u>elete</span></h:outputLink>
  
  
              </div>
          </div>
      </div>
  
      </div>
  </h:form>
  
  
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  </ui:composition>
  
  
  
  1.1      date: 2007/09/04 09:33:18;  author: cbauer;  state: Exp;jboss-seam/examples/wiki/view/userList_d.xhtml
  
  Index: userList_d.xhtml
  ===================================================================
  <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                  xmlns:s="http://jboss.com/products/seam/taglib"
                  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:wiki="http://jboss.com/products/seam/wiki"
                  template="themes/#{wikiPreferences.themeName}/template.xhtml">
  
  <ui:define name="screenname">Member List</ui:define>
  
  <ui:define name="controlTwo">
  
      <s:link id="createUser" styleClass="linkNavigation" accesskey="C" view="/userRegister_#{skin}.xhtml" propagation="none"
              rendered="#{s:hasPermission('User', 'isAdmin', currentUser)}"><u>C</u>reate Account
      </s:link>
  
      <s:link id="close" styleClass="linkNavigation" view="/wiki.xhtml" propagation="end" accesskey="E">Clos<u>e</u></s:link>
  
  </ui:define>
  
  <ui:define name="content">
  
      <h:form id="userSearchForm" styleClass="box">
  
          <div class="form" id="userSearchControl">
  
              <ui:include src="includes/statusIndicator.xhtml"/>
  
              <h:panelGrid columns="6"
                           styleClass="datatable topLeftBottomBorder"
                           headerClass="regularHeader rightBorder"
                           columnClasses="tenPercentColumn formFields, tenPercentColumn formFields, tenPercentColumn formFields,
                                          tenPercentColumn formFields, twentyPercentColumn alignLeft formFields,
                                          defaultColumn alignRight formFields rightBorder"
                           cellpadding="0" cellspacing="0" border="0">
  
                  <f:facet name="header">
                      <h:outputText value="Search members"/>
                  </f:facet>
  
                  <h:panelGroup>
                      <h:outputText styleClass="label" value="Username:"/>&#160;
                      <h:inputText id="username" value="#{userSearch.exampleUser.username}" maxlength="35" size="8" tabindex="1"/>
                  </h:panelGroup>
  
                  <h:panelGroup>
                      <h:outputText styleClass="label" value="First name:"/>&#160;
                      <h:inputText id="firstname" value="#{userSearch.exampleUser.firstname}" maxlength="35" size="8" tabindex="2"/>
                  </h:panelGroup>
  
                  <h:panelGroup>
                      <h:outputText styleClass="label" value="Last name:"/>&#160;
                      <h:inputText id="lastname" value="#{userSearch.exampleUser.lastname}" maxlength="35" size="8" tabindex="3"/>
                  </h:panelGroup>
  
                  <h:panelGroup>
                      <h:outputText styleClass="label" value="E-mail:"/>&#160;
                      <h:inputText id="email" value="#{userSearch.exampleUser.email}" maxlength="35" size="8" tabindex="4"/>
                  </h:panelGroup>
  
                  <h:panelGroup>
                      <h:outputLabel styleClass="label" for="pageSize">Show:</h:outputLabel>&#160;
                      <h:selectOneMenu value="#{userSearch.pageSize}" id="pageSize" tabindex="5" style="font-size:100%">
                          <f:selectItem itemLabel="5" itemValue="5"/>
                          <f:selectItem itemLabel="15" itemValue="15"/>
                          <f:selectItem itemLabel="50" itemValue="50"/>
                      </h:selectOneMenu>
                  </h:panelGroup>
  
                  <h:commandLink id="find" styleClass="buttonNonpersistent"
                                 action="#{userSearch.find()}"
                                 tabindex="6" accesskey="I"><span class="buttonLabel">F<u>i</u>nd</span></h:commandLink>
  
              </h:panelGrid>
  
          </div>
  
          <s:div id="userListPager">
              <h:panelGrid columns="5" styleClass="pager"
                           columnClasses="pagerIconColumn,pagerIconColumn,pagerTextColumn,pagerIconColumn,pagerIconColumn"
                           cellpadding="0" cellspacing="0" border="0"
                           rendered="#{userSearch.rowCount > 0}">
  
                  <h:commandLink action="#{userSearch.firstPage()}" rendered="#{userSearch.previousPageAvailable}" tabindex="7">
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/page.first.gif" width="13" height="11"/>
                  </h:commandLink>
                  <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/blank.gif" width="13" height="11"
                                  rendered="#{!userSearch.previousPageAvailable}"/>
  
                  <h:commandLink action="#{userSearch.previousPage()}" rendered="#{userSearch.previousPageAvailable}" tabindex="7">
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/page.previous.gif" width="13" height="11"/>
                  </h:commandLink>
                  <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/blank.gif" width="13" height="11"
                                  rendered="#{!userSearch.previousPageAvailable}"/>
  
                  <h:outputText value="Found: #{userSearch.rowCount} member(s)"/>
  
                  <h:commandLink action="#{userSearch.nextPage()}" rendered="#{userSearch.nextPageAvailable}" tabindex="7">
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/page.next.gif" width="13" height="11"/>
                  </h:commandLink>
                  <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/blank.gif" width="13" height="11"
                                  rendered="#{!userSearch.nextPageAvailable}"/>
  
                  <h:commandLink action="#{userSearch.lastPage()}" rendered="#{userSearch.nextPageAvailable}" tabindex="7">
                      <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/page.last.gif" width="13" height="11"/>
                  </h:commandLink>
                  <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/blank.gif" width="13" height="11"
                                  rendered="#{!userSearch.nextPageAvailable}"/>
  
              </h:panelGrid>
          </s:div>
  
          <h:dataTable id="userTable" var="u"
                       value="#{usersList}"
                       rendered="#{usersList.rowCount >0}"
                       styleClass="datatable topLeftBottomBorder"
                       headerClass="sortableHeader rightBorder"
                       columnClasses="tenPercentColumn rightBorder alignLeft,
                                      twentyPercentColumn rightBorder alignLeft,
                                      twentyPercentColumn rightBorder alignLeft,
                                      twentyPercentColumn rightBorder alignLeft,
                                      defaultColumn rightBorder alignLeft,
                                      tenPercentColumn rightBorder alignCenter"
                       rowClasses="rowOdd,rowEven"
                       cellpadding="0" cellspacing="0" border="0">
  
              <h:column>
                  <f:facet name="header">
                      <h:commandLink action="#{userSearch.sortBy('username')}" tabindex="8">
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/sortindicator.up.gif" width="8" height="8"
                                          rendered="#{!userSearch.orderDescending and userSearch.orderByProperty == 'username'}"/>
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/sortindicator.down.gif" width="8" height="8"
                                          rendered="#{userSearch.orderDescending and userSearch.orderByProperty == 'username'}"/>
                          Username
                      </h:commandLink>
                  </f:facet>
                  <h:outputLink value="#{wiki:renderHomeURL(u)}" rendered="#{!empty u.memberHome}">#{u.username}</h:outputLink>
                  <h:outputText rendered="#{empty u.memberHome}">#{u.username}</h:outputText>
                  <h:outputText rendered="#{!u.activated}">&#160;(Not Activated)</h:outputText>
              </h:column>
  
              <h:column>
                  <f:facet name="header">
                      <h:commandLink action="#{userSearch.sortBy('firstname')}" tabindex="9">
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/sortindicator.up.gif" width="8" height="8"
                                          rendered="#{!userSearch.orderDescending and userSearch.orderByProperty == 'firstname'}"/>
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/sortindicator.down.gif" width="8" height="8"
                                          rendered="#{userSearch.orderDescending and userSearch.orderByProperty == 'firstname'}"/>
                          First name
                      </h:commandLink>
                  </f:facet>
                  #{u.firstname}
              </h:column>
  
              <h:column>
                  <f:facet name="header">
                      <h:commandLink action="#{userSearch.sortBy('lastname')}" tabindex="10">
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/sortindicator.up.gif" width="8" height="8"
                                          rendered="#{!userSearch.orderDescending and userSearch.orderByProperty == 'lastname'}"/>
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/sortindicator.down.gif" width="8" height="8"
                                          rendered="#{userSearch.orderDescending and userSearch.orderByProperty == 'lastname'}"/>
                          Last name
                      </h:commandLink>
                  </f:facet>
                  #{u.lastname}
              </h:column>
  
              <h:column>
                  <f:facet name="header">
                      <h:commandLink action="#{userSearch.sortBy('email')}" tabindex="11">
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/sortindicator.up.gif" width="8" height="8"
                                          rendered="#{!userSearch.orderDescending and userSearch.orderByProperty == 'email'}"/>
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/sortindicator.down.gif" width="8" height="8"
                                          rendered="#{userSearch.orderDescending and userSearch.orderByProperty == 'email'}"/>
                          E-mail address
                      </h:commandLink>
                  </f:facet>
                  <h:outputLink value="#{wiki:escapeEmailURL(wiki:concat('mailto:', u.email))}">#{wiki:escapeAtSymbol(u.email)}</h:outputLink>
              </h:column>
  
              <h:column>
                  <f:facet name="header">
                      <h:commandLink action="#{userSearch.sortBy('createdOn')}" tabindex="12">
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/sortindicator.up.gif" width="8" height="8"
                                          rendered="#{!userSearch.orderDescending and userSearch.orderByProperty == 'createdOn'}"/>
                          <h:graphicImage value="/themes/#{wikiPreferences.themeName}/img/sortindicator.down.gif" width="8" height="8"
                                          rendered="#{userSearch.orderDescending and userSearch.orderByProperty == 'createdOn'}"/>
                          Joined on
                      </h:commandLink>
                  </f:facet>
                  <h:outputText value="#{u.createdOn}">
                      <f:convertDateTime type="both" timeZone="#{wikiPreferences.timeZone}"/>
                  </h:outputText>
              </h:column>
  
              <h:column rendered="#{s:hasPermission('User', 'isAdmin', currentUser)}">
                  <s:link styleClass="buttonNonpersistent" view="/userHome_#{skin}.xhtml" propagation="none">
                      <f:param name="userId" value="#{u.id}"/>
                      <span class="buttonLabel">Edit</span>
                  </s:link>
              </h:column>
  
          </h:dataTable>
  
      </h:form>
  
  </ui:define>
  
  <ui:define name="footer">&#160;</ui:define>
  
  </ui:composition>
  
  
  
  



More information about the jboss-cvs-commits mailing list