<?xml version="1.0"?>
<component name="com.nuxeo.document.routing.table.widget.override">

  <require>com.nuxeo.document.routing.table.widget</require>

  <extension point="widgettypes" target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager">

    <widgetType name="remove_step">
      <documentation>
        This remove_step widget displays a link to delete a step.
        <br/>
        It requires the following fields configuration:
        <ul>
          <li>The step document Id.</li>
        </ul>
        @Deprecated since 5.9.2
      </documentation>

      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/remove_step_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="add_step">
      <documentation>
        This add_step widget displays three different links.
        <br/>
        Add before will add a new step before the selected step. Add in
        will add
        a new step at the end of the container. Add after will
        add a new step
        after the selected step.
        <br/>
        It requires the following fields configuration:
        <ul>
          <li>The step document.</li>
          <li>The step document Id.</li>
          <li>A Boolean used to render the Add In Button if true.</li>
        </ul>
        @Deprecated since 5.9.2
      </documentation>

      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/add_step_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="listing_document_route_folder_element_type">
      <documentation>
        This widget type displays an icon representing the type of
        folder,
        "Serial" or "Parallel "
        @Deprecated since 5.9.2
        <br/>
        It requires the following fields configuration:
        <ul>
          <li>the documentRouteElement</li>
        </ul>
      </documentation>

      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/listing_document_route_folder_element_type_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="listing_document_route_element_type">
      <documentation>
        This widget type displays the type and the type icon of the
        document.
        <br/>
        It requires the following fields configuration:
        <ul>
          <li>the document type icon</li>
          <li>the document type</li>
        </ul>
      </documentation>

      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/listing_document_route_element_type_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="listing_document_route_element_actors">
      <documentation>
        This widget type displays the actors of the document.
        <br/>
        It requires the following fields configuration:
        <ul>
          <li>the document actors</li>
        </ul>
      </documentation>

      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/user_prefixed_suggestion_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="listing_edit_document_route_element">
      <documentation>
        This widget type allows to edit a route element
        <br/>
        It requires the following fields configuration:
        <ul>
          <li>the route documuent model</li>
          <li>the route documuent model id</li>
        </ul>
        @Deprecated since 5.9.2
      </documentation>

      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/listing_edit_document_route_element_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="listing_no_comments">
      <documentation>
        This widget type displays the number of comments
        <br/>
        It requires the following fields configuration:
        <ul>
          <li>the step documuent model</li>
          <li/>
        </ul>
      </documentation>

      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/listing_no_comments_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="step_actions">
      <documentation>
        This widget type displays available step actions for the given
        doc.
        <br/>
        It requires the following fields configuration:
        <ul>
          <li>The step document.</li>
          <li>The step document Id.</li>
          <li>A Boolean used to render the Add In Button if true.</li>
        </ul>
        @Deprecated - This widget is deprecated since 5.9.2. Only routes
        of type 'graph' are used.
      </documentation>

      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/route_actions_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="listing_route_title_link">

      <documentation>
        Override the default widget to add useful information for
        selenium. This
        widget type displays a link to navigate to a
        document, as well as a
        download link for the document binary
        content.
        <br/>
        It requires the following fields configuration:
        <ul>
          <li>
            first field maps the document model, it will be used to
            display the
            document link and its title
          </li>
          <li>
            second field maps the unique id to be used for contextual
            menu (e.g.
            the document model id)
          </li>
          <li>
            third field maps the displayed link title (can be the
            document model
            description)
          </li>
          <li>
            fourth field maps the document model file to be used for
            download
            link
          </li>
          <li>
            fifth field maps the file name to be used for download
            link (can be
            the document model file name property value)
          </li>
        </ul>
        It also requires the following properties configuration:
        <ul>
          <li>
            file_schema: the file schema name, used to check whether
            download
            link should be displayed
          </li>
          <li>file_property_name:</li>
        </ul>
      </documentation>

      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/listing_route_title_link_widget_template.xhtml
      </property>

    </widgetType>

    <widgetType name="listing_document_route_element_state">
      <documentation>
        This remove_step widget displays a link to delete a step.
        <br/>
        It requires the following fields configuration:
        <ul>
          <li>The document current lifeCycleState.</li>
        </ul>
      </documentation>

      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/listing_document_route_element_state_widget_template.xhtml
      </property>
    </widgetType>

  </extension>

</component>
