123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- class UIInput extends UIElement {
- setJson(e)
- {
- super.setJson(e);
- $("#"+this.elemId+"_lbl").addClass("active");
- }
- }
- class UIInputText extends UIInput {
- init()
- {
- var size=(this.size)?this.size:12;
- var r = HTMLBuilder.rootElemDiv(size);
- var nsize=12;
- if(this.facultative) nsize-=2;
- var x = HTMLBuilder[this.getFct()]({
- type: this.type,
- id: this.elemId,
- size: nsize,
- label: this.placeholder
- },
- {},
- {
- max: this.max,
- min: this.min,
- value: this.value,
- disabled: (this.value)?"":undefined
- },
- { active: (this.value)?"":undefined });
- r.append($(x));
- doFac(r,this);
- this.root.append(r);
- }
- }
- class UITextArea extends UIInputText {
- getFct()
- {
- return "textArea";
- }
- }
- registerUiClass("textarea", UITextArea);
- class UIInputLine extends UIInputText {
- getFct()
- {
- return "textInput";
- }
- }
- registerUiClass("text", UIInputLine);
- registerUiClass("number", UIInputLine);
- class UISelect extends UIElement
- {
- init(){
- var size=(this.size)?this.size:12;
- var r = HTMLBuilder.rootElemDiv(size);
- var nsize=12;
- if(this.facultative) nsize-=4;
- var data = {
- type: this.type,
- id: this.elemId,
- size: nsize,
- label: this.placeholder
- };
- var prop ={
- };
- var options = [];
- for(var i=0; i<this.select.length; i++)
- {
- var opt= { text:this.select[i], prop: {}};
- if(i==0) opt.prop.selected="";
- opt.prop.value=this.select[i];
- options.push(opt);
- }
- r.append(HTMLBuilder.select(data, prop, options));
- this.root.find("select").formSelect();
- doFac(r,this);
- this.root.append(r);
- }
- setJson(e)
- {
- super.setJson(e);
- this.root.find("select").formSelect();
- }
- }
- registerUiClass("select", UISelect);
- class UISwitch extends UIElement
- {
- init()
- {
- var size=(this.size)?this.size:12;
- var r = HTMLBuilder.rootElemDiv(size);
- var nsize=12;
- if(this.facultative) nsize-=4;
- var data = {
- id: this.elemId,
- size: nsize,
- on: this.on,
- off: this.off
- };
- if(this.placeholder) r.append(HTMLBuilder.div({class: _inline_fields+_col_class()},
- HTMLBuilder.p(this.placeholder)));
- r.append(HTMLBuilder.switch(data, {inline: ""}, {inline: ""}));
- this.root.append(r);
- return r;
- }
- getJson()
- {
- return $("#"+this.elemId).prop('checked');
- }
- setJson(e)
- {
- $("#"+this.elemId).prop('checked', e);
- return this;
- }
- }
- registerUiClass("switch", UISwitch);
- class UICheckBox extends UIElement
- {
- init()
- {
- var prefix=this.elemId;
- var size=(this.size)?this.size:12;
- var r = HTMLBuilder.rootElemDiv(size);
- var nsize=12;
- if(this.facultative) nsize-=4;
- if(this.placeholder) r.append(HTMLBuilder.div({}, this.placeholder));
- var data = {
- id: this.elemId,
- size: nsize
- };
- for (var key in this.list) {
- if (this.list.hasOwnProperty(key)) {
- r.append(HTMLBuilder.checkbox({id: this.elemId+"_"+key, label: this.list[key]}));
- }
- }
- this.root.append(r);
- return r;
- }
- getJson()
- {
- var ret = {};
- var aret = [];
- for (var key in this.list) {
- if (this.list.hasOwnProperty(key)) {
- var id = this.elemId+"_"+key;
- if($('#'+id).prop("checked"))
- {
- aret.push(key);
- ret[key]=true;
- }else {
- ret[key]=false;
- }
- }
- }
- if(this.asArray)
- return aret;
- return ret;
- }
- setJson(e)
- {
- var obj = {};
- if(e instanceof Array)
- {
- for(var i=0; i<e.length;i++)
- obj[e[i]]=true;
- }else obj=e;
- for (var key in this.list) {
- if (this.list.hasOwnProperty(key)) {
- var id = this.elemId+"_"+key;
- var b = obj[key]?true:false;
- $("#"+id).prop("checked", b);
- }
- }
- return this;
- }
- }
- registerUiClass("checkbox", UICheckBox);
|