]> git.mxchange.org Git - addressbook-war.git/commitdiff
Please cherry-pick:
authorRoland Häder <roland@mxchange.org>
Sat, 16 Sep 2017 23:17:32 +0000 (01:17 +0200)
committerRoland Häder <roland@mxchange.org>
Thu, 6 Feb 2020 21:00:09 +0000 (22:00 +0100)
- introduced custom JSF tag widgets:outputCountrySelector which renders a nice
  country-selection box for forms
- removed id from fieldset, no need to "over-id" things
- rewrote administrative mobilde provider list to more PrimeFaces, like
  filterable and dragable columns, responsiveness
- added more i18n strings for above new stuff
- added new property "filteredMobileProviders" for filtering mobile providers

Signed-off-by: Roland Häder <roland@mxchange.org>
34 files changed:
src/java/org/mxchange/addressbook/beans/mobileprovider/AddressbookMobileProviderWebRequestBean.java
src/java/org/mxchange/addressbook/beans/profilemode/AddressbookProfileModeWebApplicationBean.java
src/java/org/mxchange/addressbook/beans/profilemode/AddressbookProfileModeWebApplicationController.java
src/java/org/mxchange/localization/bundle_de_DE.properties
src/java/org/mxchange/localization/bundle_en_US.properties
web/WEB-INF/links.jsf.taglib.xml
web/WEB-INF/resources/tags/admin/form_data/contact/admin_form_contact_data.tpl
web/WEB-INF/resources/tags/admin/form_data/fax/admin_form_fax_data.tpl
web/WEB-INF/resources/tags/admin/form_data/landline/admin_form_landline_data.tpl
web/WEB-INF/resources/tags/admin/form_data/mobile/admin_form_mobile_data.tpl
web/WEB-INF/resources/tags/admin/form_data/user/admin_form_user_data.tpl
web/WEB-INF/resources/tags/country/form_data/form_country_selector.tpl [new file with mode: 0644]
web/WEB-INF/resources/tags/table_rows/fax_input_table_row.tpl
web/WEB-INF/resources/tags/table_rows/landline_input_table_row.tpl
web/WEB-INF/resources/tags/table_rows/user_profile_mode_table_row.tpl
web/WEB-INF/templates/admin/basic_company_data/admin_form_basic_company_data.tpl
web/WEB-INF/templates/admin/branch_offices/admin_form_branch_offices_data.tpl
web/WEB-INF/templates/admin/country/admin_form_country_data.tpl
web/WEB-INF/templates/admin/mobile_provider/admin_form_mobile_provider.tpl
web/WEB-INF/templates/contact/form_contact_data.tpl
web/WEB-INF/templates/guest/guest_privacy_terms.tpl
web/WEB-INF/templates/guest/user/guest_login_form.tpl
web/WEB-INF/templates/guest/user/register/guest_form_register_page1.tpl
web/WEB-INF/templates/guest/user/register/guest_form_register_single.tpl
web/WEB-INF/templates/login/user/user_enter_current_password.tpl
web/WEB-INF/widgets.jsf.taglib.xml
web/admin/mobile/admin_mobile_list.xhtml
web/admin/mobile_provider/admin_mobile_provider_list.xhtml
web/admin/user/admin_user_list.xhtml
web/guest/user/user_lost_password.xhtml
web/guest/user/user_resend_link.xhtml
web/resources/css/layout.css
web/user/login_user_change_email_address.xhtml
web/user/login_user_change_password.xhtml

index 326df5872247e112938dd288ef23c5e8d712c222..4621b47181d4a50d0ff2e86a3172ebe2fba2a7a4 100644 (file)
@@ -53,6 +53,11 @@ public class AddressbookMobileProviderWebRequestBean extends BaseAddressbookCont
         */
        private final List<MobileProvider> allMobileProviders;
 
+       /**
+        * A list of filtered mobile providers
+        */
+       private List<MobileProvider> filteredMobileProviders;
+
        /**
         * Remote EJB for mobile providers (regular)
         */
@@ -111,11 +116,31 @@ public class AddressbookMobileProviderWebRequestBean extends BaseAddressbookCont
                return this.allMobileProviders;
        }
 
+       /**
+        * Getter for filtered mobile provider list
+        * <p>
+        * @return Filtered mobile providers
+        */
+       @SuppressWarnings ("ReturnOfCollectionOrArrayField")
+       public List<MobileProvider> getFilteredMobileProviders () {
+               return this.filteredMobileProviders;
+       }
+
+       /**
+        * Getter for filtered mobile provider list
+        * <p>
+        * @param filteredMobileProviders Filtered mobile providers
+        */
+       @SuppressWarnings ("AssignmentToCollectionOrArrayFieldFromParameter")
+       public void setFilteredMobileProviders (final List<MobileProvider> filteredMobileProviders) {
+               this.filteredMobileProviders = filteredMobileProviders;
+       }
+
        /**
         * Post-construction method
         */
        @PostConstruct
-       public void init () {
+       public void initCache () {
                // Is cache there?
                if (!this.mobileProviderCache.iterator().hasNext()) {
                        // Get whole list
index 60f09f5f26e595fe23c8ff735d480f54ad471718..aceaa27e2cfd87b2780f4fee617113f3f235f36b 100644 (file)
@@ -16,6 +16,9 @@
  */
 package org.mxchange.addressbook.beans.profilemode;
 
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
 import javax.enterprise.context.ApplicationScoped;
 import javax.inject.Named;
 import org.mxchange.addressbook.beans.BaseAddressbookController;
@@ -35,18 +38,29 @@ public class AddressbookProfileModeWebApplicationBean extends BaseAddressbookCon
         */
        private static final long serialVersionUID = 835_482_364_189L;
 
+       /**
+        * A list of all profile modes
+        */
+       private final List<ProfileMode> allProfileModes;
+
        /**
         * Default constructor
         */
        public AddressbookProfileModeWebApplicationBean () {
                // Call super constructor
                super();
+
+               // Init list
+               this.allProfileModes = Arrays.asList(ProfileMode.values());
        }
 
-       @Override
-       public ProfileMode[] getAllProfileModes () {
+       /**
+        * Getter for all profile modes as array
+        * <p>
+        * @return All profile modes as list
+        */
+       public List<ProfileMode> allProfileModes () {
                // Return it
-               return ProfileMode.values();
+               return Collections.unmodifiableList(this.allProfileModes);
        }
-
 }
index 4e043edc1a7ab43de4210b7b1687ed70ac831131..6551827ffec8a595b8e022d20a191e268bbda585 100644 (file)
@@ -17,7 +17,6 @@
 package org.mxchange.addressbook.beans.profilemode;
 
 import java.io.Serializable;
-import org.mxchange.jusercore.model.user.profilemodes.ProfileMode;
 
 /**
  * An interface for data beans
@@ -26,11 +25,4 @@ import org.mxchange.jusercore.model.user.profilemodes.ProfileMode;
  */
 public interface AddressbookProfileModeWebApplicationController extends Serializable {
 
-       /**
-        * Getter for all profile modes as array
-        * <p>
-        * @return All profile modes as array
-        */
-       ProfileMode[] getAllProfileModes ();
-
 }
index a5f3ec1f9e7f82ee593125331579c61317782609..ad9355891e259e5843063f1cd4d48cfa41eb1335 100644 (file)
@@ -989,3 +989,11 @@ ADMIN_LANDLINE_NUMBER_LIST_EMPTY=Es befinden sich keine Festnetznummern in der D
 ADMIN_MOBILE_NUMBER_LIST_EMPTY=Es befinden sich keine Mobilfunknummern in der Datenbank oder Ihre Suche ergab keine Uebereinstimmungen.
 #@TODO Please fix German umlauts!
 ADMIN_CONTACT_MOBILE_LIST_EMPTY=Es befinden sich keine Mobilfunknummern von Kontakten in der Datenbank oder Ihre Suche ergab keine Uebereinstimmungen.
+#@TODO Please fix German umlauts!
+ADMIN_MOBILE_PROVIDER_COUNTRY_REQUIRED=Bitte waehlen Sie ein Land fuer den Mobilfunkanbieter aus.
+#@TODO Please fix German umlauts!
+COUNTRIES=Laender
+#@TODO Please fix German umlauts!
+FILTER_BY_MULTIPLE_COUNTRY_TITLE=Liste durch Auswahl von ein oder mehr Laendern durchsuchen.
+ADMIN_LIST_MOBILE_PROVIDERS_HEADER=Liste aller Mobilfunkanbieter
+SELECT_SHOWN_COLUMNS=Angezeigte Spalten
index 4493449d769c4c6711502f9f2587ea526e6716fa..b3689598139b731a01306d2d0a58973b22423ad7 100644 (file)
@@ -939,3 +939,8 @@ ADMIN_FAX_NUMBER_LIST_EMPTY=There are no fax numbers in database. Or your search
 ADMIN_LANDLINE_NUMBER_LIST_EMPTY=There are no land-line numbers in database. Or your search criteria doesn't match anything.
 ADMIN_MOBILE_NUMBER_LIST_EMPTY=There are no mobile numbers in database. Or your search criteria doesn't match anything.
 ADMIN_CONTACT_MOBILE_LIST_EMPTY=There are no mobile numbers of contacts in database. Or your search criteria doesn't match anything.
+ADMIN_MOBILE_PROVIDER_COUNTRY_REQUIRED=Please select a country for mobile provider.
+COUNTRIES=Countries
+FILTER_BY_MULTIPLE_COUNTRY_TITLE=Filter list by selecting one or more countries.
+ADMIN_LIST_MOBILE_PROVIDERS_HEADER=List of all mobile providers
+SELECT_SHOWN_COLUMNS=Shown columns
index d5e40297fa6b8e14c51c0b43bf529235da9bd20f..f321b43f935229bb0892d5c38316542a8fa0fee1 100644 (file)
@@ -32,7 +32,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -61,7 +61,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -90,7 +90,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -119,7 +119,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -142,7 +142,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -165,7 +165,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -188,7 +188,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -211,7 +211,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -234,7 +234,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -257,7 +257,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -292,7 +292,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
index 88ea9ee1e79c6841a9c7382593db8511eeeb205c..91ff24dee8d954af6905cd010c00e3d17956813a 100644 (file)
@@ -8,7 +8,7 @@
        xmlns:p="http://primefaces.org/ui">
 
        <h:panelGroup styleClass="para" layout="block" rendered="#{empty rendered or rendered}">
-               <fieldset class="fieldset" id="personal_data">
+               <fieldset class="fieldset">
                        <legend title="#{msg.ADMIN_CONTACT_PERSONAL_DATA_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_CONTACT_PERSONAL_DATA_LEGEND}" />
                        </legend>
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu id="country" value="#{adminContactController.contactCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryCode} (#{msg[country.countryI18nKey]})" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector id="country" value="#{adminContactController.contactCountry}"
                                </div>
                        </h:panelGroup>
 
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu styleClass="select divider-right" id="landLineCountryCode" value="#{adminContactController.landLineCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector id="landLineCountryCode" styleClass="select divider-right" value="#{adminContactController.landLineCountry}" />
 
                                        <p:inputText styleClass="input divider-right" id="landLineAreaCode" size="5" maxlength="10" value="#{adminContactController.landLineAreaCode}">
                                                <f:validator for="landLineAreaCode" validatorId="PhoneNumberValidator" />
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu styleClass="select divider-right" id="faxCountryCode" value="#{adminContactController.faxCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector id="faxCountryCode" styleClass="select divider-right" value="#{adminContactController.faxCountry}" />
 
                                        <p:inputText styleClass="input divider-right" id="faxAreaCode" size="5" maxlength="10" value="#{adminContactController.faxAreaCode}">
                                                <f:validator for="faxAreaCode" validatorId="PhoneNumberValidator" />
index 781eb0d993ef2bb7b6442a9bcb1b4a90f3db0fdd..8a8d2c0116e093407af7d7a3c3ea80c110f45767 100644 (file)
@@ -8,7 +8,7 @@
        xmlns:p="http://primefaces.org/ui">
 
        <h:panelGroup styleClass="para" layout="block" rendered="#{empty rendered or rendered == true}">
-               <fieldset class="fieldset" id="fax_data">
+               <fieldset class="fieldset">
                        <legend title="#{msg.ADMIN_FAX_NUMBER_DATA_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_FAX_NUMBER_DATA_LEGEND}" />
                        </legend>
index 62d64ef0aff29b9143796dd32a6eb1795e33135c..2453119cd881f71eff5e7e409ffb411be793658a 100644 (file)
@@ -8,7 +8,7 @@
        xmlns:p="http://primefaces.org/ui">
 
        <h:panelGroup styleClass="para" layout="block" rendered="#{empty rendered or rendered == true}">
-               <fieldset class="fieldset" id="landline_data">
+               <fieldset class="fieldset">
                        <legend title="#{msg.ADMIN_LAND_LINE_NUMBER_DATA_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_LAND_LINE_NUMBER_DATA_LEGEND}" />
                        </legend>
index 101bd595cb7eed2c9b4ca12bca0f1710e6853847..25ddc379e823752a202bced617e29b28f746ba3f 100644 (file)
@@ -8,7 +8,7 @@
        xmlns:p="http://primefaces.org/ui">
 
        <h:panelGroup styleClass="para" layout="block" rendered="#{empty rendered or rendered == true}">
-               <fieldset class="fieldset" id="mobile_data">
+               <fieldset class="fieldset">
                        <legend title="#{msg.ADMIN_MOBILE_NUMBER_DATA_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_MOBILE_NUMBER_DATA_LEGEND}" />
                        </legend>
index c06c52ae84a231226780c9e4a692c9bdf31e4f4d..de66672fb03b5b47d0e8c49e4b081079de0448b6 100644 (file)
@@ -8,7 +8,7 @@
        xmlns:p="http://primefaces.org/ui">
 
        <h:panelGroup styleClass="para" layout="block" rendered="#{not empty mode}">
-               <fieldset class="fieldset" id="login_data">
+               <fieldset class="fieldset">
                        <legend title="#{msg.ADMIN_USER_DATA_EMAIL_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_USER_DATA_EMAIL_LEGEND}" />
                        </legend>
diff --git a/web/WEB-INF/resources/tags/country/form_data/form_country_selector.tpl b/web/WEB-INF/resources/tags/country/form_data/form_country_selector.tpl
new file mode 100644 (file)
index 0000000..aa2227a
--- /dev/null
@@ -0,0 +1,14 @@
+<?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"
+       xmlns:p="http://primefaces.org/ui">
+
+       <p:selectOneMenu id="#{id}" value="#{value}" styleClass="#{empty styleClass ? 'select' : styleClass}" rendered="#{empty rendered or rendered}" required="#{empty required ? false : required}" requiredMessage="#{requiredMessage}">
+               <f:converter converterId="CountryConverter" />
+               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" rendered="#{empty allowNull or allowNull}" />
+               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryCode} (#{msg[country.countryI18nKey]})" />
+       </p:selectOneMenu>
+</ui:composition>
index f63bbd6e77ad7313e9c086a2b7cb656e18b36843..16c868df8e99d5ac55621990f31f65384583e253 100644 (file)
                        </div>
 
                        <div class="table-right-medium">
-                               <p:selectOneMenu styleClass="select divider-right" id="faxCountry" value="#{targetController.faxCountry}">
-                                       <f:converter converterId="CountryConverter" />
-                                       <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                       <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
-                               </p:selectOneMenu>
+                               <widgets:outputCountrySelector id="faxCountry" styleClass="select divider-right" value="#{targetController.faxCountry}" />
 
                                <p:inputText styleClass="input divider-right" id="faxAreaCode" size="5" maxlength="10" value="#{targetController.faxAreaCode}">
                                        <f:validator validatorId="PhoneNumberValidator" />
index e1891b8273677285cf47cc0c0edcb43e673db61a..df8d6e651e36e7cc0b9fed7f6b121c169db9e9dd 100644 (file)
                        </div>
 
                        <div class="table-right-medium">
-                               <p:selectOneMenu styleClass="select divider-right" id="countryPhoneCode" value="#{targetController.landLineCountry}">
-                                       <f:converter converterId="CountryConverter" />
-                                       <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                       <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
-                               </p:selectOneMenu>
+                               <widgets:outputCountrySelector id="landLineCountry" styleClass="select divider-right" value="#{targetController.landLineCountry}" />
 
                                <p:inputText styleClass="input divider-right" id="landLineAreaCode" size="5" maxlength="10" value="#{targetController.landLineAreaCode}">
                                        <f:validator validatorId="PhoneNumberValidator" />
index d1409ce14c0a8e42f59d003f81b56ecc05277a41..56a3987b2a352872da8cc2e4d08a1616012e0fa1 100644 (file)
@@ -15,7 +15,7 @@
 
                        <div class="table-right-medium">
                                <p:selectOneMenu id="profileMode" value="#{targetController.userProfileMode}">
-                                       <f:selectItems value="#{profileModeController.allProfileModes}" var="mode" itemValue="#{mode}" itemLabel="#{msg[mode.messageKey]}" />
+                                       <f:selectItems value="#{profileModeController.allProfileModes()}" var="mode" itemValue="#{mode}" itemLabel="#{msg[mode.messageKey]}" />
                                </p:selectOneMenu>
                        </div>
                </h:panelGroup>
index 3c71f186a22858e155409182443b86d2171686dc..42911da2363340895f6cb1119e95631b75994dca 100644 (file)
@@ -8,7 +8,7 @@
        xmlns:p="http://primefaces.org/ui">
 
        <h:panelGroup styleClass="para" layout="block">
-               <fieldset class="fieldset" id="basic_company_data">
+               <fieldset class="fieldset">
                        <legend title="#{msg.ADMIN_BASIC_COMPANY_DATA_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_BASIC_COMPANY_DATA_LEGEND}" />
                        </legend>
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu styleClass="select divider-right" id="landLineCountry" value="#{adminCompanyDataController.landLineCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector id="landLineCountry" styleClass="select divider-right" value="#{adminCompanyDataController.landLineCountry}" />
 
                                        <p:inputText styleClass="input divider-right" id="landLineAreaCode" size="5" maxlength="10" value="#{adminCompanyDataController.landLineAreaCode}">
                                                <f:validator for="landLineAreaCode" validatorId="PhoneNumberValidator" />
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu styleClass="select divider-right" id="faxCountry" value="#{adminCompanyDataController.faxCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector id="faxCountry" styleClass="select divider-right" value="#{adminCompanyDataController.faxCountry}" />
 
                                        <p:inputText styleClass="input divider-right" id="faxAreaCode" size="5" maxlength="10" value="#{adminCompanyDataController.faxAreaCode}">
                                                <f:validator for="faxAreaCode" validatorId="PhoneNumberValidator" />
index 48dd6e59365babc7ffc21e0cd5623baedad2517f..f0d990dde295c73f39cd63c81866c7f95bab2357 100644 (file)
@@ -8,7 +8,7 @@
        xmlns:p="http://primefaces.org/ui">
 
        <h:panelGroup styleClass="para" layout="block">
-               <fieldset class="fieldset" id="admin_branch_office_basic">
+               <fieldset class="fieldset">
                        <legend title="#{msg.ADMIN_BRANCH_OFFICE_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_BRANCH_OFFICE_LEGEND}" />
                        </legend>
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu styleClass="select divider-right" id="landLineCountry" value="#{adminBranchOfficeController.landLineCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector id="landLineCountry" styleClass="select divider-right" value="#{adminBranchOfficeController.landLineCountry}" />
 
                                        <p:inputText styleClass="input divider-right" id="landLineAreaCode" size="5" maxlength="10" value="#{adminBranchOfficeController.landLineAreaCode}">
                                                <f:validator for="landLineAreaCode" validatorId="PhoneNumberValidator" />
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu styleClass="select divider-right" id="faxCountry" value="#{adminBranchOfficeController.faxCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector id="faxCountry" styleClass="select divider-right" value="#{adminBranchOfficeController.faxCountry}" />
 
                                        <p:inputText styleClass="input divider-right" id="faxAreaCode" size="5" maxlength="10" value="#{adminBranchOfficeController.faxAreaCode}">
                                                <f:validator for="faxAreaCode" validatorId="PhoneNumberValidator" />
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu id="branchCountry" value="#{adminBranchOfficeController.branchCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryCode} (#{msg[country.countryI18nKey]})" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector id="branchCountry" value="#{adminBranchOfficeController.branchCountry}" />
                                </div>
                        </h:panelGroup>
 
index 5a0802d076d18f32772557ac1a5f1ad4ba0d7e3c..cfe51e9f2e1480dd4715d56bebe60671679599ca 100644 (file)
@@ -11,7 +11,7 @@
        </h:panelGroup>
 
        <h:panelGroup styleClass="para" layout="block">
-               <fieldset class="fieldset" id="country_data">
+               <fieldset class="fieldset">
                        <legend title="#{msg.ADMIN_COUNTRY_PHONE_DATA_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_COUNTRY_PHONE_DATA_LEGEND}" />
                        </legend>
index 156b795db513a22ba1f59d24ad73ec4a03e12290..194d90fcd1db9f187364599a0d6f205b73130d28 100644 (file)
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ui:composition
        xmlns="http://www.w3.org/1999/xhtml"
+       xmlns:widgets="http://mxchange.org/jsf/core/widgets"
        xmlns:f="http://java.sun.com/jsf/core"
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
@@ -11,7 +12,7 @@
        </h:panelGroup>
 
        <h:panelGroup styleClass="para" layout="block">
-               <fieldset class="fieldset" id="mobile_provider">
+               <fieldset class="fieldset">
                        <legend title="#{msg.ADMIN_MOBILE_PROVIDER_LEGEND_TITLE}">
                                <h:outputText value="#{msg.ADMIN_MOBILE_PROVIDER_LEGEND}" />
                        </legend>
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu id="providerCountry" value="#{adminMobileProviderController.providerCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryCode} (#{msg[country.countryI18nKey]})" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector id="providerCountry" value="#{adminMobileProviderController.providerCountry}" required="true" requiredMessage="#{msg.ADMIN_MOBILE_PROVIDER_COUNTRY_REQUIRED}" allowNone="false" />
                                </div>
                        </h:panelGroup>
                </fieldset>
index 124066046b31fbdbfa8a343a53ec0fa351642224..0619039dff25897dc7ff36f9a3f04e6464be20e8 100644 (file)
@@ -12,7 +12,7 @@
        </h:panelGroup>
 
        <h:panelGroup styleClass="para" layout="block">
-               <fieldset class="fieldset" id="personal_data">
+               <fieldset class="fieldset">
                        <legend title="#{msg.PERSONAL_DATA_LEGEND_TITLE}">
                                <h:outputText value="#{msg.PERSONAL_DATA_LEGEND}" />
                        </legend>
                                </div>
                        </h:panelGroup>
 
-                               <h:panelGroup styleClass="error-container" layout="block">
-                                       <p:message for="city" />
-                               </h:panelGroup>
+                       <h:panelGroup styleClass="error-container" layout="block">
+                               <p:message for="city" />
+                       </h:panelGroup>
 
                        <h:panelGroup styleClass="table-row" layout="block">
                                <div class="table-left-medium">
                                </div>
                        </h:panelGroup>
 
-                               <h:panelGroup styleClass="error-container" layout="block">
-                                       <p:message for="birthday" />
-                               </h:panelGroup>
+                       <h:panelGroup styleClass="error-container" layout="block">
+                               <p:message for="birthday" />
+                       </h:panelGroup>
 
                        <h:panelGroup styleClass="table-row" layout="block">
                                <div class="table-left-medium">
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu id="country" value="#{contactController.country}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryCode} (#{msg[country.countryI18nKey]})" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector id="country" value="#{contactController.country}" />
                                </div>
                        </h:panelGroup>
 
-                               <h:panelGroup styleClass="error-container" layout="block">
-                                       <p:message for="country" />
-                               </h:panelGroup>
+                       <h:panelGroup styleClass="error-container" layout="block">
+                               <p:message for="country" />
+                       </h:panelGroup>
 
                        <h:panelGroup styleClass="table-row" layout="block">
                                <div class="table-left-medium">
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu styleClass="select divider-right" id="landLineCountry" value="#{contactController.landLineCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector styleClass="select divider-right" id="landLineCountry" value="#{contactController.landLineCountry}" />
 
                                        <p:inputText styleClass="input divider-right" id="landLineAreaCode" size="5" maxlength="10" value="#{contactController.landLineAreaCode}">
                                                <f:validator validatorId="PhoneNumberValidator" />
                                </div>
 
                                <div class="table-right-medium">
-                                       <p:selectOneMenu styleClass="select divider-right" id="faxCountry" value="#{contactController.faxCountry}">
-                                               <f:converter converterId="CountryConverter" />
-                                               <f:selectItem itemValue="#{null}" itemLabel="#{msg.NONE_SELECTED}" />
-                                               <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{country.countryAbroadDialPrefix}#{country.countryPhoneCode}" />
-                                       </p:selectOneMenu>
+                                       <widgets:outputCountrySelector styleClass="select divider-right" id="faxCountry" value="#{contactController.faxCountry}" />
 
                                        <p:inputText styleClass="input divider-right" id="faxAreaCode" size="5" maxlength="10" value="#{contactController.faxAreaCode}">
                                                <f:validator for="faxAreaCode" validatorId="PhoneNumberValidator" />
        </h:panelGroup>
 
        <h:panelGroup styleClass="para" layout="block" rendered="#{userController.isPublicUserProfileEnabled()}">
-               <fieldset class="fieldset" id="profile_mode">
+               <fieldset class="fieldset">
                        <legend title="#{msg.USER_PROFILE_LEGEND_TITLE}">
                                <h:outputText value="#{msg.USER_PROFILE_LEGEND}" />
                        </legend>
index 69651c92d3337fa7ed4012ab306a58ae1daa1338..80e67acd5e810a7143ce50e64691a20226769c40 100644 (file)
@@ -7,7 +7,7 @@
        xmlns:p="http://primefaces.org/ui">
 
        <h:panelGroup styleClass="para" layout="block">
-               <fieldset class="fieldset" id="terms_privacy">
+               <fieldset class="fieldset">
                        <legend title="#{msg.PRIVACY_TERMS_LEGEND_TITLE}">
                                <h:outputText value="#{msg.PRIVACY_TERMS_LEGEND}" />
                        </legend>
index 59511d9aca458e892342a0861b6a45b38735e85b..185c785acdd7edc36c6999bd09c3652486297f95 100644 (file)
@@ -13,7 +13,7 @@
                                        <h:outputText value="#{msg.GUEST_ENTER_USER_LOGIN_DATA_TITLE}" />
                                </div>
 
-                               <fieldset class="fieldset" id="login_data">
+                               <fieldset class="fieldset">
                                        <legend title="#{msg.GUEST_ENTER_USER_LOGIN_DATA_LEGEND_TITLE}">
                                                <h:outputText value="#{msg.GUEST_ENTER_USER_LOGIN_DATA_LEGEND}" />
                                        </legend>
index cc803e85855ba36da7601c2d3c4152bffdeb506a..eaa13ad352df7b77f8e7ac73bae810631e3a5b33 100644 (file)
@@ -13,7 +13,7 @@
                        </div>
 
                        <div class="para">
-                               <fieldset class="fieldset" id="login_data">
+                               <fieldset class="fieldset">
                                        <legend title="#{msg.GUEST_REGISTRATION_EMAIL_LEGEND_TITLE}">
                                                <h:outputText value="#{msg.GUEST_REGISTRATION_EMAIL_LEGEND}" />
                                        </legend>
index 6dff4156963dc12623df41dd115fd7a972d08d91..312208e1ad893b21447ce1ad5b142ca19e25402e 100644 (file)
@@ -15,7 +15,7 @@
                        <ui:include src="/WEB-INF/templates/contact/form_contact_data.tpl" />
 
                        <div class="para">
-                               <fieldset class="fieldset" id="login_data">
+                               <fieldset class="fieldset">
                                        <legend title="#{msg.GUEST_REGISTRATION_EMAIL_LEGEND_TITLE}">
                                                <h:outputText value="#{msg.GUEST_REGISTRATION_EMAIL_LEGEND}" />
                                        </legend>
index c4947264607b9eacde0a565d9d4a1afcef020279..1410005c8755a0675392ea15ef58da77646d526b 100644 (file)
@@ -7,7 +7,7 @@
        xmlns:p="http://primefaces.org/ui">
 
        <h:panelGroup styleClass="para" layout="block">
-               <fieldset class="fieldset" id="current_password">
+               <fieldset class="fieldset">
                        <legend title="#{msg.LOGIN_ENTER_CURRENT_PASSWORD_CONFIRMATION_LEGEND_TITLE}">
                                <h:outputText value="#{msg.LOGIN_ENTER_CURRENT_PASSWORD_CONFIRMATION_LEGEND}" />
                        </legend>
index e9b4432c3eeec5a181597ae180bae45eaec65d39..fe3afefeec19c36aa1b273ea4e2bde6be866938e 100644 (file)
@@ -38,7 +38,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -72,7 +72,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -97,7 +97,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -121,7 +121,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -145,7 +145,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -162,7 +162,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -179,7 +179,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -196,7 +196,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -236,7 +236,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -271,7 +271,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -306,7 +306,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -336,7 +336,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
@@ -360,9 +360,56 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
                </attribute>
                <attribute>
                        <name>rendered</name>
-                       <description>Whether this tag is being rendered by JSF engine.</description>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
                        <required>false</required>
                        <type>java.lang.Boolean</type>
                </attribute>
        </tag>
+       <tag>
+               <tag-name>outputCountrySelector</tag-name>
+               <description>This tag renders a selection box for all available countries.</description>
+               <source>resources/tags/country/form_data/form_country_selector.tpl</source>
+               <attribute>
+                       <name>rendered</name>
+                       <description>Whether this tag is being rendered by JSF engine (default: true).</description>
+                       <required>false</required>
+                       <type>java.lang.Boolean</type>
+               </attribute>
+               <attribute>
+                       <name>allowNone</name>
+                       <description>Whether this tag allows NONE/null to be selected (default: true).</description>
+                       <required>false</required>
+                       <type>java.lang.Boolean</type>
+               </attribute>
+               <attribute>
+                       <name>required</name>
+                       <description>Whether this tag is required (default: false)</description>
+                       <required>false</required>
+                       <type>java.lang.Boolean</type>
+               </attribute>
+               <attribute>
+                       <name>requiredMessage</name>
+                       <description>Localizable message to be displayed when this field is required but not selected.</description>
+                       <required>false</required>
+                       <type>java.lang.String</type>
+               </attribute>
+               <attribute>
+                       <name>id</name>
+                       <description>Id of the JSF component.</description>
+                       <required>true</required>
+                       <type>java.lang.String</type>
+               </attribute>
+               <attribute>
+                       <name>styleClass</name>
+                       <description>CSS style class for this component, default: select.</description>
+                       <required>false</required>
+                       <type>java.lang.String</type>
+               </attribute>
+               <attribute>
+                       <name>value</name>
+                       <description>A target property to set the selected country in.</description>
+                       <required>true</required>
+                       <type>org.mxchange.jcountry.model.data.Country</type>
+               </attribute>
+       </tag>
 </facelet-taglib>
index cac23e37899bf7c995362c540056e15f1b1c7b0b..26d03a54bfd9d5ae77ee607f3aabfa9be1f19e1d 100644 (file)
@@ -16,7 +16,7 @@
        </ui:define>
 
        <ui:define name="content">
-               <p:dataTable id="table_list_mobile" var="mobileNumber" value="#{phoneController.allMobileNumbers()}" tableStyleClass="table table-full" paginator="true" rows="10" summary="#{msg.TABLE_SUMMARY_ADMIN_LIST_MOBILES}" emptyMessage="#{msg.ADMIN_MOBILE_NUMBER_LIST_EMPTY}">
+               <p:dataTable id="table-list-mobile-provider" var="mobileNumber" value="#{phoneController.allMobileNumbers()}" tableStyleClass="table table-full" paginator="true" rows="10" summary="#{msg.TABLE_SUMMARY_ADMIN_LIST_MOBILES}" emptyMessage="#{msg.ADMIN_MOBILE_NUMBER_LIST_EMPTY}">
                        <p:column>
                                <f:facet name="header">
                                        <h:outputText value="#{msg.ADMIN_ID_NUMBER}" />
index 1062279f92e9d07bbd255aae1f453b756b983099..a45e6972ea350fecc6efb854a69220e8136fbfb6 100644 (file)
        </ui:define>
 
        <ui:define name="content">
-               <p:dataTable id="table_list_mobile" var="mobileProvider" value="#{mobileProviderController.allMobileProviders()}" tableStyleClass="table table-medium" paginator="true" rows="10" summary="#{msg.TABLE_SUMMARY_ADMIN_LIST_MOBILE_PROVIDERS}" emptyMessage="#{msg.ADMIN_MOBILE_PROVIDER_LIST_EMPTY}">
-                       <p:column sortBy="#{mobileProvider.providerId}">
-                               <f:facet name="header">
-                                       <h:outputText value="#{msg.ADMIN_ID_NUMBER}" />
-                               </f:facet>
-
-                               <p:link outcome="admin_show_mobile_provider" title="#{msg.ADMIN_LINK_SHOW_MOBILE_PROVIDER_TITLE}" value="#{mobileProvider.providerId}">
-                                       <f:param name="providerId" value="#{mobileProvider.providerId}" />
-                               </p:link>
-                       </p:column>
-
-                       <p:column sortBy="#{mobileProvider.providerName}" priority="3">
-                               <f:facet name="header">
-                                       <h:outputText value="#{msg.ADMIN_LIST_MOBILE_PROVIDER_NAME}" />
-                               </f:facet>
-
-                               <h:outputText value="#{mobileProvider.providerName}" />
-                       </p:column>
-
-                       <p:column sortBy="#{mobileProvider.providerDialPrefix}" priority="2">
-                               <f:facet name="header">
-                                       <h:outputText value="#{msg.ADMIN_LIST_MOBILE_PROVIDER_DIAL_PREFIX}" />
-                               </f:facet>
+               <h:form id="form-list-mobile-provider">
+                       <p:dataTable
+                               id="table-list-mobile-provider"
+                               var="mobileProvider"
+                               value="#{mobileProviderController.allMobileProviders()}"
+                               widgetVar="mobileProviderTable"
+                               filteredValue="#{mobileProviderController.filteredMobileProviders}"
+                               tableStyleClass="table table-medium"
+                               rows="10"
+                               paginator="true"
+                               paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
+                               reflow="true"
+                               resizableColumns="true"
+                               rowsPerPageTemplate="5,10,20,50,100"
+                               sortMode="multiple"
+                               summary="#{msg.TABLE_SUMMARY_ADMIN_LIST_MOBILE_PROVIDERS}"
+                               emptyMessage="#{msg.ADMIN_MOBILE_PROVIDER_LIST_EMPTY}">
 
-                               <h:outputText value="#{mobileProvider.providerDialPrefix}" />
-                       </p:column>
-
-                       <p:column sortBy="#{mobileProvider.providerCountry.countryPhoneCode}" priority="4">
-                               <f:facet name="header">
-                                       <h:outputText value="#{msg.ADMIN_LIST_MOBILE_PROVIDER_COUNTRY}" />
-                               </f:facet>
-
-                               <h:outputText value="#{msg[mobileProvider.providerCountry.countryI18nKey]}" />
-                       </p:column>
-
-                       <p:column sortBy="#{mobileProvider.providerEntryCreated}" priority="5">
                                <f:facet name="header">
-                                       <h:outputText value="#{msg.ADMIN_LIST_ENTRY_CREATED}" />
+                                       <h:outputText value="#{msg.ADMIN_LIST_MOBILE_PROVIDERS_HEADER}" />
+                                       <p:commandButton id="toggler" type="button" value="#{msg.SELECT_SHOWN_COLUMNS}" styleClass="column-selector" />
+                                       <p:columnToggler datasource="table-list-mobile-provider" trigger="toggler" />
                                </f:facet>
 
-                               <h:outputText id="providerEntryCreated" value="#{mobileProvider.providerEntryCreated.time}" title="#{msg.ADMIN_MOBILE_PROVIDER_ENTRY_CREATED_TITLE}">
-                                       <f:convertDateTime for="providerEntryCreated" type="both" timeStyle="short" dateStyle="short" />
-                               </h:outputText>
-                       </p:column>
-
-                       <p:column sortable="false" priority="6">
-                               <f:facet name="header">
-                                       <h:outputText value="#{msg.ADMIN_ACTION_LINKS}" />
-                               </f:facet>
-
-                               <links:outputMobileProviderAdminMiniLinks mobileProvider="#{mobileProvider}" />
-                       </p:column>
-               </p:dataTable>
+                               <p:column filterBy="#{mobileProvider.providerId}" sortBy="#{mobileProvider.providerId}" headerText="#{msg.ADMIN_ID_NUMBER}">
+                                       <p:link outcome="admin_show_mobile_provider" title="#{msg.ADMIN_LINK_SHOW_MOBILE_PROVIDER_TITLE}" value="#{mobileProvider.providerId}">
+                                               <f:param name="providerId" value="#{mobileProvider.providerId}" />
+                                       </p:link>
+                               </p:column>
+
+                               <p:column filterBy="#{mobileProvider.providerName}" sortBy="#{mobileProvider.providerName}" headerText="#{msg.ADMIN_LIST_MOBILE_PROVIDER_NAME}" filterMatchMode="contains">
+                                       <h:outputText value="#{mobileProvider.providerName}" />
+                               </p:column>
+
+                               <p:column filterBy="#{mobileProvider.providerDialPrefix}" sortBy="#{mobileProvider.providerDialPrefix}" headerText="#{msg.ADMIN_LIST_MOBILE_PROVIDER_DIAL_PREFIX}" filterMatchMode="contains">
+                                       <h:outputText value="#{mobileProvider.providerDialPrefix}" />
+                               </p:column>
+
+                               <p:column filterBy="#{mobileProvider.providerCountry}" sortBy="#{mobileProvider.providerCountry.countryPhoneCode}" headerText="#{msg.ADMIN_LIST_MOBILE_PROVIDER_COUNTRY}" filterMatchMode="in">
+                                       <f:facet name="filter">
+                                               <p:selectCheckboxMenu filter="true" label="#{msg.COUNTRIES}" onchange="PF('mobileProviderTable').filter()" updateLabel="true" title="#{msg.FILTER_BY_MULTIPLE_COUNTRY_TITLE}">
+                                                       <f:converter converterId="CountryConverter" />
+                                                       <f:selectItems value="#{countryController.allCountries()}" var="country" itemValue="#{country}" itemLabel="#{msg[country.countryI18nKey]}" />
+                                               </p:selectCheckboxMenu>
+                                       </f:facet>
+
+                                       <h:outputText value="#{msg[mobileProvider.providerCountry.countryI18nKey]}" />
+                               </p:column>
+
+                               <p:column sortBy="#{mobileProvider.providerEntryCreated}" headerText="#{msg.ADMIN_LIST_ENTRY_CREATED}">
+                                       <h:outputText id="providerEntryCreated" value="#{mobileProvider.providerEntryCreated.time}">
+                                               <f:convertDateTime for="providerEntryCreated" type="both" timeStyle="short" dateStyle="short" />
+                                       </h:outputText>
+                               </p:column>
+
+                               <p:column sortable="false" headerText="#{msg.ADMIN_ACTION_LINKS}">
+                                       <links:outputMobileProviderAdminMiniLinks mobileProvider="#{mobileProvider}" />
+                               </p:column>
+                       </p:dataTable>
+               </h:form>
 
                <h:form id="form_add_mobile_provider">
                        <h:panelGroup styleClass="table table-medium" layout="block">
index be6bf16e33391d0949493c0f4a5ea5bbccb398e6..9ebed061c278c6ce2272613fb20a528c9f8dd998 100644 (file)
 
                                <!-- Whether select contact data .. //-->
                                <h:panelGroup id="admin_user_personal_data_option_1" styleClass="para" layout="block">
-                                       <fieldset class="fieldset" id="user_contact">
+                                       <fieldset class="fieldset">
                                                <legend title="#{msg.ADMIN_SELECT_USER_CONTACT_LEGEND_TITLE}">
                                                        <h:outputText value="#{msg.ADMIN_SELECT_USER_CONTACT_LEGEND}" />
                                                </legend>
index dc0694576303df98201b5d5dfbac1c437a0697ec..a181a29a13f2135beb6cdc3af75d90f1e64a57b7 100644 (file)
@@ -26,7 +26,7 @@
                                                        <h:outputText value="#{msg.GUEST_LOST_PASSWORD_TITLE}" />
                                                </div>
 
-                                               <fieldset class="fieldset" id="login_data">
+                                               <fieldset class="fieldset">
                                                        <legend title="#{msg.GUEST_LOST_PASSWORD_LEGEND_TITLE}">
                                                                <h:outputText value="#{msg.GUEST_LOST_PASSWORD_LEGEND}" />
                                                        </legend>
index faf4f2b7ec75eb216a96f978260737a9c5b8722c..08dfc7e5827c1e27b93c4d1aa4f8eb90a7375de1 100644 (file)
                                        <h:outputText value="#{msg.GUEST_RESEND_LINK_TITLE}" />
                                </div>
 
-                               <fieldset class="fieldset" id="email_address_notice">
+                               <fieldset class="fieldset">
                                        <legend title="#{msg.RESEND_CONFIRMATION_LINK_LEGEND_TITLE}">
                                                <h:outputText value="#{msg.RESEND_CONFIRMATION_LINK_LEGEND}" />
                                        </legend>
 
                                        <h:panelGroup styleClass="table-row" layout="block">
                                                <div class="table-left">
-                                                       <p:outputLabel for="resendEmailAddress" value="#{msg.GUEST_RESEND_LINK_ENTER_EMAIL_ADDRESS}" />
+                                                       <p:outputLabel for="emailAddress" value="#{msg.GUEST_RESEND_LINK_ENTER_EMAIL_ADDRESS}" />
                                                </div>
 
                                                <div class="table-right">
-                                                       <p:inputText styleClass="input" id="resendEmailAddress" size="20" maxlength="255" value="#{userResendConfirmationController.emailAddress}" required="true" requiredMessage="#{msg.EMAIL_ADDRESS_NOT_ENTERED}">
+                                                       <p:inputText styleClass="input" id="emailAddress" size="20" maxlength="255" value="#{userResendConfirmationController.emailAddress}" required="true" requiredMessage="#{msg.EMAIL_ADDRESS_NOT_ENTERED}">
                                                                <f:validator validatorId="EmailAddressValidator" />
                                                        </p:inputText>
                                                </div>
@@ -43,7 +43,7 @@
                                </fieldset>
 
                                <h:panelGroup styleClass="error-container" layout="block">
-                                       <p:message for="resendEmailAddress" />
+                                       <p:message for="emailAddress" />
                                </h:panelGroup>
 
                                <h:panelGroup styleClass="table-row" layout="block">
index a3e22a511c02ff9019f423d11f6178e8db56537b..b5c6eb7ab73ffc4018a20c57c4035a63f531a5d3 100644 (file)
@@ -338,3 +338,7 @@ ul.navbar-horizontal li.footer-copyright {
 #footer::after {
        clear: both;
 }
+
+.column-selector {
+       float: right;
+}
index 8f0a3bbb93cbc41e6210a82b78f5c24843372835..672c821854d960298eed89938b2c42c6a2b8fc6a 100644 (file)
@@ -24,7 +24,7 @@
                        </div>
 
                        <h:form id="form_user_change_email_address">
-                               <fieldset class="fieldset" id="change_email">
+                               <fieldset class="fieldset">
                                        <legend title="#{msg.LOGIN_CHANGE_EMAIL_LEGEND_TITLE}">
                                                <h:outputText value="#{msg.LOGIN_CHANGE_EMAIL_LEGEND}" />
                                        </legend>
index caa792126caa4b34c1d6dcbc92fcb4475b62a2c2..cbac07e53a0ff39881de3a4ac17434971a7aad07 100644 (file)
@@ -31,7 +31,7 @@
                                                <h:outputText value="#{msg.LOGIN_CHANGE_PASSWORD_TITLE}" />
                                        </div>
 
-                                       <fieldset class="fieldset" id="change_password">
+                                       <fieldset class="fieldset">
                                                <legend title="#{msg.LOGIN_CHANGE_PASSWORD_LEGEND_TITLE}">
                                                        <h:outputText value="#{msg.LOGIN_CHANGE_PASSWORD_LEGEND}" />
                                                </legend>