java/nekurak.net-web/web/WEB-INF/casti/registrovatUzivatele.jsp
author František Kučera <franta-hg@frantovo.cz>
Thu, 04 Mar 2010 14:09:21 +0100
changeset 52 4c0408690ebf
parent 51 d01685a7e07d
child 53 d76be0124c40
permissions -rw-r--r--
Hashování hesla, generování náhodného tokenu, částečný převod chyb na uživatelsky přijatelné hlášky.
     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
     3 	  xmlns:c="http://java.sun.com/jsp/jstl/core"
     4 	  xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
     5 	  xmlns:fn="http://java.sun.com/jsp/jstl/functions"
     6 	  version="2.0">
     7 
     8     <jsp:useBean id="uzivatel" class="cz.frantovo.nekurak.dto.Uzivatel" scope="request"/>
     9     <jsp:useBean id="uzivatelPredRegistraci" class="cz.frantovo.nekurak.web.UzivatelPredRegistraci" scope="request"/>
    10     <jsp:useBean id="registraceUzivatele" class="cz.frantovo.nekurak.web.RegistraceUzivatele" scope="session"/>
    11 
    12     <h1><fmt:message key="registrace.nadpis"/></h1>
    13 
    14     <!--
    15     Registrace probíhá ve třech krocích:
    16 	1) uživatel vyplňí formulář
    17 	2) zobrazíme mu vyplněné údaje a on si je zkontroluje
    18         3) potvrdí registraci
    19     -->
    20 
    21     <c:choose>
    22 	<c:when test="${param.akceRegistrace == 'kontrola'}">
    23 	    <!-- Vypíšeme uživateli údaje, které zadal do formuláře, aby si je mohl zkontrolovat. -->
    24 	    <jsp:setProperty name="uzivatel" property="*"/>
    25 	    <jsp:setProperty name="uzivatelPredRegistraci" property="uzivatel" value="${uzivatel}"/>
    26 	    <jsp:setProperty name="registraceUzivatele" property="uzivatel" value="${uzivatelPredRegistraci}"/>
    27 
    28 	    <p><fmt:message key="registrace.kontrola"/></p>
    29 
    30 	    <p>
    31 		<fmt:message key="dto.uzivatel.prezdivka"/>: <c:out value="${uzivatel.prezdivka}"/><br/>
    32 		<fmt:message key="dto.uzivatel.jmeno"/>: <c:out value="${uzivatel.jmeno}"/><br/>
    33 		<fmt:message key="dto.uzivatel.prijmeni"/>: <c:out value="${uzivatel.prijmeni}"/><br/>
    34 		<fmt:message key="dto.uzivatel.email"/>: <c:out value="${uzivatel.email}"/><br/>
    35 	    </p>
    36 
    37 	    <p>
    38 		<a href="?akce=registrovatUzivatele&amp;amp;akceRegistrace=dokonceni&amp;amp;token=${fn:escapeXml(uzivatelPredRegistraci.token)}">
    39 		    <fmt:message key="registrace.potvrdit"/>
    40 		</a>
    41 	    </p>
    42 
    43 	</c:when>
    44 	<c:when test="${param.akceRegistrace == 'dokonceni'}">
    45 	    <!-- Uživatel si zkontroloval údaje a chce dokončit svoji registraci. -->
    46 	    <jsp:setProperty name="registraceUzivatele" property="token" value="${param.token}"/>
    47 
    48 	    <c:set var="chybaRegistrace" value="${registraceUzivatele.dokonciRegistraci}"/>
    49 
    50 	    <c:choose>
    51 		<c:when test="${chybaRegistrace == null}">
    52 		    <!-- Registrace proběhla úspěšně. -->
    53 		    <p>
    54 			<fmt:message key="registrace.hotovo"/>&amp;#160;
    55 			<a href="?akce=prihlaseni">
    56 			    <fmt:message key="registrace.hotovo.prihlasit"/>
    57 			</a>
    58 		    </p>
    59 		</c:when>
    60 		<c:otherwise>
    61 		    <!-- Během pokusu o registraci uživatele došlo k chybě. -->
    62 		    <p class="chybovaHlaska"><fmt:message key="${chybaRegistrace}"/></p>
    63 		</c:otherwise>
    64 	    </c:choose>
    65 	</c:when>
    66 	<c:otherwise>
    67 	    <!-- Zobrazíme uživateli registrační formulář. -->
    68 	    <form method="post" action="?akce=registrovatUzivatele&amp;amp;akceRegistrace=kontrola">
    69 		<fieldset>
    70 		    <fmt:message key="dto.uzivatel.prezdivka.tip" var="prezdivkaTip"/>
    71 		    <label title="${prezdivkaTip}"><fmt:message key="dto.uzivatel.prezdivka"/>: <input type="text" name="prezdivka" maxlength="255"/></label><br/>
    72 		    <label><fmt:message key="dto.uzivatel.heslo"/>: <input type="password" name="heslo" maxlength="255"/></label><br/>
    73 		    <label><fmt:message key="dto.uzivatel.heslo.kontrola"/>: <input type="password" name="heslo_kontrola" maxlength="255"/></label><br/>
    74 		    <br/>
    75 		    <label><fmt:message key="dto.uzivatel.jmeno"/>: <input type="text" name="jmeno" maxlength="255"/></label><br/>
    76 		    <label><fmt:message key="dto.uzivatel.prijmeni"/>: <input type="text" name="prijmeni" maxlength="255"/></label><br/>
    77 		    <label><fmt:message key="dto.uzivatel.email"/>: <input type="text" name="email" maxlength="255"/></label><br/>
    78 		    <button value="submit"><fmt:message key="registrace.tlacitko"/></button>
    79 		</fieldset>
    80 	    </form>
    81 	</c:otherwise>
    82     </c:choose>
    83 
    84 </jsp:root>