From: Roland Haeder <roland@mxchange.org> Date: Thu, 5 May 2016 14:06:36 +0000 (+0200) Subject: re-organized pages: X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=4538f38e35e68f5752a45b6db773108e53d6078f;p=jfinancials-war.git re-organized pages: - moved /user/ -> /guest/user/ as these are pages for current guest but later users - moved /login/ -> /user/ as these are pages for current (logged-in) users --- diff --git a/nbproject/faces-config.NavData b/nbproject/faces-config.NavData index 50c026e6..60dd8052 100644 --- a/nbproject/faces-config.NavData +++ b/nbproject/faces-config.NavData @@ -17,23 +17,22 @@ <Node id="user/register_done.xhtml" x="400" y="600" zoom="true"/> <Node id="*" x="1900" y="300" zoom="true"/> <Node id="admin/admin_category_delete.xhtml" x="900" y="1050" zoom="true"/> - <Node id="user/login_error.xhtml" x="1150" y="600" zoom="true"/> <Node id="admin/cellphone/admin_contact_cellphone_edit.xhtml" x="650" y="600" zoom="true"/> <Node id="user/show_addressbook_entries.xhtml" x="1900" y="450" zoom="true"/> <Node id="user/lost_passwd.xhtml" x="150" y="1500" zoom="true"/> <Node id="user/login.xhtml" x="400" y="1050" zoom="true"/> <Node id="login/login_list_sharing_addressbooks.xhtml" x="150" y="1200" zoom="true"/> - <Node id="login/login_edit_user_data.xhtml" x="900" y="300" zoom="true"/> <Node id="admin/cellphone/admin_contact_cellphone_unlink.xhtml" x="1400" y="450" zoom="true"/> <Node id="login/login_contact_data_saved.xhtml" x="400" y="1200" zoom="true"/> <Node id="admin/country/admin_country_list.xhtml" x="2400" y="150" zoom="true"/> + <Node id="login/login_edit_user_data.xhtml" x="900" y="300" zoom="true"/> <Node id="login/login_shared_addressbooks.xhtml" x="400" y="750" zoom="true"/> <Node id="admin/mobile_provider/admin_mobile_provider_delete.xhtml" x="1400" y="300" zoom="true"/> <Node id="admin/mobile_provider/admin_mobile_provider_list.xhtml" x="1150" y="750" zoom="true"/> <Node id="basket.xhtml" x="150" y="900" zoom="true"/> <Node id="admin/cellphone/admin_contact_cellphone_delete.xhtml" x="1150" y="150" zoom="true"/> - <Node id="exception.xhtml" x="900" y="600" zoom="true"/> <Node id="login/login_data_saved.xhtml" x="400" y="900" zoom="true"/> + <Node id="exception.xhtml" x="900" y="600" zoom="true"/> <Node id="admin/user/admin_user_delete.xhtml" x="2150" y="150" zoom="true"/> <Node id="user/register.xhtml" x="1650" y="150" zoom="true"/> <Node id="login/login_index.xhtml" x="150" y="1350" zoom="true"/> @@ -41,21 +40,18 @@ <Node id="login/login_own_addressbooks.xhtml" x="900" y="750" zoom="true"/> <Node id="admin/user/admin_user_edit.xhtml" x="1900" y="150" zoom="true"/> <Node id="terms.xhtml" x="150" y="150" zoom="true"/> - <Node id="admin/contact/admin_contact_edit.xhtml" x="900" y="150" zoom="true"/> <Node id="admin/contact/admin_contact_list.xhtml" x="650" y="900" zoom="true"/> + <Node id="admin/contact/admin_contact_edit.xhtml" x="900" y="150" zoom="true"/> <Node id="admin/user/admin_user_list.xhtml" x="1650" y="600" zoom="true"/> <Node id="admin/country/admin_country_delete.xhtml" x="1150" y="450" zoom="true"/> <Node id="user/user_list.xhtml" x="400" y="300" zoom="true"/> - <Node id="login/login_user_data_saved.xhtml" x="2150" y="300" zoom="true"/> - <Node id="admin/country/admin_country_edit.xhtml" x="650" y="150" zoom="true"/> <Node id="logout.xhtml" x="1400" y="750" zoom="true"/> - <Node id="user/user_profile.xhtml" x="650" y="450" zoom="true"/> - <Node id="login/login_change_personal_data.xhtml" x="1650" y="300" zoom="true"/> + <Node id="admin/country/admin_country_edit.xhtml" x="650" y="150" zoom="true"/> <Node id="admin/contact/admin_contact_delete.xhtml" x="650" y="1050" zoom="true"/> - <Node id="imprint.xhtml" x="400" y="450" zoom="true"/> + <Node id="login/login_change_personal_data.xhtml" x="1650" y="300" zoom="true"/> <Node id="user/show_addressbook.xhtml" x="650" y="1200" zoom="true"/> + <Node id="imprint.xhtml" x="400" y="450" zoom="true"/> <Node id="admin/mobile_provider/admin_mobile_provider_edit.xhtml" x="1150" y="900" zoom="true"/> - <Node id="login/login_other_addressbooks.xhtml" x="150" y="450" zoom="true"/> <Node id="admin/cellphone/admin_contact_cellphone_show.xhtml" x="1400" y="150" zoom="true"/> <Node id="admin/admin_product_delete.xhtml" x="1400" y="600" zoom="true"/> <Node id="login/login_change_email_address.xhtml" x="150" y="1050" zoom="true"/> diff --git a/web/WEB-INF/faces-config.xml b/web/WEB-INF/faces-config.xml index a8d5b23b..2da1c597 100644 --- a/web/WEB-INF/faces-config.xml +++ b/web/WEB-INF/faces-config.xml @@ -17,15 +17,15 @@ </navigation-case> <navigation-case> <from-outcome>user_register</from-outcome> - <to-view-id>/user/register.xhtml</to-view-id> + <to-view-id>/guest/user/register.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>user_login</from-outcome> - <to-view-id>/user/login.xhtml</to-view-id> + <to-view-id>/guest/user/login.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>user_lost_passwd</from-outcome> - <to-view-id>/user/lost_passwd.xhtml</to-view-id> + <to-view-id>/guest/user/lost_passwd.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>terms</from-outcome> @@ -49,15 +49,15 @@ </navigation-case> <navigation-case> <from-outcome>login_index</from-outcome> - <to-view-id>/login/login_index.xhtml</to-view-id> + <to-view-id>/user/login_index.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>user_resend_link</from-outcome> - <to-view-id>/user/resend_link.xhtml</to-view-id> + <to-view-id>/guest/user/resend_link.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>login_own_addressbooks</from-outcome> - <to-view-id>/login/login_own_addressbooks.xhtml</to-view-id> + <to-view-id>/user/login_own_addressbooks.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>admin_logout</from-outcome> @@ -89,21 +89,21 @@ </navigation-case> </navigation-rule> <navigation-rule> - <from-view-id>/user/login.xhtml</from-view-id> + <from-view-id>/guest/user/login.xhtml</from-view-id> <navigation-case> <from-outcome>login</from-outcome> - <to-view-id>/login/login_index.xhtml</to-view-id> + <to-view-id>/user/login_index.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>login_index</from-outcome> - <to-view-id>/login/index.xhtml</to-view-id> + <to-view-id>/user/index.xhtml</to-view-id> </navigation-case> </navigation-rule> <navigation-rule> - <from-view-id>/user/register.xhtml</from-view-id> + <from-view-id>/guest/user/register.xhtml</from-view-id> <navigation-case> <from-outcome>register_done</from-outcome> - <to-view-id>/user/register_done.xhtml</to-view-id> + <to-view-id>/guest/user/register_done.xhtml</to-view-id> </navigation-case> </navigation-rule> <navigation-rule> @@ -114,68 +114,68 @@ </navigation-case> </navigation-rule> <navigation-rule> - <from-view-id>/login/login_own_addressbooks.xhtml</from-view-id> + <from-view-id>/user/login_own_addressbooks.xhtml</from-view-id> <navigation-case> <from-outcome>login_add_addressbook</from-outcome> - <to-view-id>/login/login_add_addressbook.xhtml</to-view-id> + <to-view-id>/user/login_add_addressbook.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>user_show_addressbook</from-outcome> - <to-view-id>/user/show_addressbook.xhtml</to-view-id> + <to-view-id>/guest/user/show_addressbook.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>show_addressbook_entries</from-outcome> - <to-view-id>/user/show_addressbook_entries.xhtml</to-view-id> + <to-view-id>/guest/user/show_addressbook_entries.xhtml</to-view-id> </navigation-case> </navigation-rule> <navigation-rule> - <from-view-id>/user/user_list.xhtml</from-view-id> + <from-view-id>/guest/user/user_list.xhtml</from-view-id> <navigation-case> <from-outcome>login_list_sharing_addressbooks</from-outcome> - <to-view-id>/login/login_list_sharing_addressbooks.xhtml</to-view-id> + <to-view-id>/user/login_list_sharing_addressbooks.xhtml</to-view-id> </navigation-case> </navigation-rule> <navigation-rule> - <from-view-id>/user/show_addressbook.xhtml</from-view-id> + <from-view-id>/guest/user/show_addressbook.xhtml</from-view-id> <navigation-case> <from-outcome>login_start_sharing_addressbook</from-outcome> - <to-view-id>/login/login_start_sharing_addressbook.xhtml</to-view-id> + <to-view-id>/user/login_start_sharing_addressbook.xhtml</to-view-id> </navigation-case> </navigation-rule> <navigation-rule> - <from-view-id>/login/login_shared_addressbooks.xhtml</from-view-id> + <from-view-id>/user/login_shared_addressbooks.xhtml</from-view-id> <navigation-case> <from-outcome>user_show_addressbook</from-outcome> - <to-view-id>/user/show_addressbook.xhtml</to-view-id> + <to-view-id>/guest/user/show_addressbook.xhtml</to-view-id> </navigation-case> </navigation-rule> <navigation-rule> - <from-view-id>/login/login_edit_user_data.xhtml</from-view-id> + <from-view-id>/user/login_edit_user_data.xhtml</from-view-id> <navigation-case> <from-outcome>login_change_email_address</from-outcome> - <to-view-id>/login/login_change_email_address.xhtml</to-view-id> + <to-view-id>/user/login_change_email_address.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>login_change_password</from-outcome> - <to-view-id>/login/login_change_password.xhtml</to-view-id> + <to-view-id>/user/login_change_password.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>login_change_personal_data</from-outcome> - <to-view-id>/login/login_change_personal_data.xhtml</to-view-id> + <to-view-id>/user/login_change_personal_data.xhtml</to-view-id> </navigation-case> </navigation-rule> <navigation-rule> - <from-view-id>/login/login_change_password.xhtml</from-view-id> + <from-view-id>/user/login_change_password.xhtml</from-view-id> <navigation-case> <from-outcome>login_data_saved</from-outcome> - <to-view-id>/login/login_data_saved.xhtml</to-view-id> + <to-view-id>/user/login_data_saved.xhtml</to-view-id> </navigation-case> </navigation-rule> <navigation-rule> - <from-view-id>/login/login_change_email_address.xhtml</from-view-id> + <from-view-id>/user/login_change_email_address.xhtml</from-view-id> <navigation-case> <from-outcome>contact_data_saved</from-outcome> - <to-view-id>/login/login_contact_data_saved.xhtml</to-view-id> + <to-view-id>/user/login_contact_data_saved.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>admin_delete_product</from-outcome> @@ -183,10 +183,10 @@ </navigation-case> </navigation-rule> <navigation-rule> - <from-view-id>/login/login_change_personal_data.xhtml</from-view-id> + <from-view-id>/user/login_change_personal_data.xhtml</from-view-id> <navigation-case> <from-outcome>login_data_saved</from-outcome> - <to-view-id>/login/login_data_saved.xhtml</to-view-id> + <to-view-id>/user/login_data_saved.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>admin_delete_category</from-outcome> diff --git a/web/guest/user/login.xhtml b/web/guest/user/login.xhtml new file mode 100644 index 00000000..0b0efb62 --- /dev/null +++ b/web/guest/user/login.xhtml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl" id="user_login"> + <ui:define name="guest_title">#{msg.PAGE_TITLE_USER_LOGIN}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_USER_LOGIN} + </ui:define> + + <ui:define name="content"> + <div class="para"> + <!-- TODO Internatialize this somehow //--> + Noch kein Benutzerkonto? Einfach <h:link id="user_register" outcome="user_register" title="Als Benutzer anmelden">hier</h:link> anmelden. + </div> + + <div class="para"> + <ui:include id="login_form" class="login_form" src="/WEB-INF/templates/guest/guest_login_form.tpl" /> + </div> + + <div class="para"> + <h:link id="user_lost_password" outcome="user_lost_passwd" title="#{msg.LINK_TITLE_GUEST_LOGIN_LOST_PASSWORD}" value="#{msg.LINK_GUEST_LOGIN_LOST_PASSWORD}" /> + </div> + </ui:define> + </ui:composition> +</html> diff --git a/web/guest/user/login_error.xhtml b/web/guest/user/login_error.xhtml new file mode 100644 index 00000000..85361e74 --- /dev/null +++ b/web/guest/user/login_error.xhtml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:c="http://xmlns.jcp.org/jsp/jstl/core" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl" id="login_error"> + <ui:define name="guest_title">#{msg.PAGE_TITLE_USER_LOGIN_ERROR}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_USER_LOGIN_ERROR} + </ui:define> + + <ui:define name="content"> + Hier kommt die Fehlermeldung hin. + </ui:define> + </ui:composition> +</html> diff --git a/web/guest/user/lost_passwd.xhtml b/web/guest/user/lost_passwd.xhtml new file mode 100644 index 00000000..c6c0848c --- /dev/null +++ b/web/guest/user/lost_passwd.xhtml @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl"> + <ui:define name="guest_title">#{msg.PAGE_TITLE_USER_LOST_PASSWORD}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_USER_LOST_PASSWORD} + </ui:define> + + <ui:define name="content"> + <div class="para" id="user_lost_password_content"> + <h:form id="lost_password_form"> + <div class="table"> + <div class="table_header"> + #{msg.GUEST_LOST_PASSWORD_TITLE} + </div> + + <fieldset id="login_data"> + <legend title="#{msg.GUEST_LOST_PASSWORD_LEGEND_TITLE}">#{msg.GUEST_LOST_PASSWORD_LEGEND}</legend> + + <div class="table_row"> + <div class="table_left"> + <h:outputLabel for="id" value="#{msg.ENTER_USER_NAME}" /> + </div> + + <div class="table_right"> + <h:inputText class="input" id="id" size="10" maxlength="20" value="#{passwordRecoveryController.userId}" /> + </div> + + <div class="clear"></div> + </div> + + <div class="table_header"> + #{msg.GUEST_LOST_PASSWORD_NUMBER_OR_EMAIL} + </div> + + <div class="table_row"> + <div class="table_left"> + <h:outputLabel for="email" value="#{msg.ENTER_EMAIL_ADDRESS}" /> + </div> + + <div class="table_right"> + <h:inputText class="input" id="email" size="20" maxlength="255" value="#{passwordRecoveryController.emailAddress}" /> + </div> + + <div class="clear"></div> + </div> + + </fieldset> + + <div class="table_footer"> + <h:commandButton class="reset" type="reset" value="#{msg.BUTTON_RESET_FORM}" /> + <h:commandButton class="submit" type="submit" value="#{msg.BUTTON_CONTINUE_STEP_2}" action="#{passwordRecoveryController.doLostPasswordStep2()}" /> + </div> + </div> + </h:form> + </div> + </ui:define> + </ui:composition> +</html> diff --git a/web/guest/user/register.xhtml b/web/guest/user/register.xhtml new file mode 100644 index 00000000..b03c31e9 --- /dev/null +++ b/web/guest/user/register.xhtml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl"> + <ui:define name="guest_title">#{msg.PAGE_TITLE_USER_REGISTER}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_USER_REGISTER} + </ui:define> + + <ui:define name="content"> + <div class="para"> + #{msg.GUEST_ALREADY_USER_CONTINUE_LOGIN_1} + <h:link outcome="user_login" value="#{msg.CLICK_HERE}" /> + #{msg.GUEST_ALREADY_USER_CONTINUE_LOGIN_2} + </div> + + <div class="registration_form"> + <ui:include src="/WEB-INF/templates/guest/guest_registration_form.tpl" /> + </div> + </ui:define> + </ui:composition> +</html> diff --git a/web/guest/user/register_done.xhtml b/web/guest/user/register_done.xhtml new file mode 100644 index 00000000..bbec38e6 --- /dev/null +++ b/web/guest/user/register_done.xhtml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl"> + <ui:define name="guest_title">#{msg.PAGE_TITLE_USER_REGISTER_DONE}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_USER_REGISTER_DONE} + </ui:define> + + <ui:define name="content"> + <div class="para"> + #{msg.GUEST_USER_REGISTRATION_COMPLETED} + </div> + + <div class="registration_form"> + <h:link id="resend_link" class="resend_link" value="#{msg.LINK_GUEST_RESENT_CONFIRMATION_LINK}" outcome="user_resend_link"> + <f:param name="user_id" value="#{userController.userId}" /> + </h:link> + </div> + </ui:define> + </ui:composition> +</html> diff --git a/web/guest/user/resend_link.xhtml b/web/guest/user/resend_link.xhtml new file mode 100644 index 00000000..89da7508 --- /dev/null +++ b/web/guest/user/resend_link.xhtml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl"> + <ui:define name="guest_title">#{msg.PAGE_TITLE_INDEX_RESEND_LINK}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_INDEX_RESEND_LINK} + </ui:define> + + <ui:define name="content"> + Here goes your content. + </ui:define> + </ui:composition> +</html> diff --git a/web/guest/user/show_addressbook.xhtml b/web/guest/user/show_addressbook.xhtml new file mode 100644 index 00000000..1a1193fc --- /dev/null +++ b/web/guest/user/show_addressbook.xhtml @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core"> + + <f:metadata> + <f:viewParam id="addressbookId" name="addressbookId" value="#{addressbookController.addressbookId}" required="true" requiredMessage="#{msg.PARAMETER_ADDRESSBOOK_ID_MISSING}" converterMessage="#{msg.PARAMETER_ADDRESSBOOK_ID_INVALID}" validatorMessage="#{msg.PARAMETER_ADDRESSBOOK_ID_NOT_FOUND}"> + <f:convertNumber for="addressbookId" type="number" minIntegerDigits="1" maxIntegerDigits="20" /> + <f:validator for="addressbookId" validatorId="AddressbookIdValidator" /> + </f:viewParam> + </f:metadata> + + <ui:composition template="/WEB-INF/templates/#{loginController.templateType}/#{loginController.templateType}_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_USER_SHOW_ADDRESSBOOK}</ui:define> + <ui:define name="guest_title">#{msg.PAGE_TITLE_INDEX_SHOW_ADDRESSBOOK}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_USER_SHOW_ADDRESSBOOK} + </ui:define> + + <ui:define name="content"> + <h:panelGrid headerClass="table_header" styleClass="table" columns="2" rendered="#{addressbookController.loadAddressbook()}"> + <f:facet name="header">#{msg.TABLE_HEADER_SHOW_ADDRESSBOOK}</f:facet> + + <h:outputLabel for="addressbookName" class="table_label">#{msg.ADDRESSBOOK_NAME}</h:outputLabel> + <h:outputText id="addressbookName" value="#{addressbookController.addressbookName}" /> + + <h:outputLabel for="userProfileLink" class="table_label">#{msg.ADDRESSBOOK_OWNER}</h:outputLabel> + <ui:include src="/WEB-INF/templates/generic/user_profile_link.tpl"> + <ui:param name="user" value="#{addressbookController.addressbookUser}" /> + </ui:include> + + <h:outputLabel for="addressbookCreated" class="table_label">#{msg.ADDRESSBOOK_CREATED}</h:outputLabel> + <h:outputFormat id="addressbookCreated" value="#{addressbookController.addressbook.addressbookCreated.time}" title="#{msg.ADDRESSBOOK_CREATED_TITLE}"> + <f:convertDateTime for="addressbookCreated" type="both" timeStyle="short" dateStyle="medium" /> + </h:outputFormat> + + <h:outputLabel for="addressbookStatus" class="table_label">#{msg.ADDRESSBOOK_STATUS}</h:outputLabel> + <h:outputText id="addressbookStatus" value="#{msg[addressbookController.addressbook.addressbookStatus.messageKey]}" title="#{msg.ADDRESSBOOK_STATUS_TITLE}" /> + + <f:facet name="footer"> + <h:outputText id="ownProfileInvible" class="notice" value="#{msg.USER_NOT_LOGGED_IN}" rendered="#{not loginController.isUserLoggedIn()}" /> + <h:outputText id="ownProfileInvible" class="notice" value="#{msg.LOGIN_OWN_PROFILE_INVISIBLE}" rendered="#{loginController.isUserLoggedIn() and loginController.isInvisible()}" /> + + <ui:fragment rendered="#{loginController.isUserLoggedIn() and not loginController.isInvisible()}"> + <h:link id="startSharing" outcome="login_start_sharing_addressbook" value="#{msg.LINK_LOGIN_START_SHARING_ADDRESSBOOK}" title="#{msg.LINK_LOGIN_START_SHARING_ADDRESSBOOK_TITLE}" rendered="#{addressbookController.isOwnAddressbook()}" /> + + <h:outputText value="Bla bla" rendered="#{addressbookController.isOtherAddressbook()}" /> + </ui:fragment> + </f:facet> + </h:panelGrid> + </ui:define> + </ui:composition> +</html> diff --git a/web/guest/user/show_addressbook_entries.xhtml b/web/guest/user/show_addressbook_entries.xhtml new file mode 100644 index 00000000..0164c1a5 --- /dev/null +++ b/web/guest/user/show_addressbook_entries.xhtml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_USER_SHOW_ADDRESSBOOK_ENTRIES}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_USER_SHOW_ADDRESSBOOK_ENTRIES} + </ui:define> + + <ui:define name="content"> + Here goes your content. + </ui:define> + </ui:composition> +</html> diff --git a/web/guest/user/user_list.xhtml b/web/guest/user/user_list.xhtml new file mode 100644 index 00000000..60b60b7c --- /dev/null +++ b/web/guest/user/user_list.xhtml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core"> + + <ui:composition template="/WEB-INF/templates/#{loginController.templateType}/#{loginController.templateType}_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_USER_LIST}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_USER_LIST} + </ui:define> + + <ui:define name="content"> + <div class="table_big"> + <div class="table_header"> + #{msg.TABLE_HEADER_USER_LIST} + </div> + + <h:dataTable id="userList" var="user" value="#{userController.allVisibleUsers()}" headerClass="table_header_column25" summary="#{msg.TABLE_SUMMARY_USER_LIST}" rendered="#{userController.isVisibleUserFound()}"> + <h:column> + <f:facet name="header">#{msg.USER_NAME}</f:facet> + <ui:include src="/WEB-INF/templates/generic/user_profile_link.tpl"> + <ui:param name="user" value="#{user}" /> + </ui:include> + </h:column> + + <h:column> + <f:facet name="header">#{msg.USER_CREATED}</f:facet> + <h:outputFormat id="userCreated" value="#{user.userCreated.time}" title="#{msg.USER_CREATED_TITLE}" /> + </h:column> + + <h:column> + <f:facet name="header">#{msg.USER_LIST_SHARING_ADDRESSBOOKS}</f:facet> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <h:link outcome="login_list_sharing_addressbooks" value="#{msg.LINK_LOGIN_LIST_SHARING_ADDRESSBOOKS}" title="#{msg.LINK_LOGIN_LIST_SHARING_ADDRESSBOOKS_TITLE}"> + <f:param name="userId" value="#{user.userId}" /> + </h:link> + </ui:fragment> + <ui:fragment rendered="#{loginController.isGuest()}"> + <h:outputText id="userShared" value="#{addressbookController.countAllUserSharedAddressbooks(user)}" /> + </ui:fragment> + </h:column> + </h:dataTable> + </div> + </ui:define> + </ui:composition> +</html> diff --git a/web/guest/user/user_profile.xhtml b/web/guest/user/user_profile.xhtml new file mode 100644 index 00000000..0e58740f --- /dev/null +++ b/web/guest/user/user_profile.xhtml @@ -0,0 +1,48 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"> + + <f:metadata> + <f:viewParam id="userId" name="userId" value="#{userController.userId}" required="true" requiredMessage="#{msg.PARAMETER_USER_ID_MISSING}" converterMessage="#{msg.PARAMETER_USER_ID_INVALID}" validatorMessage="#{msg.PARAMETER_USER_ID_NOT_FOUND}"> + <f:convertNumber for="userId" type="number" minIntegerDigits="1" maxIntegerDigits="20" /> + <f:validator for="userId" validatorId="UserIdValidator" /> + </f:viewParam> + </f:metadata> + + <ui:composition template="/WEB-INF/templates/#{loginController.templateType}/#{loginController.templateType}_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_USER_PROFILE}</ui:define> + <ui:define name="guest_title">#{msg.PAGE_TITLE_INDEX_USER_PROFILE}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_INDEX_USER_PROFILE} + </ui:define> + + <ui:define name="content"> + <c:choose> + <c:when test="#{userController.isUserIdEmpty()}"> + <ui:include src="/WEB-INF/templates/generic/userid_error.tpl" /> + </c:when> + + <c:when test="#{profileController.isProfileLinkVisibleById(userController.userId)}"> + <div align="center"> + <h:panelGrid styleClass="table" headerClass="table_header" footerClass="table_footer"> + <f:facet name="header"> + #{msg.PUBLIC_USER_PROFILE} + </f:facet> + </h:panelGrid> + </div> + </c:when> + + <c:otherwise> + #{msg.ERROR_PROFILE_NOT_VISIBLE} + </c:otherwise> + </c:choose> + </ui:define> + </ui:composition> +</html> diff --git a/web/login/index.xhtml b/web/login/index.xhtml deleted file mode 100644 index dafff409..00000000 --- a/web/login/index.xhtml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://java.sun.com/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="guest_title">#{msg.PAGE_TITLE_LOGIN_FOO}</ui:define> - - <ui:define name="menu"> - <ui:include id="menu" class="login_menu" src="/WEB-INF/templates/login/login_menu.tpl" /> - </ui:define> - - <ui:define name="content_header"> - #{msg.SUB_TITLE_LOGIN_FOO} - </ui:define> - - <ui:define name="content"> - Here goes your content. - </ui:define> - - <ui:define name="footer"> - <ui:include id="footer" class="login_footer" src="/WEB-INF/templates/login/login_footer.tpl" /> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_add_addressbook.xhtml b/web/login/login_add_addressbook.xhtml deleted file mode 100644 index 7f1c8579..00000000 --- a/web/login/login_add_addressbook.xhtml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_ADD_ADDRESSBOOK}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_ADD_ADDRESSBOOK} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <h:form id="add_addressbook" acceptcharset="utf-8"> - <div class="table"> - <div class="table_header"> - #{msg.FORM_LOGIN_ADD_ADDRESSBOOK_TITLE} - </div> - - <div class="table_row"> - <div class="table_left"> - <h:outputLabel for="addressbookName" value="#{msg.LOGIN_ENTER_ADDRESSBOOK_NAME}"/> - </div> - - <div class="table_right"> - <h:inputText class="input" id="addressbookName" value="#{addressbookController.addressbookName}" maxlength="50" size="20" title="#{msg.LOGIN_ENTER_ADDRESSBOOK_NAME_TITLE}" required="true" requiredMessage="#{msg.LOGIN_ADDRESSBOOK_NAME_REQUIRED_MESSAGE}"> - <f:validator for="addressbookName" validatorId="AddressbookNameValidator" /> - </h:inputText> - </div> - </div> - - <div class="table_footer"> - <h:commandButton class="reset" type="reset" value="#{msg.BUTTON_RESET_FORM}" /> - <h:commandButton class="submit" type="submit" id="register" value="#{msg.BUTTON_LOGIN_ADD_ADDRESSBOOK}" action="#{addressbookController.addAddressbook()}" /> - </div> - </div> - </h:form> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_change_email_address.xhtml b/web/login/login_change_email_address.xhtml deleted file mode 100644 index 702312d8..00000000 --- a/web/login/login_change_email_address.xhtml +++ /dev/null @@ -1,83 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_CHANGE_EMAIL_ADDRESS}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_CHANGE_EMAIL_ADDRESS} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <div class="table"> - <div class="table_header"> - #{msg.LOGIN_CHANGE_EMAIL_ADDRESS_TITLE} - </div> - - <h:form id="login_form"> - <div class="para"> - <fieldset id="change_email"> - <legend title="#{msg.LOGIN_CHANGE_EMAIL_LEGEND_TITLE}">#{msg.LOGIN_CHANGE_EMAIL_LEGEND}</legend> - - <div class="table_row"> - <div class="table_left"> - #{msg.LOGIN_CHANGE_EMAIL_OLD_ADDRESS} - </div> - - <div class="table_right"> - #{userController.emailAddress} - </div> - - <div class="clear"></div> - </div> - - <div class="table_row"> - <div class="table_left"> - <h:outputLabel for="emailAddress1" value="#{msg.LOGIN_CHANGE_EMAIL_ENTER_EMAIL1}" /> - </div> - - <div class="table_right"> - <h:inputText class="input" id="emailAddress1" size="20" maxlength="255" value="#{emailChangeController.emailAddress1}" required="true" /> - </div> - - <div class="clear"></div> - </div> - - <div class="table_row"> - <div class="table_left"> - <h:outputLabel for="emailAddress2" value="#{msg.LOGIN_CHANGE_EMAIL_ENTER_EMAIL2}" /> - </div> - - <div class="table_right"> - <h:inputText class="input" id="emailAddress2" size="20" maxlength="255" value="#{emailChangeController.emailAddress2}" required="true" /> - </div> - - <div class="clear"></div> - </div> - </fieldset> - </div> - - <ui:include src="/WEB-INF/templates/login/login_enter_current_password.tpl" /> - - <div class="table_footer"> - <h:commandButton class="reset" type="reset" value="#{msg.BUTTON_RESET_FORM}" /> - <h:commandButton class="submit" type="submit" id="change_email" value="#{msg.BUTTON_CHANGE_EMAIL_ADDRESS}" action="#{emailChangeController.doChangeEmailAddress()}" /> - </div> - </h:form> - </div> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_change_password.xhtml b/web/login/login_change_password.xhtml deleted file mode 100644 index bfd384d4..00000000 --- a/web/login/login_change_password.xhtml +++ /dev/null @@ -1,71 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_CHANGE_PASSWORD}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_CHANGE_PASSWORD} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <div class="table"> - <div class="table_header"> - #{msg.LOGIN_CHANGE_PASSWORD_TITLE} - </div> - - <h:form id="login_form"> - <div class="para"> - <fieldset id="change_password"> - <legend title="#{msg.LOGIN_CHANGE_PASSWORD_LEGEND_TITLE}">#{msg.LOGIN_CHANGE_PASSWORD_LEGEND}</legend> - - <div class="table_row"> - <div class="table_left"> - <h:outputLabel for="password1" value="#{msg.GUEST_REGISTRATION_ENTER_PASSWORD1}" /> - </div> - - <div class="table_right"> - <h:inputSecret class="input" id="password1" size="10" maxlength="255" value="#{loginController.userPassword}" required="true" /> - </div> - - <div class="clear"></div> - </div> - - <div class="table_row"> - <div class="table_left"> - <h:outputLabel for="password2" value="#{msg.GUEST_REGISTRATION_ENTER_PASSWORD2}" /> - </div> - - <div class="table_right"> - <h:inputSecret class="input" id="password2" size="10" maxlength="255" value="#{loginController.userPasswordRepeat}" required="true" /> - </div> - - <div class="clear"></div> - </div> - </fieldset> - </div> - - <ui:include src="/WEB-INF/templates/login/login_enter_current_password.tpl" /> - - <div class="table_footer"> - <h:commandButton class="reset" type="reset" value="#{msg.BUTTON_RESET_FORM}" /> - <h:commandButton class="submit" type="submit" id="change_password" value="#{msg.BUTTON_CHANGE_PASSWORD}" action="#{userController.changePassword()}" /> - </div> - </h:form> - </div> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_change_personal_data.xhtml b/web/login/login_change_personal_data.xhtml deleted file mode 100644 index e4c482c9..00000000 --- a/web/login/login_change_personal_data.xhtml +++ /dev/null @@ -1,45 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_CHANGE_PERSONAL_DATA}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_CHANGE_PERSONAL_DATA} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <div class="table"> - <div class="table_header"> - #{msg.LOGIN_CHANGE_PERSONAL_DATA_TITLE} - </div> - - <h:form id="login_change_personal_form"> - <ui:include src="/WEB-INF/templates/generic/form_personal_data.tpl" /> - - <ui:include src="/WEB-INF/templates/login/login_enter_current_password.tpl" /> - - <ui:include src="/WEB-INF/templates/guest/guest_privacy_terms.tpl" /> - - <div class="table_footer"> - <h:commandButton class="reset" type="reset" value="#{msg.BUTTON_RESET_FORM}" /> - <h:commandButton class="submit" type="submit" id="change_personal_data" value="#{msg.BUTTON_CHANGE_PERSONAL_DATA}" action="#{userController.doChangePersonalData()}" /> - </div> - </h:form> - </div> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_contact_data_saved.xhtml b/web/login/login_contact_data_saved.xhtml deleted file mode 100644 index 25b69679..00000000 --- a/web/login/login_contact_data_saved.xhtml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_CONTACT_DATA_SAVED}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_CONTACT_DATA_SAVED} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <ui:include id="message_box" src="/WEB-INF/templates/generic/message_box.tpl"> - <ui:param name="message" value="#{msg.LOGIN_MESSAGE_DATA_SAVED}" /> - </ui:include> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_data_saved.xhtml b/web/login/login_data_saved.xhtml deleted file mode 100644 index 0fd6316a..00000000 --- a/web/login/login_data_saved.xhtml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_DATA_SAVED}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_DATA_SAVED} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <ui:include id="message_box" src="/WEB-INF/templates/generic/message_box.tpl"> - <ui:param name="message" value="#{msg.LOGIN_MESSAGE_DATA_SAVED}" /> - </ui:include> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_edit_user_data.xhtml b/web/login/login_edit_user_data.xhtml deleted file mode 100644 index 8cd727cb..00000000 --- a/web/login/login_edit_user_data.xhtml +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_EDIT_USER_DATA}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_EDIT_USER_DATA} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <div class="table"> - <div class="table_header"> - #{msg.LOGIN_EDIT_USER_DATA_TITLE} - </div> - - <div class="para notice"> - <h:outputText value="#{msg.LOGIN_CHOOSE_PERSONAL_DATA_EMAIL_PASSWORD_NOTICE}" /> - </div> - - <div class="para"> - <ul> - <li> - <h:link title="#{msg.LINK_LOGIN_CHANGE_PERSONAL_DATA_TITLE}" outcome="login_change_personal_data" value="#{msg.LINK_LOGIN_CHANGE_PERSONAL_DATA}" /> - </li> - <li> - <h:link title="#{msg.LINK_LOGIN_CHANGE_EMAIL_ADDRESS_TITLE}" outcome="login_change_email_address" value="#{msg.LINK_LOGIN_CHANGE_EMAIL_ADDRESS}" /> - </li> - <li> - <h:link title="#{msg.LINK_LOGIN_CHANGE_PASSWORD_TITLE}" outcome="login_change_password" value="#{msg.LINK_LOGIN_CHANGE_PASSWORD}" /> - </li> - </ul> - </div> - </div> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_index.xhtml b/web/login/login_index.xhtml deleted file mode 100644 index ef4281d8..00000000 --- a/web/login/login_index.xhtml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_HOME}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_HOME} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - Here goes your content. - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_list_sharing_addressbooks.xhtml b/web/login/login_list_sharing_addressbooks.xhtml deleted file mode 100644 index 1698cb3d..00000000 --- a/web/login/login_list_sharing_addressbooks.xhtml +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <f:metadata> - <f:viewParam id="userId" name="userId" value="#{shareController.shareeUserId}" required="true" requiredMessage="#{msg.PARAMETER_USER_ID_MISSING}" converterMessage="#{msg.PARAMETER_USER_ID_INVALID}" validatorMessage="#{msg.PARAMETER_USER_ID_NOT_FOUND}"> - <f:convertNumber for="userId" type="number" minIntegerDigits="1" maxIntegerDigits="20" /> - <f:validator for="userId" validatorId="UserIdValidator" /> - </f:viewParam> - </f:metadata> - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_LIST_SHARING_ADDRESSBOOKS}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_LIST_SHARING_ADDRESSBOOKS} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <ui:fragment rendered="#{shareController.isShareeUserIdSet()}"> - Here goes your content. - </ui:fragment> - - <ui:fragment rendered="#{shareController.isShareeUserIdEmpty()}"> - <ui:include src="/WEB-INF/templates/generic/userid_error.tpl" /> - </ui:fragment> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_other_addressbooks.xhtml b/web/login/login_other_addressbooks.xhtml deleted file mode 100644 index eef9d0bb..00000000 --- a/web/login/login_other_addressbooks.xhtml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_OTHER_ADDRESSBOOKS}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_OTHER_ADDRESSBOOKS} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - Here goes your content. - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_own_addressbooks.xhtml b/web/login/login_own_addressbooks.xhtml deleted file mode 100644 index 48c08973..00000000 --- a/web/login/login_own_addressbooks.xhtml +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_OWN_ADDRESSBOOKS}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_OWN_ADDRESSBOOKS} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <div class="table"> - <div class="table_header"> - #{msg.TABLE_HEADER_LIST_OWN_ADDRESSBOOKS} - </div> - - <div class="para"> - <h:dataTable id="table_own_addressbooks" var="addressbook" value="#{addressbookController.allAddressbooks()}" styleClass="table" headerClass="table_data_column" summary="#{msg.TABLE_SUMMARY_LOGIN_LIST_OWN_ADDRESSBOOKS}" rendered="#{addressbookController.hasCreatedAddressbooks()}"> - <h:column> - <f:facet name="header">#{msg.ADDRESSBOOK_NAME}</f:facet> - - <h:link outcome="user_show_addressbook" title="#{msg.LINK_SHOW_ADDRESSBOOK_TITLE}"> - <f:param name="addressbookId" value="#{addressbook.addressbookId}" /> - <h:outputText id="addressbookName" value="#{addressbook.addressbookName}" title="#{msg.ADDRESSBOOK_NAME_TITLE}" /> - </h:link> - </h:column> - - <h:column> - <f:facet name="header">#{msg.ADDRESSBOOK_TOTAL_ENTRIES}</f:facet> - - <h:link outcome="show_addressbook_entries" title="#{msg.LINK_SHOW_ADDRESSBOOK_ENTRIES_TITLE}"> - <f:param name="addressbookId" value="#{addressbook.addressbookId}" /> - <h:outputText id="addressbookEntries" value="#{addressbookController.allEntriesSize(addressbook)}" title="#{msg.ADDRESSBOOK_TOTAL_ENTRIES_TITLE}" /> - </h:link> - </h:column> - - <h:column> - <f:facet name="header">#{msg.ADDRESSBOOK_CREATED}</f:facet> - - <h:outputFormat id="addressbookCreated" value="#{addressbook.addressbookCreated.time}" title="#{msg.ADDRESSBOOK_CREATED_TITLE}"> - <f:convertDateTime for="addressbookCreated" type="both" timeStyle="short" dateStyle="medium" /> - </h:outputFormat> - </h:column> - </h:dataTable> - </div> - - <div class="table_footer"> - <h:link id="add_first_addressbook" outcome="login_add_addressbook" value="#{msg.LINK_LOGIN_ADD_FIRST_ADDRESSBOOK}" title="#{msg.LINK_LOGIN_ADD_FIRST_ADDRESSBOOK_TITLE}" rendered="#{addressbookController.hasCreatedAddressbooks() == false}" /> - <h:link id="add_additional_addressbook" outcome="login_add_addressbook" value="#{msg.LINK_LOGIN_ADD_ADDITIONAL_ADDRESSBOOK}" title="#{msg.LINK_LOGIN_ADD_ADDITIONAL_ADDRESSBOOK_TITLE}" rendered="#{addressbookController.hasCreatedAddressbooks()}" /> - </div> - </div> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_shared_addressbooks.xhtml b/web/login/login_shared_addressbooks.xhtml deleted file mode 100644 index 2c52fabe..00000000 --- a/web/login/login_shared_addressbooks.xhtml +++ /dev/null @@ -1,66 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core"> - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_SHARED_ADDRESSBOOKS}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_SHARED_ADDRESSBOOKS} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <div class="table"> - <div class="table_header"> - #{msg.LOGIN_TABLE_HEADER_SHARED_ADDRESSBOOKS} - </div> - - <div class="para"> - <h:dataTable id="sharedAddressbooks" var="share" value="#{shareController.allShares()}" headerClass="table_data_column" summary="#{msg.TABLE_SUMMARY_LOGIN_SHARED_ADDRESSBOOKS}" rendered="#{shareController.isSharingAddressbooks()}"> - <h:column> - <f:facet name="header">#{msg.SHARED_ADDRESSBOOK}</f:facet> - - <h:link outcome="user_show_addressbook" title="#{msg.LINK_SHOW_ADDRESSBOOK_TITLE}"> - <f:param name="addressbookId" value="#{share.shareAddressbook.addressbookId}" /> - <h:outputText id="addressbookName" value="#{share.shareAddressbook.addressbookName}" title="#{msg.SHARED_ADDRESSBOOK_TITLE}" /> - </h:link> - </h:column> - - <h:column> - <f:facet name="header">#{msg.SHAREE_USER_NAME}</f:facet> - <ui:include src="/WEB-INF/templates/generic/user_profile_link.tpl"> - <ui:param name="user" value="#{share.setShareUserSharee(shareUserSharer)}" /> - </ui:include> - </h:column> - - <h:column> - <f:facet name="header">#{msg.SHARE_CREATED}</f:facet> - <h:outputText id="shareCreated" value="#{share.shareCreated.time}" title="#{msg.SHARE_CREATED_TITLE}"> - <f:convertDateTime for="shareCreated" type="both" timeStyle="short" dateStyle="medium" /> - </h:outputText> - </h:column> - </h:dataTable> - </div> - - <div class="para"> - <h:outputText class="notice" value="#{msg.LOGIN_USER_HAS_NOT_SHARED_ADDRESSBOOKS}" rendered="#{not shareController.isSharingAddressbooks()}" /> - </div> - - <div class="table_footer"> - <h:link id="shareAddressbook" outcome="user_list" title="#{msg.LINK_LOGIN_START_SHARING_ADDRESSBOOKS_TITLE}" value="#{msg.LINK_LOGIN_START_SHARING_ADDRESSBOOKS}" /> - </div> - </div> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_start_sharing_addressbook.xhtml b/web/login/login_start_sharing_addressbook.xhtml deleted file mode 100644 index 442610a3..00000000 --- a/web/login/login_start_sharing_addressbook.xhtml +++ /dev/null @@ -1,70 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"> - - <ui:composition template="/WEB-INF/templates/#{loginController.templateType}/#{loginController.templateType}_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_START_SHARING_ADDRESSBOOK}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_START_SHARING_ADDRESSBOOK} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <div class="table_big"> - - <div class="table_header"> - #{msg.TABLE_HEADER_CHOOSE_USER_FOR_SHARING} - </div> - - <div class="para"> - <h:outputText id="userNotLoggedIn" class="notice" value="#{msg.USER_NOT_LOGGED_IN}" rendered="#{not loginController.isUserLoggedIn()}" /> - - <h:dataTable id="userList" headerClass="table_header_column" var="user" value="#{addressbookController.allUsersNotSharing()}" rendered="#{loginController.isUserLoggedIn() and not empty addressbookController.addressbook and not loginController.isInvisible()}"> - - <h:column> - <f:facet name="header">#{msg.USER_ID}</f:facet> - <h:outputText value="#{user.userId}" /> - </h:column> - - <h:column> - <f:facet name="header">#{msg.USER_NAME}</f:facet> - <ui:include src="/WEB-INF/templates/generic/user_profile_link.tpl"> - <ui:param name="user" value="#{user}" /> - </ui:include> - </h:column> - - <h:column> - <f:facet name="header">#{msg.LOGIN_START_SHARING_TITLE}</f:facet> - <h:form acceptcharset="utf-8" id="startSharing" rendered="#{profileController.isProfileLinkVisibleByUser(user)}"> - <h:commandButton class="submit" id="submit" value="#{msg.LOGIN_START_SHARING_BUTTON}" action="#{shareController.startSharing(user, addressbookController.addressbook)}" title="#{msg.LOGIN_START_SHARING_BUTTON_TITLE}" /> - </h:form> - </h:column> - </h:dataTable> - - <h:outputText id="addressbokUnset" class="notice" value="#{msg.LOGIN_ADDRESSBOOK_NOT_SET}" rendered="#{empty addressbookController.addressbook}" /> - - <h:outputText id="ownProfileInvisible" class="notice" value="#{msg.LOGIN_OWN_PROFILE_INVISIBLE}" rendered="#{loginController.isUserLoggedIn() and not empty addressbookController.addressbook and not loginController.isInvisible()}" /> - </div> - - <div class="table_footer"> - <ul> - <li>#{msg.LOGIN_START_SHARING_NOTICE1}</li> - <li>#{msg.LOGIN_START_SHARING_NOTICE2}</li> - </ul> - </div> - </div> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/login/login_user_data_saved.xhtml b/web/login/login_user_data_saved.xhtml deleted file mode 100644 index e42c555f..00000000 --- a/web/login/login_user_data_saved.xhtml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_USER_DATA_SAVED}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_LOGIN_USER_DATA_SAVED} - </ui:define> - - <ui:define name="content"> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <ui:include id="message_box" src="/WEB-INF/templates/generic/message_box.tpl"> - <ui:param name="message" value="#{msg.LOGIN_MESSAGE_DATA_SAVED}" /> - </ui:include> - </ui:fragment> - - <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> - <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> - </ui:fragment> - </ui:define> - </ui:composition> -</html> diff --git a/web/user/index.xhtml b/web/user/index.xhtml new file mode 100644 index 00000000..dafff409 --- /dev/null +++ b/web/user/index.xhtml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://java.sun.com/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="guest_title">#{msg.PAGE_TITLE_LOGIN_FOO}</ui:define> + + <ui:define name="menu"> + <ui:include id="menu" class="login_menu" src="/WEB-INF/templates/login/login_menu.tpl" /> + </ui:define> + + <ui:define name="content_header"> + #{msg.SUB_TITLE_LOGIN_FOO} + </ui:define> + + <ui:define name="content"> + Here goes your content. + </ui:define> + + <ui:define name="footer"> + <ui:include id="footer" class="login_footer" src="/WEB-INF/templates/login/login_footer.tpl" /> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login.xhtml b/web/user/login.xhtml deleted file mode 100644 index 0b0efb62..00000000 --- a/web/user/login.xhtml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl" id="user_login"> - <ui:define name="guest_title">#{msg.PAGE_TITLE_USER_LOGIN}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_USER_LOGIN} - </ui:define> - - <ui:define name="content"> - <div class="para"> - <!-- TODO Internatialize this somehow //--> - Noch kein Benutzerkonto? Einfach <h:link id="user_register" outcome="user_register" title="Als Benutzer anmelden">hier</h:link> anmelden. - </div> - - <div class="para"> - <ui:include id="login_form" class="login_form" src="/WEB-INF/templates/guest/guest_login_form.tpl" /> - </div> - - <div class="para"> - <h:link id="user_lost_password" outcome="user_lost_passwd" title="#{msg.LINK_TITLE_GUEST_LOGIN_LOST_PASSWORD}" value="#{msg.LINK_GUEST_LOGIN_LOST_PASSWORD}" /> - </div> - </ui:define> - </ui:composition> -</html> diff --git a/web/user/login_add_addressbook.xhtml b/web/user/login_add_addressbook.xhtml new file mode 100644 index 00000000..7f1c8579 --- /dev/null +++ b/web/user/login_add_addressbook.xhtml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_ADD_ADDRESSBOOK}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_ADD_ADDRESSBOOK} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <h:form id="add_addressbook" acceptcharset="utf-8"> + <div class="table"> + <div class="table_header"> + #{msg.FORM_LOGIN_ADD_ADDRESSBOOK_TITLE} + </div> + + <div class="table_row"> + <div class="table_left"> + <h:outputLabel for="addressbookName" value="#{msg.LOGIN_ENTER_ADDRESSBOOK_NAME}"/> + </div> + + <div class="table_right"> + <h:inputText class="input" id="addressbookName" value="#{addressbookController.addressbookName}" maxlength="50" size="20" title="#{msg.LOGIN_ENTER_ADDRESSBOOK_NAME_TITLE}" required="true" requiredMessage="#{msg.LOGIN_ADDRESSBOOK_NAME_REQUIRED_MESSAGE}"> + <f:validator for="addressbookName" validatorId="AddressbookNameValidator" /> + </h:inputText> + </div> + </div> + + <div class="table_footer"> + <h:commandButton class="reset" type="reset" value="#{msg.BUTTON_RESET_FORM}" /> + <h:commandButton class="submit" type="submit" id="register" value="#{msg.BUTTON_LOGIN_ADD_ADDRESSBOOK}" action="#{addressbookController.addAddressbook()}" /> + </div> + </div> + </h:form> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_change_email_address.xhtml b/web/user/login_change_email_address.xhtml new file mode 100644 index 00000000..702312d8 --- /dev/null +++ b/web/user/login_change_email_address.xhtml @@ -0,0 +1,83 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_CHANGE_EMAIL_ADDRESS}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_CHANGE_EMAIL_ADDRESS} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <div class="table"> + <div class="table_header"> + #{msg.LOGIN_CHANGE_EMAIL_ADDRESS_TITLE} + </div> + + <h:form id="login_form"> + <div class="para"> + <fieldset id="change_email"> + <legend title="#{msg.LOGIN_CHANGE_EMAIL_LEGEND_TITLE}">#{msg.LOGIN_CHANGE_EMAIL_LEGEND}</legend> + + <div class="table_row"> + <div class="table_left"> + #{msg.LOGIN_CHANGE_EMAIL_OLD_ADDRESS} + </div> + + <div class="table_right"> + #{userController.emailAddress} + </div> + + <div class="clear"></div> + </div> + + <div class="table_row"> + <div class="table_left"> + <h:outputLabel for="emailAddress1" value="#{msg.LOGIN_CHANGE_EMAIL_ENTER_EMAIL1}" /> + </div> + + <div class="table_right"> + <h:inputText class="input" id="emailAddress1" size="20" maxlength="255" value="#{emailChangeController.emailAddress1}" required="true" /> + </div> + + <div class="clear"></div> + </div> + + <div class="table_row"> + <div class="table_left"> + <h:outputLabel for="emailAddress2" value="#{msg.LOGIN_CHANGE_EMAIL_ENTER_EMAIL2}" /> + </div> + + <div class="table_right"> + <h:inputText class="input" id="emailAddress2" size="20" maxlength="255" value="#{emailChangeController.emailAddress2}" required="true" /> + </div> + + <div class="clear"></div> + </div> + </fieldset> + </div> + + <ui:include src="/WEB-INF/templates/login/login_enter_current_password.tpl" /> + + <div class="table_footer"> + <h:commandButton class="reset" type="reset" value="#{msg.BUTTON_RESET_FORM}" /> + <h:commandButton class="submit" type="submit" id="change_email" value="#{msg.BUTTON_CHANGE_EMAIL_ADDRESS}" action="#{emailChangeController.doChangeEmailAddress()}" /> + </div> + </h:form> + </div> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_change_password.xhtml b/web/user/login_change_password.xhtml new file mode 100644 index 00000000..bfd384d4 --- /dev/null +++ b/web/user/login_change_password.xhtml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_CHANGE_PASSWORD}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_CHANGE_PASSWORD} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <div class="table"> + <div class="table_header"> + #{msg.LOGIN_CHANGE_PASSWORD_TITLE} + </div> + + <h:form id="login_form"> + <div class="para"> + <fieldset id="change_password"> + <legend title="#{msg.LOGIN_CHANGE_PASSWORD_LEGEND_TITLE}">#{msg.LOGIN_CHANGE_PASSWORD_LEGEND}</legend> + + <div class="table_row"> + <div class="table_left"> + <h:outputLabel for="password1" value="#{msg.GUEST_REGISTRATION_ENTER_PASSWORD1}" /> + </div> + + <div class="table_right"> + <h:inputSecret class="input" id="password1" size="10" maxlength="255" value="#{loginController.userPassword}" required="true" /> + </div> + + <div class="clear"></div> + </div> + + <div class="table_row"> + <div class="table_left"> + <h:outputLabel for="password2" value="#{msg.GUEST_REGISTRATION_ENTER_PASSWORD2}" /> + </div> + + <div class="table_right"> + <h:inputSecret class="input" id="password2" size="10" maxlength="255" value="#{loginController.userPasswordRepeat}" required="true" /> + </div> + + <div class="clear"></div> + </div> + </fieldset> + </div> + + <ui:include src="/WEB-INF/templates/login/login_enter_current_password.tpl" /> + + <div class="table_footer"> + <h:commandButton class="reset" type="reset" value="#{msg.BUTTON_RESET_FORM}" /> + <h:commandButton class="submit" type="submit" id="change_password" value="#{msg.BUTTON_CHANGE_PASSWORD}" action="#{userController.changePassword()}" /> + </div> + </h:form> + </div> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_change_personal_data.xhtml b/web/user/login_change_personal_data.xhtml new file mode 100644 index 00000000..e4c482c9 --- /dev/null +++ b/web/user/login_change_personal_data.xhtml @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_CHANGE_PERSONAL_DATA}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_CHANGE_PERSONAL_DATA} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <div class="table"> + <div class="table_header"> + #{msg.LOGIN_CHANGE_PERSONAL_DATA_TITLE} + </div> + + <h:form id="login_change_personal_form"> + <ui:include src="/WEB-INF/templates/generic/form_personal_data.tpl" /> + + <ui:include src="/WEB-INF/templates/login/login_enter_current_password.tpl" /> + + <ui:include src="/WEB-INF/templates/guest/guest_privacy_terms.tpl" /> + + <div class="table_footer"> + <h:commandButton class="reset" type="reset" value="#{msg.BUTTON_RESET_FORM}" /> + <h:commandButton class="submit" type="submit" id="change_personal_data" value="#{msg.BUTTON_CHANGE_PERSONAL_DATA}" action="#{userController.doChangePersonalData()}" /> + </div> + </h:form> + </div> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_contact_data_saved.xhtml b/web/user/login_contact_data_saved.xhtml new file mode 100644 index 00000000..25b69679 --- /dev/null +++ b/web/user/login_contact_data_saved.xhtml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_CONTACT_DATA_SAVED}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_CONTACT_DATA_SAVED} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <ui:include id="message_box" src="/WEB-INF/templates/generic/message_box.tpl"> + <ui:param name="message" value="#{msg.LOGIN_MESSAGE_DATA_SAVED}" /> + </ui:include> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_data_saved.xhtml b/web/user/login_data_saved.xhtml new file mode 100644 index 00000000..0fd6316a --- /dev/null +++ b/web/user/login_data_saved.xhtml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_DATA_SAVED}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_DATA_SAVED} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <ui:include id="message_box" src="/WEB-INF/templates/generic/message_box.tpl"> + <ui:param name="message" value="#{msg.LOGIN_MESSAGE_DATA_SAVED}" /> + </ui:include> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_edit_user_data.xhtml b/web/user/login_edit_user_data.xhtml new file mode 100644 index 00000000..8cd727cb --- /dev/null +++ b/web/user/login_edit_user_data.xhtml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_EDIT_USER_DATA}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_EDIT_USER_DATA} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <div class="table"> + <div class="table_header"> + #{msg.LOGIN_EDIT_USER_DATA_TITLE} + </div> + + <div class="para notice"> + <h:outputText value="#{msg.LOGIN_CHOOSE_PERSONAL_DATA_EMAIL_PASSWORD_NOTICE}" /> + </div> + + <div class="para"> + <ul> + <li> + <h:link title="#{msg.LINK_LOGIN_CHANGE_PERSONAL_DATA_TITLE}" outcome="login_change_personal_data" value="#{msg.LINK_LOGIN_CHANGE_PERSONAL_DATA}" /> + </li> + <li> + <h:link title="#{msg.LINK_LOGIN_CHANGE_EMAIL_ADDRESS_TITLE}" outcome="login_change_email_address" value="#{msg.LINK_LOGIN_CHANGE_EMAIL_ADDRESS}" /> + </li> + <li> + <h:link title="#{msg.LINK_LOGIN_CHANGE_PASSWORD_TITLE}" outcome="login_change_password" value="#{msg.LINK_LOGIN_CHANGE_PASSWORD}" /> + </li> + </ul> + </div> + </div> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_error.xhtml b/web/user/login_error.xhtml deleted file mode 100644 index 85361e74..00000000 --- a/web/user/login_error.xhtml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:c="http://xmlns.jcp.org/jsp/jstl/core" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl" id="login_error"> - <ui:define name="guest_title">#{msg.PAGE_TITLE_USER_LOGIN_ERROR}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_USER_LOGIN_ERROR} - </ui:define> - - <ui:define name="content"> - Hier kommt die Fehlermeldung hin. - </ui:define> - </ui:composition> -</html> diff --git a/web/user/login_index.xhtml b/web/user/login_index.xhtml new file mode 100644 index 00000000..ef4281d8 --- /dev/null +++ b/web/user/login_index.xhtml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_HOME}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_HOME} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + Here goes your content. + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_list_sharing_addressbooks.xhtml b/web/user/login_list_sharing_addressbooks.xhtml new file mode 100644 index 00000000..1698cb3d --- /dev/null +++ b/web/user/login_list_sharing_addressbooks.xhtml @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <f:metadata> + <f:viewParam id="userId" name="userId" value="#{shareController.shareeUserId}" required="true" requiredMessage="#{msg.PARAMETER_USER_ID_MISSING}" converterMessage="#{msg.PARAMETER_USER_ID_INVALID}" validatorMessage="#{msg.PARAMETER_USER_ID_NOT_FOUND}"> + <f:convertNumber for="userId" type="number" minIntegerDigits="1" maxIntegerDigits="20" /> + <f:validator for="userId" validatorId="UserIdValidator" /> + </f:viewParam> + </f:metadata> + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_LIST_SHARING_ADDRESSBOOKS}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_LIST_SHARING_ADDRESSBOOKS} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <ui:fragment rendered="#{shareController.isShareeUserIdSet()}"> + Here goes your content. + </ui:fragment> + + <ui:fragment rendered="#{shareController.isShareeUserIdEmpty()}"> + <ui:include src="/WEB-INF/templates/generic/userid_error.tpl" /> + </ui:fragment> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_other_addressbooks.xhtml b/web/user/login_other_addressbooks.xhtml new file mode 100644 index 00000000..eef9d0bb --- /dev/null +++ b/web/user/login_other_addressbooks.xhtml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_OTHER_ADDRESSBOOKS}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_OTHER_ADDRESSBOOKS} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + Here goes your content. + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_own_addressbooks.xhtml b/web/user/login_own_addressbooks.xhtml new file mode 100644 index 00000000..48c08973 --- /dev/null +++ b/web/user/login_own_addressbooks.xhtml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_OWN_ADDRESSBOOKS}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_OWN_ADDRESSBOOKS} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <div class="table"> + <div class="table_header"> + #{msg.TABLE_HEADER_LIST_OWN_ADDRESSBOOKS} + </div> + + <div class="para"> + <h:dataTable id="table_own_addressbooks" var="addressbook" value="#{addressbookController.allAddressbooks()}" styleClass="table" headerClass="table_data_column" summary="#{msg.TABLE_SUMMARY_LOGIN_LIST_OWN_ADDRESSBOOKS}" rendered="#{addressbookController.hasCreatedAddressbooks()}"> + <h:column> + <f:facet name="header">#{msg.ADDRESSBOOK_NAME}</f:facet> + + <h:link outcome="user_show_addressbook" title="#{msg.LINK_SHOW_ADDRESSBOOK_TITLE}"> + <f:param name="addressbookId" value="#{addressbook.addressbookId}" /> + <h:outputText id="addressbookName" value="#{addressbook.addressbookName}" title="#{msg.ADDRESSBOOK_NAME_TITLE}" /> + </h:link> + </h:column> + + <h:column> + <f:facet name="header">#{msg.ADDRESSBOOK_TOTAL_ENTRIES}</f:facet> + + <h:link outcome="show_addressbook_entries" title="#{msg.LINK_SHOW_ADDRESSBOOK_ENTRIES_TITLE}"> + <f:param name="addressbookId" value="#{addressbook.addressbookId}" /> + <h:outputText id="addressbookEntries" value="#{addressbookController.allEntriesSize(addressbook)}" title="#{msg.ADDRESSBOOK_TOTAL_ENTRIES_TITLE}" /> + </h:link> + </h:column> + + <h:column> + <f:facet name="header">#{msg.ADDRESSBOOK_CREATED}</f:facet> + + <h:outputFormat id="addressbookCreated" value="#{addressbook.addressbookCreated.time}" title="#{msg.ADDRESSBOOK_CREATED_TITLE}"> + <f:convertDateTime for="addressbookCreated" type="both" timeStyle="short" dateStyle="medium" /> + </h:outputFormat> + </h:column> + </h:dataTable> + </div> + + <div class="table_footer"> + <h:link id="add_first_addressbook" outcome="login_add_addressbook" value="#{msg.LINK_LOGIN_ADD_FIRST_ADDRESSBOOK}" title="#{msg.LINK_LOGIN_ADD_FIRST_ADDRESSBOOK_TITLE}" rendered="#{addressbookController.hasCreatedAddressbooks() == false}" /> + <h:link id="add_additional_addressbook" outcome="login_add_addressbook" value="#{msg.LINK_LOGIN_ADD_ADDITIONAL_ADDRESSBOOK}" title="#{msg.LINK_LOGIN_ADD_ADDITIONAL_ADDRESSBOOK_TITLE}" rendered="#{addressbookController.hasCreatedAddressbooks()}" /> + </div> + </div> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_shared_addressbooks.xhtml b/web/user/login_shared_addressbooks.xhtml new file mode 100644 index 00000000..2c52fabe --- /dev/null +++ b/web/user/login_shared_addressbooks.xhtml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core"> + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_SHARED_ADDRESSBOOKS}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_SHARED_ADDRESSBOOKS} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <div class="table"> + <div class="table_header"> + #{msg.LOGIN_TABLE_HEADER_SHARED_ADDRESSBOOKS} + </div> + + <div class="para"> + <h:dataTable id="sharedAddressbooks" var="share" value="#{shareController.allShares()}" headerClass="table_data_column" summary="#{msg.TABLE_SUMMARY_LOGIN_SHARED_ADDRESSBOOKS}" rendered="#{shareController.isSharingAddressbooks()}"> + <h:column> + <f:facet name="header">#{msg.SHARED_ADDRESSBOOK}</f:facet> + + <h:link outcome="user_show_addressbook" title="#{msg.LINK_SHOW_ADDRESSBOOK_TITLE}"> + <f:param name="addressbookId" value="#{share.shareAddressbook.addressbookId}" /> + <h:outputText id="addressbookName" value="#{share.shareAddressbook.addressbookName}" title="#{msg.SHARED_ADDRESSBOOK_TITLE}" /> + </h:link> + </h:column> + + <h:column> + <f:facet name="header">#{msg.SHAREE_USER_NAME}</f:facet> + <ui:include src="/WEB-INF/templates/generic/user_profile_link.tpl"> + <ui:param name="user" value="#{share.setShareUserSharee(shareUserSharer)}" /> + </ui:include> + </h:column> + + <h:column> + <f:facet name="header">#{msg.SHARE_CREATED}</f:facet> + <h:outputText id="shareCreated" value="#{share.shareCreated.time}" title="#{msg.SHARE_CREATED_TITLE}"> + <f:convertDateTime for="shareCreated" type="both" timeStyle="short" dateStyle="medium" /> + </h:outputText> + </h:column> + </h:dataTable> + </div> + + <div class="para"> + <h:outputText class="notice" value="#{msg.LOGIN_USER_HAS_NOT_SHARED_ADDRESSBOOKS}" rendered="#{not shareController.isSharingAddressbooks()}" /> + </div> + + <div class="table_footer"> + <h:link id="shareAddressbook" outcome="user_list" title="#{msg.LINK_LOGIN_START_SHARING_ADDRESSBOOKS_TITLE}" value="#{msg.LINK_LOGIN_START_SHARING_ADDRESSBOOKS}" /> + </div> + </div> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_start_sharing_addressbook.xhtml b/web/user/login_start_sharing_addressbook.xhtml new file mode 100644 index 00000000..442610a3 --- /dev/null +++ b/web/user/login_start_sharing_addressbook.xhtml @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"> + + <ui:composition template="/WEB-INF/templates/#{loginController.templateType}/#{loginController.templateType}_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_START_SHARING_ADDRESSBOOK}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_START_SHARING_ADDRESSBOOK} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <div class="table_big"> + + <div class="table_header"> + #{msg.TABLE_HEADER_CHOOSE_USER_FOR_SHARING} + </div> + + <div class="para"> + <h:outputText id="userNotLoggedIn" class="notice" value="#{msg.USER_NOT_LOGGED_IN}" rendered="#{not loginController.isUserLoggedIn()}" /> + + <h:dataTable id="userList" headerClass="table_header_column" var="user" value="#{addressbookController.allUsersNotSharing()}" rendered="#{loginController.isUserLoggedIn() and not empty addressbookController.addressbook and not loginController.isInvisible()}"> + + <h:column> + <f:facet name="header">#{msg.USER_ID}</f:facet> + <h:outputText value="#{user.userId}" /> + </h:column> + + <h:column> + <f:facet name="header">#{msg.USER_NAME}</f:facet> + <ui:include src="/WEB-INF/templates/generic/user_profile_link.tpl"> + <ui:param name="user" value="#{user}" /> + </ui:include> + </h:column> + + <h:column> + <f:facet name="header">#{msg.LOGIN_START_SHARING_TITLE}</f:facet> + <h:form acceptcharset="utf-8" id="startSharing" rendered="#{profileController.isProfileLinkVisibleByUser(user)}"> + <h:commandButton class="submit" id="submit" value="#{msg.LOGIN_START_SHARING_BUTTON}" action="#{shareController.startSharing(user, addressbookController.addressbook)}" title="#{msg.LOGIN_START_SHARING_BUTTON_TITLE}" /> + </h:form> + </h:column> + </h:dataTable> + + <h:outputText id="addressbokUnset" class="notice" value="#{msg.LOGIN_ADDRESSBOOK_NOT_SET}" rendered="#{empty addressbookController.addressbook}" /> + + <h:outputText id="ownProfileInvisible" class="notice" value="#{msg.LOGIN_OWN_PROFILE_INVISIBLE}" rendered="#{loginController.isUserLoggedIn() and not empty addressbookController.addressbook and not loginController.isInvisible()}" /> + </div> + + <div class="table_footer"> + <ul> + <li>#{msg.LOGIN_START_SHARING_NOTICE1}</li> + <li>#{msg.LOGIN_START_SHARING_NOTICE2}</li> + </ul> + </div> + </div> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/login_user_data_saved.xhtml b/web/user/login_user_data_saved.xhtml new file mode 100644 index 00000000..e42c555f --- /dev/null +++ b/web/user/login_user_data_saved.xhtml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html + lang="#{localizationController.language}" xml:lang="#{localizationController.language}" + xmlns="http://www.w3.org/1999/xhtml" + xmlns:ui="http://xmlns.jcp.org/jsf/facelets" + xmlns:h="http://xmlns.jcp.org/jsf/html" + xmlns:f="http://xmlns.jcp.org/jsf/core" + > + + <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> + <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_USER_DATA_SAVED}</ui:define> + + <ui:define name="content_header"> + #{msg.CONTENT_TITLE_LOGIN_USER_DATA_SAVED} + </ui:define> + + <ui:define name="content"> + <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> + <ui:include id="message_box" src="/WEB-INF/templates/generic/message_box.tpl"> + <ui:param name="message" value="#{msg.LOGIN_MESSAGE_DATA_SAVED}" /> + </ui:include> + </ui:fragment> + + <ui:fragment rendered="#{not loginController.isUserLoggedIn()}"> + <ui:include id="login_only" src="/WEB-INF/templates/generic/user_not_logged_in.tpl" /> + </ui:fragment> + </ui:define> + </ui:composition> +</html> diff --git a/web/user/lost_passwd.xhtml b/web/user/lost_passwd.xhtml deleted file mode 100644 index c6c0848c..00000000 --- a/web/user/lost_passwd.xhtml +++ /dev/null @@ -1,68 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl"> - <ui:define name="guest_title">#{msg.PAGE_TITLE_USER_LOST_PASSWORD}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_USER_LOST_PASSWORD} - </ui:define> - - <ui:define name="content"> - <div class="para" id="user_lost_password_content"> - <h:form id="lost_password_form"> - <div class="table"> - <div class="table_header"> - #{msg.GUEST_LOST_PASSWORD_TITLE} - </div> - - <fieldset id="login_data"> - <legend title="#{msg.GUEST_LOST_PASSWORD_LEGEND_TITLE}">#{msg.GUEST_LOST_PASSWORD_LEGEND}</legend> - - <div class="table_row"> - <div class="table_left"> - <h:outputLabel for="id" value="#{msg.ENTER_USER_NAME}" /> - </div> - - <div class="table_right"> - <h:inputText class="input" id="id" size="10" maxlength="20" value="#{passwordRecoveryController.userId}" /> - </div> - - <div class="clear"></div> - </div> - - <div class="table_header"> - #{msg.GUEST_LOST_PASSWORD_NUMBER_OR_EMAIL} - </div> - - <div class="table_row"> - <div class="table_left"> - <h:outputLabel for="email" value="#{msg.ENTER_EMAIL_ADDRESS}" /> - </div> - - <div class="table_right"> - <h:inputText class="input" id="email" size="20" maxlength="255" value="#{passwordRecoveryController.emailAddress}" /> - </div> - - <div class="clear"></div> - </div> - - </fieldset> - - <div class="table_footer"> - <h:commandButton class="reset" type="reset" value="#{msg.BUTTON_RESET_FORM}" /> - <h:commandButton class="submit" type="submit" value="#{msg.BUTTON_CONTINUE_STEP_2}" action="#{passwordRecoveryController.doLostPasswordStep2()}" /> - </div> - </div> - </h:form> - </div> - </ui:define> - </ui:composition> -</html> diff --git a/web/user/register.xhtml b/web/user/register.xhtml deleted file mode 100644 index b03c31e9..00000000 --- a/web/user/register.xhtml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl"> - <ui:define name="guest_title">#{msg.PAGE_TITLE_USER_REGISTER}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_USER_REGISTER} - </ui:define> - - <ui:define name="content"> - <div class="para"> - #{msg.GUEST_ALREADY_USER_CONTINUE_LOGIN_1} - <h:link outcome="user_login" value="#{msg.CLICK_HERE}" /> - #{msg.GUEST_ALREADY_USER_CONTINUE_LOGIN_2} - </div> - - <div class="registration_form"> - <ui:include src="/WEB-INF/templates/guest/guest_registration_form.tpl" /> - </div> - </ui:define> - </ui:composition> -</html> diff --git a/web/user/register_done.xhtml b/web/user/register_done.xhtml deleted file mode 100644 index bbec38e6..00000000 --- a/web/user/register_done.xhtml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl"> - <ui:define name="guest_title">#{msg.PAGE_TITLE_USER_REGISTER_DONE}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_USER_REGISTER_DONE} - </ui:define> - - <ui:define name="content"> - <div class="para"> - #{msg.GUEST_USER_REGISTRATION_COMPLETED} - </div> - - <div class="registration_form"> - <h:link id="resend_link" class="resend_link" value="#{msg.LINK_GUEST_RESENT_CONFIRMATION_LINK}" outcome="user_resend_link"> - <f:param name="user_id" value="#{userController.userId}" /> - </h:link> - </div> - </ui:define> - </ui:composition> -</html> diff --git a/web/user/resend_link.xhtml b/web/user/resend_link.xhtml deleted file mode 100644 index 89da7508..00000000 --- a/web/user/resend_link.xhtml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/guest/guest_base.tpl"> - <ui:define name="guest_title">#{msg.PAGE_TITLE_INDEX_RESEND_LINK}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_INDEX_RESEND_LINK} - </ui:define> - - <ui:define name="content"> - Here goes your content. - </ui:define> - </ui:composition> -</html> diff --git a/web/user/show_addressbook.xhtml b/web/user/show_addressbook.xhtml deleted file mode 100644 index 1a1193fc..00000000 --- a/web/user/show_addressbook.xhtml +++ /dev/null @@ -1,58 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core"> - - <f:metadata> - <f:viewParam id="addressbookId" name="addressbookId" value="#{addressbookController.addressbookId}" required="true" requiredMessage="#{msg.PARAMETER_ADDRESSBOOK_ID_MISSING}" converterMessage="#{msg.PARAMETER_ADDRESSBOOK_ID_INVALID}" validatorMessage="#{msg.PARAMETER_ADDRESSBOOK_ID_NOT_FOUND}"> - <f:convertNumber for="addressbookId" type="number" minIntegerDigits="1" maxIntegerDigits="20" /> - <f:validator for="addressbookId" validatorId="AddressbookIdValidator" /> - </f:viewParam> - </f:metadata> - - <ui:composition template="/WEB-INF/templates/#{loginController.templateType}/#{loginController.templateType}_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_USER_SHOW_ADDRESSBOOK}</ui:define> - <ui:define name="guest_title">#{msg.PAGE_TITLE_INDEX_SHOW_ADDRESSBOOK}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_USER_SHOW_ADDRESSBOOK} - </ui:define> - - <ui:define name="content"> - <h:panelGrid headerClass="table_header" styleClass="table" columns="2" rendered="#{addressbookController.loadAddressbook()}"> - <f:facet name="header">#{msg.TABLE_HEADER_SHOW_ADDRESSBOOK}</f:facet> - - <h:outputLabel for="addressbookName" class="table_label">#{msg.ADDRESSBOOK_NAME}</h:outputLabel> - <h:outputText id="addressbookName" value="#{addressbookController.addressbookName}" /> - - <h:outputLabel for="userProfileLink" class="table_label">#{msg.ADDRESSBOOK_OWNER}</h:outputLabel> - <ui:include src="/WEB-INF/templates/generic/user_profile_link.tpl"> - <ui:param name="user" value="#{addressbookController.addressbookUser}" /> - </ui:include> - - <h:outputLabel for="addressbookCreated" class="table_label">#{msg.ADDRESSBOOK_CREATED}</h:outputLabel> - <h:outputFormat id="addressbookCreated" value="#{addressbookController.addressbook.addressbookCreated.time}" title="#{msg.ADDRESSBOOK_CREATED_TITLE}"> - <f:convertDateTime for="addressbookCreated" type="both" timeStyle="short" dateStyle="medium" /> - </h:outputFormat> - - <h:outputLabel for="addressbookStatus" class="table_label">#{msg.ADDRESSBOOK_STATUS}</h:outputLabel> - <h:outputText id="addressbookStatus" value="#{msg[addressbookController.addressbook.addressbookStatus.messageKey]}" title="#{msg.ADDRESSBOOK_STATUS_TITLE}" /> - - <f:facet name="footer"> - <h:outputText id="ownProfileInvible" class="notice" value="#{msg.USER_NOT_LOGGED_IN}" rendered="#{not loginController.isUserLoggedIn()}" /> - <h:outputText id="ownProfileInvible" class="notice" value="#{msg.LOGIN_OWN_PROFILE_INVISIBLE}" rendered="#{loginController.isUserLoggedIn() and loginController.isInvisible()}" /> - - <ui:fragment rendered="#{loginController.isUserLoggedIn() and not loginController.isInvisible()}"> - <h:link id="startSharing" outcome="login_start_sharing_addressbook" value="#{msg.LINK_LOGIN_START_SHARING_ADDRESSBOOK}" title="#{msg.LINK_LOGIN_START_SHARING_ADDRESSBOOK_TITLE}" rendered="#{addressbookController.isOwnAddressbook()}" /> - - <h:outputText value="Bla bla" rendered="#{addressbookController.isOtherAddressbook()}" /> - </ui:fragment> - </f:facet> - </h:panelGrid> - </ui:define> - </ui:composition> -</html> diff --git a/web/user/show_addressbook_entries.xhtml b/web/user/show_addressbook_entries.xhtml deleted file mode 100644 index 0164c1a5..00000000 --- a/web/user/show_addressbook_entries.xhtml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - > - - <ui:composition template="/WEB-INF/templates/login/login_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_USER_SHOW_ADDRESSBOOK_ENTRIES}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_USER_SHOW_ADDRESSBOOK_ENTRIES} - </ui:define> - - <ui:define name="content"> - Here goes your content. - </ui:define> - </ui:composition> -</html> diff --git a/web/user/user_list.xhtml b/web/user/user_list.xhtml deleted file mode 100644 index 60b60b7c..00000000 --- a/web/user/user_list.xhtml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core"> - - <ui:composition template="/WEB-INF/templates/#{loginController.templateType}/#{loginController.templateType}_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_USER_LIST}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_USER_LIST} - </ui:define> - - <ui:define name="content"> - <div class="table_big"> - <div class="table_header"> - #{msg.TABLE_HEADER_USER_LIST} - </div> - - <h:dataTable id="userList" var="user" value="#{userController.allVisibleUsers()}" headerClass="table_header_column25" summary="#{msg.TABLE_SUMMARY_USER_LIST}" rendered="#{userController.isVisibleUserFound()}"> - <h:column> - <f:facet name="header">#{msg.USER_NAME}</f:facet> - <ui:include src="/WEB-INF/templates/generic/user_profile_link.tpl"> - <ui:param name="user" value="#{user}" /> - </ui:include> - </h:column> - - <h:column> - <f:facet name="header">#{msg.USER_CREATED}</f:facet> - <h:outputFormat id="userCreated" value="#{user.userCreated.time}" title="#{msg.USER_CREATED_TITLE}" /> - </h:column> - - <h:column> - <f:facet name="header">#{msg.USER_LIST_SHARING_ADDRESSBOOKS}</f:facet> - <ui:fragment rendered="#{loginController.isUserLoggedIn()}"> - <h:link outcome="login_list_sharing_addressbooks" value="#{msg.LINK_LOGIN_LIST_SHARING_ADDRESSBOOKS}" title="#{msg.LINK_LOGIN_LIST_SHARING_ADDRESSBOOKS_TITLE}"> - <f:param name="userId" value="#{user.userId}" /> - </h:link> - </ui:fragment> - <ui:fragment rendered="#{loginController.isGuest()}"> - <h:outputText id="userShared" value="#{addressbookController.countAllUserSharedAddressbooks(user)}" /> - </ui:fragment> - </h:column> - </h:dataTable> - </div> - </ui:define> - </ui:composition> -</html> diff --git a/web/user/user_profile.xhtml b/web/user/user_profile.xhtml deleted file mode 100644 index 0e58740f..00000000 --- a/web/user/user_profile.xhtml +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html - lang="#{localizationController.language}" xml:lang="#{localizationController.language}" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:ui="http://xmlns.jcp.org/jsf/facelets" - xmlns:h="http://xmlns.jcp.org/jsf/html" - xmlns:f="http://xmlns.jcp.org/jsf/core" - xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"> - - <f:metadata> - <f:viewParam id="userId" name="userId" value="#{userController.userId}" required="true" requiredMessage="#{msg.PARAMETER_USER_ID_MISSING}" converterMessage="#{msg.PARAMETER_USER_ID_INVALID}" validatorMessage="#{msg.PARAMETER_USER_ID_NOT_FOUND}"> - <f:convertNumber for="userId" type="number" minIntegerDigits="1" maxIntegerDigits="20" /> - <f:validator for="userId" validatorId="UserIdValidator" /> - </f:viewParam> - </f:metadata> - - <ui:composition template="/WEB-INF/templates/#{loginController.templateType}/#{loginController.templateType}_base.tpl"> - <ui:define name="login_title">#{msg.PAGE_TITLE_LOGIN_USER_PROFILE}</ui:define> - <ui:define name="guest_title">#{msg.PAGE_TITLE_INDEX_USER_PROFILE}</ui:define> - - <ui:define name="content_header"> - #{msg.CONTENT_TITLE_INDEX_USER_PROFILE} - </ui:define> - - <ui:define name="content"> - <c:choose> - <c:when test="#{userController.isUserIdEmpty()}"> - <ui:include src="/WEB-INF/templates/generic/userid_error.tpl" /> - </c:when> - - <c:when test="#{profileController.isProfileLinkVisibleById(userController.userId)}"> - <div align="center"> - <h:panelGrid styleClass="table" headerClass="table_header" footerClass="table_footer"> - <f:facet name="header"> - #{msg.PUBLIC_USER_PROFILE} - </f:facet> - </h:panelGrid> - </div> - </c:when> - - <c:otherwise> - #{msg.ERROR_PROFILE_NOT_VISIBLE} - </c:otherwise> - </c:choose> - </ui:define> - </ui:composition> -</html>