<%@page pageEncoding="UTF-8" %> <%@include file="/jsp/init.jsp" %> <div> <ul class="nav nav-tabs"> <c:if test="${requestScope['security.type']=='db'}"> <li class="active"><a href="#changeUserPanel" data-toggle="pill"><spring:message code="GENERAL"/></a></li> <li><a href="#changePasswordPanel" data-toggle="pill"><spring:message code="SECURITY"/></a></li> </c:if> <li><a href="#languagePanel" data-toggle="pill"><spring:message code="LANGUAGE"/></a></li> </ul> <div class="tab-content"> <div class="tab-pane fade active in" id="changeUserPanel"> <div id="changeInfoMsg" class="alert"> </div> <form action="#" method="POST" id="changeUserForm"> <fieldset> <label for="email"><strong><spring:message code="EMAIL"/>:</strong></label> <input type="text" name="password" id="email" required="required" readonly="readonly" value="${user.email}"/> <label for="firstname"><strong><spring:message code="FIRSTNAME"/>:</strong></label> <input type="text" name="firstname" id="firstname" required="required" value="${user.firstname}"/> <label for="lastname"><strong><spring:message code="LASTNAME"/>:</strong></label> <input type="text" name="lastname" id="lastname" required="required" value="${user.lastname}"/> <br/> <input type="submit" id="changeUserInfoBtn" class="btn btn-primary" value="<spring:message code="SAVE_CHANGES"/>"/> </fieldset> </form> </div> <div class="tab-pane fade" id="changePasswordPanel"> <div id="changePasswordMsg" class="alert"> </div> <form action="#" method="POST" id="changePasswordForm"> <fieldset> <label for="password"><strong><spring:message code="NEW_PASSWORD"/>:</strong></label> <input type="password" name="password" id="password" required="required"/> <label for="repassword"><strong><spring:message code="CONFIRM_NEW_PASSWORD"/>:</strong></label> <input type="password" name="password" id="repassword" required="required"/> <br/> <input type="submit" id="changePasswordBtn" class="btn btn-primary" value="<spring:message code="CHANGE_PASSWORD"/>"/> </fieldset> </form> </div> <div class="tab-pane fade" id="languagePanel"> <div id="languageMsg" class="alert"> </div> <form action="#" method="POST" id="languageForm"> <fieldset> <label for="language"><strong><spring:message code="LANGUAGE"/>:</strong></label> <select name="language" id="language"> <option value="en">English</option> <option value="es" <c:if test="${user.locale=='es'}">selected="selected" </c:if>>Spanish - español </option> <option value="fr" <c:if test="${user.locale=='fr'}">selected="selected" </c:if>>French - français </option> <option value="de" <c:if test="${user.locale=='de'}">selected="selected" </c:if>>German - Deutsch </option> <option value="it" <c:if test="${user.locale=='it'}">selected="selected" </c:if>>Italian - italiano </option> <option value="pt_BR" <c:if test="${user.locale=='pt_BR'}">selected="selected" </c:if>> Portuguese (Brazil) - português (Brasil) </option> <option value="zh_CN" <c:if test="${user.locale=='zh_CN'}">selected="selected" </c:if>>Chinese (Simplified Han) - 中文(简体中文) </option> <option value="zh_TW" <c:if test="${user.locale=='zh_TW'}">selected="selected" </c:if>>Chinese (Traditional Han) - 中文 (繁體中文) </option> <option value="ca" <c:if test="${user.locale=='ca'}">selected="selected" </c:if>>Catalan - català </option> </select> <br/> <input type="submit" id="changeLanguageBtn" class="btn btn-primary" value="<spring:message code="CHANGE_LANGUAGE"/>"/> </fieldset> </form> </div> </div> </div> <script type="text/javascript"> $('#changePasswordMsg').hide(); $('#changeInfoMsg').hide(); $('#languageMsg').hide(); function postChange(url, postBody, msgContainerId, successMsg) { // Change success message ... jQuery.ajax(url, { async:false, dataType:'json', data:postBody, type:'PUT', contentType:"text/plain; charset=utf-8", success:function (data, textStatus, jqXHR) { $('#' + msgContainerId).removeClass('alert-error').addClass('alert-info').show(); $('#' + msgContainerId).text(successMsg); }, error:function (jqXHR, textStatus, errorThrown) { $('#' + msgContainerId).removeClass('alert-info').addClass('alert-error').show(); $('#' + msgContainerId).text(textStatus); } }); } $('#changePasswordForm').submit(function (event) { var inputVal = $('#changePasswordForm #password').val(); var rinputVal = $('#changePasswordForm #repassword').val(); if (inputVal != rinputVal) { // Password mismatch message ... $('#changePasswordMsg').removeClass('alert-info').addClass('alert-error').show(); $('#changePasswordMsg').text('<spring:message code="PASSWORD_MISSMATCH"/>'); } else { postChange("c/restful/account/password", inputVal, 'changePasswordMsg', "<spring:message code="CHANGE_PASSWORD_SUCCESS"/>"); } event.preventDefault(); }); $('#changeUserForm').submit(function (event) { var fistname = $('#changeUserForm #firstname').val(); var lastname = $('#changeUserForm #lastname').val(); postChange("c/restful/account/firstname", fistname, 'changeInfoMsg', "<spring:message code="INFO_UPDATE_SUCCESS"/>"); postChange("c/restful/account/lastname", lastname, 'changeInfoMsg', "<spring:message code="INFO_UPDATE_SUCCESS"/>"); event.preventDefault(); }); $('#languageForm').submit(function (event) { var locale = $('#languageForm option:selected').val(); postChange("c/restful/account/locale", locale, 'languageMsg', "<spring:message code="INFO_UPDATE_SUCCESS"/>"); event.preventDefault(); }); </script>