var RSFormProCalendars = {}; var RSFormProPrices = {}; var RSFormProUtils = { hasClass: function (el, name) { return new RegExp('(\\s|^)' + name + '(\\s|$)').test(el.className); }, addClass: function(el, name) { if (!RSFormProUtils.hasClass(el, name)) { el.className += (el.className ? ' ' : '') + name; } }, removeClass: function(el, name) { if (RSFormProUtils.hasClass(el, name)) { el.className = el.className.replace(new RegExp('(\\s|^)' + name + '(\\s|$)'),' ').replace(/^\s+|\s+$/g, ''); } } }; function isset () { // http://kevin.vanzonneveld.net // + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // + improved by: FremyCompany // + improved by: Onno Marsman // + improved by: RafaƂ Kukawski // * example 1: isset( undefined, true); // * returns 1: false // * example 2: isset( 'Kevin van Zonneveld' ); // * returns 2: true var a = arguments, l = a.length, i = 0, undef; if (l === 0) { throw new Error('Empty isset'); } while (i !== l) { if (a[i] === undef || a[i] === null) { return false; } i++; } return true; } function refreshCaptcha(componentId, captchaPath) { if(!captchaPath) captchaPath = 'index.php?option=com_rsform&task=captcha&componentId=' + componentId; document.getElementById('captcha' + componentId).src = captchaPath + '&' + Math.random(); document.getElementById('captchaTxt' + componentId).value=''; document.getElementById('captchaTxt' + componentId).focus(); } function number_format(number, decimals, dec_point, thousands_sep) { var n = number, prec = decimals; n = !isFinite(+n) ? 0 : +n; prec = !isFinite(+prec) ? 0 : Math.abs(prec); var sep = (typeof thousands_sep == "undefined") ? ',' : thousands_sep; var dec = (typeof dec_point == "undefined") ? '.' : dec_point; var s = (prec > 0) ? n.toFixed(prec) : Math.round(n).toFixed(prec); //fix for IE parseFloat(0.55).toFixed(0) = 0; var abs = Math.abs(n).toFixed(prec); var _, i; if (abs >= 1000) { _ = abs.split(/\D/); i = _[0].length % 3 || 3; _[0] = s.slice(0,i + (n < 0)) + _[0].slice(i).replace(/(\d{3})/g, sep+'$1'); s = _.join(dec); } else { s = s.replace('.', dec); } return s; } function buildXmlHttp() { var xmlHttp; try { xmlHttp=new XMLHttpRequest(); } catch (e) { try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { alert("Your browser does not support AJAX!"); return false; } } } return xmlHttp; } function ajaxValidation(form, page) { try { var el = form.elements.length; } catch (err) { form = this; } var xmlHttp = buildXmlHttp(); var url = ''; if (typeof rsfp_ajax_root != 'undefined') url = rsfp_ajax_root + '/'; url += 'index.php?option=com_rsform&task=ajaxValidate'; if (page) url += '&page=' + page; var params = new Array(); var submits = new Array(); var success = false; var formId = 0; for (i=0; i -1) { var suffix = element.id.replace('txtcal', ''); results.push(document.getElementById('btn' + suffix)); } // for labels (radio, checkbox) var labels = form.getElementsByTagName('label'); for (var l=0; l=28; day--) { var index = day - 1; if (document.getElementById(fieldName + 'd').options[0].value == '') { index++; } if (document.getElementById(fieldName + 'd').options[index].disabled == false) { document.getElementById(fieldName + 'd').value = day; break; } } } } function rsfp_geolocation(term, id, mapid, map, marker, geocoder, type) { var content = document.getElementById('rsform_geolocation'+id); var address = document.getElementById(mapid).clientWidth; document.getElementById('rsform_geolocation'+id).style.width = address+'px'; document.getElementById('rsform_geolocation'+id).style.display = 'none'; document.getElementById('rsform_geolocation'+id).innerHTML = ''; if (term != '') { geocoder.geocode( {'address': term }, function(results, status) { if (status == 'OK') { for (var i=0; i