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 = '
'+$("#cp_subbtn"+opt.identifier).html()+'
'; } } $(this).html('
'+opt.messages.page+' '+(index+1)+' '+opt.messages.of+' '+(page+1)+''+code+'
'+opt.messages.previous+'
'+opt.messages.next+'
'+bSubmit+'
'); }); $( '#fieldlist'+opt.identifier).find(".pbPrevious,.pbNext").bind("click", { 'identifier' : opt.identifier }, function( evt ) { var identifier = evt.data.identifier; if ( ($(this).hasClass("pbPrevious")) || (($(this).hasClass("pbNext")) && $(this).parents("form").valid()) ) { var page = parseInt($(this).parents(".pbreak").attr("page")); (($(this).hasClass("pbPrevious"))?page--:page++); $("#fieldlist"+identifier+" .pbreak").css("display","none"); $("#fieldlist"+identifier+" .pbreak").find(".field").addClass("ignorepb"); $("#fieldlist"+identifier+" .pb"+page).css("display","block"); $("#fieldlist"+identifier+" .pb"+page).find(".field").removeClass("ignorepb"); if ($("#fieldlist"+identifier+" .pb"+page).find(".field").length>0) { try { $("#fieldlist"+identifier+" .pb"+page).find(".field")[0].focus(); } catch(e){} } } return false; }); } else { if ($("#cpcaptchalayer"+opt.identifier).html()) { $("#fieldlist"+opt.identifier+" .pb"+page).append('
'+$("#cpcaptchalayer"+opt.identifier).html()+'
'); $("#cpcaptchalayer"+opt.identifier).html(""); } if ($("#cp_subbtn"+opt.identifier).html()) { $("#fieldlist"+opt.identifier+" .pb"+page).append('
'+$("#cp_subbtn"+opt.identifier).html()+'
'); } } $( '#fieldlist'+opt.identifier).find(".pbSubmit").bind("click", { 'identifier' : opt.identifier }, function( evt ) { $(this).parents("#fieldlist"+evt.data.identifier).parents("form").submit(); }); $("#fieldlist"+opt.identifier+" .predefinedClick").bind("click", function() { if ($(this).attr("predefined") == $(this).val()) { $(this).val(""); } }); $("#fieldlist"+opt.identifier+" .predefinedClick").blur("click", function() { if ($(this).val()=="") { $(this).val($(this).attr("predefined")); } }); if (i>0) { for (var i=0;i

'+this.title+'

'+this.description+''; } }); //var theForm = new fform(), var theForm, ffunct = { getItem: function( name ) { for( var i in items ) { if( items[ i ].name == name ) { return items[ i ]; } } return false; }, getItems: function() { return items; }, loadData:function(f) { var d, e = $("#"+f); this.formId = e.parents( 'form' ).attr( 'id' ); if ( d = $.parseJSON( e.val() )) { if (d.length==2) { items = []; for (var i=0;i 0) { var hideFields = []; $.each( toHide, function(i, el) { el = el.substring(0,el.length-identifier.length); if($.inArray(el, hideFields) === -1) { hideFields.push(el); } }); $("#form_structure_hidden"+identifier).val(hideFields.join()); } if( typeof configObj[ 'throwEvent' ] == 'undefined' || configObj[ 'throwEvent' ] ) { $( document ).trigger( 'showHideDepEvent', $.fbuilder[ 'forms' ][ identifier ][ 'formId' ] ); } } } }; // End showHideDep $.fbuilder.controls[ 'ftext' ]=function(){}; $.extend( $.fbuilder.controls[ 'ftext' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Untitled", ftype:"ftext", predefined:"", predefinedClick:false, required:false, size:"medium", minlength:"", maxlength:"", equalTo:"", show:function() { return '
'+this.userhelp+'
'; } } ); $.fbuilder.controls[ 'fcurrency' ] = function(){}; $.extend( $.fbuilder.controls[ 'fcurrency' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Currency", ftype:"fcurrency", predefined:"", predefinedClick:false, required:false, size:"small", currencyText:"USD", thousandSeparator:",", centSeparator:".", formatDynamically:false, getFormattedValue:function( value ) { this.centSeparator = $.trim(this.centSeparator); if( /^\s*$/.test( this.centSeparator ) ) { this.centSeparator = '.'; } var v = parseFloat( value.replace( new RegExp( "[^\\d" + $.fbuilder.escape_symbol( this.centSeparator ) + "]", "g" ), '' ) ); if( !isNaN( v ) ) { v = v.toFixed(2).toString(); var parts = v.toString().split("."), counter = 0, str = ''; if( !/^\s*$/.test( this.thousandSeparator ) ) { for( var i = parts[0].length-1; i >= 0; i--){ counter++; str = parts[0][i] + str; if( counter%3 == 0 && i != 0 ) str = this.thousandSeparator + str; } parts[0] = str; } if( /^\s*$/.test( this.centSeparator ) ) { this.centSeparator = '.'; } return this.currencySymbol+parts.join( this.centSeparator )+this.currencyText; } else { return value; } }, show:function() { if( this.formatDynamically ) { var me = this; $( document ).on( 'change', '[name="' + this.name + '"]', function(){ this.value = me.getFormattedValue( this.value ); } ); } return '
'+this.userhelp+'
'; }, val:function() { var e = $( '[id="' + this.name + '"]:not(.ignore)' ); if( e.length ) { var v = $.trim( e.val() ); v = v.replace( new RegExp( this.currencySymbol, 'g' ), '' ) .replace( new RegExp( this.currencyText, 'g' ), '' ); return $.fbuilder.parseVal( v, this.thousandSeparator, this.centSeparator ); } return 0; } } ); $.fbuilder.controls[ 'fnumber' ] = function(){}; $.extend( $.fbuilder.controls[ 'fnumber' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Number", ftype:"fnumber", predefined:"", predefinedClick:false, required:false, size:"small", thousandSeparator:"", decimalSymbol:".", min:"", max:"", dformat:"digits", formats:new Array("digits","number"), show:function() { return '
'+this.userhelp+'
'; }, after_show:function() { if( typeof $[ 'validator' ] != 'undefined' ) { $.validator.addMethod( 'number', ( function( thousandSeparator, decimalSymbol ) { return function( value, element ) { var regExp = new RegExp( '^-?(?:\\d+|\\d{1,3}(?:' + $.fbuilder.escape_symbol( thousandSeparator ) + '\\d{3})+)?(?:' + $.fbuilder.escape_symbol( decimalSymbol ) + '\\d+)?$' ); return this.optional(element) || regExp.test( value ); }; } )( this.thousandSeparator, this.decimalSymbol ) ); $.validator.addMethod( 'min', ( function( thousandSeparator, decimalSymbol ) { return function( value, element, param ) { return this.optional(element) || $.fbuilder.parseVal( value, thousandSeparator, decimalSymbol ) >= param; }; } )( this.thousandSeparator, this.decimalSymbol ) ); $.validator.addMethod( 'max', ( function( thousandSeparator, decimalSymbol ) { return function( value, element, param ) { return this.optional(element) || $.fbuilder.parseVal( value, thousandSeparator, decimalSymbol ) <= param; }; } )( this.thousandSeparator, this.decimalSymbol ) ); } }, val:function() { var e = $( '[id="' + this.name + '"]:not(.ignore)' ); if( e.length ) { var v = $.trim( e.val() ); return $.fbuilder.parseVal( v, this.thousandSeparator, this.decimalSymbol ); } return 0; } } ); $.fbuilder.controls[ 'femail' ] = function(){}; $.extend( $.fbuilder.controls[ 'femail' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Email", ftype:"femail", predefined:"", predefinedClick:false, required:false, size:"medium", equalTo:"", show:function() { return '
'+this.userhelp+'
'; } } ); $.fbuilder.controls[ 'fdate' ] = function(){}; $.extend( $.fbuilder.controls[ 'fdate' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Date", ftype:"fdate", predefined:"", predefinedClick:false, size:"medium", required:false, dformat:"mm/dd/yyyy", showDropdown:false, dropdownRange:"-10:+10", minDate:"", maxDate:"", invalidDates:"", minHour:0, maxHour:23, minMinute:0, maxMinute:59, stepHour: 1, stepMinute: 1, showTimepicker: false, defaultDate:"", defaultTime:"", working_dates:[true,true,true,true,true,true,true], formats:new Array("mm/dd/yyyy","dd/mm/yyyy"), init:function() { function checkValue( v, min, max ) { v = parseInt( v ); if( isNaN( v ) ) v = max; else if( v < min ) v = min; else if( v > max ) v = max; return v; } this.minHour = checkValue( this.minHour, 0, 23 ); this.maxHour = checkValue( this.maxHour, 0, 23 ); this.minMinute = checkValue( this.minMinute, 0, 59 ); this.maxMinute = checkValue( this.maxMinute, 0, 59 ); this.stepHour = checkValue( this.stepHour, 1, Math.max( 1, this.maxHour - this.minHour ) ); this.stepMinute = checkValue( this.stepMinute, 1, Math.max( 1, this.maxMinute - this.minMinute ) ); this.invalidDates = this.invalidDates.replace( /\s+/g, '').match( /\d{1,2}\/\d{1,2}\/\d{4}/g ); if( this.invalidDates !== null ) { for( var i = 0, h = this.invalidDates.length; i < h; i++ ) this.invalidDates[ i ] = new Date( this.invalidDates[ i ] ); } }, get_hours:function() { var str = '', i = 0, h; while( ( h = this.minHour + this.stepHour * i ) <= this.maxHour ) { if( h < 10 ) { h = '0'+''+h; } str += ''; i++; } return ' ( :'; }, get_minutes:function() { var str = '', i = 0, m; while( ( m = this.minMinute + this.stepMinute * i ) <= this.maxMinute ) { if( m < 10 ) { m = '0'+''+m; } str += ''; i++; } return ' )'; }, set_date_time:function() { var str = $( '#'+this.name+'_date' ).val(); if( this.showTimepicker ) { str += ' '+$( '#'+this.name+'_hours' ).val()+':'+$( '#'+this.name+'_minutes' ).val(); } $( '#'+this.name ).val( str ).change(); }, show:function() { this.init(); var attr = 'value'; if( this.predefinedClick ) { attr = 'placeholder'; } return '
'+( ( this.showTimepicker ) ? this.get_hours()+this.get_minutes() : '' )+''+this.userhelp+'
'; }, setEvents : function() { var me = this; $( document ).on( 'change', '#'+this.name+'_date', function(){ me.set_date_time(); } ); $( document ).on( 'change', '#'+this.name+'_hours', function(){ me.set_date_time(); } ); $( document ).on( 'change', '#'+this.name+'_minutes', function(){ me.set_date_time(); } ); }, after_show:function() { function setValue( f, v, m ) { f = '#'+f+' option'; v = ( ( v+'' ).length == 1 ) ? '0'+v : v; m = ( ( m+'' ).length == 1 ) ? '0'+m : m; $( f ).each( function(){ var t = $( this ).attr( 'value' ); if( v <= t ) { v = t; return false; } } ); $( f+'[value="' + ( ( v < m ) ? v : m ) + '"]' ).attr( 'selected', true ); }; function validateDate( d, w, i ) { try{ if( d === null ) return [false,""]; if ( ! w[ d.getDay()]) return [false,""]; if( i !== null ) { for( var j = 0, h = i.length; j < h; j++ ) { if( d.getDate() == i[ j ].getDate() && d.getMonth() == i[ j ].getMonth() && d.getFullYear() == i[ j ].getFullYear() ) return [false,""]; } } } catch( _err ){} return [true,""]; }; function validator( v, e ) { try { var p = e.name.replace( '_date', '' ).split( '_' ), item = $.fbuilder[ 'forms' ][ '_'+p[ 1 ] ].getItem( p[ 0 ]+'_'+p[ 1 ] ), inst = $.datepicker._getInst( e ), minDate = $.datepicker._determineDate( inst, $.datepicker._get( inst, 'minDate'), null), maxDate = $.datepicker._determineDate(inst, $.datepicker._get(inst, 'maxDate'), null), dateFormat = $.datepicker._get(inst, 'dateFormat'), date = $.datepicker.parseDate(dateFormat, v, $.datepicker._getFormatConfig(inst)); return this.optional( e ) || ( ( minDate == null || date >= minDate ) && ( maxDate == null || date <= maxDate ) && validateDate( $( e ).datepicker( 'getDate' ), item.working_dates, item.invalidDates )[ 0 ] ); } catch( er ) { return false; } }; this.setEvents(); var p = { dateFormat: this.dformat.replace(/yyyy/g,"yy"), minDate: this.minDate, maxDate: this.maxDate }, dp = $( "#"+this.name+"_date" ), dd = (this.defaultDate != "") ? this.defaultDate : ( ( this.predefined != "" && !this.predefinedClick ) ? this.predefined : new Date() ); dp.click( function(){ $(document).click(); $(this).focus(); } ); if (this.showDropdown) p = $.extend(p,{changeMonth: true,changeYear: true,yearRange: this.dropdownRange}); p = $.extend(p, { beforeShowDay: ( function ( w, i ) { return function( d ){ return validateDate( d, w, i ); }; } )( this.working_dates, this.invalidDates ) } ); dp.datepicker(p); dp.datepicker( "setDate", dd); dp.datepicker("widget").wrap("
"); if( !validateDate( dp.datepicker( "getDate"), this.working_dates, this.invalidDates)[ 0 ] ) { dp.datepicker( "setDate", ''); } if( this.showTimepicker ) { var parts, time = {}, tmp = 0; if( ( parts = /(\d{1,2}):(\d{1,2})/g.exec( this.defaultTime ) ) != null ) { time[ 'hour' ] = parts[ 1 ]; time[ 'minute' ] = parts[ 2 ]; } else { var d = new Date(); time[ 'hour' ] = d.getHours(); time[ 'minute' ] = d.getMinutes(); } setValue( this.name+'_hours', time[ 'hour' ], this.maxHour ); setValue( this.name+'_minutes', time[ 'minute' ], this.maxMinute ); } $( '#'+this.name+'_date' ).change(); $.validator.addMethod("dateddmmyyyy", validator ); $.validator.addMethod("datemmddyyyy", validator ); }, val:function() { var e = $( '[id="' + this.name + '"]:not(.ignore)' ); if( e.length ) { var v = $.trim( e.val() ), d = /(\d{1,2})\/(\d{1,2})\/(\d{4})(\s(\d{1,2}):(\d{1,2}))?/.exec( v ), h = 0, m = 0; if( d ) { if( typeof d[ 5 ] != 'undefined' ) h = d[ 5 ]; if( typeof d[ 6 ] != 'undefined' ) m = d[ 6 ]; var date = ( this.dformat == 'mm/dd/yyyy' ) ? new Date( d[ 3 ], ( d[ 1 ] * 1 - 1 ), d[ 2 ], h, m, 0, 0 ) : new Date( d[ 3 ], ( d[ 2 ] * 1 - 1 ), d[ 1 ], h, m, 0, 0 ); if( this.showTimepicker ) { return date.valueOf() / 86400000; } else { return Math.ceil( date.valueOf() / 86400000 ); } } } return 0; } } ); $.fbuilder.controls[ 'ftextarea' ] = function(){}; $.extend( $.fbuilder.controls[ 'ftextarea' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Untitled", ftype:"ftextarea", predefined:"", predefinedClick:false, required:false, size:"medium", minlength:"", maxlength:"", show:function() { return '
'+this.userhelp+'
'; } } ); $.fbuilder.controls[ 'fcheck' ]=function(){}; $.extend( $.fbuilder.controls[ 'fcheck' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Check All That Apply", ftype:"fcheck", layout:"one_column", required:false, showDep:false, init:function() { this.choices = new Array("First Choice","Second Choice","Third Choice"); this.choicesVal = new Array("First Choice","Second Choice","Third Choice"); this.choiceSelected = new Array(false,false,false); this.choicesDep = new Array(new Array(),new Array(),new Array()); }, show:function() { this.choicesVal = ((typeof(this.choicesVal) != "undefined" && this.choicesVal !== null)?this.choicesVal:this.choices.slice(0)); var str = ""; if (!(typeof(this.choicesDep) != "undefined" && this.choicesDep !== null)) { this.choicesDep = new Array(); for (var i=0;i
'; } return '
'+str+''+this.userhelp+'
'; }, showHideDep:function( toShow, toHide ) { var item = $( '#'+this.name+'.depItem' ), form_identifier = this.form_identifier; try { if( item.length ) { var parent = item.parents( '.fields' ); parent.find( '.field' ).each( function() { var item = $( this ); if( item.attr( 'dep' ) && item.attr( 'dep' ) != '' ) { var d = item.attr( 'dep' ).split( ',' ); for ( i=0; i'; } return '
'+str+''+this.userhelp+'
'; }, showHideDep:function( toShow, toHide ) { var item = $( '#'+this.name+'.depItem' ), form_identifier = this.form_identifier; try { if( item.length ) { var parent = item.parents( '.fields' ); parent.find( '.field' ).each( function() { var item = $( this ); if( item.attr( 'dep' ) && item.attr( 'dep' ) != '' ) { var d = item.attr( 'dep' ).split( ',' ); for ( i=0; i'+l[i]+''; } return '
'+this.userhelp+'
'; }, showHideDep:function( toShow, toHide ) { var item = $( '#'+this.name ), form_identifier = this.form_identifier; try { if( item.find( '.depItem' ).length ) { var id = item.attr( 'id' ); item.find( '.depItem' ).each( function() { var item = $( this ); if( item.attr( 'dep' ) && item.attr( 'dep' ) != '' ) { var d = item.attr( 'dep' ).split( ',' ); for ( i=0; i
'+this.userhelp+'
'; }, after_show:function() { $.validator.addMethod("upload_size", function(value, element,params) { return this.optional(element) || (element.files[0].size/1024 < params); }); } } ); $.fbuilder.controls[ 'fpassword' ] = function(){}; $.extend( $.fbuilder.controls[ 'fpassword' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Untitled", ftype:"fpassword", predefined:"", predefinedClick:false, required:false, size:"medium", minlength:"", maxlength:"", equalTo:"", show:function() { return '
'+this.userhelp+'
'; } } ); $.fbuilder.controls[ 'fPhone' ]=function(){}; $.extend( $.fbuilder.controls[ 'fPhone' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Phone", ftype:"fPhone", required:false, dformat:"### ### ####", predefined:"888 888 8888", show:function() { var me = this, str = "", tmp = this.dformat.split(' '), tmpv = this.predefined.split(' '); for (var i=0;i
'+$.trim(tmp[i])+'
'; } $( document ).on( 'change', '#'+this.name+'_'+i, function(){ var v = ''; for( var i = 0; i < tmp.length; i++ ) { v += $( '#'+me.name+'_'+i ).val(); } $( '#'+me.name ).val( v ).change(); } ); } return '
'+str+''+this.userhelp+'
'; } } ); $.fbuilder.controls[ 'fCommentArea' ]=function(){}; $.extend( $.fbuilder.controls[ 'fCommentArea' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Comments here", ftype:"fCommentArea", userhelp:"A description of the section goes here.", show:function() { return '
'+this.userhelp+'
'; } } ); $.fbuilder.controls[ 'fhidden' ]=function(){}; $.extend( $.fbuilder.controls[ 'fhidden' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { ftype:"fhidden", predefined:"", show:function() { return ''; } } ); $.fbuilder.controls[ 'fSectionBreak' ] = function(){}; $.extend( $.fbuilder.controls[ 'fSectionBreak' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Section Break", ftype:"fSectionBreak", userhelp:"A description of the section goes here.", show:function() { return '
'+this.userhelp+'
'; } } ); $.fbuilder.controls[ 'fPageBreak' ]=function(){}; $.extend( $.fbuilder.controls[ 'fPageBreak' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Page Break", ftype:"fPageBreak", show:function() { return '
'+this.userhelp+'
'; } } ); $.fbuilder.controls[ 'fsummary' ] = function(){}; $.extend( $.fbuilder.controls[ 'fsummary' ].prototype, $.fbuilder.controls[ 'ffields' ].prototype, { title:"Summary", ftype:"fsummary", fields:"", titleClassname:"summary-field-title", valueClassname:"summary-field-value", fieldsArray:[], show:function() { var p = $.trim(this.fields.replace( /\,+/g, ',') ).split( ',' ), l = p.length, me = this; if( l ) { var str = '

'+this.title+'

'; for( var i = 0; i < l; i++ ) { if( !/^\s*$/.test( p[ i ] ) ) { p[ i ] = $.trim( p[ i ] ); this.fieldsArray.push( p[ i ] + this.form_identifier ); $( document ).on( 'change', '#' + p[ i ] + this.form_identifier, function(){ me.update(); } ); str += '
'; } } str += '
'; $( document ).one( 'showHideDepEvent', function( evt, form_identifier ) { me.update(); }); return str; } }, update:function() { var me = this; for ( var j = 0, k = this.fieldsArray.length; j < k; j++ ) { var i = this.fieldsArray[ j ], e = $( '[id="' + i + '"]'), tt = $( '[ref="' + i + '"]'); if( e.length && tt.length ) { var t = $( '#' + i ).parents( '.fields' ).find( 'label:first' ).text(), v = []; e.each( function(){ var e = $(this); if( /(checkbox|radio)/i.test( e.attr( 'type' ) ) && !e.is( ':checked' ) ) { return; } else if( e[0].tagName == 'SELECT' ) { v.push( $(e[0].options[ e[0].selectedIndex ]).attr( 'vt' ) ); } else { if( e.attr( 'vt' ) ) { v.push( e.attr( 'vt' ) ); } else { v.push( e.val() ); } } } ); tt.find( '.cff-summary-title' ).html( ( /^\s*$/.test( t ) ) ? '' : t+': ' ); tt.find( '.cff-summary-value' ).html( v.join( ', ' ) ); if( e.hasClass( 'ignore' ) ) { tt.find( '.cff-summary-item' ).hide(); } else { tt.find( '.cff-summary-item' ).show(); } } } } }); //var fcount = 1; //var fnum = "_"+fcount; //while (eval("typeof cp_calculatedfieldsf_fbuilder_config"+fnum+" != 'undefined'")) //{ // try { // var cp_calculatedfieldsf_fbuilder_config = eval("cp_calculatedfieldsf_fbuilder_config"+fnum); // var f = $("#fbuilder"+fnum).fbuilder($.parseJSON(cp_calculatedfieldsf_fbuilder_config.obj)); // f.fBuild.loadData("form_structure"+fnum); // $("#cp_calculatedfieldsf_pform"+fnum).validate({ // ignore:".ignore,.ignorepb", // errorElement: "div", // errorPlacement: function(e, element) { // if (element.hasClass('group')) // element = element.parent(); // e.insertBefore(element); // e.addClass('message'); // add a class to the wrapper // e.css('position', 'absolute'); // e.css('left',0 ); // e.css('top',element.parent().outerHeight(true)); // } // }); // } catch (e) {} // fcount++; // fnum = "_"+fcount; //} })(fbuilderjQuery); });