]> git.mxchange.org Git - addressbook-war.git/commitdiff
Please cherry-pick:
authorRoland Häder <roland@mxchange.org>
Tue, 25 Apr 2017 11:21:53 +0000 (13:21 +0200)
committerRoland Häder <roland@mxchange.org>
Tue, 25 Apr 2017 11:31:44 +0000 (13:31 +0200)
- WARNING: You have to update project name, maybe one day this will be moved out
  to properties file?
- updated templates as they are long out-dated
- added missing templates, a lot new has been added

Signed-off-by: Roland Häder <roland@mxchange.org>
52 files changed:
src/java/org/mxchange/addressbook/converter/cellphone/AddressbookCellphoneConverter.java [deleted file]
src/java/org/mxchange/addressbook/converter/mobile/AddressbookMobileNumberConverter.java [new file with mode: 0644]
web/WEB-INF/templates/admin/admin_base.tpl
web/WEB-INF/templates/admin/admin_footer.tpl
web/WEB-INF/templates/admin/admin_menu.tpl
web/WEB-INF/templates/admin/cellphone/admin_cellphone_add_show.tpl
web/WEB-INF/templates/admin/cellphone/admin_cellphone_data.tpl
web/WEB-INF/templates/admin/cellphone/admin_cellphone_links.tpl
web/WEB-INF/templates/admin/contact/admin_contact_data_columns.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/contact/admin_contact_data_columns_mini.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/contact/admin_contact_data_mini.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/contact/admin_contact_links.tpl
web/WEB-INF/templates/admin/contact/admin_form_contact_data.tpl
web/WEB-INF/templates/admin/contact/admin_show_contact_data.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/country/admin_form_country_data.tpl
web/WEB-INF/templates/admin/fax/admin_fax_add_show.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/fax/admin_fax_data.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/fax/admin_fax_links.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/fax/admin_form_add_contact_fax.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/fax/admin_form_fax_data.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/landline/admin_form_add_contact_landline.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/landline/admin_form_landline_data.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/landline/admin_landline_add_show.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/landline/admin_landline_data.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/landline/admin_landline_links.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/mobile/admin_form_add_contact_mobile.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/mobile/admin_form_mobile_data.tpl
web/WEB-INF/templates/admin/mobile/admin_mobile_data.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/mobile_provider/admin_form_mobile_provider.tpl
web/WEB-INF/templates/admin/user/admin_form_user_data.tpl
web/WEB-INF/templates/admin/user/admin_form_user_personal_data.tpl
web/WEB-INF/templates/admin/user/admin_show_user_data.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/user/admin_show_user_data_mini.tpl [new file with mode: 0644]
web/WEB-INF/templates/admin/user/admin_user_links.tpl
web/WEB-INF/templates/base.tpl
web/WEB-INF/templates/contact/form_contact_data.tpl
web/WEB-INF/templates/generic/message_box.tpl
web/WEB-INF/templates/guest/guest_footer.tpl
web/WEB-INF/templates/guest/guest_menu.tpl
web/WEB-INF/templates/guest/guest_privacy_terms.tpl
web/WEB-INF/templates/input_fields/fax_input_fields.tpl [new file with mode: 0644]
web/WEB-INF/templates/input_fields/landline_input_fields.tpl [new file with mode: 0644]
web/WEB-INF/templates/input_fields/mobile_input_fields.tpl [new file with mode: 0644]
web/WEB-INF/templates/login/user/user_base.tpl
web/WEB-INF/templates/login/user/user_change_email_address_repeat_fields.tpl
web/WEB-INF/templates/login/user/user_enter_current_password.tpl
web/WEB-INF/templates/login/user/user_footer.tpl
web/WEB-INF/templates/login/user/user_menu.tpl
web/WEB-INF/templates/user/user_not_logged_in.tpl
web/WEB-INF/templates/user/user_profile_link.tpl
web/WEB-INF/templates/user/userid_error.tpl
web/admin/mobile/admin_contact_mobile_unlink.xhtml

diff --git a/src/java/org/mxchange/addressbook/converter/cellphone/AddressbookCellphoneConverter.java b/src/java/org/mxchange/addressbook/converter/cellphone/AddressbookCellphoneConverter.java
deleted file mode 100644 (file)
index f9576c0..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright (C) 2016 Roland Häder
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-package org.mxchange.addressbook.converter.cellphone;
-
-import java.text.MessageFormat;
-import javax.faces.component.UIComponent;
-import javax.faces.context.FacesContext;
-import javax.faces.convert.Converter;
-import javax.faces.convert.ConverterException;
-import javax.faces.convert.FacesConverter;
-import javax.naming.Context;
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
-import org.mxchange.jphone.exceptions.PhoneEntityNotFoundException;
-import org.mxchange.jphone.phonenumbers.DialableNumber;
-import org.mxchange.jphone.phonenumbers.mobile.DialableMobileNumber;
-import org.mxchange.jphone.phonenumbers.phone.PhoneSessionBeanRemote;
-
-/**
- * Converter for cellphone id <-> valid cellphone instance
- * <p>
- * @author Roland Häder<roland@mxchange.org>
- */
-@FacesConverter (value = "CellphoneConverter")
-public class AddressbookCellphoneConverter implements Converter {
-
-       /**
-        * Phone EJB
-        */
-       private PhoneSessionBeanRemote phoneBean;
-
-       /**
-        * Initialization of this converter
-        */
-       public AddressbookCellphoneConverter () {
-               // Try to get it
-               try {
-                       // Get initial context
-                       Context context = new InitialContext();
-
-                       // ... and user controller
-                       this.phoneBean = (PhoneSessionBeanRemote) context.lookup("java:global/addressbook-ejb/phone!org.mxchange.jphone.phonenumbers.phone.PhoneSessionBeanRemote"); //NOI18N
-               } catch (final NamingException ex) {
-                       // Continue to throw it
-                       throw new ConverterException(MessageFormat.format("context.lookup() failed: {0}", ex.getMessage()), ex); //NOI18N
-               }
-       }
-
-       @Override
-       public Object getAsObject (final FacesContext context, final UIComponent component, final String submittedValue) {
-               // Is the value null or empty?
-               if ((null == submittedValue) || (submittedValue.trim().isEmpty())) {
-                       // Warning message
-                       // @TODO Not working with JNDI (no remote interface) this.loggerBeanLocal.logWarning(MessageFormat.format("{0}.getAsObject(): submittedValue is null or empty - EXIT!", this.getClass().getSimpleName())); //NOI18N
-
-                       // Return null
-                       return null;
-               }
-
-               // Init instance
-               DialableMobileNumber mobile = null;
-
-               try {
-                       // Try to parse the value as long
-                       Long mobileId = Long.valueOf(submittedValue);
-
-                       // Try to get mobile instance from it
-                       mobile = this.phoneBean.findMobileNumberById(mobileId);
-               } catch (final NumberFormatException ex) {
-                       // Throw again
-                       throw new ConverterException(ex);
-               } catch (final PhoneEntityNotFoundException ex) {
-                       // Debug message
-                       // @TODO Not working with JNDI (no remote interface) this.loggerBeanLocal.logDebug(MessageFormat.format("{0}.getAsObject(): Exception: {1} - Returning null ...", this.getClass().getSimpleName(), ex)); //NOI18N
-               }
-
-               // Return it
-               return mobile;
-       }
-
-       @Override
-       public String getAsString (final FacesContext context, final UIComponent component, final Object value) {
-               // Is the object null?
-               if ((null == value) || ((String.valueOf(value)).isEmpty())) {
-                       // Is null
-                       return ""; //NOI18N
-               } else if (!(value instanceof DialableNumber)) {
-                       // Not same interface
-                       throw new IllegalArgumentException(MessageFormat.format("value {0} does not implement DialableNumber.", value)); //NOI18N
-               }
-
-               // Return category id
-               return String.valueOf(((DialableNumber) value).getPhoneId());
-       }
-
-}
diff --git a/src/java/org/mxchange/addressbook/converter/mobile/AddressbookMobileNumberConverter.java b/src/java/org/mxchange/addressbook/converter/mobile/AddressbookMobileNumberConverter.java
new file mode 100644 (file)
index 0000000..32119bf
--- /dev/null
@@ -0,0 +1,110 @@
+/*
+ * Copyright (C) 2016 Roland Häder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.addressbook.converter.mobile;
+
+import java.text.MessageFormat;
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.convert.Converter;
+import javax.faces.convert.ConverterException;
+import javax.faces.convert.FacesConverter;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import org.mxchange.jphone.exceptions.PhoneEntityNotFoundException;
+import org.mxchange.jphone.phonenumbers.DialableNumber;
+import org.mxchange.jphone.phonenumbers.mobile.DialableMobileNumber;
+import org.mxchange.jphone.phonenumbers.phone.PhoneSessionBeanRemote;
+
+/**
+ * Converter for mobile id <-> valid mobile instance
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+@FacesConverter (value = "MobileNumbnerConverter")
+public class AddressbookMobileNumberConverter implements Converter {
+
+       /**
+        * Phone EJB
+        */
+       private PhoneSessionBeanRemote phoneBean;
+
+       /**
+        * Initialization of this converter
+        */
+       public AddressbookMobileNumberConverter () {
+               // Try to get it
+               try {
+                       // Get initial context
+                       Context context = new InitialContext();
+
+                       // ... and user controller
+                       this.phoneBean = (PhoneSessionBeanRemote) context.lookup("java:global/addressbook-ejb/phone!org.mxchange.jphone.phonenumbers.phone.PhoneSessionBeanRemote"); //NOI18N
+               } catch (final NamingException ex) {
+                       // Continue to throw it
+                       throw new ConverterException(MessageFormat.format("context.lookup() failed: {0}", ex.getMessage()), ex); //NOI18N
+               }
+       }
+
+       @Override
+       public Object getAsObject (final FacesContext context, final UIComponent component, final String submittedValue) {
+               // Is the value null or empty?
+               if ((null == submittedValue) || (submittedValue.trim().isEmpty())) {
+                       // Warning message
+                       // @TODO Not working with JNDI (no remote interface) this.loggerBeanLocal.logWarning(MessageFormat.format("{0}.getAsObject(): submittedValue is null or empty - EXIT!", this.getClass().getSimpleName())); //NOI18N
+
+                       // Return null
+                       return null;
+               }
+
+               // Init instance
+               DialableMobileNumber mobile = null;
+
+               try {
+                       // Try to parse the value as long
+                       Long mobileId = Long.valueOf(submittedValue);
+
+                       // Try to get mobile instance from it
+                       mobile = this.phoneBean.findMobileNumberById(mobileId);
+               } catch (final NumberFormatException ex) {
+                       // Throw again
+                       throw new ConverterException(ex);
+               } catch (final PhoneEntityNotFoundException ex) {
+                       // Debug message
+                       // @TODO Not working with JNDI (no remote interface) this.loggerBeanLocal.logDebug(MessageFormat.format("{0}.getAsObject(): Exception: {1} - Returning null ...", this.getClass().getSimpleName(), ex)); //NOI18N
+               }
+
+               // Return it
+               return mobile;
+       }
+
+       @Override
+       public String getAsString (final FacesContext context, final UIComponent component, final Object value) {
+               // Is the object null?
+               if ((null == value) || ((String.valueOf(value)).isEmpty())) {
+                       // Is null
+                       return ""; //NOI18N
+               } else if (!(value instanceof DialableNumber)) {
+                       // Not same interface
+                       throw new IllegalArgumentException(MessageFormat.format("value {0} does not implement DialableNumber.", value)); //NOI18N
+               }
+
+               // Return category id
+               return String.valueOf(((DialableNumber) value).getPhoneId());
+       }
+
+}
index 029bfc66b2f499efacb2bd3464f0ba6c6a013e4c..92dc3d0aaf50f8a37e5a4686be4bdf46c60caa3d 100644 (file)
@@ -1,3 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+TODO: Add something here that should be displayed on all admin pages
+//-->
 <ui:composition
        template="/WEB-INF/templates/base.tpl"
        xmlns="http://www.w3.org/1999/xhtml"
@@ -5,10 +9,6 @@
 
        <ui:define name="title">Administration - <ui:insert name="admin_title">Default admin title</ui:insert></ui:define>
 
-       <!--
-       TODO: Add something here that should be displayed on all admin pages
-       //-->
-
        <ui:define name="menu">
                <ui:include src="/WEB-INF/templates/admin/admin_menu.tpl" />
        </ui:define>
index 6aa4abef727e32af27f71aad8f6e712c4c83432a..e8c6756d4f73ac4680ed4c34581566e84aabbc31 100644 (file)
@@ -3,6 +3,7 @@
        xmlns:f="http://java.sun.com/jsf/core"
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
        <div class="footer">
                <ul class="footer_nav">
                        <li><h:link outcome="index" value="#{msg.LINK_ADMIN_FOOTER_TO_WEBPAGE}" /></li>
index edf1aa7e2213404261a688a551815c4ee3a49ad3..9c8be065bd2ffe1b80170d1e2ec59b87613c1a13 100644 (file)
@@ -8,7 +8,7 @@
        <div class="menu_outer">
                <div class="menu">
                        <div class="menu_header">
-                               <h:outputText value="#{msg.ADMIN_MENU_MAIN_TITLE}" />
+                               #{msg.ADMIN_MENU_MAIN_TITLE}
                        </div>
 
                        <ul>
@@ -16,7 +16,7 @@
                        </ul>
 
                        <div class="menu_header">
-                               <h:outputText value="#{msg.ADMIN_MENU_USER_TITLE}" />
+                               #{msg.ADMIN_MENU_USER_TITLE}
                        </div>
 
                        <ul>
                        </ul>
 
                        <div class="menu_header">
-                               <h:outputText value="#{msg.ADMIN_MENU_CONTACT_TITLE}" />
+                               #{msg.ADMIN_MENU_RECRUITER_TITLE}
+                       </div>
+
+                       <ul>
+                               <li><h:link title="#{msg.LINK_ADMIN_LIST_RECRUITER_TITLE}" outcome="admin_list_recruiter" value="#{msg.LINK_ADMIN_LIST_RECRUITER}" /></li>
+                       </ul>
+
+                       <div class="menu_header">
+                               #{msg.ADMIN_MENU_CONTACT_TITLE}
                        </div>
 
                        <ul>
                                <li><h:link title="#{msg.LINK_ADMIN_EXPORT_CONTACT_TITLE}" outcome="admin_export_contact" value="#{msg.LINK_ADMIN_EXPORT_CONTACT}" /></li>
                        </ul>
 
+                       <div class="menu_header">
+                               <h:outputText value="#{msg.ADMIN_MENU_PHONE_NUMBERS_TITLE}" />
+                       </div>
+
+                       <ul>
+                               <li><h:link title="#{msg.LINK_ADMIN_LIST_LAND_LINE_PHONE_NUMBERS_TITLE}" outcome="admin_list_landline" value="#{msg.LINK_ADMIN_LIST_LAND_LINE_PHONE_NUMBERS}" /></li>
+                               <li><h:link title="#{msg.LINK_ADMIN_LIST_MOBILE_PHONE_NUMBERS_TITLE}" outcome="admin_list_mobile" value="#{msg.LINK_ADMIN_LIST_MOBILE_PHONE_NUMBERS}" /></li>
+                               <li><h:link title="#{msg.LINK_ADMIN_LIST_FAX_PHONE_NUMBERS_TITLE}" outcome="admin_list_fax" value="#{msg.LINK_ADMIN_LIST_FAX_PHONE_NUMBERS}" /></li>
+                       </ul>
+
                        <div class="menu_header">
                                <h:outputText value="#{msg.ADMIN_MENU_COUNTRY_TITLE}" />
                        </div>
@@ -42,7 +60,7 @@
                        </ul>
 
                        <div class="menu_header">
-                               <h:outputText value="#{msg.ADMIN_MENU_MOBILE_PROVIDER_TITLE}" />
+                               #{msg.ADMIN_MENU_MOBILE_PROVIDER_TITLE}
                        </div>
 
                        <ul>
@@ -50,7 +68,7 @@
                        </ul>
 
                        <div class="menu_header">
-                               <h:outputText value="#{msg.ADMIN_MENU_LOGOUT_TITLE}" />
+                               #{msg.ADMIN_MENU_LOGOUT_TITLE}
                        </div>
 
                        <ul>
index 4f1273405fa0623e8f9a274ab34f6a3ae142b931..de0dd7e7ccc349e03a9596ab90666fea623f664a 100644 (file)
@@ -5,13 +5,18 @@
        xmlns:h="http://xmlns.jcp.org/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_CONTACT_NOT_SET}" rendered="#{empty beanHelper.contact}" />
+       <ui:fragment rendered="#{empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_CONTACT_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
 
-       <ui:fragment rendered="#{empty beanHelper.contact.contactCellphoneNumber and not empty beanHelper.contact}">
-               <ui:include src="/WEB-INF/templates/admin/cellphone/admin_form_contact_cellphone.tpl" />
+       <ui:fragment rendered="#{empty beanHelper.contact.contactMobileNumber and not empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/admin/mobile/admin_form_add_contact_mobile.tpl" />
        </ui:fragment>
 
-       <ui:fragment rendered="#{not empty beanHelper.contact.contactCellphoneNumber and not empty beanHelper.contact}">
-               <ui:include src="/WEB-INF/templates/admin/cellphone/admin_cellphone_data.tpl" />
+       <ui:fragment rendered="#{not empty beanHelper.contact.contactMobileNumber and not empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/admin/mobile/admin_mobile_data.tpl" />
        </ui:fragment>
 </ui:composition>
index 09b5ac2501d63ce16b7586d52041a9590dbeb0ec..228cea62d8b1ec25efb46cbebe770680cd28a1ad 100644 (file)
@@ -5,9 +5,9 @@
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <h:outputText styleClass="errors" value="#{msg.ERROR_ADMIN_BEAN_MOBILE_NUMBER_NOT_SET}" rendered="#{empty adminPhoneController.cellPhone}" />
+       <h:outputText styleClass="errors" value="#{msg.ERROR_ADMIN_BEAN_MOBILE_NUMBER_NOT_SET}" rendered="#{empty adminPhoneController.MobileNumber}" />
 
-       <h:panelGrid id="cellphone_data" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_MOBILE_DATA}" headerClass="table_header_column" styleClass="table_big" columns="2" rendered="#{not empty adminPhoneController.cellPhone}">
+       <h:panelGrid id="cellphone_data" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_MOBILE_DATA}" headerClass="table_header_column" styleClass="table_big" columns="2" rendered="#{not empty adminPhoneController.MobileNumber}">
                <f:facet name="header">
                        <h:outputText value="#{msg.ADMIN_HEADER_SHOW_MOBILE_DATA}" />
                </f:facet>
                <h:column>
                        <h:outputLabel for="cellphoneId" styleClass="data_label" value="#{msg.ADMIN_SHOW_MOBILE_ID}" />
 
-                       <h:outputText id="cellphoneId" styleClass="data_field" value="#{adminPhoneController.cellPhone.phoneId}" />
+                       <h:outputText id="cellphoneId" styleClass="data_field" value="#{adminPhoneController.MobileNumber.phoneId}" />
                </h:column>
 
                <h:column>
                        <h:outputLabel for="cellphoneProvider" styleClass="data_label" value="#{msg.ADMIN_SHOW_MOBILE_PROVIDER_NAME}" />
 
                        <h:link outcome="admin_show_mobile_provider">
-                               <f:param name="providerId" value="#{adminPhoneController.cellPhone.cellphoneProvider.providerId}" />
-                               <h:outputText id="cellphoneProvider" styleClass="data_field" value="#{adminPhoneController.cellPhone.cellphoneProvider.providerName}" />
+                               <f:param name="providerId" value="#{adminPhoneController.MobileNumber.cellphoneProvider.providerId}" />
+                               <h:outputText id="cellphoneProvider" styleClass="data_field" value="#{adminPhoneController.MobileNumber.cellphoneProvider.providerName}" />
                        </h:link>
                </h:column>
 
                <h:column>
                        <h:outputLabel for="cellphoneNumber" styleClass="data_label" value="#{msg.ADMIN_SHOW_MOBILE_NUMBER_COMPLETE}" />
 
-                       <h:outputText id="cellphoneNumber" styleClass="data_field" value="#{adminPhoneController.cellPhone.cellphoneProvider.providerCountry.countryExternalDialPrefix}#{adminPhoneController.cellPhone.cellphoneProvider.providerDialPrefix}-#{adminPhoneController.cellPhone.phoneNumber}" />
+                       <h:outputText id="cellphoneNumber" styleClass="data_field" value="#{adminPhoneController.MobileNumber.cellphoneProvider.providerCountry.countryExternalDialPrefix}#{adminPhoneController.MobileNumber.cellphoneProvider.providerDialPrefix}-#{adminPhoneController.MobileNumber.phoneNumber}" />
                </h:column>
 
                <h:column>
                        <h:outputLabel styleClass="data_label" value="#{msg.ADMIN_SHOW_MOBILE_LINKS}" />
 
                        <div class="data_field">
-                               <ui:include src="/WEB-INF/templates/admin/cellphone/admin_MOBILE_links.tpl">
+                               <ui:include src="/WEB-INF/templates/admin/mobile/admin_mobile_links.tpl">
                                        <ui:param name="isShowPage" value="#{isShowPage}" />
                                </ui:include>
                        </div>
index 22cf2ff80a11a90672e1c1f73ed1a155f89be8c3..964dd44a7a1ded4247d3775c9603873909d9e34c 100644 (file)
@@ -5,15 +5,20 @@
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <h:outputText styleClass="errors" value="#{msg.ERROR_ADMIN_BEAN_MOBILE_NUMBER_NOT_SET}" rendered="#{empty adminPhoneController.cellPhone}" />
+       <ui:fragment rendered="#{empty beanHelper.mobileNumber}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_MOBILE_NUMBER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
 
-       <ui:fragment rendered="#{not empty adminPhoneController.cellPhone}">
+       <ui:fragment rendered="#{not empty beanHelper.mobileNumber}">
                <ul class="mini_nav">
                        <ui:fragment rendered="#{empty isShowPage or not isShowPage}">
                                <li class="mini_link">
                                        <h:link outcome="admin_show_cellphone">
                                                <h:outputText value="#{msg.ADMIN_LINK_SHOW_SHORT}" title="#{msg.ADMIN_LINK_SHOW_SHORT_TITLE}" />
-                                               <f:param name="phoneId" value="#{adminPhoneController.cellPhone.phoneId}" />
+                                               <f:param name="phoneId" value="#{beanHelper.mobileNumber.phoneId}" />
                                        </h:link>
                                </li>
                        </ui:fragment>
@@ -21,7 +26,7 @@
                        <li class="mini_link">
                                <h:link outcome="admin_edit_cellphone">
                                        <h:outputText value="#{msg.ADMIN_LINK_EDIT_SHORT}" title="#{msg.ADMIN_LINK_EDIT_SHORT_TITLE}" />
-                                       <f:param name="phoneId" value="#{adminPhoneController.cellPhone.phoneId}" />
+                                       <f:param name="phoneId" value="#{beanHelper.mobileNumber.phoneId}" />
                                </h:link>
                        </li>
 
@@ -29,7 +34,7 @@
                                <li class="mini_link">
                                        <h:link outcome="admin_unlink_contact_cellphone">
                                                <h:outputText styleClass="unlink_link" value="#{msg.ADMIN_LINK_UNLINK_SHORT}" title="#{msg.ADMIN_LINK_UNLINK_SHORT_TITLE}" />
-                                               <f:param name="phoneId" value="#{adminPhoneController.cellPhone.phoneId}" />
+                                               <f:param name="phoneId" value="#{beanHelper.mobileNumber.phoneId}" />
                                                <f:param name="contactId" value="#{beanHelper.contact.contactId}" />
                                        </h:link>
                                </li>
@@ -38,7 +43,7 @@
                        <li class="mini_link">
                                <h:link outcome="admin_delete_cellphone">
                                        <h:outputText styleClass="delete_link" value="#{msg.ADMIN_LINK_DELETE_SHORT}" title="#{msg.ADMIN_LINK_DELETE_SHORT_TITLE}" />
-                                       <f:param name="phoneId" value="#{adminPhoneController.cellPhone.phoneId}" />
+                                       <f:param name="phoneId" value="#{beanHelper.mobileNumber.phoneId}" />
                                </h:link>
                        </li>
                </ul>
diff --git a/web/WEB-INF/templates/admin/contact/admin_contact_data_columns.tpl b/web/WEB-INF/templates/admin/contact/admin_contact_data_columns.tpl
new file mode 100644 (file)
index 0000000..7620321
--- /dev/null
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!-- @TODO maybe later add phone numbers as "main" numbers? //-->
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://xmlns.jcp.org/jsf/core"
+       xmlns:h="http://xmlns.jcp.org/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <h:column>
+               <h:outputLabel for="contactId" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_ID}" />
+
+               <h:outputText id="contactId" styleClass="table_data_field" value="#{beanHelper.contact.contactId}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactCreated" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_CREATED}" />
+
+               <h:outputText id="contactCreated" styleClass="table_data_field" value="#{beanHelper.contact.contactCreated.time}">
+                       <f:convertDateTime for="contactCreated" type="both" />
+               </h:outputText>
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactUpdated" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_UPDATED}" />
+
+               <h:outputText id="contactUpdated" styleClass="table_data_field" value="#{beanHelper.contact.contactUpdated.time}">
+                       <f:convertDateTime for="contactUpdated" type="both" />
+               </h:outputText>
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="isOwnContact" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_IS_OWN_CONTACT}" />
+
+               <h:outputText id="isOwnContact" styleClass="table_data_field" value="#{beanHelper.contact.isOwnContact()}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactGender" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_GENDER}" />
+
+               <h:outputText id="contactGender" styleClass="table_data_field" value="#{msg[beanHelper.contact.contactGender.messageKey]}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactTitle" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_TITLE}" />
+
+               <h:outputText id="contactTitle" styleClass="table_data_field" value="#{beanHelper.contact.contactTitle}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactFirstName" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_FIRST_NAME}" />
+
+               <h:outputText id="contactFirstName" styleClass="table_data_field" value="#{beanHelper.contact.contactFirstName}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactFamilyName" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_FAMILY_NAME}" />
+
+               <h:outputText id="contactFamilyName" styleClass="table_data_field" value="#{beanHelper.contact.contactFamilyName}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactStreet" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_STREET}" />
+
+               <h:outputText id="contactStreet" styleClass="table_data_field" value="#{beanHelper.contact.contactStreet}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactHouseNumber" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_HOUSE_NUMBER}" />
+
+               <h:outputText id="contactHouseNumber" styleClass="table_data_field" value="#{beanHelper.contact.contactHouseNumber}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactHouseNumberExtension" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_HOUSE_NUMBER_EXTENSION}" />
+
+               <h:outputText id="contactHouseNumberExtension" styleClass="table_data_field" value="#{beanHelper.contact.contactHouseNumberExtension}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactCountry" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_COUNTRY_CODE}" />
+
+               <h:outputText id="contactCountry" styleClass="table_data_field" value="#{beanHelper.contact.contactCountry.countryCode}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactZipCode" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_ZIP_CODE}" />
+
+               <h:outputText id="contactZipCode" styleClass="table_data_field" value="#{beanHelper.contact.contactZipCode}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactCity" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_CITY}" />
+
+               <h:outputText id="contactCity" styleClass="table_data_field" value="#{beanHelper.contact.contactCity}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactEmailAddress" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_EMAIL_ADDRESS}" />
+
+               <h:outputLink id="contactEmailAddress" styleClass="table_data_field" value="mailto:#{beanHelper.contact.contactEmailAddress}">
+                       <h:outputText value="#{beanHelper.contact.contactEmailAddress}" />
+               </h:outputLink>
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactBirthday" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_BIRTHDAY}" />
+
+               <h:outputText id="contactBirthday" styleClass="table_data_field" value="#{beanHelper.contact.contactBirthday.time}">
+                       <f:convertDateTime for="contactBirthday" type="date" />
+               </h:outputText>
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactComment" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_COMMENT}" />
+
+               <h:outputText id="contactComment" styleClass="table_data_field" value="#{beanHelper.contact.contactComment}" />
+       </h:column>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/contact/admin_contact_data_columns_mini.tpl b/web/WEB-INF/templates/admin/contact/admin_contact_data_columns_mini.tpl
new file mode 100644 (file)
index 0000000..1d99604
--- /dev/null
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!-- @TODO maybe later add phone numbers as "main" numbers? //-->
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://xmlns.jcp.org/jsf/core"
+       xmlns:h="http://xmlns.jcp.org/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+
+       <h:column>
+               <h:outputLabel for="contactGender" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_GENDER}" />
+
+               <h:outputText id="contactGender" styleClass="table_data_field" value="#{msg[beanHelper.contact.contactGender.messageKey]}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactTitle" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_TITLE}" />
+
+               <h:outputText id="contactTitle" styleClass="table_data_field" value="#{beanHelper.contact.contactTitle}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactFirstName" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_FIRST_NAME}" />
+
+               <h:outputText id="contactFirstName" styleClass="table_data_field" value="#{beanHelper.contact.contactFirstName}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactFamilyName" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_FAMILY_NAME}" />
+
+               <h:outputText id="contactFamilyName" styleClass="table_data_field" value="#{beanHelper.contact.contactFamilyName}" />
+       </h:column>
+
+       <h:column>
+               <h:outputLabel for="contactEmailAddress" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_EMAIL_ADDRESS}" />
+
+               <h:outputLink id="contactEmailAddress" styleClass="table_data_field" value="mailto:#{beanHelper.contact.contactEmailAddress}">
+                       <h:outputText value="#{beanHelper.contact.contactEmailAddress}" />
+               </h:outputLink>
+       </h:column>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/contact/admin_contact_data_mini.tpl b/web/WEB-INF/templates/admin/contact/admin_contact_data_mini.tpl
new file mode 100644 (file)
index 0000000..2ac7b2c
--- /dev/null
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <h:panelGrid id="show_contact" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_CONTACT_DATA_MINI}" headerClass="table_header_column" styleClass="table_full" columns="3" rendered="#{not empty beanHelper.contact}">
+               <f:facet name="header">
+                       <h:outputFormat value="#{msg.ADMIN_HEADER_SHOW_CONTACT}">
+                               <f:param value="#{beanHelper.contact.contactId}" />
+                       </h:outputFormat>
+               </f:facet>
+
+               <h:column>
+                       <h:outputLabel for="contactGender" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_GENDER}" />
+
+                       <h:outputText id="contactGender" styleClass="table_data_field" value="#{msg[beanHelper.contact.contactGender.messageKey]}" />
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="contactFirstName" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_FIRST_NAME}" />
+
+                       <h:outputText id="contactFirstName" styleClass="table_data_field" value="#{beanHelper.contact.contactFirstName}" />
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="contactFamilyName" styleClass="table_data_label" value="#{msg.ADMIN_CONTACT_FAMILY_NAME}" />
+
+                       <h:outputText id="contactFamilyName" styleClass="table_data_field" value="#{beanHelper.contact.contactFamilyName}" />
+               </h:column>
+       </h:panelGrid>
+</ui:composition>
index 175474e2342095fb2c11a095a845ce8a53c09ac8..a5d91955023bef8c56b4a5855c17fd55bde82bed 100644 (file)
@@ -5,30 +5,33 @@
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_CONTACT_NOT_SET}" rendered="#{empty beanHelper.contact}" />
+       <ui:fragment rendered="#{empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_CONTACT_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
 
-       <ui:fragment rendered="#{not empty beanHelper.contact}">
-               <div class="table">
-                       <div class="table_header">
-                               <h:outputText value="#{msg.ADMIN_LINKS_HEADER}" />
-                       </div>
+       <h:panelGroup styleClass="table" layout="block" rendered="#{not empty beanHelper.contact}">
+               <div class="table_header">
+                       <h:outputText value="#{msg.ADMIN_LINKS_HEADER}" />
+               </div>
 
-                       <div class="table_row">
-                               <ul>
-                                       <li>
-                                               <h:link outcome="admin_edit_contact" value="#{msg.ADMIN_LINK_EDIT_CONTACT}" title="#{msg.ADMIN_LINK_EDIT_CONTACT_TITLE}">
-                                                       <f:param name="contactId" value="#{beanHelper.contact.contactId}" />
-                                               </h:link>
-                                       </li>
+               <div class="table_row">
+                       <ul>
+                               <li>
+                                       <h:link outcome="admin_edit_contact" value="#{msg.ADMIN_LINK_EDIT_CONTACT}" title="#{msg.ADMIN_LINK_EDIT_CONTACT_TITLE}">
+                                               <f:param name="contactId" value="#{beanHelper.contact.contactId}" />
+                                       </h:link>
+                               </li>
 
-                                       <li>
-                                               <h:link outcome="admin_delete_contact" title="#{msg.ADMIN_LINK_DELETE_CONTACT_TITLE}">
-                                                       <h:outputText styleClass="delete_link" value="#{msg.ADMIN_LINK_DELETE_CONTACT}" />
-                                                       <f:param name="contactId" value="#{beanHelper.contact.contactId}" />
-                                               </h:link>
-                                       </li>
-                               </ul>
-                       </div>
+                               <li>
+                                       <h:link outcome="admin_delete_contact" title="#{msg.ADMIN_LINK_DELETE_CONTACT_TITLE}">
+                                               <h:outputText styleClass="delete_link" value="#{msg.ADMIN_LINK_DELETE_CONTACT}" />
+                                               <f:param name="contactId" value="#{beanHelper.contact.contactId}" />
+                                       </h:link>
+                               </li>
+                       </ul>
                </div>
-       </ui:fragment>
+       </h:panelGroup>
 </ui:composition>
index 15ace8ea946d8497c4c15269ec29ffe5896f3230..fd6e71379eb6bc82be4267ccce8cc24a1ec19608 100644 (file)
@@ -6,7 +6,7 @@
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
        <div class="para">
-               <fieldset id="personal_data">
+               <fieldset class="fieldset" id="personal_data">
                        <legend title="#{msg.ADMIN_CONTACT_PERSONAL_DATA_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_CONTACT_PERSONAL_DATA_LEGEND}" />
                        </legend>
@@ -25,9 +25,9 @@
                                <div class="clear"></div>
                        </div>
 
-                       <div class="error_container">
+                       <h:panelGroup styleClass="error_container" layout="block">
                                <h:message for="gender" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                       </div>
+                       </h:panelGroup>
 
                        <div class="table_row">
                                <div class="table_left_medium">
@@ -41,9 +41,9 @@
                                <div class="clear"></div>
                        </div>
 
-                       <div class="error_container">
+                       <h:panelGroup styleClass="error_container" layout="block">
                                <h:message for="firstName" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                       </div>
+                       </h:panelGroup>
 
                        <div class="table_row">
                                <div class="table_left_medium">
@@ -57,9 +57,9 @@
                                <div class="clear"></div>
                        </div>
 
-                       <div class="error_container">
+                       <h:panelGroup styleClass="error_container" layout="block">
                                <h:message for="title" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                       </div>
+                       </h:panelGroup>
 
                        <div class="table_row">
                                <div class="table_left_medium">
@@ -73,9 +73,9 @@
                                <div class="clear"></div>
                        </div>
 
-                       <div class="error_container">
+                       <h:panelGroup styleClass="error_container" layout="block">
                                <h:message for="familyName" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                       </div>
+                       </h:panelGroup>
 
                        <div class="table_row">
                                <div class="table_left_medium">
@@ -89,9 +89,9 @@
                                <div class="clear"></div>
                        </div>
 
-                       <div class="error_container">
+                       <h:panelGroup styleClass="error_container" layout="block">
                                <h:message for="street" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                       </div>
+                       </h:panelGroup>
 
                        <div class="table_row">
                                <div class="table_left_medium">
                                <div class="clear"></div>
                        </div>
 
-                       <div class="error_container">
+                       <h:panelGroup styleClass="error_container" layout="block">
                                <h:message for="houseNumber" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                       </div>
+                       </h:panelGroup>
 
                        <div class="table_row">
                                <div class="table_left_medium">
                                <div class="clear"></div>
                        </div>
 
-                       <div class="error_container">
+                       <h:panelGroup styleClass="error_container" layout="block">
                                <h:message for="houseNumberExtension" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                       </div>
+                       </h:panelGroup>
 
                        <div class="table_row">
                                <div class="table_left_medium">
                                <div class="clear"></div>
                        </div>
 
-                       <div class="error_container">
+                       <h:panelGroup styleClass="error_container" layout="block">
                                <h:message for="zipCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                       </div>
+                       </h:panelGroup>
 
                        <div class="table_row">
                                <div class="table_left_medium">
                                <div class="clear"></div>
                        </div>
 
-                       <div class="error_container">
+                       <h:panelGroup styleClass="error_container" layout="block">
                                <h:message for="city" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                       </div>
+                       </h:panelGroup>
 
                        <div class="table_row">
                                <div class="table_left_medium">
                                </div>
 
                                <div class="table_right_medium">
-                                       <h:selectOneMenu  styleClass="select" id="country" value="#{adminContactController.country}">
-                                               <f:converter converterId="CountryConverter" />
+                                       <h:selectOneMenu  styleClass="select" id="country" value="#{adminContactController.country}" converter="CountryConverter">
                                                <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
                                                <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryCode} (#{msg[country.countryI18nKey]})" />
                                        </h:selectOneMenu>
                                <div class="clear"></div>
                        </div>
 
-                       <div class="error_container">
+                       <h:panelGroup styleClass="error_container" layout="block">
                                <h:message for="country" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                       </div>
+                       </h:panelGroup>
 
                        <div class="table_row">
                                <div class="table_left_medium">
                                </div>
 
                                <div class="table_right_medium">
-                                       <h:selectOneMenu styleClass="select" id="countryPhoneCode" value="#{adminContactController.phoneCountry}">
+                                       <h:selectOneMenu styleClass="select right_space" id="countryPhoneCode" value="#{adminContactController.landLineCountry}">
                                                <f:converter converterId="CountryConverter" />
                                                <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
                                                <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
                                        </h:selectOneMenu>
 
-                                       <h:inputText styleClass="input" id="phoneAreaCode" size="5" maxlength="10" value="#{adminContactController.phoneAreaCode}">
-                                               <f:validator for="phoneAreaCode" validatorId="PhoneNumberValidator" />
+                                       <h:inputText styleClass="input right_space" id="landLineAreaCode" size="5" maxlength="10" value="#{adminContactController.landLineAreaCode}">
+                                               <f:validator for="landLineAreaCode" validatorId="PhoneNumberValidator" />
                                        </h:inputText>
 
-                                       <h:inputText styleClass="input" id="phoneNumber" size="10" maxlength="20" value="#{adminContactController.phoneNumber}">
-                                               <f:validator for="phoneNumber" validatorId="PhoneNumberValidator" />
+                                       <h:inputText styleClass="input" id="landLineNumber" size="10" maxlength="20" value="#{adminContactController.landLineNumber}">
+                                               <f:validator for="landLineNumber" validatorId="PhoneNumberValidator" />
                                        </h:inputText>
                                </div>
 
                                </div>
 
                                <div class="table_right_medium">
-                                       <h:selectOneMenu styleClass="select" id="faxCountryCode" value="#{adminContactController.faxCountry}">
+                                       <h:selectOneMenu styleClass="select right_space" id="faxCountryCode" value="#{adminContactController.faxCountry}">
                                                <f:converter converterId="CountryConverter" />
                                                <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
                                                <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
                                        </h:selectOneMenu>
 
-                                       <h:inputText styleClass="input" id="faxAreaCode" size="5" maxlength="10" value="#{adminContactController.faxAreaCode}">
+                                       <h:inputText styleClass="input right_space" id="faxAreaCode" size="5" maxlength="10" value="#{adminContactController.faxAreaCode}">
                                                <f:validator for="faxAreaCode" validatorId="PhoneNumberValidator" />
                                        </h:inputText>
 
                                </div>
 
                                <div class="table_right_medium">
-                                       <ui:include src="/WEB-INF/templates/generic/mobile_selection_box.tpl">
-                                               <ui:param name="targetController" value="#{adminContactController}" />
-                                       </ui:include>
+                                       <h:selectOneMenu styleClass="select right_space" id="mobileProvider" value="#{adminContactController.mobileProvider}">
+                                               <f:converter converterId="MobileProviderConverter" />
+                                               <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
+                                               <f:selectItems value="#{mobileProviderController.allMobileProviders()}" var="mobileProvider" itemValue="#{mobileProvider}" itemLabel="#{mobileProvider.providerCountry.countryExternalDialPrefix}#{mobileProvider.providerDialPrefix} (#{mobileProvider.providerName})" />
+                                       </h:selectOneMenu>
+
+                                       <h:inputText styleClass="input" id="mobileNumber" size="10" maxlength="20" value="#{adminContactController.mobileNumber}">
+                                               <f:validator for="mobileNumber" validatorId="PhoneNumberValidator" />
+                                       </h:inputText>
                                </div>
 
                                <div class="clear"></div>
                                </div>
 
                                <div class="table_right_medium">
-                                       <h:inputText styleClass="input" id="emailAddress" size="20" maxlength="255" value="#{adminContactController.emailAddress}" />
+                                       <h:inputText styleClass="input" id="emailAddress" size="10" maxlength="255" value="#{adminContactController.emailAddress}" />
+                               </div>
+
+                               <div class="clear"></div>
+                       </div>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="emailAddress" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="contactBirthday" value="#{msg.ADMIN_PERSONAL_DATA_BIRTHDAY}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <h:inputText styleClass="input" id="contactBirthday" value="#{adminContactController.birthday}" size="10" converterMessage="#{msg.INVALID_BIRTHDAY}">
+                                               <f:convertDateTime pattern="#{msg.BIRTHDAY_PATTERN}" />
+                                       </h:inputText>
+                               </div>
+
+                               <div class="clear"></div>
+                       </div>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="contactBirthday" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="contactComment" value="#{msg.ADMIN_PERSONAL_DATA_COMMENT}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <h:inputTextarea id="contactComment" styleClass="input" value="#{adminContactController.comment}" rows="7" cols="25" />
                                </div>
 
                                <div class="clear"></div>
diff --git a/web/WEB-INF/templates/admin/contact/admin_show_contact_data.tpl b/web/WEB-INF/templates/admin/contact/admin_show_contact_data.tpl
new file mode 100644 (file)
index 0000000..774bcff
--- /dev/null
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <h:panelGrid id="show_contact" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_CONTACT_DATA}" headerClass="table_header_column" styleClass="table_full" columns="3" rendered="#{not empty beanHelper.contact}">
+               <f:facet name="header">
+                       <h:outputFormat value="#{msg.ADMIN_HEADER_SHOW_CONTACT}">
+                               <f:param value="#{beanHelper.contact.contactId}" />
+                       </h:outputFormat>
+               </f:facet>
+
+               <ui:include src="/WEB-INF/templates/admin/contact/admin_contact_data_columns.tpl" />
+       </h:panelGrid>
+</ui:composition>
index 2a478cf2e479aac95ae0ef26b072d1ae41890c91..521946feb15e3d244e45aacc255e9a6ed9acc748 100644 (file)
@@ -6,11 +6,11 @@
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
        <div class="para notice">
-               #{msg.ADMIN_COUNTRY_DATA_MINIMUM_NOTICE}
+               <h:outputText value="#{msg.ADMIN_COUNTRY_DATA_MINIMUM_NOTICE}" />
        </div>
 
        <div class="para">
-               <fieldset id="country_data">
+               <fieldset class="fieldset" id="country_data">
                        <legend title="#{msg.ADMIN_COUNTRY_PHONE_DATA_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_COUNTRY_PHONE_DATA_LEGEND}" />
                        </legend>
 
                                <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="countryAbroadDialPrefix" size="2" maxlength="10" value="#{adminCountryController.countryAbroadDialPrefix}" required="true" requiredMessage="#{msg.ADMIN_COUNTRY_ABORAD_DIAL_PREFIX_REQUIRED}">
-                                               <f:validateLongRange for="countryAbroadDialPrefix" minimum="0" maximum="99" />
+                                               <f:validator validatorId="AbroadDialValidator" />
                                        </h:inputText>
                                </div>
 
                                <div class="clear"></div>
                        </div>
 
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="countryAbroadDialPrefix" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
                        <div class="table_row">
                                <div class="table_left_medium">
                                        <h:outputLabel for="countryCode" value="#{msg.ADMIN_ENTER_COUNTRY_CODE}" />
                                </div>
 
                                <div class="table_right_medium">
-                                       <h:inputText styleClass="input" id="countryCode" size="2" maxlength="2" value="#{adminCountryController.countryCode}" required="true" requiredMessage="#{msg.ADMIN_COUNTRY_CODE_REQUIRED}">
+                                       <h:inputText styleClass="input" id="countryCode" size="2" maxlength="2" value="#{adminCountryController.countryCode}" required="true">
                                                <f:validateRegex for="countryCode" pattern="[A-Z]{2}" />
                                        </h:inputText>
 
                                <div class="clear"></div>
                        </div>
 
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="countryCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
                        <div class="table_row">
                                <div class="table_left_medium">
                                        <h:outputLabel for="countryI18nKey" value="#{msg.ADMIN_ENTER_COUNTRY_I18N_KEY}" />
                                </div>
 
                                <div class="table_right_medium">
-                                       <h:inputText styleClass="input" id="countryI18nKey" size="20" maxlength="100" value="#{adminCountryController.countryI18nKey}" required="true" requiredMessage="#{msg.ADMIN_COUNTRY_I18N_KEY_REQUIRED}">
+                                       <h:inputText styleClass="input" id="countryI18nKey" size="20" maxlength="100" value="#{adminCountryController.countryI18nKey}" required="true">
                                                <f:validateRegex for="countryI18nKey" pattern="[A-Z_]{2,}" />
                                        </h:inputText>
                                </div>
                                <div class="clear"></div>
                        </div>
 
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="countryI18nKey" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
                        <div class="table_row">
                                <div class="table_left_medium">
                                        <h:outputLabel for="countryIsLocalPrefixRequired" value="#{msg.ADMIN_SELECT_COUNTRY_IS_EXTERNAL_DIAL_PREFIX_REQUIRED}" />
                                <div class="clear"></div>
                        </div>
 
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="countryIsLocalPrefixRequired" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
                        <div class="table_row">
                                <div class="table_left_medium">
                                        <h:outputLabel for="countryExternalDialPrefix" value="#{msg.ADMIN_ENTER_COUNTRY_EXTERNAL_DIAL_PREFIX}" />
 
                                <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="countryExternalDialPrefix" size="2" maxlength="10" value="#{adminCountryController.countryExternalDialPrefix}" required="true" requiredMessage="#{msg.ADMIN_COUNTRY_EXTERNAL_DIAL_PREFIX_REQUIRED}">
-                                               <f:validateLongRange for="countryAbroadDialPrefix" minimum="0" maximum="99" />
+                                               <f:validateLongRange for="countryExternalDialPrefix" minimum="0" maximum="99" />
                                        </h:inputText>
                                </div>
 
                                <div class="clear"></div>
                        </div>
 
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="countryAbroadDialPrefix" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
                        <div class="table_row">
                                <div class="table_left_medium">
                                        <h:outputLabel for="countryPhoneCode" value="#{msg.ADMIN_ENTER_COUNTRY_PHONE_CODE}" />
 
                                <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="countryPhoneCode" size="2" maxlength="6" value="#{adminCountryController.countryPhoneCode}" required="true" requiredMessage="#{msg.ADMIN_COUNTRY_PHONE_CODE_REQUIRED}">
-                                               <f:validateLongRange for="countryAbroadDialPrefix" minimum="0" maximum="99" />
+                                               <f:validateLongRange for="countryPhoneCode" minimum="0" maximum="99" />
                                        </h:inputText>
 
                                        <h:outputText styleClass="small notice" value="#{msg.ADMIN_ENTER_COUNTRY_PHONE_CODE_EXAMPLE}" />
 
                                <div class="clear"></div>
                        </div>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="countryPhoneCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
                </fieldset>
        </div>
 </ui:composition>
diff --git a/web/WEB-INF/templates/admin/fax/admin_fax_add_show.tpl b/web/WEB-INF/templates/admin/fax/admin_fax_add_show.tpl
new file mode 100644 (file)
index 0000000..21f9781
--- /dev/null
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://xmlns.jcp.org/jsf/core"
+       xmlns:h="http://xmlns.jcp.org/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_CONTACT_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <ui:fragment rendered="#{empty beanHelper.contact.contactFaxNumber and not empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/admin/fax/admin_form_add_contact_fax.tpl" />
+       </ui:fragment>
+
+       <ui:fragment rendered="#{not empty beanHelper.contact.contactFaxNumber and not empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/admin/fax/admin_fax_data.tpl" />
+       </ui:fragment>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/fax/admin_fax_data.tpl b/web/WEB-INF/templates/admin/fax/admin_fax_data.tpl
new file mode 100644 (file)
index 0000000..7223047
--- /dev/null
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.faxNumber}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_FAX_NUMBER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <h:panelGrid id="fax_data" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_FAX_NUMBER_DATA}" headerClass="table_header_column" styleClass="table_medium" columns="2" rendered="#{not empty beanHelper.faxNumber}">
+               <f:facet name="header">
+                       <h:outputText value="#{msg.ADMIN_HEADER_SHOW_FAX_NUMBER_DATA}" />
+               </f:facet>
+
+               <h:column>
+                       <h:panelGroup>
+                               <h:outputLabel for="faxNumberId" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_ID}" />
+
+                               <h:outputText id="faxNumberId" styleClass="table_data_field" value="#{beanHelper.faxNumber.phoneId}" />
+
+                               <h:message for="faxNumberId" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="faxNumber" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_FAX_NUMBER_COMPLETE}" />
+
+                       <h:outputText id="faxNumber" styleClass="table_data_field" value="#{beanHelper.faxNumber.phoneCountry.countryAbroadDialPrefix}#{beanHelper.faxNumber.phoneCountry.countryPhoneCode} (#{beanHelper.faxNumber.phoneAreaCode}) #{beanHelper.faxNumber.phoneNumber}" />
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="faxCreated" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_CREATED}" />
+
+                       <h:outputText id="faxCreated" styleClass="table_data_field" value="#{beanHelper.faxNumber.phoneEntryCreated.time}">
+                               <f:convertDateTime for="contactCreated" type="both" />
+                       </h:outputText>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="faxUpdated" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_UPDATED}" />
+
+                       <h:outputText id="faxUpdated" styleClass="table_data_field" value="#{beanHelper.faxNumber.phoneEntryUpdated.time}">
+                               <f:convertDateTime for="contactUpdated" type="both" />
+                       </h:outputText>
+               </h:column>
+
+               <h:column rendered="#{empty showAdminLinks or showAdminLinks}">
+                       <h:outputLabel styleClass="table_data_label" value="#{msg.ADMIN_SHOW_ADMINISTRATIVE_LINKS}" />
+
+                       <div class="table_data_field">
+                               <ui:include src="/WEB-INF/templates/admin/fax/admin_fax_links.tpl">
+                                       <ui:param name="isShowPage" value="#{isShowPage}" />
+                               </ui:include>
+                       </div>
+               </h:column>
+       </h:panelGrid>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/fax/admin_fax_links.tpl b/web/WEB-INF/templates/admin/fax/admin_fax_links.tpl
new file mode 100644 (file)
index 0000000..61e466e
--- /dev/null
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.faxNumber}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_FAX_NUMBER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <ui:fragment rendered="#{not empty beanHelper.faxNumber}">
+               <ul class="mini_nav">
+                       <ui:fragment rendered="#{empty isShowPage or not isShowPage}">
+                               <li class="mini_link">
+                                       <h:link outcome="admin_show_fax">
+                                               <h:outputText value="#{msg.ADMIN_LINK_SHOW_SHORT}" title="#{msg.ADMIN_LINK_SHOW_SHORT_TITLE}" />
+                                               <f:param name="phoneId" value="#{beanHelper.faxNumber.phoneId}" />
+                                       </h:link>
+                               </li>
+                       </ui:fragment>
+
+                       <li class="mini_link">
+                               <h:link outcome="admin_edit_fax">
+                                       <h:outputText value="#{msg.ADMIN_LINK_EDIT_SHORT}" title="#{msg.ADMIN_LINK_EDIT_SHORT_TITLE}" />
+                                       <f:param name="phoneId" value="#{beanHelper.faxNumber.phoneId}" />
+                               </h:link>
+                       </li>
+
+                       <ui:fragment rendered="#{not empty beanHelper.contact}">
+                               <li class="mini_link">
+                                       <h:link outcome="admin_unlink_contact_fax">
+                                               <h:outputText styleClass="unlink_link" value="#{msg.ADMIN_LINK_UNLINK_SHORT}" title="#{msg.ADMIN_LINK_UNLINK_SHORT_TITLE}" />
+                                               <f:param name="phoneId" value="#{beanHelper.faxNumber.phoneId}" />
+                                               <f:param name="contactId" value="#{beanHelper.contact.contactId}" />
+                                       </h:link>
+                               </li>
+                       </ui:fragment>
+
+                       <li class="mini_link">
+                               <h:link outcome="admin_delete_fax">
+                                       <h:outputText styleClass="delete_link" value="#{msg.ADMIN_LINK_DELETE_SHORT}" title="#{msg.ADMIN_LINK_DELETE_SHORT_TITLE}" />
+                                       <f:param name="phoneId" value="#{beanHelper.faxNumber.phoneId}" />
+                               </h:link>
+                       </li>
+               </ul>
+       </ui:fragment>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/fax/admin_form_add_contact_fax.tpl b/web/WEB-INF/templates/admin/fax/admin_form_add_contact_fax.tpl
new file mode 100644 (file)
index 0000000..2cfa486
--- /dev/null
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://xmlns.jcp.org/jsf/core"
+       xmlns:h="http://xmlns.jcp.org/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_CONTACT_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <h:form id="form_add_contact_fax" rendered="#{not empty beanHelper.contact}">
+               <h:panelGroup styleClass="table_medium" layout="block">
+                       <div class="table_header">
+                               <h:outputText value="#{msg.ADMIN_ADD_CONTACT_FAX_NUMBER_FORM_TITLE}" />
+                       </div>
+
+                       <div class="para">
+                               <ui:include src="/WEB-INF/templates/admin/contact/admin_contact_data_mini.tpl" />
+                       </div>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="choosenFaxNumber" value="#{msg.ADMIN_SELECT_FAX_NUMBER}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <h:selectOneMenu styleClass="select right_space" id="choosenFaxNumber" value="#{adminPhoneController.choosenFaxNumber}">
+                                               <f:converter converterId="FaxNumberConverter" />
+                                               <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
+                                               <f:selectItems value="#{adminPhoneController.allNonLinkedFaxNumbers()}" var="faxNumber" itemValue="#{faxNumber}" itemLabel="#{faxNumber.phoneCountry.countryExternalDialPrefix} (#{faxNumber.phoneAreaCode}) #{faxNumber.phoneNumber}" />
+                                       </h:selectOneMenu>
+                               </div>
+
+                               <div class="clear"></div>
+                       </div>
+
+                       <div class="para">
+                               <h:outputText value="#{msg.ADMIN_OR_ENTER_CONTACT_NEW_FAX_DATA}" />
+                       </div>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="faxNumber" value="#{msg.ADMIN_PERSONAL_DATA_FAX_NUMBER}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <ui:include src="/WEB-INF/templates/input_fields/fax_input_fields.tpl">
+                                               <ui:param name="targetController" value="#{adminPhoneController}" />
+                                       </ui:include>
+                               </div>
+
+                               <div class="clear"></div>
+                       </div>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="faxAreaCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="faxNumber" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
+                       <div class="table_footer">
+                               <h:commandButton styleClass="reset right_space" type="reset" value="#{msg.BUTTON_RESET_FORM}" />
+
+                               <h:commandButton styleClass="submit" id="submit_add_link_contact_fax" type="submit" action="#{adminContactPhoneController.doLinkAddFaxNumber(beanHelper.contact)}" value="#{msg.BUTTON_ADMIN_LINK_ADD_CONTACT_FAX_NUMBER}">
+                                       <f:param name="contactId" value="#{param.contactId}" />
+                               </h:commandButton>
+                       </div>
+               </h:panelGroup>
+       </h:form>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/fax/admin_form_fax_data.tpl b/web/WEB-INF/templates/admin/fax/admin_form_fax_data.tpl
new file mode 100644 (file)
index 0000000..adb9bac
--- /dev/null
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.faxNumber}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_FAX_NUMBER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <div class="para">
+               <fieldset class="fieldset" id="fax_data">
+                       <legend title="#{msg.ADMIN_FAX_NUMBER_DATA_LEGEND_TITLE}">
+                               <h:outputText value="#{msg.ADMIN_FAX_NUMBER_DATA_LEGEND}" />
+                       </legend>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="faxNumberId" value="#{msg.ADMIN_SHOW_PHONE_ID}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <h:outputText id="faxNumberId" value="#{beanHelper.faxNumber.phoneId}" />
+                               </div>
+
+                               <div class="clear"></div>
+                       </div>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="faxNumber" value="#{msg.ADMIN_EDIT_FAX_NUMBER}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <ui:include src="/WEB-INF/templates/input_fields/fax_input_fields.tpl">
+                                               <ui:param name="targetController" value="#{adminPhoneController}" />
+                                       </ui:include>
+                               </div>
+
+                               <div class="clear"></div>
+                       </div>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="faxAreaCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="faxNumber" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+               </fieldset>
+       </div>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/landline/admin_form_add_contact_landline.tpl b/web/WEB-INF/templates/admin/landline/admin_form_add_contact_landline.tpl
new file mode 100644 (file)
index 0000000..1aec8d2
--- /dev/null
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://xmlns.jcp.org/jsf/core"
+       xmlns:h="http://xmlns.jcp.org/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_CONTACT_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <h:form id="form_add_contact_landline" rendered="#{not empty beanHelper.contact}">
+               <h:panelGroup styleClass="table_medium" layout="block">
+                       <div class="table_header">
+                               <h:outputText value="#{msg.ADMIN_ADD_CONTACT_LAND_LINE_NUMBER_FORM_TITLE}" />
+                       </div>
+
+                       <div class="para">
+                               <ui:include src="/WEB-INF/templates/admin/contact/admin_contact_data_mini.tpl" />
+                       </div>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="choosenLandLineNumber" value="#{msg.ADMIN_SELECT_LAND_LINE_NUMBER}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <h:selectOneMenu styleClass="select right_space" id="choosenLandLineNumber" value="#{adminPhoneController.choosenLandLineNumber}">
+                                               <f:converter converterId="LandLineNumberConverter" />
+                                               <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
+                                               <f:selectItems value="#{adminPhoneController.allNonLinkedLandLineNumbers()}" var="landlineNumber" itemValue="#{landlineNumber}" itemLabel="#{landlineNumber.phoneCountry.countryExternalDialPrefix} (#{landlineNumber.phoneAreaCode}) #{landlineNumber.phoneNumber}" />
+                                       </h:selectOneMenu>
+                               </div>
+
+                               <div class="clear"></div>
+                       </div>
+
+                       <div class="para">
+                               <h:outputText value="#{msg.ADMIN_OR_ENTER_CONTACT_NEW_LAND_LINE_DATA}" />
+                       </div>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="landLineNumber" value="#{msg.ADMIN_PERSONAL_DATA_LAND_LINE_NUMBER}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <ui:include src="/WEB-INF/templates/input_fields/landline_input_fields.tpl">
+                                               <ui:param name="targetController" value="#{adminPhoneController}" />
+                                       </ui:include>
+                               </div>
+
+                               <div class="clear"></div>
+                       </div>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="landLineAreaCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="landLineNumber" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
+                       <div class="table_footer">
+                               <h:commandButton styleClass="reset right_space" type="reset" value="#{msg.BUTTON_RESET_FORM}" />
+
+                               <h:commandButton styleClass="submit" id="submit_add_link_contact_landline" type="submit" action="#{adminContactPhoneController.doLinkAddLandLineNumber(beanHelper.contact)}" value="#{msg.BUTTON_ADMIN_LINK_ADD_CONTACT_LAND_LINE_NUMBER}">
+                                       <f:param name="contactId" value="#{param.contactId}" />
+                               </h:commandButton>
+                       </div>
+               </h:panelGroup>
+       </h:form>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/landline/admin_form_landline_data.tpl b/web/WEB-INF/templates/admin/landline/admin_form_landline_data.tpl
new file mode 100644 (file)
index 0000000..98f95d6
--- /dev/null
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.landLineNumber}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_LAND_LINE_NUMBER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <div class="para">
+               <fieldset class="fieldset" id="landline_data">
+                       <legend title="#{msg.ADMIN_LAND_LINE_NUMBER_DATA_LEGEND_TITLE}">
+                               <h:outputText value="#{msg.ADMIN_LAND_LINE_NUMBER_DATA_LEGEND}" />
+                       </legend>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="landLineNumberId" value="#{msg.ADMIN_SHOW_PHONE_ID}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <h:outputText id="landLineNumberId" value="#{beanHelper.landLineNumber.phoneId}" />
+                               </div>
+
+                               <div class="clear"></div>
+                       </div>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="landLineNumber" value="#{msg.ADMIN_EDIT_LAND_LINE_NUMBER}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <ui:include src="/WEB-INF/templates/input_fields/landline_input_fields.tpl">
+                                               <ui:param name="targetController" value="#{adminPhoneController}" />
+                                       </ui:include>
+                               </div>
+
+                               <div class="clear"></div>
+                       </div>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="landLineAreaCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="landLineNumber" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+               </fieldset>
+       </div>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/landline/admin_landline_add_show.tpl b/web/WEB-INF/templates/admin/landline/admin_landline_add_show.tpl
new file mode 100644 (file)
index 0000000..4ed5e60
--- /dev/null
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://xmlns.jcp.org/jsf/core"
+       xmlns:h="http://xmlns.jcp.org/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_CONTACT_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <ui:fragment rendered="#{empty beanHelper.contact.contactLandLineNumber and not empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/admin/landline/admin_form_add_contact_landline.tpl" />
+       </ui:fragment>
+
+       <ui:fragment rendered="#{not empty beanHelper.contact.contactLandLineNumber and not empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/admin/landline/admin_landline_data.tpl" />
+       </ui:fragment>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/landline/admin_landline_data.tpl b/web/WEB-INF/templates/admin/landline/admin_landline_data.tpl
new file mode 100644 (file)
index 0000000..45d494e
--- /dev/null
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.landLineNumber}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_LAND_LINE_NUMBER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <h:panelGrid id="landline_data" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_LAND_LINE_NUMBER_DATA}" headerClass="table_header_column" styleClass="table_medium" columns="2" rendered="#{not empty beanHelper.landLineNumber}">
+               <f:facet name="header">
+                       <h:outputText value="#{msg.ADMIN_HEADER_SHOW_LAND_LINE_NUMBER_DATA}" />
+               </f:facet>
+
+               <h:column>
+                       <h:panelGroup>
+                               <h:outputLabel for="landLineNumberId" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_ID}" />
+
+                               <h:outputText id="landLineNumberId" styleClass="table_data_field" value="#{beanHelper.landLineNumber.phoneId}" />
+
+                               <h:message for="landLineNumberId" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="landLineNumber" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_LAND_LINE_NUMBER_COMPLETE}" />
+
+                       <h:outputText id="landLineNumber" styleClass="table_data_field" value="#{beanHelper.landLineNumber.phoneCountry.countryAbroadDialPrefix}#{beanHelper.landLineNumber.phoneCountry.countryPhoneCode} (#{beanHelper.landLineNumber.phoneAreaCode}) #{beanHelper.landLineNumber.phoneNumber}" />
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="landLineCreated" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_CREATED}" />
+
+                       <h:outputText id="landLineCreated" styleClass="table_data_field" value="#{beanHelper.landLineNumber.phoneEntryCreated.time}">
+                               <f:convertDateTime for="contactCreated" type="both" />
+                       </h:outputText>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="landLineUpdated" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_UPDATED}" />
+
+                       <h:outputText id="landLineUpdated" styleClass="table_data_field" value="#{beanHelper.landLineNumber.phoneEntryUpdated.time}">
+                               <f:convertDateTime for="contactUpdated" type="both" />
+                       </h:outputText>
+               </h:column>
+
+               <h:column rendered="#{empty showAdminLinks or showAdminLinks}">
+                       <h:outputLabel styleClass="table_data_label" value="#{msg.ADMIN_SHOW_ADMINISTRATIVE_LINKS}" />
+
+                       <div class="table_data_field">
+                               <ui:include src="/WEB-INF/templates/admin/landline/admin_landline_links.tpl">
+                                       <ui:param name="isShowPage" value="#{isShowPage}" />
+                               </ui:include>
+                       </div>
+               </h:column>
+       </h:panelGrid>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/landline/admin_landline_links.tpl b/web/WEB-INF/templates/admin/landline/admin_landline_links.tpl
new file mode 100644 (file)
index 0000000..6ffb766
--- /dev/null
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.landLineNumber}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_LAND_LINE_NUMBER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <ui:fragment rendered="#{not empty beanHelper.landLineNumber}">
+               <ul class="mini_nav">
+                       <ui:fragment rendered="#{empty isShowPage or not isShowPage}">
+                               <li class="mini_link">
+                                       <h:link outcome="admin_show_landline">
+                                               <h:outputText value="#{msg.ADMIN_LINK_SHOW_SHORT}" title="#{msg.ADMIN_LINK_SHOW_SHORT_TITLE}" />
+                                               <f:param name="phoneId" value="#{beanHelper.landLineNumber.phoneId}" />
+                                       </h:link>
+                               </li>
+                       </ui:fragment>
+
+                       <li class="mini_link">
+                               <h:link outcome="admin_edit_landline">
+                                       <h:outputText value="#{msg.ADMIN_LINK_EDIT_SHORT}" title="#{msg.ADMIN_LINK_EDIT_SHORT_TITLE}" />
+                                       <f:param name="phoneId" value="#{beanHelper.landLineNumber.phoneId}" />
+                               </h:link>
+                       </li>
+
+                       <ui:fragment rendered="#{not empty beanHelper.contact}">
+                               <li class="mini_link">
+                                       <h:link outcome="admin_unlink_contact_landline">
+                                               <h:outputText styleClass="unlink_link" value="#{msg.ADMIN_LINK_UNLINK_SHORT}" title="#{msg.ADMIN_LINK_UNLINK_SHORT_TITLE}" />
+                                               <f:param name="phoneId" value="#{beanHelper.landLineNumber.phoneId}" />
+                                               <f:param name="contactId" value="#{beanHelper.contact.contactId}" />
+                                       </h:link>
+                               </li>
+                       </ui:fragment>
+
+                       <li class="mini_link">
+                               <h:link outcome="admin_delete_landline">
+                                       <h:outputText styleClass="delete_link" value="#{msg.ADMIN_LINK_DELETE_SHORT}" title="#{msg.ADMIN_LINK_DELETE_SHORT_TITLE}" />
+                                       <f:param name="phoneId" value="#{beanHelper.landLineNumber.phoneId}" />
+                               </h:link>
+                       </li>
+               </ul>
+       </ui:fragment>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/mobile/admin_form_add_contact_mobile.tpl b/web/WEB-INF/templates/admin/mobile/admin_form_add_contact_mobile.tpl
new file mode 100644 (file)
index 0000000..b6c73ff
--- /dev/null
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://xmlns.jcp.org/jsf/core"
+       xmlns:h="http://xmlns.jcp.org/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.contact}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_CONTACT_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <h:form id="form_add_contact_mobile" rendered="#{not empty beanHelper.contact}">
+               <h:panelGroup styleClass="table_medium" layout="block">
+                       <div class="table_header">
+                               <h:outputText value="#{msg.ADMIN_ADD_CONTACT_MOBILE_NUMBER_FORM_TITLE}" />
+                       </div>
+
+                       <div class="para">
+                               <ui:include src="/WEB-INF/templates/admin/contact/admin_contact_data_mini.tpl" />
+                       </div>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="choosenMobileNumber" value="#{msg.ADMIN_SELECT_MOBILE_NUMBER}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <h:selectOneMenu styleClass="select right_space" id="choosenMobileNumber" value="#{adminPhoneController.choosenMobileNumber}">
+                                               <f:converter converterId="MobileNumberConverter" />
+                                               <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
+                                               <f:selectItems value="#{adminPhoneController.allNonLinkedMobileNumbers()}" var="mobileNumber" itemValue="#{mobileNumber}" itemLabel="#{mobileNumber.mobileProvider.providerCountry.countryExternalDialPrefix} (#{mobileNumber.mobileProvider.providerDialPrefix}) #{mobileNumber.phoneNumber}" />
+                                       </h:selectOneMenu>
+                               </div>
+                       </div>
+
+                       <div class="para">
+                               <h:outputText value="#{msg.ADMIN_OR_ENTER_CONTACT_NEW_MOBILE_DATA}" />
+                       </div>
+
+                       <div class="table_row">
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="mobileNumber" value="#{msg.ADMIN_PERSONAL_DATA_MOBILE_NUMBER}" />
+                               </div>
+
+                               <div class="table_right_medium">
+                                       <ui:include src="/WEB-INF/templates/input_fields/mobile_input_fields.tpl">
+                                               <ui:param name="targetController" value="#{adminPhoneController}" />
+                                       </ui:include>
+                               </div>
+                       </div>
+
+                       <div class="table_footer">
+                               <h:commandButton styleClass="reset right_space" type="reset" value="#{msg.BUTTON_RESET_FORM}" />
+
+                               <h:commandButton styleClass="submit" id="submit_add_link_contact_mobile" type="submit" action="#{adminContactPhoneController.doLinkAddMobileNumber(beanHelper.contact)}" value="#{msg.BUTTON_ADMIN_LINK_ADD_CONTACT_MOBILE_NUMBER}">
+                                       <f:param name="contactId" value="#{param.contactId}" />
+                               </h:commandButton>
+                       </div>
+               </h:panelGroup>
+       </h:form>
+</ui:composition>
index 742cc4a2d5add3ab443f549581f7a76a04bce947..b612405ab943990d8af94667b7119ae2870843f2 100644 (file)
@@ -5,7 +5,12 @@
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_MOBILE_NUMBER_NOT_SET}" rendered="#{empty beanHelper.mobileNumber}" />
+       <ui:fragment rendered="#{empty beanHelper.mobileNumber}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_MOBILE_NUMBER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
 
        <div class="para">
                <fieldset class="fieldset" id="mobile_data">
@@ -40,9 +45,9 @@
 
                                <div class="clear"></div>
 
-                               <div class="error_container">
+                               <h:panelGroup styleClass="error_container" layout="block">
                                        <h:message for="mobileProvider" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                               </div>
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
@@ -58,9 +63,9 @@
 
                                <div class="clear"></div>
 
-                               <div class="error_container">
+                               <h:panelGroup styleClass="error_container" layout="block">
                                        <h:message for="mobileNumber" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                               </div>
+                               </h:panelGroup>
                        </div>
                </fieldset>
        </div>
diff --git a/web/WEB-INF/templates/admin/mobile/admin_mobile_data.tpl b/web/WEB-INF/templates/admin/mobile/admin_mobile_data.tpl
new file mode 100644 (file)
index 0000000..95cfde3
--- /dev/null
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty beanHelper.mobileNumber}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_MOBILE_NUMBER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <h:panelGrid id="mobile_data" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_MOBILE_NUMBER_DATA}" headerClass="table_header_column" styleClass="table_medium" columns="2" rendered="#{not empty beanHelper.mobileNumber}">
+               <f:facet name="header">
+                       <h:outputText value="#{msg.ADMIN_HEADER_SHOW_MOBILE_NUMBER_DATA}" />
+               </f:facet>
+
+               <h:column>
+                       <h:panelGroup>
+                               <h:outputLabel for="mobileNumberId" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_ID}" />
+
+                               <h:outputText id="mobileNumberId" styleClass="table_data_field" value="#{beanHelper.mobileNumber.phoneId}" />
+
+                               <h:message for="mobileNumberId" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="mobileProvider" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_MOBILE_PROVIDER_NAME}" />
+
+                       <h:link outcome="admin_show_mobile_provider">
+                               <f:param name="providerId" value="#{beanHelper.mobileNumber.mobileProvider.providerId}" />
+                               <h:outputText id="mobileProvider" styleClass="table_data_field" value="#{beanHelper.mobileNumber.mobileProvider.providerName}" />
+                       </h:link>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="mobileNumber" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_MOBILE_NUMBER_COMPLETE}" />
+
+                       <h:outputText id="mobileNumber" styleClass="table_data_field" value="#{beanHelper.mobileNumber.mobileProvider.providerCountry.countryExternalDialPrefix}#{beanHelper.mobileNumber.mobileProvider.providerDialPrefix}-#{beanHelper.mobileNumber.phoneNumber}" />
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="mobileCreated" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_CREATED}" />
+
+                       <h:outputText id="mobileCreated" styleClass="table_data_field" value="#{beanHelper.mobileNumber.phoneEntryCreated.time}">
+                               <f:convertDateTime for="contactCreated" type="both" />
+                       </h:outputText>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="mobileUpdated" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_UPDATED}" />
+
+                       <h:outputText id="mobileUpdated" styleClass="table_data_field" value="#{beanHelper.mobileNumber.phoneEntryUpdated.time}">
+                               <f:convertDateTime for="contactUpdated" type="both" />
+                       </h:outputText>
+               </h:column>
+
+               <h:column rendered="#{empty showAdminLinks or showAdminLinks}">
+                       <h:outputLabel styleClass="table_data_label" value="#{msg.ADMIN_SHOW_ADMINISTRATIVE_LINKS}" />
+
+                       <div class="table_data_field">
+                               <ui:include src="/WEB-INF/templates/admin/mobile/admin_mobile_links.tpl">
+                                       <ui:param name="isShowPage" value="#{isShowPage}" />
+                               </ui:include>
+                       </div>
+               </h:column>
+       </h:panelGrid>
+</ui:composition>
index 0b2fd8f80491e1480f88ac066021550d01a3fae1..4faff7598f6ed374d428e17176bb57a066f1a50f 100644 (file)
@@ -10,7 +10,7 @@
        </div>
 
        <div class="para">
-               <fieldset id="mobile_provider">
+               <fieldset class="fieldset" id="mobile_provider">
                        <legend title="#{msg.ADMIN_MOBILE_PROVIDER_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_MOBILE_PROVIDER_LEGEND}" />
                        </legend>
                                </div>
 
                                <div class="table_right_medium">
-                                       <h:inputText styleClass="input" id="providerDialPrefix" size="5" maxlength="20" value="#{adminMobileProviderController.providerDialPrefix}" required="true" requiredMessage="#{msg.ADMIN_MOBILE_PROVIDER_DIAL_PREFIX_REQUIRED}">
+                                       <h:inputText styleClass="input" id="providerDialPrefix" size="5" maxlength="20" value="#{adminMobileProviderController.providerDialPrefix}" required="true">
                                                <f:validateLongRange for="providerDialPrefix" minimum="0" maximum="9999" />
                                        </h:inputText>
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="providerDialPrefix" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="providerDialPrefix" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
index ae979a96222ae79c7b42ac0bdd8f4adfb815317c..f7acb1ce2792b7000ce5a8234315b4ecc142dd92 100644 (file)
@@ -5,11 +5,16 @@
        xmlns:h="http://xmlns.jcp.org/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <h:outputText styleClass="errors" value="#{msg.ADMIN_USER_DATA_PASSWORD_NOTICE}" rendered="#{empty mode}" />
+       <ui:fragment rendered="#{empty mode}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ADMIN_USER_DATA_PASSWORD_NOTICE}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
 
        <ui:fragment rendered="#{not empty mode}">
                <div class="para">
-                       <fieldset id="login_data">
+                       <fieldset class="fieldset" id="login_data">
                                <legend title="#{msg.ADMIN_USER_DATA_EMAIL_LEGEND_TITLE}">
                                        <h:outputText value="#{msg.ADMIN_USER_DATA_EMAIL_LEGEND}" />
                                </legend>
@@ -59,7 +64,7 @@
                                                </div>
 
                                                <div class="table_right_medium">
-                                                       <h:selectBooleanCheckbox styleClass="input" id="userMustChangePassword" value="#{adminUserController.userMustChangePassword}" />
+                                                       <h:selectBooleanCheckbox styleClass="checkbox" id="userMustChangePassword" value="#{adminUserController.userMustChangePassword}" />
                                                </div>
 
                                                <div class="clear"></div>
 
                                <div class="para notice">
                                        <ul>
-                                               <li>
-                                                       <h:outputText value="#{msg.ADMIN_USER_DATA_USER_NAME_NOTICE}" />
-                                               </li>
+                                               <li>#{msg.ADMIN_USER_DATA_USER_NAME_NOTICE}</li>
 
                                                <li>
-                                                       <h:outputText value="#{msg.ADMIN_DATA_PASSWORD_EDIT_NOTICE}" rendered="#{mode == 'edit'}" />
+                                                       <h:outputText value="#{msg.ADMIN_USER_DATA_PASSWORD_EDIT_NOTICE}" rendered="#{mode == 'edit'}" />
                                                        <h:outputText value="#{msg.ADMIN_USER_DATA_PASSWORD_ADD_NOTICE}" rendered="#{mode == 'add'}" />
                                                </li>
 
index e26833ea65ac486ae7b5c5d7926bdc5d7f26f249..8b47c6f865d53d39d789e1e2ba50493e59c85e26 100644 (file)
@@ -10,8 +10,4 @@
        </div>
 
        <ui:include src="/WEB-INF/templates/admin/contact/admin_form_contact_data.tpl" />
-
-       <ui:include src="/WEB-INF/templates/admin/user/admin_form_user_data.tpl">
-               <ui:param name="mode" value="add" />
-       </ui:include>
 </ui:composition>
diff --git a/web/WEB-INF/templates/admin/user/admin_show_user_data.tpl b/web/WEB-INF/templates/admin/user/admin_show_user_data.tpl
new file mode 100644 (file)
index 0000000..52f1cc5
--- /dev/null
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <h:panelGrid id="admin_user_profile" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_USER_DATA}" headerClass="table_header_column" styleClass="table_full" columns="3" rendered="#{not empty beanHelper.user}">
+               <f:facet name="header">
+                       <h:outputFormat value="#{msg.ADMIN_HEADER_SHOW_USER}">
+                               <f:param value="#{beanHelper.user.userName}" />
+                               <f:param value="#{beanHelper.user.userId}" />
+                       </h:outputFormat>
+               </f:facet>
+
+               <h:column>
+                       <h:outputLabel for="userId" styleClass="table_data_label" value="#{msg.ADMIN_USER_ID}" />
+
+                       <h:outputText id="userId" styleClass="table_data_field" value="#{beanHelper.user.userId}" />
+               </h:column>
+
+               <ui:fragment rendered="#{featureController.isFeatureEnabled('user_name_required')}">
+                       <h:column>
+                               <h:outputLabel for="userName" styleClass="table_data_label" value="#{msg.ADMIN_USER_NAME}" />
+
+                               <h:outputText id="userName" styleClass="table_data_field" value="#{beanHelper.user.userName}" />
+                       </h:column>
+               </ui:fragment>
+
+               <h:column>
+                       <h:outputLabel for="userCreated" styleClass="table_data_label" value="#{msg.ADMIN_USER_CREATED}" />
+
+                       <h:outputText id="userCreated" styleClass="table_data_field" value="#{beanHelper.user.userCreated.time}">
+                               <f:convertDateTime for="userCreated" type="both" />
+                       </h:outputText>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="userUpdated" styleClass="table_data_label" value="#{msg.ADMIN_USER_UPDATED}" />
+
+                       <h:outputText id="userUpdated" styleClass="table_data_field" value="#{beanHelper.user.userUpdated.time}">
+                               <f:convertDateTime for="userUpdated" type="both" />
+                       </h:outputText>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="userAccountStatus" styleClass="table_data_label" value="#{msg.ADMIN_USER_ACCOUNT_STATUS}" />
+
+                       <h:outputText id="userAccountStatus" styleClass="table_data_field #{beanHelper.user.userAccountStatus.styleClass}" value="#{msg[beanHelper.user.userAccountStatus.messageKey]}" />
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="userProfileMode" styleClass="table_data_label" value="#{msg.ADMIN_USER_PROFILE_MODE}" />
+
+                       <h:outputText id="userProfileMode" styleClass="table_data_field" value="#{msg[beanHelper.user.userProfileMode.messageKey]}" />
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="userLastLocked" styleClass="table_data_label" value="#{msg.ADMIN_USER_LAST_LOCKED}" />
+
+                       <h:outputText id="userLastLocked" styleClass="table_data_field" value="#{beanHelper.user.userLastLocked.time}">
+                               <f:convertDateTime for="userLastLocked" type="both" />
+                       </h:outputText>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="userLastLockedReason" styleClass="table_data_label" value="#{msg.ADMIN_USER_LAST_LOCKED_REASON}" />
+
+                       <h:outputText id="userLastLockedReason" styleClass="table_data_field" value="#{beanHelper.user.userLastLockedReason}" />
+               </h:column>
+
+               <ui:include src="/WEB-INF/templates/admin/contact/admin_contact_data_columns.tpl" />
+       </h:panelGrid>
+</ui:composition>
diff --git a/web/WEB-INF/templates/admin/user/admin_show_user_data_mini.tpl b/web/WEB-INF/templates/admin/user/admin_show_user_data_mini.tpl
new file mode 100644 (file)
index 0000000..42e5755
--- /dev/null
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <h:panelGrid id="admin_user_profile" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_USER_DATA}" headerClass="table_header_column" styleClass="table_full" columns="3" rendered="#{not empty beanHelper.user}">
+               <f:facet name="header">
+                       <h:outputFormat value="#{msg.ADMIN_HEADER_SHOW_USER}">
+                               <f:param value="#{beanHelper.user.userName}" />
+                               <f:param value="#{beanHelper.user.userId}" />
+                       </h:outputFormat>
+               </f:facet>
+
+               <h:column>
+                       <h:outputLabel for="userId" styleClass="table_data_label" value="#{msg.ADMIN_USER_ID}" />
+
+                       <h:panelGroup styleClass="table_data_field" layout="block">
+                               <h:link id="userId" outcome="admin_show_user" title="#{msg.ADMIN_LINK_SHOW_USER_TITLE}" value="#{beanHelper.user.userId}">
+                                       <f:param name="userId" value="#{beanHelper.user.userId}" />
+                               </h:link>
+                       </h:panelGroup>
+               </h:column>
+
+               <ui:fragment rendered="#{featureController.isFeatureEnabled('user_name_required')}">
+                       <h:column>
+                               <h:outputLabel for="userName" styleClass="table_data_label" value="#{msg.ADMIN_USER_NAME}" />
+
+                               <h:outputText id="userName" styleClass="table_data_field" value="#{beanHelper.user.userName}" />
+                       </h:column>
+               </ui:fragment>
+
+               <h:column>
+                       <h:outputLabel for="userCreated" styleClass="table_data_label" value="#{msg.ADMIN_USER_CREATED}" />
+
+                       <h:outputText id="userCreated" styleClass="table_data_field" value="#{beanHelper.user.userCreated.time}">
+                               <f:convertDateTime for="userCreated" type="both" />
+                       </h:outputText>
+               </h:column>
+
+               <h:column>
+                       <h:outputLabel for="userAccountStatus" styleClass="table_data_label" value="#{msg.ADMIN_USER_ACCOUNT_STATUS}" />
+
+                       <h:outputText id="userAccountStatus" styleClass="table_data_field #{beanHelper.user.userAccountStatus.styleClass}" value="#{msg[beanHelper.user.userAccountStatus.messageKey]}" />
+               </h:column>
+
+               <ui:include src="/WEB-INF/templates/admin/contact/admin_contact_data_columns_mini.tpl" />
+       </h:panelGrid>
+</ui:composition>
index 34cb19a5c3bf7d753a59a48cc1c589e72db30e45..3e14d0c82ebd8b0612f8ec32182e76a88a2c04f0 100644 (file)
@@ -5,48 +5,65 @@
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_USER_NOT_SET}" rendered="#{empty beanHelper.user}" />
-
-       <ui:fragment rendered="#{not empty beanHelper.user}">
-               <div class="table">
-                       <div class="table_header">
-                               <h:outputText value="#{msg.ADMIN_LINKS_HEADER}" />
-                       </div>
-
-                       <div class="table_row">
-                               <ul>
-                                       <li>
-                                               <h:link outcome="admin_edit_user" value="#{msg.ADMIN_LINK_EDIT_USER}" title="#{msg.ADMIN_LINK_EDIT_USER_TITLE}">
-                                                       <f:param name="userId" value="#{beanHelper.user.userId}" />
-                                               </h:link>
-                                       </li>
-
-                                       <li>
-                                               <h:link outcome="admin_edit_contact" value="#{msg.ADMIN_LINK_EDIT_CONTACT}" title="#{msg.ADMIN_LINK_EDIT_CONTACT_TITLE}">
-                                                       <f:param name="contactId" value="#{beanHelper.user.userContact.contactId}" />
-                                               </h:link>
-                                       </li>
-
-                                       <ui:fragment rendered="#{beanHelper.user.userAccountStatus != 'UNCONFIRMED'}">
-                                               <li>
-                                                       <h:link outcome="admin_unlock_user" value="#{msg.ADMIN_LINK_UNLOCK_USER}" title="#{msg.ADMIN_LINK_UNLOCK_USER_TITLE}" rendered="#{beanHelper.user.userAccountStatus == 'LOCKED'}">
-                                                               <f:param name="userId" value="#{beanHelper.user.userId}" />
-                                                       </h:link>
-
-                                                       <h:link outcome="admin_lock_user" value="#{msg.ADMIN_LINK_LOCK_USER}" title="#{msg.ADMIN_LINK_LOCK_USER_TITLE}" rendered="#{beanHelper.user.userAccountStatus == 'CONFIRMED'}">
-                                                               <f:param name="userId" value="#{beanHelper.user.userId}" />
-                                                       </h:link>
-                                               </li>
-                                       </ui:fragment>
-
-                                       <li>
-                                               <h:link outcome="admin_delete_user" title="#{msg.ADMIN_LINK_DELETE_USER_TITLE}">
-                                                       <h:outputText styleClass="delete_link" value="#{msg.ADMIN_LINK_DELETE_USER}" />
-                                                       <f:param name="userId" value="#{beanHelper.user.userId}" />
-                                               </h:link>
-                                       </li>
-                               </ul>
-                       </div>
-               </div>
+       <ui:fragment rendered="#{empty beanHelper.user}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_BEAN_HELPER_USER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
        </ui:fragment>
+
+       <h:panelGroup styleClass="table" layout="block" rendered="#{not empty beanHelper.user}">
+               <div class="table_header">
+                       <h:outputText value="#{msg.ADMIN_LINKS_HEADER}" />
+               </div>
+
+               <div class="table_row">
+                       <ul>
+                               <li>
+                                       <h:link outcome="admin_edit_user" value="#{msg.ADMIN_LINK_EDIT_USER}" title="#{msg.ADMIN_LINK_EDIT_USER_TITLE}">
+                                               <f:param name="userId" value="#{beanHelper.user.userId}" />
+                                       </h:link>
+                               </li>
+
+                               <li>
+                                       <h:link outcome="admin_edit_contact" value="#{msg.ADMIN_LINK_EDIT_CONTACT}" title="#{msg.ADMIN_LINK_EDIT_CONTACT_TITLE}">
+                                               <f:param name="contactId" value="#{beanHelper.user.userContact.contactId}" />
+                                       </h:link>
+                               </li>
+
+                               <li>
+                                       <h:link outcome="admin_resend_user_confirm_link" value="#{msg.ADMIN_LINK_RESEND_USER_CONFIRMATION_LINK}" title="#{msg.ADMIN_LINK_RESEND_USER_CONFIRMATION_LINK_TITLE}" rendered="#{beanHelper.user.userAccountStatus == 'UNCONFIRMED'}">
+                                               <f:param name="userId" value="#{beanHelper.user.userId}" />
+                                       </h:link>
+
+                                       <h:link outcome="admin_unlock_user" value="#{msg.ADMIN_LINK_UNLOCK_USER}" title="#{msg.ADMIN_LINK_UNLOCK_USER_TITLE}" rendered="#{beanHelper.user.userAccountStatus == 'LOCKED'}">
+                                               <f:param name="userId" value="#{beanHelper.user.userId}" />
+                                       </h:link>
+
+                                       <h:link outcome="admin_lock_user" value="#{msg.ADMIN_LINK_LOCK_USER}" title="#{msg.ADMIN_LINK_LOCK_USER_TITLE}" rendered="#{beanHelper.user.userAccountStatus == 'CONFIRMED'}">
+                                               <f:param name="userId" value="#{beanHelper.user.userId}" />
+                                       </h:link>
+                               </li>
+
+                               <li>
+                                       <h:link outcome="admin_delete_user" title="#{msg.ADMIN_LINK_DELETE_USER_TITLE}">
+                                               <h:outputText styleClass="delete_link" value="#{msg.ADMIN_LINK_DELETE_USER}" />
+                                               <f:param name="userId" value="#{beanHelper.user.userId}" />
+                                       </h:link>
+                               </li>
+
+                               <li>
+                                       <h:link outcome="admin_show_contact" value="#{msg.ADMIN_LINK_SHOW_CONTACT_DATA}" title="#{msg.ADMIN_LINK_SHOW_CONTACT_DATA_TITLE}">
+                                               <f:param name="contactId" value="#{beanHelper.user.userContact.contactId}" />
+                                       </h:link>
+                               </li>
+
+                               <li>
+                                       <h:link outcome="admin_show_user_activity_log" value="#{msg.ADMIN_LINK_SHOW_USER_ACTIVITY_LOG}" title="#{msg.ADMIN_LINK_SHOW_USER_ACTIVITY_LOG_TITLE}">
+                                               <f:param name="userId" value="#{beanHelper.user.userId}" />
+                                       </h:link>
+                               </li>
+                       </ul>
+               </div>
+       </h:panelGroup>
 </ui:composition>
index 21d4954dde58608b9cc108978fb178b4f2acb20d..2eef38ff60c5557f7bcd8b223d7a22168fcdb3f5 100644 (file)
@@ -1,10 +1,12 @@
 <?xml version="1.0" encoding="UTF-8" ?>
-<html
-       lang="#{localizationController.language}" xml:lang="#{localizationController.language}"
+<ui:composition
        xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
        xmlns:h="http://java.sun.com/jsf/html"
-       xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
-       xmlns:f="http://xmlns.jcp.org/jsf/core">
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:insert name="metadata">
+       </ui:insert>
 
        <f:view locale="#{localizationController.locale}" contentType="text/html">
                <h:head id="head">
                        <title>Addressbook - <ui:insert name="title">Default title</ui:insert></title>
                </h:head>
 
-               <h:body>
+               <h:body id="body">
                        <div id="top">
-                               <div id="header">
-                                       <div id="title">
+                               <div id="page_header">
+                                       <div id="page_title">
                                                <h1>Addressbook - <ui:insert name="title">Default title</ui:insert></h1>
                                        </div>
                                </div>
                                                <ui:insert name="content">Default content</ui:insert>
                                        </div>
 
-                                       <div class="error_container">
+                                       <h:panelGroup styleClass="error_container" layout="block">
                                                <h:messages showDetail="true" errorClass="errors" fatalClass="errors" warnClass="errors" />
-                                       </div>
+                                       </h:panelGroup>
                                </div>
 
                                <div class="clear"></div>
                        </h:panelGroup>
 
-                       <div id="footer">
+                       <div id="page_footer">
                                <ui:insert name="footer">Default footer</ui:insert>
                        </div>
                </h:body>
        </f:view>
-</html>
+</ui:composition>
index 3c1741ccea9b8200cc4f502ed63a61518b8d3020..2d9fc075db1eefa21798ff7bf7051bb7e0420fd5 100644 (file)
        </div>
 
        <div class="para">
-               <fieldset id="personal_data">
+               <fieldset class="fieldset" id="personal_data">
                        <legend title="#{msg.PERSONAL_DATA_LEGEND_TITLE}">
                                <h:outputText value="#{msg.PERSONAL_DATA_LEGEND}" />
                        </legend>
 
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="gender" value="#{msg.PERSONAL_DATA_GENDER}" />
                                </div>
 
-                               <div class="table_right">
+                               <div class="table_right_medium">
                                        <ui:include src="/WEB-INF/templates/generic/gender_selection_box.tpl">
                                                <ui:param  name="targetController" value="#{contactController}" />
                                        </ui:include>
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="gender" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="gender" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="firstName" value="#{msg.PERSONAL_DATA_FIRST_NAME}" />
                                </div>
 
-                               <div class="table_right">
+                               <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="firstName" size="10" maxlength="255" value="#{contactController.firstName}" required="true" requiredMessage="#{msg.GUEST_CONTACT_DATA_FIRST_NAME_REQUIRED}">
                                                <f:validator validatorId="NameValidator" />
                                        </h:inputText>
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="firstName" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="firstName" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="familyName" value="#{msg.PERSONAL_DATA_FAMILY_NAME}" />
                                </div>
 
-                               <div class="table_right">
+                               <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="familyName" size="10" maxlength="255" value="#{contactController.familyName}" required="true" requiredMessage="#{msg.GUEST_CONTACT_DATA_FAMILY_NAME_REQUIRED}">
                                                <f:validator for="familyName" validatorId="NameValidator" />
                                        </h:inputText>
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="familyName" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="familyName" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="street" value="#{msg.PERSONAL_DATA_STREET}" />
                                </div>
 
-                               <div class="table_right">
+                               <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="street" size="20" maxlength="255" value="#{contactController.street}" required="true" requiredMessage="#{msg.GUEST_CONTACT_DATA_STREET_REQUIRED}">
                                                <f:validator validatorId="NameValidator" />
                                        </h:inputText>
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="street" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="street" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="houseNumber" value="#{msg.PERSONAL_DATA_HOUSE_NUMBER}" />
                                </div>
 
-                               <div class="table_right">
+                               <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="houseNumber" size="3" maxlength="5" value="#{contactController.houseNumber}" required="true" requiredMessage="#{msg.GUEST_CONTACT_DATA_HOUSE_NUMBER_REQUIRED}" validatorMessage="#{msg.ENTERED_HOUSE_NUMBER_INVALID}">
                                                <f:validateLongRange for="houseNumber" minimum="1" maximum="500" />
                                        </h:inputText>
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="houseNumber" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="houseNumber" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="houseNumberExtension" value="#{msg.PERSONAL_DATA_HOUSE_NUMBER_EXTENSION}" />
                                </div>
 
-                               <div class="table_right">
+                               <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="houseNumberExtension" size="2" maxlength="2" value="#{contactController.houseNumberExtension}" />
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="houseNumberExtension" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="houseNumberExtension" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="zipCode" value="#{msg.PERSONAL_DATA_ZIP_CODE}" />
                                </div>
 
-                               <div class="table_right">
+                               <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="zipCode" size="5" maxlength="6" value="#{contactController.zipCode}" required="true" requiredMessage="#{msg.GUEST_CONTACT_DATA_ZIP_CODE_REQUIRED}" validatorMessage="#{msg.ENTERED_ZIP_CODE_INVALID}">
                                                <f:validateLongRange minimum="1" maximum="99999" />
                                        </h:inputText>
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="zipCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="zipCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="city" value="#{msg.PERSONAL_DATA_CITY}" />
                                </div>
 
-                               <div class="table_right">
+                               <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="city" size="10" maxlength="255" value="#{contactController.city}" required="true" requiredMessage="#{msg.GUEST_CONTACT_DATA_CITY_REQUIRED}">
                                                <f:validator validatorId="NameValidator" />
                                        </h:inputText>
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="city" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="city" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="birthday" value="#{msg.PERSONAL_DATA_BIRTHDAY}" />
                                </div>
 
-                               <div class="table_right">
+                               <div class="table_right_medium">
                                        <h:inputText styleClass="input" id="birthday" value="#{contactController.birthday}" required="true" size="10" requiredMessage="#{msg.GUEST_CONTACT_DATA_BIRTHDAY_REQUIRED}" converterMessage="#{msg.INVALID_BIRTHDAY}">
                                                <f:convertDateTime pattern="#{msg.BIRTHDAY_PATTERN}" />
                                        </h:inputText>
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="birthday" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="birthday" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="country" value="#{msg.PERSONAL_DATA_COUNTRY_CODE}" />
                                </div>
 
-                               <div class="table_right">
+                               <div class="table_right_medium">
                                        <h:selectOneMenu styleClass="select" id="country" value="#{contactController.country}">
                                                <f:converter converterId="CountryConverter" />
                                                <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
                                </div>
 
                                <div class="clear"></div>
-                       </div>
 
-                       <div class="error_container">
-                               <h:message for="country" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               <h:panelGroup styleClass="error_container" layout="block">
+                                       <h:message for="country" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                               </h:panelGroup>
                        </div>
 
                        <div class="table_row">
-                               <div class="table_left">
-                                       <h:outputLabel value="#{msg.PERSONAL_DATA_PHONE_NUMBER}" />
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="landLineNumber" value="#{msg.PERSONAL_DATA_PHONE_NUMBER}" />
                                </div>
 
-                               <div class="table_right">
-                                       <h:selectOneMenu styleClass="select" id="countryPhoneCode" value="#{contactController.phoneCountry}">
+                               <div class="table_right_medium">
+                                       <h:selectOneMenu styleClass="select right_space" id="landLineCountry" value="#{contactController.landLineCountry}">
                                                <f:converter converterId="CountryConverter" />
                                                <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
                                                <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
                                        </h:selectOneMenu>
 
-                                       <h:inputText styleClass="input" id="phoneAreaCode" size="5" maxlength="10" value="#{contactController.phoneAreaCode}">
+                                       <h:inputText styleClass="input right_space" id="landLineAreaCode" size="5" maxlength="10" value="#{contactController.landLineAreaCode}">
                                                <f:validator validatorId="PhoneNumberValidator" />
                                        </h:inputText>
 
-                                       <h:inputText styleClass="input" id="phoneNumber" size="10" maxlength="20" value="#{contactController.phoneNumber}">
+                                       <h:inputText styleClass="input" id="landLineNumber" size="10" maxlength="20" value="#{contactController.landLineNumber}">
                                                <f:validator validatorId="PhoneNumberValidator" />
                                        </h:inputText>
                                </div>
                                <div class="clear"></div>
                        </div>
 
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="landLineAreaCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="landLineNumber" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
                        <div class="table_row">
-                               <div class="table_left">
+                               <div class="table_left_medium">
                                        <h:outputLabel for="faxNumber" value="#{msg.PERSONAL_DATA_FAX_NUMBER}" />
                                </div>
 
-                               <div class="table_right">
-                                       <h:selectOneMenu styleClass="select" id="faxCountryCode" value="#{contactController.faxCountry}">
+                               <div class="table_right_medium">
+                                       <h:selectOneMenu styleClass="select right_space" id="faxCountry" value="#{contactController.faxCountry}">
                                                <f:converter converterId="CountryConverter" />
                                                <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
                                                <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
                                        </h:selectOneMenu>
 
-                                       <h:inputText styleClass="input" id="faxAreaCode" size="5" maxlength="10" value="#{contactController.faxAreaCode}">
+                                       <h:inputText styleClass="input right_space" id="faxAreaCode" size="5" maxlength="10" value="#{contactController.faxAreaCode}">
                                                <f:validator for="faxAreaCode" validatorId="PhoneNumberValidator" />
                                        </h:inputText>
 
                                <div class="clear"></div>
                        </div>
 
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="faxAreaCode" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
+                       <h:panelGroup styleClass="error_container" layout="block">
+                               <h:message for="faxNumber" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                       </h:panelGroup>
+
                        <div class="table_row">
-                               <div class="table_left">
-                                       <h:outputLabel for="cellphoneNumber" value="#{msg.PERSONAL_DATA_MOBILE_NUMBER}" />
+                               <div class="table_left_medium">
+                                       <h:outputLabel for="mobileNumber" value="#{msg.PERSONAL_DATA_MOBILE_NUMBER}" />
                                </div>
 
-                               <div class="table_right">
-                                       <ui:include src="/WEB-INF/templates/generic/mobile_selection_box.tpl">
-                                               <ui:param name="targetController" value="#{contactController}" />
-                                       </ui:include>
+                               <div class="table_right_medium">
+                                       <h:selectOneMenu styleClass="select right_space" id="mobileProvider" value="#{contactController.mobileProvider}">
+                                               <f:converter converterId="MobileProviderConverter" />
+                                               <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
+                                               <f:selectItems value="#{mobileProviderController.allMobileProviders()}" var="mobileProvider" itemValue="#{mobileProvider}" itemLabel="#{mobileProvider.providerCountry.countryExternalDialPrefix}#{mobileProvider.providerDialPrefix} (#{mobileProvider.providerName})" />
+                                       </h:selectOneMenu>
+
+                                       <h:inputText styleClass="input" id="mobileNumber" size="10" maxlength="20" value="#{contactController.mobileNumber}">
+                                               <f:validator for="mobileNumber" validatorId="PhoneNumberValidator" />
+                                       </h:inputText>
                                </div>
 
                                <div class="clear"></div>
 
        <ui:fragment rendered="#{userController.isPublicUserProfileEnabled()}">
                <div class="para">
-                       <fieldset id="user_profile">
+                       <fieldset class="fieldset" id="profile_mode">
                                <legend title="#{msg.USER_PROFILE_LEGEND_TITLE}">
                                        <h:outputText value="#{msg.USER_PROFILE_LEGEND}" />
                                </legend>
 
                                <div class="table_row">
-                                       <div class="table_left">
+                                       <div class="table_left_medium">
                                                <h:outputLabel for="profileMode" value="#{msg.USER_PROFILE_MODE}" />
                                        </div>
 
-                                       <div class="table_right">
+                                       <div class="table_right_medium">
                                                <ui:include src="/WEB-INF/templates/generic/profile_mode_selection_box.tpl" />
                                        </div>
 
                                <div class="table_row">
                                        <div class="para notice">
                                                <ul>
-                                                       <li><h:outputText value="#{msg.SELECTION_NOTICE_USER_PROFILE_MODE_INVISIBLE}" /></li>
-                                                       <li><h:outputText value="#{msg.SELECTION_NOTICE_USER_PROFILE_MODE_MEMBERS}" /></li>
-                                                       <li><h:outputText value="#{msg.SELECTION_NOTICE_USER_PROFILE_MODE_PUBLIC}" /></li>
+                                                       <li>#{msg.SELECTION_NOTICE_USER_PROFILE_MODE_INVISIBLE}</li>
+                                                       <li>#{msg.SELECTION_NOTICE_USER_PROFILE_MODE_MEMBERS}</li>
+                                                       <li>#{msg.SELECTION_NOTICE_USER_PROFILE_MODE_PUBLIC}</li>
                                                </ul>
                                        </div>
                                </div>
index 07c5b1e412f980807fd594b58382b46e143277a8..f513f187d327bacb44abf73dc47b3e7d0bdd8918 100644 (file)
@@ -8,7 +8,7 @@
 
        <div class="message_box">
                <div class="message_header">
-                       <h:outputText value="#{msg.MESSAGE_BOX_TITLE}" />
+                       #{msg.MESSAGE_BOX_TITLE}
                </div>
 
                <ui:fragment rendered="#{not empty message}">
@@ -25,9 +25,9 @@
                        </ui:fragment>
                </ui:fragment>
 
-               <ui:fragment rendered="#{empty message}">
+               <ui:fragment id="output_message" rendered="#{empty message}">
                        <div class="errors para">
-                               <h:outputText value="#{msg.MESSAGE_BOX_PARAMETER_MESSAGE_EMPTY}" />
+                               #{msg.MESSAGE_BOX_PARAMETER_MESSAGE_EMPTY}
                        </div>
                </ui:fragment>
        </div>
index 5fffa6f7bc22597a555a2461104b6a218db6b096..e06950f226bec7cd1f9b9e11d27a4114182adbe8 100644 (file)
@@ -34,7 +34,7 @@
                                </li>
                        </ui:fragment>
 
-                       <li class="footer_copyright">Copyright (c) 2016 by Roland Häder</li>
+                       <li class="footer_copyright">Copyright (c) 2016 Galdora e.K.</li>
                </ul>
        </div>
 
index 13cd78a31c27bb993b5a353f892ec711a8e15559..a2ab5b5953df4b8fa5d88dab4a3a57cdced1e2e7 100644 (file)
                                <li>
                                        <h:link title="#{msg.LINK_GUEST_HOME_TITLE}" outcome="index" value="#{msg.LINK_GUEST_HOME}" />
                                </li>
+                       </ul>
 
+                       <div class="menu_header">
+                               <h:outputText value="#{msg.MENU_RECRUIITER_TITLE}" />
+                       </div>
+
+                       <ul>
                                <li>
-                                       <h:link title="#{msg.LINK_CLOSE_SESSION_TITLE}" outcome="logout" value="#{msg.LINK_CLOSE_SESSION}" />
+                                       <h:link title="#{msg.LINK_RERUITER_LOGIN_TITLE}" outcome="recruiter_login" value="#{msg.LINK_RERUITER_LOGIN}" />
                                </li>
                        </ul>
 
index fe6563235856281a4dd157715bbc2831ffd18b08..a38077708b25d2ff347b3102d3567ee211ab4afc 100644 (file)
@@ -23,8 +23,7 @@
                                        <h:outputText value="#{msg.GUEST_AGREE_READ_PRIVACY_STATEMENT_1}" />
                                        <h:outputText value="&#160;" />
                                        <h:link outcome="privacy" target="_blank" value="#{msg.LINK_GUEST_PRIVACY_STATEMENTS}" />
-                                       <h:outputText value="&#160;" />
-                                       <h:outputText value="#{msg.GUEST_AGREE_READ_PRIVACY_STATEMENT_2}" />
+                                       #{msg.GUEST_AGREE_READ_PRIVACY_STATEMENT_2}
                                </div>
 
                                <div class="clear"></div>
@@ -46,8 +45,7 @@
                                        <h:outputText value="#{msg.GUEST_AGREE_READ_TERMS_CONDITIONS_1}" />
                                        <h:outputText value="&#160;" />
                                        <h:link outcome="terms" target="_blank" value="#{msg.LINK_GUEST_TERMS_CONDITIONS}" />
-                                       <h:outputText value="&#160;" />
-                                       <h:outputText value="#{msg.GUEST_AGREE_READ_TERMS_CONDITIONS_2}" />
+                                       #{msg.GUEST_AGREE_READ_TERMS_CONDITIONS_2}
                                </div>
 
                                <div class="clear"></div>
diff --git a/web/WEB-INF/templates/input_fields/fax_input_fields.tpl b/web/WEB-INF/templates/input_fields/fax_input_fields.tpl
new file mode 100644 (file)
index 0000000..12552ce
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty targetController}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_PARAMETER_TARGET_CONTROLLER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <ui:fragment rendered="#{not empty targetController}">
+               <h:selectOneMenu styleClass="select right_space" id="phoneCountry" value="#{targetController.phoneCountry}">
+                       <f:converter converterId="CountryConverter" />
+                       <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
+                       <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
+               </h:selectOneMenu>
+
+               <h:inputText styleClass="input right_space" id="faxAreaCode" size="5" maxlength="10" value="#{targetController.phoneAreaCode}">
+                       <f:validator validatorId="PhoneNumberValidator" />
+               </h:inputText>
+
+               <h:inputText styleClass="input" id="faxNumber" size="10" maxlength="20" value="#{targetController.phoneNumber}">
+                       <f:validator validatorId="PhoneNumberValidator" />
+               </h:inputText>
+       </ui:fragment>
+</ui:composition>
diff --git a/web/WEB-INF/templates/input_fields/landline_input_fields.tpl b/web/WEB-INF/templates/input_fields/landline_input_fields.tpl
new file mode 100644 (file)
index 0000000..536bfec
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty targetController}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_PARAMETER_TARGET_CONTROLLER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <ui:fragment rendered="#{not empty targetController}">
+               <h:selectOneMenu styleClass="select right_space" id="countryPhoneCode" value="#{targetController.phoneCountry}">
+                       <f:converter converterId="CountryConverter" />
+                       <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
+                       <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
+               </h:selectOneMenu>
+
+               <h:inputText styleClass="input right_space" id="landLineAreaCode" size="5" maxlength="10" value="#{targetController.phoneAreaCode}">
+                       <f:validator validatorId="PhoneNumberValidator" />
+               </h:inputText>
+
+               <h:inputText styleClass="input" id="landLineNumber" size="10" maxlength="20" value="#{targetController.phoneNumber}">
+                       <f:validator validatorId="PhoneNumberValidator" />
+               </h:inputText>
+       </ui:fragment>
+</ui:composition>
diff --git a/web/WEB-INF/templates/input_fields/mobile_input_fields.tpl b/web/WEB-INF/templates/input_fields/mobile_input_fields.tpl
new file mode 100644 (file)
index 0000000..4ed6635
--- /dev/null
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<ui:composition
+       xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:f="http://java.sun.com/jsf/core"
+       xmlns:h="http://java.sun.com/jsf/html"
+       xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
+       <ui:fragment rendered="#{empty targetController}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_PARAMETER_TARGET_CONTROLLER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
+
+       <ui:fragment rendered="#{not empty targetController}">
+               <h:selectOneMenu styleClass="select right_space" id="mobileProvider" value="#{targetController.mobileProvider}">
+                       <f:converter converterId="MobileProviderConverter" />
+                       <f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
+                       <f:selectItems value="#{mobileProviderController.allMobileProviders()}" var="mobileProvider" itemValue="#{mobileProvider}" itemLabel="#{mobileProvider.providerCountry.countryExternalDialPrefix}#{mobileProvider.providerDialPrefix} (#{mobileProvider.providerName})" />
+               </h:selectOneMenu>
+
+               <h:inputText styleClass="input" id="mobileNumber" size="10" maxlength="20" value="#{targetController.phoneNumber}">
+                       <f:validator for="mobileNumber" validatorId="PhoneNumberValidator" />
+               </h:inputText>
+       </ui:fragment>
+</ui:composition>
index 12ea9db41cedcdcf951cf97f8fb8ea10409eacfe..f31190a007257d99b04920c5d068d265f1ef0c1b 100644 (file)
@@ -13,7 +13,6 @@
                <ui:fragment rendered="#{userLoginController.isUserLoggedIn()}">
                        <ui:include id="menu" src="/WEB-INF/templates/login/user/user_menu.tpl" />
                </ui:fragment>
-
                <ui:fragment rendered="#{not userLoginController.isUserLoggedIn()}">
                        <ui:include src="/WEB-INF/templates/generic/message_box_mini.tpl">
                                <ui:param name="message" value="#{msg.USER_NOT_LOGGED_IN}" />
index 72a423dac72726e0a1afdeadc52de52e2120798d..f138ece7ef0873f32b1439385d714b7607ea695d 100644 (file)
                </div>
 
                <div class="clear"></div>
+
+               <h:panelGroup styleClass="error_container" layout="block">
+                       <h:message for="emailAddress" errorClass="errors" warnClass="warnings" fatalClass="errors" />
+               </h:panelGroup>
        </div>
 
        <div class="table_row">
                </div>
 
                <div class="clear"></div>
-       </div>
-
-       <div class="error_container">
-               <h:message for="emailAddress" errorClass="errors" warnClass="warnings" fatalClass="errors" />
-       </div>
 
-       <div class="error_container">
-               <h:message for="emailAddressRepeat" errorClass="errors" warnClass="warnings" fatalClass="errors" />
+               <h:panelGroup styleClass="error_container" layout="block">
+                       <h:message for="emailAddressRepeat" errorClass="errors" warnClass="warnings" fatalClass="errors" />
+               </h:panelGroup>
        </div>
 </ui:composition>
index 06ce59b3cafa990b6ca8cf25edf6106e82b96d99..15dda796cb3f4fd95012e682b967843d314fba1a 100644 (file)
@@ -5,29 +5,29 @@
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <div class="para">
-               <fieldset id="current_password">
-                       <legend title="#{msg.LOGIN_ENTER_CURRENT_PASSWORD_CONFIRMATION_LEGEND_TITLE}">
-                               <h:outputText value="#{msg.LOGIN_ENTER_CURRENT_PASSWORD_CONFIRMATION_LEGEND}" />
-                       </legend>
+               <div class="para">
+                       <fieldset class="fieldset" id="current_password">
+                               <legend title="#{msg.LOGIN_ENTER_CURRENT_PASSWORD_CONFIRMATION_LEGEND_TITLE}">
+                                       <h:outputText value="#{msg.LOGIN_ENTER_CURRENT_PASSWORD_CONFIRMATION_LEGEND}" />
+                               </legend>
 
-                       <div class="table_row">
-                               <div class="table_left">
-                                       <h:outputLabel for="currentPassword" value="#{msg.LOGIN_ENTER_CURRENT_PASSWORD_CONFIRM}" />
-                               </div>
+                               <div class="table_row">
+                                       <div class="table_left">
+                                               <h:outputLabel for="currentPassword" value="#{msg.LOGIN_ENTER_CURRENT_PASSWORD_CONFIRM}" />
+                                       </div>
 
-                               <div class="table_right">
-                                       <h:inputSecret styleClass="input" id="currentPassword" size="10" maxlength="255" value="#{userLoginController.currentPassword}" required="true" validatorMessage="#{msg.ERROR_CURRENT_PASSWORD_MISMATCHING}">
-                                               <!-- <f:validator for="currentPassword" validatorId="RecruiterUserPasswordValidator" /> //-->
-                                       </h:inputSecret>
-                               </div>
+                                       <div class="table_right">
+                                               <h:inputSecret styleClass="input" id="currentPassword" size="10" maxlength="255" value="#{userLoginController.userCurrentPassword}" required="true" validatorMessage="#{msg.ERROR_USER_CURRENT_PASSWORD_MISMATCHING}">
+                                                       <!-- <f:validator for="currentPassword" validatorId="RecruiterUserPasswordValidator" /> //-->
+                                               </h:inputSecret>
+                                       </div>
 
-                               <div class="clear"></div>
+                                       <div class="clear"></div>
 
-                               <div class="error_container">
-                                       <h:message for="currentPassword" styleClass="errors" />
+                                       <h:panelGroup styleClass="error_container" layout="block">
+                                               <h:message for="currentPassword" errorClass="errors" fatalClass="errors" warnClass="errors" />
+                                       </h:panelGroup>
                                </div>
-                       </div>
-               </fieldset>
-       </div>
+                       </fieldset>
+               </div>
 </ui:composition>
index 73d6d5e72cecdec96ba2a420f18a05b69068316b..f5299b623000614f655fbfe005552cd72942b74b 100644 (file)
@@ -4,6 +4,7 @@
        xmlns:f="http://java.sun.com/jsf/core"
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
+
        <div class="footer">
                <ul class="footer_nav">
                        <li class="footer_link">
@@ -28,7 +29,7 @@
                                </li>
                        </ui:fragment>
 
-                       <li class="footer_copyright">Copyright (c) 2016 by Roland Häder</li>
+                       <li class="footer_copyright">Copyright (c) 2016 Galdora e.K.</li>
                </ul>
        </div>
 
index c07943f6a21daad96f7579f48990fd0d92d0e2f0..e37eafa7e9c51c314509b812cfd3cd40a30fa2aa 100644 (file)
@@ -8,7 +8,7 @@
        <div class="menu_outer">
                <div class="menu">
                        <div class="menu_header">
-                               <h:outputText value="#{msg.MENU_HOME_TITLE}" />
+                               #{msg.MENU_HOME_TITLE}
                        </div>
 
                        <ul>
                                </ui:fragment>
                        </ul>
 
-                       <ui:fragment rendered="#{featureController.isFeatureEnabled('edit_user_data')}">
+                       <ui:fragment rendered="#{featureController.isFeatureEnabled('change_user_personal_data') or featureController.isFeatureEnabled('change_user_password') or featureController.isFeatureEnabled('user_change_email_address')}">
                                <div class="menu_header">
-                                       <h:outputText value="#{msg.MENU_EDIT_PROFILE_TITLE}" />
+                                       <h:outputText value="#{msg.MENU_USER_EDIT_PROFILE_TITLE}" />
                                </div>
 
                                <ul>
-                                       <li>
-                                               <h:link title="#{msg.LINK_LOGIN_EDIT_USER_DATA_TITLE}" outcome="user_edit_user_data" value="#{msg.LINK_LOGIN_EDIT_USER_DATA}" />
-                                       </li>
+                                       <ui:fragment rendered="#{featureController.isFeatureEnabled('change_user_personal_data')}">
+                                               <li>
+                                                       <h:link title="#{msg.LINK_LOGIN_CHANGE_PERSONAL_DATA_TITLE}" outcome="login_change_personal_data" value="#{msg.LINK_LOGIN_CHANGE_PERSONAL_DATA}" />
+                                               </li>
+                                       </ui:fragment>
+
+                                       <ui:fragment rendered="#{featureController.isFeatureEnabled('user_change_email_address')}">
+                                               <li>
+                                                       <h:link title="#{msg.LINK_LOGIN_USER_CHANGE_EMAIL_ADDRESS_TITLE}" outcome="login_change_email_address" value="#{msg.LINK_LOGIN_USER_CHANGE_EMAIL_ADDRESS}" />
+                                               </li>
+                                       </ui:fragment>
+
+                                       <ui:fragment rendered="#{userLoginController.ifUserMustChangePassword() or featureController.isFeatureEnabled('change_user_password')}">
+                                               <li>
+                                                       <h:link title="#{msg.LINK_LOGIN_CHANGE_PASSWORD_TITLE}" outcome="user_change_password" value="#{msg.LINK_LOGIN_CHANGE_PASSWORD}" />
+                                               </li>
+                                       </ui:fragment>
                                </ul>
                        </ui:fragment>
 
                        <div class="menu_header">
-                               <h:outputText value="#{msg.MENU_ADDRESSBOOKS_TITLE}" />
+                               <h:outputText value="#{msg.MENU_APPLICATIONS_TITLE}" />
                        </div>
 
                        <ul>
                                <li>
-                                       <h:link title="#{msg.LINK_LOGIN_OWN_ADDRESSBOOKS_TITLE}" outcome="login_own_addressbooks" value="#{msg.LINK_LOGIN_OWN_ADDRESSBOOKS}" />
-                               </li>
-
-                               <li>
-                                       <h:link title="#{msg.LINK_LOGIN_OTHER_ADDRESSBOOKS_TITLE}" outcome="login_other_addressbooks" value="#{msg.LINK_LOGIN_OTHER_ADDRESSBOOKS}" />
-                               </li>
-
-                               <li>
-                                       <h:link title="#{msg.LINK_LOGIN_SHARED_ADDRESS_BOOKS_TITLE}" outcome="login_shared_addressbooks" value="#{msg.LINK_LOGIN_SHARED_ADDRESS_BOOKS}" />
+                                       <h:link title="#{msg.LINK_LOGIN_ALL_APPLICATIONS_TITLE}" outcome="user_all_applications" value="#{msg.LINK_LOGIN_ALL_APPLICATIONS}" />
                                </li>
                        </ul>
 
index 2bce29de87fc4362cf1463735e51f8e07d3c9d1c..b8a98d6b9f8567d8b7e5054d7e297d0e6509d6c6 100644 (file)
@@ -5,13 +5,13 @@
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <div class="table">
-               <div class="table_header">
+       <h:panelGroup styleClass="message_box" layout="block">
+               <div class="message_header">
                        <h:outputText value="#{msg.TABLE_HEADER_ERROR_USER_NOT_LOGGED_IN}" />
                </div>
 
                <div class="para errors">
                        <h:outputText value="#{msg.USER_IS_NOT_LOGGED_IN_FULL}" />
                </div>
-       </div>
+       </h:panelGroup>
 </ui:composition>
index 6188f9c13999b6f7babb488bba3436e07f9fa037..e85accf1ecdaf6ac77163db9da8ee70f7a3a26c9 100644 (file)
@@ -5,7 +5,12 @@
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <h:outputText styleClass="notice" value="#{msg.ERROR_PARAMETER_USER_NOT_SET}" rendered="#{empty user}" />
+       <ui:fragment rendered="#{empty user}">
+               <ui:include src="/WEB-INF/templates/generic/message_box.tpl">
+                       <ui:param name="message" value="#{msg.ERROR_PARAMETER_USER_NOT_SET}" />
+                       <ui:param name="styleClass" value="errors" />
+               </ui:include>
+       </ui:fragment>
 
        <h:outputText styleClass="notice" value="#{msg.USER_PROFILE_NOT_PUBLICLY_VISIBLE}" rendered="#{not empty user and not profileController.isProfileLinkVisibleByUser(user)}" />
 
index 4b3fec3c569d4e4adfe6ba841aa9675b54c93f7b..f54316367bb8b634fab7d8e026b2a59a3befea2b 100644 (file)
@@ -5,13 +5,13 @@
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
 
-       <div class="table">
+       <h:panelGroup styleClass="table" layout="block">
                <div class="table_header">
-                       <h:outputText value="#{msg.TABLE_HEADER_ERROR_HANDLING_USER_ID}" />
+                       #{msg.TABLE_HEADER_ERROR_HANDLING_USER_ID}
                </div>
 
                <div class="para">
                        <h:messages errorClass="errors" fatalClass="fatals" infoClass="infos" warnClass="warnings" showDetail="true" />
                </div>
-       </div>
+       </h:panelGroup>
 </ui:composition>
index 3c4bb59d0ab5d6c0698226d9ea355a68506cb00c..a1a364b16b450234c70bdb1597e236f31443fda1 100644 (file)
@@ -8,7 +8,7 @@
        >
 
        <f:metadata>
-               <f:viewParam name="phoneId" value="#{adminPhoneController.cellPhone}" converter="CellphoneConverter" required="true" requiredMessage="#{msg.ERROR_PARAMETER_PHONE_ID_NOT_SET}" />
+               <f:viewParam name="phoneId" value="#{adminPhoneController.MobileNumber}" converter="MobileNumberConverter" required="true" requiredMessage="#{msg.ERROR_PARAMETER_PHONE_ID_NOT_SET}" />
                <f:viewParam name="contactId" value="#{beanHelper.contact}" converter="ContactConverter" required="true" requiredMessage="#{msg.ERROR_PARAMETER_CONTACT_ID_NOT_SET}" />
        </f:metadata>