java/sql-vyuka/web/ajax.jspx
author František Kučera <franta-hg@frantovo.cz>
Sun May 31 22:36:58 2009 +0200 (2009-05-31)
changeset 29 4b6ab4ba1a95
parent 28 6facd99aa189
child 31 9d8c8622ff4e
permissions -rw-r--r--
Tipy (rady, citáty…) pro uživatele načítáme z databáze (v náhodném pořadí). + Databázové schéma.
franta-hg@24
     1
<?xml version="1.0" encoding="UTF-8"?>
franta-hg@24
     2
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
franta-hg@24
     3
          xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
franta-hg@27
     4
          xmlns:fn="http://java.sun.com/jsp/jstl/functions"
franta-hg@24
     5
          xmlns:c="http://java.sun.com/jsp/jstl/core"
franta-hg@24
     6
          version="2.0">
franta-hg@24
     7
    <jsp:directive.page contentType="text/html" pageEncoding="UTF-8"/>
franta-hg@24
     8
    <fmt:setBundle basename="cz.frantovo.sql.vyuka.preklady" scope="application"/>
franta-hg@24
     9
    <jsp:useBean id="ajax" class="cz.frantovo.sql.vyuka.web.Ajax" scope="request"/>
franta-hg@24
    10
franta-hg@24
    11
    <jsp:scriptlet>
franta-hg@24
    12
        request.setCharacterEncoding("UTF-8");
franta-hg@24
    13
        ajax.setKlient(request.getRemoteAddr(), request.getHeader("x-forwarded-for"), request.getRequestedSessionId());
franta-hg@24
    14
    </jsp:scriptlet>
franta-hg@24
    15
franta-hg@24
    16
    <c:choose>
franta-hg@29
    17
        <!-- <Akce: Historie a vykonání SQL příkazu> -->
franta-hg@24
    18
        <c:when test="${param.akce == 'historie' || param.akce == 'vykonat'}">
franta-hg@29
    19
            <!-- <Načteme výsledek z beany>  -->
franta-hg@24
    20
            <c:choose>
franta-hg@24
    21
                <c:when test="${param.akce == 'historie'}">
franta-hg@24
    22
                    <c:set var="vysledek" value="${ajax.historie}" scope="request"/>
franta-hg@24
    23
                </c:when>
franta-hg@24
    24
                <c:when test="${param.akce == 'vykonat'}">
franta-hg@24
    25
                    <jsp:setProperty name="ajax" property="sqlPrikaz" value="${param.sql}"/>
franta-hg@24
    26
                    <c:set var="vysledek" value="${ajax.SQLVysledek}" scope="request"/>
franta-hg@24
    27
                </c:when>
franta-hg@24
    28
            </c:choose>
franta-hg@29
    29
            <!-- </Načteme výsledek z beany>  -->
franta-hg@24
    30
franta-hg@29
    31
            <!-- <Tabulky> -->
franta-hg@24
    32
            <c:forEach var="tabulka" items="${vysledek.tabulky}">
franta-hg@26
    33
                <!-- <lokalizace> -->
franta-hg@26
    34
                <c:choose>
franta-hg@26
    35
                    <c:when test="${tabulka.lokalizovat}">
franta-hg@26
    36
                        <fmt:message key="${tabulka.zahlaviTip}" var="zahlaviTip"/>
franta-hg@26
    37
                    </c:when>
franta-hg@26
    38
                    <c:otherwise>
franta-hg@26
    39
                        <c:set value="${tabulka.zahlaviTip}" var="zahlaviTip"/>
franta-hg@26
    40
                    </c:otherwise>
franta-hg@26
    41
                </c:choose>
franta-hg@26
    42
                <!-- </lokalizace> -->
franta-hg@24
    43
                <table>
franta-hg@26
    44
                    <thead title="${zahlaviTip}">
franta-hg@24
    45
                        <tr>
franta-hg@24
    46
                            <c:forEach var="zahlavi" items="${tabulka.zahlavi}">
franta-hg@26
    47
                                <td>
franta-hg@26
    48
                                    <!-- <lokalizace> -->
franta-hg@26
    49
                                    <c:if test="${tabulka.lokalizovat}">
franta-hg@26
    50
                                        <fmt:message key="${zahlavi}" var="zahlavi"/>
franta-hg@26
    51
                                    </c:if>
franta-hg@26
    52
                                    <!-- </lokalizace> -->
franta-hg@26
    53
                                    <c:out value="${zahlavi}"/>
franta-hg@26
    54
                                </td>
franta-hg@24
    55
                            </c:forEach>
franta-hg@24
    56
                        </tr>
franta-hg@24
    57
                    </thead>
franta-hg@24
    58
                    <tbody>
franta-hg@24
    59
                        <c:forEach var="radek" items="${tabulka.hodnoty}">
franta-hg@24
    60
                            <tr>
franta-hg@24
    61
                                <c:forEach var="bunka" items="${radek}">
franta-hg@27
    62
                                    <!-- <formátováníPodleDatovýchTypů> -->
franta-hg@27
    63
                                    <c:choose>
franta-hg@27
    64
                                        <c:when test="${bunka.class == 'class java.sql.Timestamp'}">
franta-hg@27
    65
                                            <td>
franta-hg@27
    66
                                                <fmt:formatDate value="${bunka}" pattern="dd.MM.yyyy HH:mm:ss"/>
franta-hg@29
    67
                                                <!-- uvnitř vzoru je nedělitelná mezera -->
franta-hg@27
    68
                                            </td>
franta-hg@27
    69
                                        </c:when>
franta-hg@27
    70
                                        <c:when test="${bunka.class == 'class java.sql.Date'}">
franta-hg@27
    71
                                            <td>
franta-hg@27
    72
                                                <fmt:formatDate value="${bunka}" pattern="dd.MM.yyyy"/>
franta-hg@27
    73
                                            </td>
franta-hg@27
    74
                                        </c:when>
franta-hg@27
    75
                                        <c:when test="${bunka.class == 'class java.lang.Integer' || bunka.class == 'class java.math.BigDecimal'}">
franta-hg@27
    76
                                            <td class="cislo">
franta-hg@27
    77
                                                <fmt:formatNumber value="${bunka}" pattern="###,###.###"/>
franta-hg@27
    78
                                            </td>
franta-hg@27
    79
                                        </c:when>
franta-hg@27
    80
                                        <c:otherwise>
franta-hg@27
    81
                                            <td>
franta-hg@27
    82
                                                <c:out value="${bunka}" />
franta-hg@27
    83
                                            </td>
franta-hg@27
    84
                                        </c:otherwise>
franta-hg@27
    85
                                    </c:choose>
franta-hg@27
    86
                                    <!-- </formátováníPodleDatovýchTypů> -->
franta-hg@24
    87
                                </c:forEach>
franta-hg@24
    88
                            </tr>
franta-hg@24
    89
                        </c:forEach>
franta-hg@24
    90
                    </tbody>
franta-hg@24
    91
                </table>
franta-hg@24
    92
            </c:forEach>
franta-hg@29
    93
            <!-- </Tabulky> -->
franta-hg@24
    94
franta-hg@29
    95
            <!-- <Hlášky> -->
franta-hg@24
    96
            <c:forEach var="hlaska" items="${vysledek.hlasky}">
franta-hg@24
    97
                <p class="vysledek${hlaska.typ}">
franta-hg@24
    98
                    <c:out value="${hlaska.text}" escapeXml="${hlaska.escapovat}" />
franta-hg@24
    99
                </p>
franta-hg@24
   100
            </c:forEach>
franta-hg@29
   101
            <!-- </Hlášky> -->
franta-hg@24
   102
        </c:when>
franta-hg@29
   103
        <!-- </Akce: Historie a vykonání SQL příkazu> -->
franta-hg@24
   104
franta-hg@29
   105
franta-hg@29
   106
        <!-- <Akce: Nápověda> -->
franta-hg@24
   107
        <c:when test="${param.akce == 'napoveda'}">
franta-hg@24
   108
            <p>TODO: nápověda.</p>
franta-hg@24
   109
        </c:when>
franta-hg@29
   110
        <!-- </Akce: Nápověda> -->
franta-hg@24
   111
    </c:choose>
franta-hg@24
   112
</jsp:root>