factorize the isLiveEditable(documentModel) or isLiveEditable(documentRef) 
logic into a JSF function or a seam component
------------------------------------------------------------------------------------------------------------------------

                 Key: NXP-2190
                 URL: http://jira.nuxeo.org/browse/NXP-2190
             Project: Nuxeo Enterprise Platform 5
          Issue Type: Sub-task
    Affects Versions: 5.1.3.2
            Reporter: Olivier Grisel
            Assignee: Olivier Grisel
             Fix For: 5.1.4, 5.2 M1


The current extended_file_widget.xhtml template looks like this

    <nxu:methodResult name="immutable"
      value="#{currentDocument.hasFacet('Immutable')}">
      <nxu:methodResult name="onlineEditable"
        
value="#{conversionActions.isFileOnlineEditable(widget.fieldDefinitions[0].propertyName)}">
        <nxu:methodResult name="isLiveEditable"
          value="#{lockActions.isCurrentDocumentLiveEditable()}">
          <h:panelGroup
            rendered="#{!immutable and onlineEditable and isLiveEditable}">
            <h:outputText value=" | " />

            <h:commandLink action="#{FileManageWS.edit}"
              rendered="#{documentActions.writeRight}">
              <f:param name="fileFieldFullName"
                value="#{widget.fieldDefinitions[0].propertyName}" />
              <f:param name="filename" value="#{field_1}" />
              <f:param name="filenameFieldFullName"
                value="#{widget.fieldDefinitions[1].propertyName}" />
              <h:outputText value="#{messages['label.document.directEdit']}" />
            </h:commandLink>

          </h:panelGroup>
        </nxu:methodResult>
      </nxu:methodResult>
    </nxu:methodResult>

The command links itself should upgraded to something like:

  <h:outputLink
        value="#{nxd:liveEditUrl(changeableDocument, 
widget.fieldDefinitions[0].schemaName, widget.fieldDefinitions[0].fieldName, 
widget.fieldDefinitions[1].fieldName)}"
        rendered="#{editable}">
        <h:outputText value="#{messages['label.document.directEdit']}" />
  </h:outputLink>

However the rendering condition is currently dependent on several seam action 
listeners. This should be factorized into a single seam component call that 
takes the document model and the property name as parameters (do not hardcode 
the check on currentDocument only).

  

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.nuxeo.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
ECM-tickets mailing list
[email protected]
http://lists.nuxeo.com/mailman/listinfo/ecm-tickets

Reply via email to