-
Notifications
You must be signed in to change notification settings - Fork 0
range
Kechushou edited this page May 19, 2015
·
2 revisions
define(['dom/form/form'],
function (){
quickforms.RangeElement = function(dom,formObj)
{
quickforms.DomElement.call(this,dom); // super call to get parent attributes
var me = this;
this.parent = formObj;
this.serialize = function()
{
return '';
};
this.summary = function()
{
var summary = '';
if(this.left.val())
{
summary += this.left.attr('name')+" > '"+this.left.val()+"'";
}
if(this.right.val())
{
if(this.left.val())
summary += " and ";
summary += this.right.attr('name')+" < '"+this.right.val()+"'";
}
return summary;
};
this.filter = function(){
var filter = '';
if(this.left.val())
{
filter += this.left.attr('name')+">='"+this.left.val()+"'";
}
if(this.right.val())
{
if(this.left.val())
filter += " and ";
filter += this.right.attr('name')+"<='"+this.right.val()+"'";
}
return filter;
};
this.notSelected = function()
{
return isNull(this.left.val()) && isNull(this.right.val());
};
};
quickforms.form.domParsers.push(function(formObj){
if(formObj.fact.indexOf('filter')>=0) // ensure persisted module does not confict with another form
{
$('div[class="range"]').each(function(i,dom){
dom = $(dom);
var rangeCheck = $('<input type="checkbox" data-inline="true"/>');
rangeCheck.checkboxradio();
var rangeObj = new quickforms.RangeElement(dom,formObj);
rangeObj.left = $(rangeObj.dom.find("input,select")[0]);
rangeObj.right = $(rangeObj.dom.find("input,select")[1]);
formObj.addChild(rangeObj);
window.setTimeout(function(){formObj.finishedParsing();},1);
formObj.completedListeners.push(function(){
dom.on('click',function(){
var obj = formObj.childMap[$(this)[0].id];
var label = $('label[for="'+obj.dom[0].id+'"]');
if(!obj.notSelected())
{
obj.included = true;
if(label.length>0)
{
if(label[0].innerHTML.indexOf("Included")==-1)
label[0].innerHTML += " (Included)";
}
}
else
{
obj.included = false;
label[0].innerHTML = label[0].innerHTML.replace(" (Included)",'');
}
});
dom.trigger('click');
});
});
}
});
});
-
Quickforms Basics
-
Tutorials
- Setup Tutorials
- App Development Tutorials
-
Assignments
-
Project
-
Applications
-
Quickforms Advanced
- Project With Database
- Advanced Setup
- HealthApp with Database
- Source Control
- Joining the Team
- Cordova Native Application
- Miscellaneous
- Project With Database
-
-
Form Controls
-
App Controls
-
Report Controls
-
Server Controls
-
Quickforms DAO
-
Email Notification
-
Migrating QuickForms3(Test Server) to QuickForms(Production-Server)