- added missing backing bean properties for fax/land-line edit templates (both share the same properties as they are same data but for different purposes)
- fixed copy-paste mobile -> fax/land-line stuff I forgot
- admin_form_(fax|landline)_data.tpl should be more complete now
Signed-off-by: Roland Häder <roland@mxchange.org>
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
+import org.mxchange.jcountry.data.Country;
import org.mxchange.jjobs.beans.BaseJobsController;
import org.mxchange.jjobs.beans.helper.JobsWebRequestController;
import org.mxchange.jphone.events.fax.removed.AdminFaxNumberRemovedFromListEvent;
*/
private MobileProvider mobileProvider;
+ /**
+ * Area code (city dial prefix)
+ */
+ private Long phoneAreaCode;
+
/**
* Generic hone controller
*/
@Inject
private JobsPhoneWebApplicationController phoneController;
+ /**
+ * Country (for dial prefix)
+ */
+ private Country phoneCountry;
+
/**
* Phone number
*/
this.mobileProvider = mobileProvider;
}
+ @Override
+ public Long getPhoneAreaCode () {
+ return this.phoneAreaCode;
+ }
+
+ @Override
+ public void setPhoneAreaCode (final Long phoneAreaCode) {
+ this.phoneAreaCode = phoneAreaCode;
+ }
+
+ @Override
+ public Country getPhoneCountry () {
+ return this.phoneCountry;
+ }
+
+ @Override
+ public void setPhoneCountry (final Country phoneCountry) {
+ this.phoneCountry = phoneCountry;
+ }
+
@Override
public Long getPhoneNumber () {
return this.phoneNumber;
import java.io.Serializable;
import java.util.List;
import javax.ejb.Local;
+import org.mxchange.jcountry.data.Country;
import org.mxchange.jphone.phonenumbers.fax.DialableFaxNumber;
import org.mxchange.jphone.phonenumbers.landline.DialableLandLineNumber;
import org.mxchange.jphone.phonenumbers.mobile.DialableMobileNumber;
*/
void setMobileNumber (final Long mobileNumber);
+ /**
+ * Getter for phone area code
+ * <p>
+ * @return Phone area code
+ */
+ Long getPhoneAreaCode ();
+
+ /**
+ * Setter for phone area code
+ * <p>
+ * @param phoneAreaCode Phone area code
+ */
+ void setPhoneAreaCode (final Long phoneAreaCode);
+
+ /**
+ * Getter for phone country (for dial prefix)
+ * <p>
+ * @return Phone country
+ */
+ Country getPhoneCountry ();
+
+ /**
+ * Setter for phone country (for dial prefix)
+ * <p>
+ * @param phoneCountry Phone country
+ */
+ void setPhoneCountry (final Country phoneCountry);
+
/**
* Getter for dial number without prefix
* <p>
<h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_CONTACT_NOT_SET}" rendered="#{empty beanHelper.contact}" />
- <ui:fragment rendered="#{empty beanHelper.contact.contactLandLineNumber and not empty beanHelper.contact}">
- <ui:include src="/WEB-INF/templates/admin/mobile/admin_form_add_contact_mobile.tpl" />
+ <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.contactLandLineNumber and not empty beanHelper.contact}">
- <ui:include src="/WEB-INF/templates/admin/mobile/admin_mobile_data.tpl" />
+ <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>
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_LAND_LINE_NUMBER_NOT_SET}" rendered="#{empty beanHelper.landLineNumber}" />
+ <h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_FAX_NUMBER_NOT_SET}" rendered="#{empty beanHelper.faxNumber}" />
- <h:panelGrid id="mobile_data" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_MOBILE_DATA}" headerClass="table_header_column" styleClass="table_big" columns="2" rendered="#{not empty beanHelper.landLineNumber}">
+ <h:panelGrid id="fax_data" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_FAX_DATA}" headerClass="table_header_column" styleClass="table_big" columns="2" rendered="#{not empty beanHelper.faxNumber}">
<f:facet name="header">
- <h:outputText value="#{msg.ADMIN_HEADER_SHOW_MOBILE_DATA}" />
+ <h:outputText value="#{msg.ADMIN_HEADER_SHOW_FAX_DATA}" />
</f:facet>
<h:column>
<h:panelGroup>
- <h:outputLabel for="landLineNumberId" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_ID}" />
+ <h:outputLabel for="faxNumberId" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_PHONE_ID}" />
- <h:outputText id="landLineNumberId" styleClass="table_data_field" value="#{beanHelper.landLineNumber.phoneId}" />
+ <h:outputText id="faxNumberId" styleClass="table_data_field" value="#{beanHelper.faxNumber.phoneId}" />
- <h:message for="landLineNumberId" errorClass="errors" fatalClass="errors" warnClass="errors" />
+ <h:message for="faxNumberId" 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:outputLabel for="faxNumber" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_FAX_NUMBER_COMPLETE}" />
- <h:link outcome="admin_show_mobile_provider">
- <f:param name="providerId" value="#{beanHelper.landLineNumber.mobileProvider.providerId}" />
- <h:outputText id="mobileProvider" styleClass="table_data_field" value="#{beanHelper.landLineNumber.mobileProvider.providerName}" />
- </h:link>
- </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.mobileProvider.providerCountry.countryExternalDialPrefix}#{beanHelper.landLineNumber.mobileProvider.providerDialPrefix}-#{beanHelper.landLineNumber.phoneNumber}" />
+ <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 rendered="#{empty showAdminLinks or showAdminLinks}">
- <h:outputLabel styleClass="table_data_label" value="#{msg.ADMIN_SHOW_MOBILE_LINKS}" />
+ <h:outputLabel styleClass="table_data_label" value="#{msg.ADMIN_SHOW_FAX_LINKS}" />
<div class="table_data_field">
- <ui:include src="/WEB-INF/templates/admin/mobile/admin_mobile_links.tpl">
+ <ui:include src="/WEB-INF/templates/admin/fax/admin_fax_links.tpl">
<ui:param name="isShowPage" value="#{isShowPage}" />
</ui:include>
</div>
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_LAND_LINE_NUMBER_NOT_SET}" rendered="#{empty beanHelper.landLineNumber}" />
+ <h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_FAX_NUMBER_NOT_SET}" rendered="#{empty beanHelper.faxNumber}" />
- <ui:fragment rendered="#{not empty beanHelper.landLineNumber}">
+ <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_mobile">
<h:outputText value="#{msg.ADMIN_LINK_SHOW_SHORT}" title="#{msg.ADMIN_LINK_SHOW_SHORT_TITLE}" />
- <f:param name="phoneId" value="#{beanHelper.landLineNumber.phoneId}" />
+ <f:param name="phoneId" value="#{beanHelper.faxNumber.phoneId}" />
</h:link>
</li>
</ui:fragment>
<li class="mini_link">
<h:link outcome="admin_edit_mobile">
<h:outputText value="#{msg.ADMIN_LINK_EDIT_SHORT}" title="#{msg.ADMIN_LINK_EDIT_SHORT_TITLE}" />
- <f:param name="phoneId" value="#{beanHelper.landLineNumber.phoneId}" />
+ <f:param name="phoneId" value="#{beanHelper.faxNumber.phoneId}" />
</h:link>
</li>
<li class="mini_link">
<h:link outcome="admin_unlink_contact_mobile">
<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="phoneId" value="#{beanHelper.faxNumber.phoneId}" />
<f:param name="contactId" value="#{beanHelper.contact.contactId}" />
</h:link>
</li>
<li class="mini_link">
<h:link outcome="admin_delete_mobile">
<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}" />
+ <f:param name="phoneId" value="#{beanHelper.faxNumber.phoneId}" />
</h:link>
</li>
</ul>
<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_LAND_LINE_FORM_TITLE}" />
+ <h:outputText value="#{msg.ADMIN_ADD_CONTACT_FAX_FORM_TITLE}" />
</div>
<div class="para">
<div class="table_row">
<div class="table_left_medium">
- <h:outputLabel for="choosenLandLineNumber" value="#{msg.ADMIN_SELECT_LAND_LINE}" />
+ <h:outputLabel for="choosenFaxNumber" value="#{msg.ADMIN_SELECT_FAX}" />
</div>
<div class="table_right_medium">
- <h:selectOneMenu styleClass="select right_space" id="choosenLandLineNumber" value="#{adminPhoneController.choosenLandLineNumber}">
- <f:converter converterId="LandLineConverter" />
+ <h:selectOneMenu styleClass="select right_space" id="choosenFaxNumber" value="#{adminPhoneController.choosenFaxNumber}">
+ <f:converter converterId="FaxConverter" />
<f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
- <f:selectItems value="#{adminPhoneController.allNonLinkedLandLineNumbers()}" var="faxNumber" itemValue="#{faxNumber}" itemLabel="#{faxNumber.faxProvider.providerCountry.countryExternalDialPrefix} (#{faxNumber.faxProvider.providerDialPrefix}) #{faxNumber.phoneNumber}" />
+ <f:selectItems value="#{adminPhoneController.allNonLinkedFaxNumbers()}" var="faxNumber" itemValue="#{faxNumber}" itemLabel="#{faxNumber.faxProvider.providerCountry.countryExternalDialPrefix} (#{faxNumber.faxProvider.providerDialPrefix}) #{faxNumber.phoneNumber}" />
</h:selectOneMenu>
</div>
</div>
<div class="para">
- <h:outputText value="#{msg.ADMIN_OR_ENTER_CONTACT_NEW_LAND_LINE_DATA}" />
+ <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_LAND_LINE_NUMBER}" />
+ <h:outputLabel for="faxNumber" value="#{msg.ADMIN_PERSONAL_DATA_FAX_NUMBER}" />
</div>
<div class="table_right_medium">
- <ui:include src="/WEB-INF/templates/generic/landline_selection_box.tpl">
+ <ui:include src="/WEB-INF/templates/generic/fax_selection_box.tpl">
<ui:param name="targetController" value="#{adminPhoneController}" />
</ui:include>
</div>
<div class="table_footer">
<h:commandButton styleClass="reset right_space" type="reset" value="#{msg.BUTTON_RESET_FORM}" />
- <h:commandButton styleClass="submit" type="submit" action="#{adminContactPhoneController.doLinkAddLandLine(beanHelper.contact)}" value="#{msg.BUTTON_ADMIN_LINK_ADD_CONTACT_LAND_LINE}" />
+ <h:commandButton styleClass="submit" type="submit" action="#{adminContactPhoneController.doLinkAddFax(beanHelper.contact)}" value="#{msg.BUTTON_ADMIN_LINK_ADD_CONTACT_FAX}" />
</div>
</h:panelGroup>
</h:form>
<h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_FAX_NUMBER_NOT_SET}" rendered="#{empty beanHelper.faxNumber}" />
<div class="para">
- <fieldset class="fieldset" id="phone_data">
+ <fieldset class="fieldset" id="fax_data">
<legend title="#{msg.ADMIN_FAX_DATA_LEGEND_TITLE}">
<h:outputText value="#{msg.ADMIN_FAX_DATA_LEGEND}" />
</legend>
</div>
<div class="table_right_medium">
- <h:inputText styleClass="input" id="faxNumber" size="10" maxlength="20" value="#{adminPhoneController.phoneNumber}" required="true" requiredMessage="#{msg.ADMIN_FAX_NUMBER_REQUIRED}">
- <f:validator for="faxNumber" validatorId="PhoneNumberValidator" />
+ <h:selectOneMenu styleClass="select right_space" id="countryPhoneCode" value="#{adminPhoneController.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="#{adminPhoneController.phoneAreaCode}">
+ <f:validator validatorId="PhoneNumberValidator" />
+ </h:inputText>
+
+ <h:inputText styleClass="input" id="faxNumber" size="10" maxlength="20" value="#{adminPhoneController.phoneNumber}">
+ <f:validator validatorId="PhoneNumberValidator" />
</h:inputText>
</div>
<h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_LAND_LINE_NUMBER_NOT_SET}" rendered="#{empty beanHelper.landLineNumber}" />
<div class="para">
- <fieldset class="fieldset" id="phone_data">
+ <fieldset class="fieldset" id="landline_data">
<legend title="#{msg.ADMIN_LAND_LINE_DATA_LEGEND_TITLE}">
<h:outputText value="#{msg.ADMIN_LAND_LINE_DATA_LEGEND}" />
</legend>
</div>
<div class="table_right_medium">
- <h:inputText styleClass="input" id="landLineNumber" size="10" maxlength="20" value="#{adminPhoneController.phoneNumber}" required="true" requiredMessage="#{msg.ADMIN_LAND_LINE_NUMBER_REQUIRED}">
- <f:validator for="landLineNumber" validatorId="PhoneNumberValidator" />
+ <h:selectOneMenu styleClass="select right_space" id="countryPhoneCode" value="#{adminPhoneController.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="#{adminPhoneController.phoneAreaCode}">
+ <f:validator validatorId="PhoneNumberValidator" />
+ </h:inputText>
+
+ <h:inputText styleClass="input" id="landLineNumber" size="10" maxlength="20" value="#{adminPhoneController.phoneNumber}">
+ <f:validator validatorId="PhoneNumberValidator" />
</h:inputText>
</div>
<h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_LAND_LINE_NUMBER_NOT_SET}" rendered="#{empty beanHelper.landLineNumber}" />
- <h:panelGrid id="landline_data" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_MOBILE_DATA}" headerClass="table_header_column" styleClass="table_big" columns="2" rendered="#{not empty beanHelper.landLineNumber}">
+ <h:panelGrid id="landline_data" summary="#{msg.ADMIN_TABLE_SUMMARY_SHOW_LAND_LINE_DATA}" headerClass="table_header_column" styleClass="table_big" columns="2" rendered="#{not empty beanHelper.landLineNumber}">
<f:facet name="header">
- <h:outputText value="#{msg.ADMIN_HEADER_SHOW_MOBILE_DATA}" />
+ <h:outputText value="#{msg.ADMIN_HEADER_SHOW_LAND_LINE_DATA}" />
</f:facet>
<h:column>
</h:panelGroup>
</h:column>
- <h:column>
- <h:outputLabel for="landlineProvider" styleClass="table_data_label" value="#{msg.ADMIN_SHOW_MOBILE_PROVIDER_NAME}" />
-
- <h:link outcome="admin_show_landline_provider">
- <f:param name="providerId" value="#{beanHelper.landLineNumber.landlineProvider.providerId}" />
- <h:outputText id="landlineProvider" styleClass="table_data_field" value="#{beanHelper.landLineNumber.landlineProvider.providerName}" />
- </h:link>
- </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.landlineProvider.providerCountry.countryExternalDialPrefix}#{beanHelper.landLineNumber.landlineProvider.providerDialPrefix}-#{beanHelper.landLineNumber.phoneNumber}" />
+ <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 rendered="#{empty showAdminLinks or showAdminLinks}">
- <h:outputLabel styleClass="table_data_label" value="#{msg.ADMIN_SHOW_MOBILE_LINKS}" />
+ <h:outputLabel styleClass="table_data_label" value="#{msg.ADMIN_SHOW_LAND_LINE_LINKS}" />
<div class="table_data_field">
<ui:include src="/WEB-INF/templates/admin/landline/admin_landline_links.tpl">
<h:outputText styleClass="errors" value="#{msg.ERROR_BEAN_HELPER_MOBILE_NUMBER_NOT_SET}" rendered="#{empty beanHelper.mobileNumber}" />
<div class="para">
- <fieldset class="fieldset" id="phone_data">
+ <fieldset class="fieldset" id="mobile_data">
<legend title="#{msg.ADMIN_MOBILE_DATA_LEGEND_TITLE}">
<h:outputText value="#{msg.ADMIN_MOBILE_DATA_LEGEND}" />
</legend>