/* * Document : be_forms_plugins.js * Author : pixelcave * Description: Custom JS code used in Form Page */ class BeFormPlugins { /* * Init jQuery AutoComplete example, for more examples you can check out https://github.com/Pixabay/jQuery-autoComplete * */ static initAutoComplete() { // Init autocomplete functionality jQuery('.js-autocomplete').autoComplete({ minChars: 1, source: function(term, suggest){ term = term.toLowerCase(); let countriesList = ['Afghanistan','Albania','Algeria','Andorra','Angola','Anguilla','Antigua & Barbuda','Argentina','Armenia','Aruba','Australia','Austria','Azerbaijan','Bahamas','Bahrain','Bangladesh','Barbados','Belarus','Belgium','Belize','Benin','Bermuda','Bhutan','Bolivia','Bosnia & Herzegovina','Botswana','Brazil','British Virgin Islands','Brunei','Bulgaria','Burkina Faso','Burundi','Cambodia','Cameroon','Cape Verde','Cayman Islands','Chad','Chile','China','Colombia','Congo','Cook Islands','Costa Rica','Cote D Ivoire','Croatia','Cruise Ship','Cuba','Cyprus','Czech Republic','Denmark','Djibouti','Dominica','Dominican Republic','Ecuador','Egypt','El Salvador','Equatorial Guinea','Estonia','Ethiopia','Falkland Islands','Faroe Islands','Fiji','Finland','France','French Polynesia','French West Indies','Gabon','Gambia','Georgia','Germany','Ghana','Gibraltar','Greece','Greenland','Grenada','Guam','Guatemala','Guernsey','Guinea','Guinea Bissau','Guyana','Haiti','Honduras','Hong Kong','Hungary','Iceland','India','Indonesia','Iran','Iraq','Ireland','Isle of Man','Israel','Italy','Jamaica','Japan','Jersey','Jordan','Kazakhstan','Kenya','Kuwait','Kyrgyz Republic','Laos','Latvia','Lebanon','Lesotho','Liberia','Libya','Liechtenstein','Lithuania','Luxembourg','Macau','Macedonia','Madagascar','Malawi','Malaysia','Maldives','Mali','Malta','Mauritania','Mauritius','Mexico','Moldova','Monaco','Mongolia','Montenegro','Montserrat','Morocco','Mozambique','Namibia','Nepal','Netherlands','Netherlands Antilles','New Caledonia','New Zealand','Nicaragua','Niger','Nigeria','Norway','Oman','Pakistan','Palestine','Panama','Papua New Guinea','Paraguay','Peru','Philippines','Poland','Portugal','Puerto Rico','Qatar','Reunion','Romania','Russia','Rwanda','Saint Pierre & Miquelon','Samoa','San Marino','Satellite','Saudi Arabia','Senegal','Serbia','Seychelles','Sierra Leone','Singapore','Slovakia','Slovenia','South Africa','South Korea','Spain','Sri Lanka','St Kitts & Nevis','St Lucia','St Vincent','St. Lucia','Sudan','Suriname','Swaziland','Sweden','Switzerland','Syria','Taiwan','Tajikistan','Tanzania','Thailand','Timor L\'Este','Togo','Tonga','Trinidad & Tobago','Tunisia','Turkey','Turkmenistan','Turks & Caicos','Uganda','Ukraine','United Arab Emirates','United Kingdom','United States','Uruguay','Uzbekistan','Venezuela','Vietnam','Virgin Islands (US)','Yemen','Zambia','Zimbabwe']; let suggestions = []; for (i = 0; i < countriesList.length; i++) { if (~ countriesList[i].toLowerCase().indexOf(term)) suggestions.push(countriesList[i]); } suggest(suggestions); } }); } /* * Init Password Strength, for more examples you can check out https://github.com/ablanco/jquery.pwstrength.bootstrap * */ static initPwStrength() { // Bootstrap Form jQuery('.js-pw-strength1').pwstrength({ ui: { container: "#js-pw-strength1-container", viewports: { progress: ".js-pw-strength1-progress", verdict: ".js-pw-strength1-feedback" } } }); // Material Form jQuery('.js-pw-strength2').pwstrength({ ui: { container: "#js-pw-strength2-container", viewports: { progress: ".js-pw-strength2-progress", verdict: ".js-pw-strength2-feedback" } } }); } /* * Init functionality * */ static init() { this.initAutoComplete(); this.initPwStrength(); } } // Initialize when page loads jQuery(() => { BeFormPlugins.init(); });