<?xml version="1.0" encoding="UTF-8"?>

<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:c="http://xmlns.jcp.org/jsp/jstl/core" xmlns:f="http://xmlns.jcp.org/jsf/core" xmlns:ui="http://xmlns.jcp.org/jsf/facelets" xmlns:h="http://xmlns.jcp.org/jsf/html"
  xmlns:p="http://primefaces.org/ui" xmlns:pe="http://primefaces.org/ui/extensions" xmlns:e="http://www.ivu.de/elect/tags">

  <pe:dynaForm value="#{model}" var="data">
    <!-- NOTE that all type attributes are specified in de.ivu.elect.jee.presentation.dynamicform.PropertyType. -->
    <ui:param name="property" value="#{data.property}" />

    <ui:param name="hints" value="#{data.facesMessages}" />

    <pe:dynaFormControl type="ELECT_5339">
      <!-- https://support.elect-it.com/ticket/browse/ELECT-5339 -->
      <!-- Cf. dyna-form.xhtml, personen-konflikt-personenregister-abgleich-aufloesen.xhtml, personen-konflikt-personenregister-abgleich-aufloesen-dyna-form.xhtml, wahlscheinantrag-person-manuell-zuordnen-dialog-dyna-form.xhtml -->
      <p:inputText id="elect5339" type="hidden" />
    </pe:dynaFormControl>

    <pe:dynaFormControl type="input_text">
      <ui:param name="id" value="inText" />
      <ui:param name="value" value="#{property.value}" />

      <ui:decorate template="/WEB-INF/templates/personenpruefung/personen-konflikt-personenregister-abgleich-aufloesen-dyna-form-edit.xhtml">
        <h:outputText id="#{id}" value="#{value}" />
      </ui:decorate>
    </pe:dynaFormControl>

    <pe:dynaFormControl type="input_text_readonly">
      <ui:param name="id" value="inTextReadonly" />
      <ui:param name="value" value="#{property.value}" />

      <ui:decorate template="/WEB-INF/templates/personenpruefung/personen-konflikt-personenregister-abgleich-aufloesen-dyna-form-edit.xhtml">
        <h:outputText id="#{id}" value="#{value}" />
      </ui:decorate>
    </pe:dynaFormControl>

    <pe:dynaFormControl type="input_calendar">
      <ui:param name="id" value="inCalendar" />
      <ui:param name="value" value="#{property.value}" />
      <ui:param name="converter" value="#{property.converter}" />

      <ui:decorate template="/WEB-INF/templates/personenpruefung/personen-konflikt-personenregister-abgleich-aufloesen-dyna-form-edit.xhtml">
        <h:outputText id="#{id}" value="#{value}" converter="#{converter}" />
      </ui:decorate>
    </pe:dynaFormControl>

    <pe:dynaFormControl type="input_calendar_readonly">
      <ui:param name="id" value="inCalendarReadonly" />
      <ui:param name="value" value="#{property.value}" />
      <ui:param name="converter" value="#{property.converter}" />

      <ui:decorate template="/WEB-INF/templates/personenpruefung/personen-konflikt-personenregister-abgleich-aufloesen-dyna-form-edit.xhtml">
        <h:outputText id="#{id}" value="#{value}" converter="#{converter}" />
      </ui:decorate>
    </pe:dynaFormControl>

    <pe:dynaFormControl type="select_one_menu">
      <ui:param name="id" value="inSelectOneMenu" />
      <ui:param name="value" value="#{property.getItemLabel(property.value)}" />

      <ui:decorate template="/WEB-INF/templates/personenpruefung/personen-konflikt-personenregister-abgleich-aufloesen-dyna-form-edit.xhtml">
        <h:outputText id="#{id}" value="#{value}" />
      </ui:decorate>
    </pe:dynaFormControl>

    <pe:dynaFormControl type="select_one_menu_no_selection_item">
      <ui:param name="id" value="inSelectOneMenuNoSelectionItem" />
      <ui:param name="value" value="#{property.getItemLabel(property.value)}" />

      <ui:decorate template="/WEB-INF/templates/personenpruefung/personen-konflikt-personenregister-abgleich-aufloesen-dyna-form-edit.xhtml">
        <h:outputText id="#{id}" value="#{value}" />
      </ui:decorate>
    </pe:dynaFormControl>

    <pe:dynaFormControl type="select_one_menu_readonly">
      <ui:param name="id" value="inSelectOneMenuReadonly" />
      <ui:param name="value" value="#{property.getItemLabel(property.value)}" />

      <ui:decorate template="/WEB-INF/templates/personenpruefung/personen-konflikt-personenregister-abgleich-aufloesen-dyna-form-edit.xhtml">
        <h:outputText id="#{id}" value="#{value}" />
      </ui:decorate>
    </pe:dynaFormControl>

    <pe:dynaFormControl type="select_boolean_checkbox">
      <ui:param name="id" value="inSelectBooleanCheckbox" />
      <ui:param name="value" value="#{property.value}" />

      <ui:decorate template="/WEB-INF/templates/personenpruefung/personen-konflikt-personenregister-abgleich-aufloesen-dyna-form-edit.xhtml">
        <p:selectBooleanCheckbox id="#{id}" title="#{property.tooltip}" disabled="true" readonly="true" value="#{value}" />
      </ui:decorate>
    </pe:dynaFormControl>

    <pe:dynaFormControl type="select_boolean_checkbox_readonly">
      <ui:param name="id" value="inSelectBooleanCheckboxReadonly" />
      <ui:param name="value" value="#{property.value}" />

      <ui:decorate template="/WEB-INF/templates/personenpruefung/personen-konflikt-personenregister-abgleich-aufloesen-dyna-form-edit.xhtml">
        <p:selectBooleanCheckbox id="#{id}" title="#{property.tooltip}" disabled="true" readonly="true" value="#{value}" />
      </ui:decorate>
    </pe:dynaFormControl>

    <pe:dynaFormControl type="separator">
      <e:outputFormSeparator value="#{property.label}" styleClass="#{data.styleClass}" />
    </pe:dynaFormControl>
  </pe:dynaForm>
</ui:composition>
