<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:c="http://java.sun.com/jstl/core"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:s="http://jboss.com/products/seam/taglib"
                xmlns:a="http://richfaces.org/a4j"
                xmlns:pd="dendrarium">

    <!-- Komponent wyswietlajacy liste odpowiedzi, np. zdan danego dendrologa

         PARAMETRY:
         String id  - id tabelki
         String title  -  tytul tabelki
         List<Answer> answers  -  lista odpowiedzi do wyswietlenia
         Boolean anuluj  -  czy wyswietlic link Anuluj (domyslnie false)
         Boolean wybierz  -  czy wyswietlic link Wybierz (domyslnie false)
         Boolean pobierz  -  czy wyswietlic link Pobierz (domyslnie false)
         Boolean potwierdz  -  czy wyswietlic link Potwierdź (domyslnie false)
         Boolean renderIfEmpty  -  czy cokolwiek wyswietlic jesli lista jest pusta
         Boolean typ  -  czy wyswietlic typ odpowiedzi obok stanu zadania (domyslnie false)
         Boolean short  -  czy wyswietlic krotsze id zdania (domyslnie false)
         ...

         Autor: pta
    -->

    <c:if test="#{renderIfEmpty or answers.rowCount>0}">
        <p>
            <h3 class="titlebar">#{title}</h3>

            <!-- <h:form id="#{id}"> -->

            <h:outputText id="#{id}_msg" value="Nie znaleziono zadań" rendered="#{answers.rowCount==0}"/>
            <h:dataTable id="#{id}_tab" value="#{answers}" var="a" rendered="#{answers.rowCount>0}" styleClass="mytab" columnClasses="col1,col2,col3,col4,col5">
                <h:column id="#{id}_c1">
                    #{a.taskBusinessProcess.index+1} / #{a.taskBusinessProcess.packet.size}
                </h:column>
                <h:column id="#{id}_c11">
                    <c:if test="#{short}">
                        #{a.taskBusinessProcess.packet.id}
                    </c:if>
                    <c:if test="#{!short}">
                        #{a.taskBusinessProcess.packet.name}
                    </c:if>
                </h:column>
                <h:column id="#{id}_c2">
                    <s:link value="#{a.taskBusinessProcess.description}" action="#{workOnAnswer.select}" rendered="#{wybierz and (!a.showIsRight() or a.amIRight() ne 'NIERACJA')}">
                        <f:param name="answerId" value="#{a.id}" />
                        <f:param name="colMode" value="0" />
                    </s:link>

                    <s:link value="#{a.taskBusinessProcess.description}" action="#{taskProfile.select}" rendered="#{wybierz and a.showIsRight() and a.amIRight() == 'NIERACJA'}">
                        <f:param name="tbpId" value="#{a.taskBusinessProcess.id}" />
                        <f:param name="cmpMode" value="1" />
                    </s:link>

                    <h:outputText value ="&#160;&#160;"  rendered="#{wybierz}"/>
                    <c:if test ="#{!wybierz}">
                        #{a.taskBusinessProcess.description}
                    </c:if>
                    <span style="color: red">
                        <h:outputText rendered="#{a.refreshedByMUZG}" value="nowa gramatyka"/>
                    </span>
                </h:column>
                <h:column id="#{id}_c3">
                    #{dendrarium:indexedProperty('taskStateDesc', a.taskBusinessProcess.state)}
                    <c:if test="#{typ}">&#160;/ #{dendrarium:indexedProperty('answerTypeShortDesc', a.type)}</c:if>
                    <!-- w linijce poniżej przelało się wiele krwi. Już nigdy w życiu nie użyję <c:if> - janek37 -->
                    <h:outputText rendered="#{a.showIsRight()}" value="&#160;/ #{a.amIRight()}"/>
                </h:column>
                <c:if test ="#{anuluj or pobierz or potwierdz}">
                    <h:column id="#{id}_c4" headerClass="actionColumn">

                        <s:link value="Anuluj" action="#{workOnAnswerStateless.cancel}" rendered="#{anuluj}">
                            <f:param name="answerId" value="#{a.id}" />
                        </s:link>
                        <h:outputText value ="&#160;&#160;"  rendered="#{anuluj}"/>

                        <c:if test="#{pobierz}">
                            <a href="javascript:toggleVisibility('pobierz_#{id}_#{a.id}')"> Pobierz</a>

                            <div style="visibility:hidden; display:none" id="pobierz_#{id}_#{a.id}">
                                <h:form id="pobierzform_#{id}_#{a.id}" action="#{download.download}">
                                    <h:selectOneMenu id="profilemenu#{id}" value="#{download.exportFormat}" >
                                        <s:selectItems value="#{download.availableExportFormats}" var="format" label="#{format.name}" />
                                        <s:convertEnum/>
                                    </h:selectOneMenu>
                                    <h:commandButton action="#{download.download}" value="OK" />
                                    <input type="hidden" name="answerId" value="#{a.id}" />
                                </h:form>
                            </div>
                        </c:if>

                        <s:link value="Potwierdź" action="#{confirmation.confirm}" rendered="#{potwierdz}">
                            <f:param name="answerId" value="#{a.id}" />
                        </s:link>

                    </h:column>
                </c:if>
            </h:dataTable>
            <!-- </h:form> -->
        </p>
    </c:if>
</ui:composition>