<?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:e="http://www.ivu.de/elect/tags">

  <!--@elvariable id="msgs" type="de.ivu.elect.business.lokalisierung.control.LokalisierungResourceBundle"-->
  <!--@elvariable id="erfassenView" type="de.ivu.elect.presentation.stimmeingabe.AbstractStimmeingabeErfassenView"-->

  <!-- NOTE, dass bei Vergabe von Tab-Indexen für die Eingabefelder, auch die Button einen Tab-Index brauchen! Ansonsten werden sie ggf. nicht direkt nach den Eingabefelder
       durch den Cursor angesprungen. -->
  <ui:param name="erfassenViewTabIndexPerCol" value="#{not erfassenView.erfassungGesperrt and erfassenView.tabIndexPerColumn}" />
  <ui:param name="erfassenViewTabIndexPerColIncludesSpaltensumme" value="#{not erfassenView.erfassungGesperrt and erfassenView.tabIndexPerColumnIncludesSpaltensumme}" />

  <ui:param name="btnTabIndexOffset" value="2000" /><!-- ELECTVAPP-1960, Offset muss tatsächlich so groß gewählt werden... -->

  <p:commandButton id="btnSave" rendered="#{erfassenView.btnSaveRendered}" disabled="#{erfassenView.btnSaveDisabled}" tabindex="#{btnTabIndexOffset + 1}" action="#{erfassenView.save}" onclick="PF('ctnContentBlockUI').show();" ajax="false"
    value="#{erfassenView.btnSaveLabel}" />

  <p:commandButton id="btnRefresh" rendered="#{erfassenView.btnRefreshRendered}" disabled="#{erfassenView.btnRefreshDisabled}" tabindex="#{btnTabIndexOffset + 2}" action="#{erfassenView.refresh}" onclick="PF('ctnContentBlockUI').show();" ajax="false"
    immediate="true" value="#{msgs['entity.edit.action.refresh']}" />

  <p:commandButton id="btnGoToStimmeingabeAusbleibendView" rendered="#{erfassenView.btnGoToStimmeingabeAusbleibendViewRendered}" disabled="#{erfassenView.btnGoToStimmeingabeAusbleibendViewDisabled}" tabindex="#{btnTabIndexOffset + 3}" action="#{erfassenView.goToStimmeingabeAusbleibendView}" onclick="PF('ctnContentBlockUI').show();"
    ajax="false" immediate="true" value="#{msgs['stimmeingabe.erfassen.action.ausbleibend']}" />

  <p:commandButton id="btnFehlerBestaetigen" rendered="#{erfassenView.btnFehlerBestaetigenRendered}" disabled="#{erfassenView.btnFehlerBestaetigenDisabled}" tabindex="#{btnTabIndexOffset + 4}" action="#{erfassenView.bestaetigeFehler}"
    onclick="PF('ctnContentBlockUI').show();" ajax="false" value="#{msgs['stimmeingabe.erfassen.action.fehler.bestaetigen']}" />

  <p:commandButton id="btnErfassungEntsperren" rendered="#{erfassenView.btnErfassungEntsperrenRendered}" disabled="#{erfassenView.btnErfassungEntsperrenDisabled}" tabindex="#{btnTabIndexOffset + 5}" action="#{erfassenView.entsperreErfassung}"
    onclick="PF('ctnContentBlockUI').show();" ajax="false" value="#{msgs['stimmeingabe.erfassen.action.entsperren']}" />

  <!-- NOTE, dass der nächste (zu vergebene) Tab-Index 'btnTabIndexOffset + 6' ist, der Button 'btnSaveFiktiveWerte' aber mit dem Tab-Index 'btnTabIndexOffset + 101' beginnt!
       So können sich dynamisch hinzugefügte Buttons ggf. noch in die Tab-Reihenfolge einklinken. -->
  <ui:insert name="buttons" />

  <p:commandButton id="btnSaveFiktiveWerte" rendered="#{erfassenView.btnSaveFiktiveWerteRendered}" disabled="#{erfassenView.btnSaveFiktiveWerteDisabled}" tabindex="#{btnTabIndexOffset + 101}" action="#{erfassenView.saveFiktiveWerte}"
    onclick="PF('ctnContentBlockUI').show();" ajax="false" immediate="true" value="#{msgs['stimmeingabe.erfassen.action.save.fiktive.werte']}" />

  <p:commandButton id="btnEingaengeLoeschen" rendered="#{erfassenView.btnEingaengeLoeschenRendered}" disabled="#{erfassenView.btnEingaengeLoeschenDisabled}" tabindex="#{btnTabIndexOffset + 102}" onclick="PF('dlgEingaengeLoeschenWidget').show()" ajax="true"
    immediate="true" value="#{erfassenView.btnEingaengeLoeschenLabel}" />

  <p:commandButton id="btnReset" rendered="#{erfassenView.btnResetRendered}" disabled="#{erfassenView.btnResetDisabled}" tabindex="#{btnTabIndexOffset + 103}" action="#{erfassenView.resetEingabe}" onclick="PF('ctnContentBlockUI').show();" ajax="false"
    immediate="true" value="#{msgs['entity.edit.action.reset']}" styleClass="ui-button--flat" />

  <p:commandButton id="btnCancel" rendered="#{erfassenView.btnCancelRendered}" tabindex="#{btnTabIndexOffset + 104}" action="#{erfassenView.cancel}" onclick="PF('ctnContentBlockUI').show();" ajax="false" immediate="true"
    value="#{msgs['entity.edit.action.cancel']}" styleClass="ui-button--flat" />

  <p:commandButton id="btnSeiteDrucken" rendered="#{erfassenView.btnSeiteDruckenRendered}" tabindex="#{btnTabIndexOffset + 105}" value="#{msgs['stimmeingabe.erfassen.action.ausdrucken']}"
    onclick="this.disabled = true; window.print(); setTimeout(enableAfterTimeout, 5000, this, this.className); this.className += ' ui-state-disabled';">
    <!-- HACK aus ELECT-6816 wurde mit ELECT-12923 aus stimmeingabe-erfassen-page.xhtml entfernt... -->
    <!-- ELECT-14395 p:printer target="frmCreate" / -> ersetzt durch window.print() in <p:commandButton onclick="" /> -->
  </p:commandButton>

  <p:commandButton id="btnNiederschriftKorrigieren" rendered="#{erfassenView.btnNiederschriftKorrigierenRendered}" disabled="#{erfassenView.btnNiederschriftKorrigierenDisabled}" tabindex="#{btnTabIndexOffset + 106}" action="#{erfassenView.niederschriftKorrigieren}"
    onclick="PF('ctnContentBlockUI').show();" ajax="false" value="#{msgs['stimmeingabe.erfassen.action.niederschrift.korrigieren']}" />

  <p:commandButton id="btnEingangsartWechsel" rendered="#{erfassenView.btnEingangsartWechselnRendered}" disabled="#{erfassenView.btnEingangsartWechselnDisabled}" tabindex="#{btnTabIndexOffset + 107}" action="#{erfassenView.eingangsartWechseln}"
    onclick="PF('ctnContentBlockUI').show();" ajax="false" value="#{erfassenView.btnEingangsartWechselnLabel}" />
</ui:composition>
