Roo/bootstrap/PhoneInput.js
authorjohn <john@roojs.com>
Wed, 28 Mar 2018 05:27:31 +0000 (13:27 +0800)
committerjohn <john@roojs.com>
Wed, 28 Mar 2018 05:27:31 +0000 (13:27 +0800)
roojs-bootstrap.js
roojs-bootstrap-debug.js

Roo/bootstrap/PhoneInput.js
roojs-bootstrap-debug.js
roojs-bootstrap.js

index 1117fc5..b97bd99 100644 (file)
@@ -221,6 +221,7 @@ Roo.extend(Roo.bootstrap.PhoneInput, Roo.bootstrap.TriggerField, {
                     for (var j = 0; j < this.allCountries.length; j++) {
                         if(this.allCountries[j].dialCode == this.preferedDialCode[i]) {
                             var t = this.allCountries[j];
+                            Roo.log(t);
                             this.allCountries.splice(j,1);
                             this.allCountries.unshift(t);
                         }
index 39f19fc..0c32e1e 100644 (file)
@@ -39230,13 +39230,13 @@ Roo.extend(Roo.bootstrap.PhoneInput, Roo.bootstrap.TriggerField, {
                 name: c[0],
                 iso2: c[1],
                 dialCode: c[2],
-                priority: c[3] || 0,
+                // priority: c[3] || 0,
                 areaCodes: c[4] || null
               };
               this.dialCodeMapping[c[2]] = {
                   name: c[0],
                   iso2: c[1],
-                  priority: c[3] || 0,
+                //   priority: c[3] || 0,
                   areaCodes: c[4] || null
               };
             }
@@ -39409,6 +39409,7 @@ Roo.extend(Roo.bootstrap.PhoneInput, Roo.bootstrap.TriggerField, {
                     for (var j = 0; j < this.allCountries.length; j++) {
                         if(this.allCountries[j].dialCode == this.preferedDialCode[i]) {
                             var t = this.allCountries[j];
+                            Roo.log(t);
                             this.allCountries.splice(j,1);
                             this.allCountries.unshift(t);
                         }
index 486c16b..867f9dd 100644 (file)
@@ -1604,26 +1604,25 @@ Roo.bootstrap.PhoneInputData=function(){var d=[["Afghanistan (‫افغانست
 return d;}
 // Roo/bootstrap/PhoneInput.js
 Roo.bootstrap.PhoneInput=function(A){Roo.bootstrap.PhoneInput.superclass.constructor.call(this,A);};Roo.extend(Roo.bootstrap.PhoneInput,Roo.bootstrap.TriggerField,{triggerList:true,listWidth:undefined,selectedClass:'active',allCountries:[],dialCodeMapping:[],preferedDialCode:['+852','+44','+1'],defaultDialCode:'+852',getAutoCreate:function(){var A=Roo.bootstrap.PhoneInputData();
-var B=this.labelAlign||this.parentLabelAlign();var id=Roo.id();for(var i=0;i<A.length;i++){var c=A[i];this.allCountries[i]={name:c[0],iso2:c[1],dialCode:c[2],priority:c[3]||0,areaCodes:c[4]||null};this.dialCodeMapping[c[2]]={name:c[0],iso2:c[1],priority:c[3]||0,areaCodes:c[4]||null}
-;}var C={cls:'form-group',cn:[]};var D={tag:'input',id:id,type:'number',cls:'form-control tel-input',autocomplete:'new-password'};if(this.name){D.name=this.name;}if(this.disabled){D.disabled=true;}var E={tag:'div',cls:'flag-box',cn:[{tag:'div',cls:'flag'}
-,{tag:'div',cls:'caret'}]};var F={tag:'div',cls:this.hasFeedback?'has-feedback':'',cn:[D,{tag:'input',cls:'dial-code-holder',disabled:true}]};var G={cls:'roo-select2-container input-group',cn:[E,F]};if(this.fieldLabel.length){var H={tag:'i',tooltip:'This field is required'}
-;var I={tag:'label','for':id,cls:'control-label',cn:[]};var J={tag:'span',html:this.fieldLabel};H.cls='roo-required-indicator text-danger fa fa-lg fa-star left-indicator';I.cn=[H,J];if(this.indicatorpos=='right'){H.cls='roo-required-indicator text-danger fa fa-lg fa-star right-indicator';
-I.cn=[J,H];}if(B=='left'){G={tag:'div',cn:[G]};if(this.labelWidth>12){I.style="width: "+this.labelWidth+'px';}if(this.labelWidth<13&&this.labelmd==0){this.labelmd=this.labelWidth;}if(this.labellg>0){I.cls+=' col-lg-'+this.labellg;D.cls+=' col-lg-'+(12-this.labellg);
-}if(this.labelmd>0){I.cls+=' col-md-'+this.labelmd;G.cls+=' col-md-'+(12-this.labelmd);}if(this.labelsm>0){I.cls+=' col-sm-'+this.labelsm;G.cls+=' col-sm-'+(12-this.labelsm);}if(this.labelxs>0){I.cls+=' col-xs-'+this.labelxs;G.cls+=' col-xs-'+(12-this.labelxs);
-}}}C.cn=[I,G];var K=this;['xs','sm','md','lg'].map(function(L){if(K[L]){C.cls+=' col-'+L+'-'+K[L];}});this.store=new Roo.data.Store({proxy:new Roo.data.MemoryProxy({}),reader:new Roo.data.JsonReader({fields:[{'name':'name','type':'string'},{'name':'iso2','type':'string'}
-,{'name':'dialCode','type':'string'},{'name':'priority','type':'string'},{'name':'areaCodes','type':'string'}]})});if(this.preferedDialCode){for(var i=0;i<this.preferedDialCode.length;i++){for(var j=0;j<this.allCountries.length;j++){if(this.allCountries[j].dialCode==this.preferedDialCode[i]){var t=this.allCountries[j];
-this.allCountries.splice(j,1);this.allCountries.unshift(t);}}}}Roo.log(this.allCountries);this.store.proxy.data={success:true,data:this.allCountries};return C;},initEvents:function(){this.createList();Roo.bootstrap.PhoneInput.superclass.initEvents.call(this);
-this.indicator=this.indicatorEl();this.flag=this.flagEl();this.dialCodeHolder=this.dialCodeHolderEl();this.trigger=this.el.select('div.flag-box',true).first();this.trigger.on("click",this.onTriggerClick,this,{preventDefault:true});var A=this;(function(){var lw=A.listWidth||Math.max(A.inputEl().getWidth(),A.minListWidth);
-A.list.setWidth(lw);}).defer(100);this.list.on('mouseover',this.onViewOver,this);this.list.on('mousemove',this.onViewMove,this);this.tpl='<li><a href="#"><div class="flag {iso2}"></div>{name} <span class="dial-code">+{dialCode}</span></a></li>';this.view=new Roo.View(this.list,this.tpl,{singleSelect:true,store:this.store,selectedClass:this.selectedClass}
-);this.view.on('click',this.onViewClick,this);this.setValue(this.defaultDialCode);},onTriggerClick:function(e){Roo.log('trigger click');if(this.disabled||!this.triggerList){return;}if(this.isExpanded()){this.collapse();this.hasFocus=false;}else{this.store.load({}
-);this.hasFocus=true;this.expand();}},isExpanded:function(){return this.list.isVisible();},collapse:function(){if(!this.isExpanded()){return;}this.list.hide();Roo.get(document).un('mousedown',this.collapseIf,this);Roo.get(document).un('mousewheel',this.collapseIf,this);
-this.fireEvent('collapse',this);this.validate();},expand:function(){Roo.log('expand');if(this.isExpanded()||!this.hasFocus){return;}var lw=this.listWidth||Math.max(this.inputEl().getWidth(),this.minListWidth);this.list.setWidth(lw);this.list.show();this.restrictHeight();
-Roo.get(document).on('mousedown',this.collapseIf,this);Roo.get(document).on('mousewheel',this.collapseIf,this);this.fireEvent('expand',this);},restrictHeight:function(){this.list.alignTo(this.inputEl(),this.listAlign);this.list.alignTo(this.inputEl(),this.listAlign);
-},onViewOver:function(e,t){if(this.inKeyMode){return;}var A=this.view.findItemFromChild(t);if(A){var B=this.view.indexOf(A);this.select(B,false);}},onViewClick:function(A,B,el,e){var C=this.view.getSelectedIndexes()[0];var r=this.store.getAt(C);if(r){this.onSelect(r,C);
-}if(B!==false&&!this.blockFocus){this.inputEl().focus();}},onViewMove:function(e,t){this.inKeyMode=false;},select:function(A,B){this.selectedIndex=A;this.view.select(A);if(B!==false){var el=this.view.getNode(A);if(el){this.list.scrollChildIntoView(el,false);
-}}},createList:function(){this.list=Roo.get(document.body).createChild({tag:'ul',cls:'typeahead typeahead-long dropdown-menu tel-list',style:'display:none'});this.list.setVisibilityMode(Roo.Element.DISPLAY).originalDisplay='block';;},collapseIf:function(e){var A=e.within(this.el);
-var B=e.within(this.list);var C=(Roo.get(e.getTarget()).id==this.list.id)?true:false;if(A||B||C){return;}this.collapse();},onSelect:function(A,B){if(this.fireEvent('beforeselect',this,A,B)!==false){this.setFlagClass(A.data.iso2);this.setDialCode(A.data.dialCode);
-this.hasFocus=false;this.collapse();this.fireEvent('select',this,A,B);}},flagEl:function(){var A=this.el.select('div.flag',true).first();if(!A){return false;}return A;},dialCodeHolderEl:function(){var d=this.el.select('input.dial-code-holder',true).first();
+var B=this.labelAlign||this.parentLabelAlign();var id=Roo.id();for(var i=0;i<A.length;i++){var c=A[i];this.allCountries[i]={name:c[0],iso2:c[1],dialCode:c[2],areaCodes:c[4]||null};this.dialCodeMapping[c[2]]={name:c[0],iso2:c[1],areaCodes:c[4]||null};}var C={cls:'form-group',cn:[]}
+;var D={tag:'input',id:id,type:'number',cls:'form-control tel-input',autocomplete:'new-password'};if(this.name){D.name=this.name;}if(this.disabled){D.disabled=true;}var E={tag:'div',cls:'flag-box',cn:[{tag:'div',cls:'flag'},{tag:'div',cls:'caret'}]};var F={tag:'div',cls:this.hasFeedback?'has-feedback':'',cn:[D,{tag:'input',cls:'dial-code-holder',disabled:true}
+]};var G={cls:'roo-select2-container input-group',cn:[E,F]};if(this.fieldLabel.length){var H={tag:'i',tooltip:'This field is required'};var I={tag:'label','for':id,cls:'control-label',cn:[]};var J={tag:'span',html:this.fieldLabel};H.cls='roo-required-indicator text-danger fa fa-lg fa-star left-indicator';
+I.cn=[H,J];if(this.indicatorpos=='right'){H.cls='roo-required-indicator text-danger fa fa-lg fa-star right-indicator';I.cn=[J,H];}if(B=='left'){G={tag:'div',cn:[G]};if(this.labelWidth>12){I.style="width: "+this.labelWidth+'px';}if(this.labelWidth<13&&this.labelmd==0){this.labelmd=this.labelWidth;
+}if(this.labellg>0){I.cls+=' col-lg-'+this.labellg;D.cls+=' col-lg-'+(12-this.labellg);}if(this.labelmd>0){I.cls+=' col-md-'+this.labelmd;G.cls+=' col-md-'+(12-this.labelmd);}if(this.labelsm>0){I.cls+=' col-sm-'+this.labelsm;G.cls+=' col-sm-'+(12-this.labelsm);
+}if(this.labelxs>0){I.cls+=' col-xs-'+this.labelxs;G.cls+=' col-xs-'+(12-this.labelxs);}}}C.cn=[I,G];var K=this;['xs','sm','md','lg'].map(function(L){if(K[L]){C.cls+=' col-'+L+'-'+K[L];}});this.store=new Roo.data.Store({proxy:new Roo.data.MemoryProxy({}),reader:new Roo.data.JsonReader({fields:[{'name':'name','type':'string'}
+,{'name':'iso2','type':'string'},{'name':'dialCode','type':'string'},{'name':'priority','type':'string'},{'name':'areaCodes','type':'string'}]})});if(this.preferedDialCode){for(var i=0;i<this.preferedDialCode.length;i++){for(var j=0;j<this.allCountries.length;
+j++){if(this.allCountries[j].dialCode==this.preferedDialCode[i]){var t=this.allCountries[j];Roo.log(t);this.allCountries.splice(j,1);this.allCountries.unshift(t);}}}}Roo.log(this.allCountries);this.store.proxy.data={success:true,data:this.allCountries};return C;
+},initEvents:function(){this.createList();Roo.bootstrap.PhoneInput.superclass.initEvents.call(this);this.indicator=this.indicatorEl();this.flag=this.flagEl();this.dialCodeHolder=this.dialCodeHolderEl();this.trigger=this.el.select('div.flag-box',true).first();
+this.trigger.on("click",this.onTriggerClick,this,{preventDefault:true});var A=this;(function(){var lw=A.listWidth||Math.max(A.inputEl().getWidth(),A.minListWidth);A.list.setWidth(lw);}).defer(100);this.list.on('mouseover',this.onViewOver,this);this.list.on('mousemove',this.onViewMove,this);
+this.tpl='<li><a href="#"><div class="flag {iso2}"></div>{name} <span class="dial-code">+{dialCode}</span></a></li>';this.view=new Roo.View(this.list,this.tpl,{singleSelect:true,store:this.store,selectedClass:this.selectedClass});this.view.on('click',this.onViewClick,this);
+this.setValue(this.defaultDialCode);},onTriggerClick:function(e){Roo.log('trigger click');if(this.disabled||!this.triggerList){return;}if(this.isExpanded()){this.collapse();this.hasFocus=false;}else{this.store.load({});this.hasFocus=true;this.expand();}},isExpanded:function(){return this.list.isVisible();
+},collapse:function(){if(!this.isExpanded()){return;}this.list.hide();Roo.get(document).un('mousedown',this.collapseIf,this);Roo.get(document).un('mousewheel',this.collapseIf,this);this.fireEvent('collapse',this);this.validate();},expand:function(){Roo.log('expand');
+if(this.isExpanded()||!this.hasFocus){return;}var lw=this.listWidth||Math.max(this.inputEl().getWidth(),this.minListWidth);this.list.setWidth(lw);this.list.show();this.restrictHeight();Roo.get(document).on('mousedown',this.collapseIf,this);Roo.get(document).on('mousewheel',this.collapseIf,this);
+this.fireEvent('expand',this);},restrictHeight:function(){this.list.alignTo(this.inputEl(),this.listAlign);this.list.alignTo(this.inputEl(),this.listAlign);},onViewOver:function(e,t){if(this.inKeyMode){return;}var A=this.view.findItemFromChild(t);if(A){var B=this.view.indexOf(A);
+this.select(B,false);}},onViewClick:function(A,B,el,e){var C=this.view.getSelectedIndexes()[0];var r=this.store.getAt(C);if(r){this.onSelect(r,C);}if(B!==false&&!this.blockFocus){this.inputEl().focus();}},onViewMove:function(e,t){this.inKeyMode=false;},select:function(A,B){this.selectedIndex=A;
+this.view.select(A);if(B!==false){var el=this.view.getNode(A);if(el){this.list.scrollChildIntoView(el,false);}}},createList:function(){this.list=Roo.get(document.body).createChild({tag:'ul',cls:'typeahead typeahead-long dropdown-menu tel-list',style:'display:none'}
+);this.list.setVisibilityMode(Roo.Element.DISPLAY).originalDisplay='block';;},collapseIf:function(e){var A=e.within(this.el);var B=e.within(this.list);var C=(Roo.get(e.getTarget()).id==this.list.id)?true:false;if(A||B||C){return;}this.collapse();},onSelect:function(A,B){if(this.fireEvent('beforeselect',this,A,B)!==false){this.setFlagClass(A.data.iso2);
+this.setDialCode(A.data.dialCode);this.hasFocus=false;this.collapse();this.fireEvent('select',this,A,B);}},flagEl:function(){var A=this.el.select('div.flag',true).first();if(!A){return false;}return A;},dialCodeHolderEl:function(){var d=this.el.select('input.dial-code-holder',true).first();
 if(!d){return false;}return d;},setDialCode:function(v){this.dialCodeHolder.dom.value='+'+v;},setFlagClass:function(n){this.flag.dom.className='flag '+n;},getValue:function(){var v=this.inputEl().getValue();if(this.dialCodeHolder){v=this.dialCodeHolder.dom.value+this.inputEl().getValue();
 }return v;},setValue:function(v){var d=this.getDialCode(v);this.value=v;if(!d||d.length==0){if(this.rendered){this.inputEl().dom.value=(v===null||v===undefined?'':v);}return;}this.setFlagClass(this.dialCodeMapping[d].iso2);this.setDialCode(d);this.inputEl().dom.value=v.replace('+'+d,'');
 },getDialCode:function(v=''){if(v.length==0){return this.dialCodeHolder.dom.value;}var A="";if(v.charAt(0)!="+"){return false;}var B="";for(var i=1;i<v.length;i++){var c=v.charAt(i);if(!isNaN(c)){B+=c;if(this.dialCodeMapping[B]){A=v.substr(1,i);}if(B.length==4){break;