fbuilderjQuery = (typeof fbuilderjQuery != 'undefined' ) ? fbuilderjQuery : jQuery;
fbuilderjQuery(function(){
(function($) {
// Namespace of fbuilder
$.fbuilder = $.fbuilder || {};
$.fbuilder[ 'objName' ] = 'fbuilderjQuery';
/*
* logical.js v0.1
* By: CALCULATED FIELD PROGRAMMERS
* The script allows make logical operations like functions
* Copyright 2013 CODEPEOPLE
* You may use this project under MIT or GPL licenses.
*/
;(function(root){
var lib = {};
lib.cf_logical_version = '0.1';
// IF( logical_test, value_if_true, value_if_false )
lib.IF = function( _if, _then, _else ){
if ( _if ) {
return ( typeof _then === 'undefined' ) ? true : _then;
} else {
return ( typeof _else === 'undefined' ) ? false : _else;
}
};
// AND( logical1, logical2, ... )
lib.AND = function(){
for (var i = 0, h = arguments.length; i < h; i++) {
if (!arguments[i]) {
return false;
}
}
return true;
};
// OR( logical1, logical2, ... )
lib.OR = function(){
for (var i = 0, h = arguments.length; i < h; i++) {
if ( arguments[i] ) {
return true;
}
}
return false;
};
// NOT( term )
lib.NOT = function( _term ){
return ( typeof _term == 'undefined' ) ? true : !_term;
};
// IN( term, values ) values can be a string or an array
lib.IN = function( _term, _values ){
function _reduce( str ){
return String(str).replace( /^\s+/, '').replace(/\s+$/, '').replace(/\s+/, ' ').toLowerCase();
};
_term = _reduce( _term );
if( typeof _values == 'string' ) return _reduce( _values ).indexOf( _term ) != -1;
else if( typeof _values == 'object' && _values.length ){
for( var i = 0, h = _values.length; i < h; i++) if( _reduce( _values[ i ] ).indexOf( _term ) != -1 ) return true;
}
return false;
};
root.CF_LOGICAL = lib;
})(this);
fbuilderjQuery = ( typeof fbuilderjQuery != 'undefined' ) ? fbuilderjQuery : jQuery;
fbuilderjQuery[ 'fbuilder' ] = fbuilderjQuery[ 'fbuilder' ] || {};
fbuilderjQuery[ 'fbuilder' ][ 'modules' ] = fbuilderjQuery[ 'fbuilder' ][ 'modules' ] || {};
fbuilderjQuery[ 'fbuilder' ][ 'modules' ][ 'default' ] = {
'prefix' : '',
'callback' : function()
{
if(window.PREC == undefined)
{
window.PREC = window.prec = function (num, pr)
{
if(/^\d+$/.test(pr) && /^[+-]?\d+(\.\d+)?$/.test(num))
{
result = Math.round(num * Math.pow(10,pr));
result = result/Math.pow(10,pr);
tmp = result.toString().indexOf('.');
if(tmp == -1 && pr > 0)
{
tmp = pr;
result = result+'.';
}
else
{
tmp = pr-((result.toString().length) - (tmp+1));
}
for(var i = 0; i < tmp; i++)
{
result += '0';
}
return result;
}
return num;
};
} // End if window.PREC
if(window.CDATE == undefined)
{
window.CDATE = window.cdate = function ( num, format )
{
Math.date_format = ( typeof format != 'undefined') ? format : 'mmddyyyy';
if(isFinite(num*1))
{
num = Math.round(Math.abs(num)*86400000);
var date = new Date(num),
d = date.getDate(),
m = date.getMonth()+1,
y = date.getFullYear(),
h = date.getHours(),
i = date.getMinutes(),
s = date.getSeconds(),
a = '';
m = (m < 10) ? '0'+m : m;
d = (d < 10) ? '0'+d : d;
if( typeof window.DATETIMEFORMAT == 'undefined' )
{
window.DATETIMEFORMAT = ( Math.date_format == 'mmddyyyy' ) ? 'mm/dd/yyyy' : 'dd/mm/yyyy';
}
if( /a/.test(window.DATETIMEFORMAT) )
{
a = ( h >= 12 ) ? 'pm' : 'am';
h = h % 12;
h = ( h == 0 ) ? 12: h;
}
h = (h < 10) ? '0'+h : h;
i = (i < 10) ? '0'+i : i;
s = (s < 10) ? '0'+s : s;
return window.DATETIMEFORMAT.replace( /y+/, y)
.replace( /m+/, m)
.replace( /d+/, d)
.replace( /h+/, h)
.replace( /i+/, i)
.replace( /s+/, s)
.replace( /a+/, a);
}
return num;
};
} // End if window.CDATE
var math_prop = ["LN10", "PI", "E", "LOG10E", "SQRT2", "LOG2E", "SQRT1_2", "LN2", "cos", "pow", "log", "tan", "sqrt", "ceil", "asin", "abs", "max", "exp", "atan2", "random", "round", "floor", "acos", "atan", "min", "sin"];
for(var i = 0, h = math_prop.length; i < h; i++)
{
if( !window[ math_prop[ i ] ] )
{
window[ math_prop[ i ] ] = window[ math_prop[ i ].toUpperCase() ] = Math[ math_prop[ i ] ];
}
}
fbuilderjQuery[ 'fbuilder' ][ 'extend_window' ]( fbuilderjQuery[ 'fbuilder' ][ 'modules' ][ 'default' ][ 'prefix' ], CF_LOGICAL );
},
'validator' : function( v )
{
return isFinite( v ) || /\d{2}[\/\-\.]\d{2}[\/\-\.]\d{4}/.test( v );
}
}; $.fbuilder[ 'controls' ] = {};
$.fbuilder[ 'forms' ] = {};
$.fbuilder[ 'htmlEncode' ] = function(value)
{
value = $('
').text(value).html()
value = value.replace(/"/g, """);
return value;
};
$.fbuilder[ 'escape_symbol' ] = function( value ) // Escape the symbols used in regulars expressions
{
return value.replace(/([\^\$\-\.\,\[\]\(\)\/\\\*\?\+\!\{\}])/g, "\\$1");
};
$.fbuilder[ 'parseVal' ] = function( value, thousandSeparator, decimalSymbol )
{
value += '';
thousandSeparator = new RegExp( $.fbuilder.escape_symbol( ( typeof thousandSeparator == 'undefined' ) ? ',' : thousandSeparator ), 'g' );
decimalSymbol = new RegExp( $.fbuilder.escape_symbol( ( typeof decimalSymbol == 'undefined' ) ? '.' : decimalSymbol ), 'g' );
var t = value.replace( thousandSeparator, '' ).replace( decimalSymbol, '.' ).replace( /\s/g, '' ),
p = /[+-]?((\d+(\.\d+)?)|(\.\d+))/.exec( t );
return ( p ) ? p[0]*1 : '"' + value.replace(/'/g, "\\'").replace( /\$/g, '') + '"';
};
$.fn.fbuilder = function(options){
var opt = $.extend({},
{
pub:false,
identifier:"",
title:""
},options, true);
opt.messages = $.extend({
previous: "Previous",
next: "Next",
page: "Page",
of: "of",
required: "This field is required.",
email: "Please enter a valid email address.",
datemmddyyyy: "Please enter a valid date with this format(mm/dd/yyyy)",
dateddmmyyyy: "Please enter a valid date with this format(dd/mm/yyyy)",
number: "Please enter a valid number.",
digits: "Please enter only digits.",
maxlength: $.validator.format("Please enter no more than {0} characters"),
minlength: $.validator.format("Please enter at least {0} characters."),
equalTo: "Please enter the same value again.",
max: $.validator.format("Please enter a value less than or equal to {0}."),
min: $.validator.format("Please enter a value greater than or equal to {0}.")
},opt.messages);
opt.messages.max = $.validator.format(opt.messages.max);
opt.messages.min = $.validator.format(opt.messages.min);
$.extend($.validator.messages, opt.messages);
var items = [];
var reloadItemsPublic = function()
{
for (var i=0, h = $.fbuilder.showSettings.formlayoutList.length; i
');
for (var i=0;i');
}
else
{
$("#fieldlist"+opt.identifier+" .pb"+page).append(items[i].show());
if (items[i].predefinedClick)
{
var cl = $("#fieldlist"+opt.identifier+" .pb"+page).find("#"+items[i].name).attr("class")+" predefinedClick";
$("#fieldlist"+opt.identifier+" .pb"+page).find("#"+items[i].name).attr("class",cl);
$("#fieldlist"+opt.identifier+" .pb"+page).find("#"+items[i].name).attr("predefined",items[i].predefined);
}
if (items[i].userhelpTooltip)
{
var uh = $("#fieldlist"+opt.identifier+" .pb"+page).find("#"+items[i].name).parents(".fields");
uh.find(".uh").css("display","none");
if (uh.find(".uh").text()!="")
{
uh.attr("uh",uh.find(".uh").text());
}
}
}
}
if (page>0)
{
$("#fieldlist"+opt.identifier+" .pb"+page).addClass("pbEnd");
$("#fieldlist"+opt.identifier+" .pbreak").find(".field").addClass("ignorepb");
$("#fieldlist"+opt.identifier+" .pb0").find(".field").removeClass("ignorepb");
$("#fieldlist"+opt.identifier+" .pbreak").each(function(index) {
var code = $(this).html();
var bSubmit = '';
if (index == page)
{
if ($("#cpcaptchalayer"+opt.identifier).html())
{
code += '
'+$("#cpcaptchalayer"+opt.identifier).html()+'
';
$("#cpcaptchalayer"+opt.identifier).html("");
}
if ($("#cp_subbtn"+opt.identifier).html())
{
bSubmit = '