var dynamicListContent = [{"fieldId":"fld_Country","type":"simple","formParentFieldId":"","data":[{"code":"472","name":"AFGHANISTAN"},{"code":"329","name":"SOUTH AFRICA"},{"code":"324","name":"ALBANIA"},{"code":"322","name":"ALGERIA"},{"code":"8","name":"GERMANY"},{"code":"321","name":"ANDORRA"},{"code":"327","name":"ANGOLA"},{"code":"323","name":"ANGUILLA"},{"code":"476","name":"ANTARCTIC"},{"code":"320","name":"ANTIGUA AND BARBUDA"},{"code":"326","name":"NETHERLANDS WEST INDIES"},{"code":"78","name":"KINGDOM OF SAUDI ARABIA"},{"code":"50","name":"ARGENTINA"},{"code":"325","name":"ARMENIA"},{"code":"330","name":"ARUBA"},{"code":"36","name":"AUSTRALIA"},{"code":"47","name":"AUSTRIA"},{"code":"53","name":"AZERBAIJAN"},{"code":"51","name":"BAHAMAS"},{"code":"98","name":"KINGDOM OF BAHRAIN"},{"code":"35","name":"BANGLADESH"},{"code":"331","name":"BARBADOS"},{"code":"3","name":"BELGIUM"},{"code":"339","name":"BELIZE"},{"code":"80","name":"BENIN"},{"code":"334","name":"BERMUDA"},{"code":"336","name":"BHUTAN"},{"code":"48","name":"BYELORUSSIA"},{"code":"401","name":"BURMA"},{"code":"335","name":"BOLIVIA"},{"code":"52","name":"BOSNIA & HERZEGOVINA"},{"code":"338","name":"BOTSWANA"},{"code":"49","name":"BRAZIL"},{"code":"147","name":"BRUNEI"},{"code":"54","name":"BULGARIA"},{"code":"332","name":"BURKINA FASO"},{"code":"333","name":"BURUNDI"},{"code":"55","name":"CAMBODIA"},{"code":"345","name":"CAMEROON"},{"code":"6","name":"CANADA"},{"code":"349","name":"CAPE VERDE"},{"code":"56","name":"CHILE"},{"code":"25","name":"CHINA"},{"code":"148","name":"CYPRUS"},{"code":"57","name":"COLOMBIA"},{"code":"343","name":"CONGO"},{"code":"387","name":"NORTH KOREA"},{"code":"84","name":"SOUTH KOREA"},{"code":"346","name":"COSTA RICA"},{"code":"30","name":"COTE D'IVOIRE"},{"code":"10","name":"CROATIA"},{"code":"348","name":"CUBA"},{"code":"491","name":"DENMARK"},{"code":"352","name":"DJIBOUTI"},{"code":"353","name":"DOMINICA"},{"code":"59","name":"EGYPT"},{"code":"89","name":"UNITED ARAB EMIRATES"},{"code":"355","name":"ECUADOR"},{"code":"357","name":"ERITREA"},{"code":"19","name":"SPAIN"},{"code":"60","name":"ESTONIA"},{"code":"5","name":"USA"},{"code":"358","name":"ETHIOPIA"},{"code":"359","name":"FIDJI"},{"code":"16","name":"FINLAND"},{"code":"2","name":"FRANCE"},{"code":"363","name":"GABON"},{"code":"367","name":"GAMBIA"},{"code":"364","name":"GEORGIA"},{"code":"371","name":"SOUTH GEORGIA /SOUTH SANDWICH ISLANDS"},{"code":"24","name":"GHANA"},{"code":"61","name":"GIBRALTAR"},{"code":"62","name":"GREECE"},{"code":"475","name":"GRENADA"},{"code":"366","name":"GREENLAND"},{"code":"369","name":"GUADELOUPE"},{"code":"373","name":"GUAM"},{"code":"372","name":"GUATEMALA"},{"code":"368","name":"GUINEA"},{"code":"370","name":"EQUATORIAL GUINEA"},{"code":"374","name":"GUINEA-BISSAU"},{"code":"375","name":"GUYANA"},{"code":"365","name":"FRENCH GUIANA"},{"code":"378","name":"HAITI"},{"code":"377","name":"HONDURAS"},{"code":"63","name":"HONG-KONG"},{"code":"64","name":"HUNGARY"},{"code":"337","name":"ILE BOUVET"},{"code":"350","name":"THE CHRISTMAS ISLANDS"},{"code":"429","name":"REUNION"},{"code":"408","name":"MAURITIUS ISLAND"},{"code":"379","name":"CHANNEL ISLANDS"},{"code":"388","name":"CAYMAN ISLANDS"},{"code":"340","name":"THE KEELING ISLANDS"},{"code":"344","name":"THE COOK ISLANDS"},{"code":"360","name":"FALKLAND ISLANDS"},{"code":"362","name":"THE FAROE ISLANDS"},{"code":"376","name":"HEARD AND MCDONALD ISLANDS"},{"code":"404","name":"NORTHERN MARIANA ISLANDS"},{"code":"398","name":"MARSHALL ISLANDS"},{"code":"460","name":"UNITED STATES MINOR OUTLYING ISLANDS"},{"code":"414","name":"NORFOLK ISLANDS"},{"code":"423","name":"PITCAIRN ISLANDS"},{"code":"431","name":"SOLOMON ISLANDS"},{"code":"448","name":"TURKS AND CAICOS ISLANDS"},{"code":"465","name":"VIRGIN ISLANDS (US)"},{"code":"464","name":"VIRGIN ISLANDS (UK)"},{"code":"32","name":"INDIA"},{"code":"66","name":"INDONESIA"},{"code":"381","name":"IRAK"},{"code":"94","name":"IRAN"},{"code":"67","name":"IRELAND"},{"code":"65","name":"ICELAND"},{"code":"26","name":"ISRAEL"},{"code":"11","name":"ITALY"},{"code":"382","name":"JAMAICA"},{"code":"68","name":"JAPAN"},{"code":"69","name":"JORDAN"},{"code":"389","name":"KAZAKHSTAN"},{"code":"70","name":"KENYA"},{"code":"383","name":"KIRGHIZISTAN"},{"code":"384","name":"KIRIBATI"},{"code":"71","name":"KUWAIT"},{"code":"390","name":"LAOS"},{"code":"385","name":"COMOROS"},{"code":"395","name":"LESOTHO"},{"code":"96","name":"LATVIA"},{"code":"391","name":"LEBANON"},{"code":"394","name":"LIBERIA"},{"code":"396","name":"LIBYA"},{"code":"393","name":"LIECHTENSTEIN"},{"code":"97","name":"LITHUANIA"},{"code":"18","name":"LUXEMBOURG"},{"code":"403","name":"MACAO"},{"code":"399","name":"MACEDONIA"},{"code":"72","name":"MADAGASCAR"},{"code":"410","name":"MALAWI"},{"code":"23","name":"MALAYSIA"},{"code":"409","name":"MALDIVE ISLANDS"},{"code":"400","name":"MALI"},{"code":"73","name":"MALTA"},{"code":"46","name":"MOROCCO"},{"code":"405","name":"MARTINIQUE"},{"code":"406","name":"MAURITANIA"},{"code":"469","name":"MAYOTTE"},{"code":"74","name":"MEXICO"},{"code":"361","name":"MICRONESIA"},{"code":"397","name":"MOLDAVIA"},{"code":"37","name":"MONACO"},{"code":"402","name":"MONGOLIA"},{"code":"93","name":"MONTENEGRO"},{"code":"407","name":"MONTSERRAT"},{"code":"411","name":"MOZAMBIQUE"},{"code":"473","name":"NAMIBIA"},{"code":"417","name":"NAURU"},{"code":"75","name":"NEW ZEALAND"},{"code":"416","name":"NEPAL"},{"code":"415","name":"NICARAGUA"},{"code":"413","name":"NIGER"},{"code":"29","name":"NIGERIA"},{"code":"418","name":"NIUE"},{"code":"9","name":"NORWAY"},{"code":"412","name":"NEW CALEDONIA"},{"code":"79","name":"OMAN"},{"code":"459","name":"OUGANDA"},{"code":"461","name":"OUZBEKISTAN"},{"code":"34","name":"PAKISTAN"},{"code":"426","name":"BELAU"},{"code":"419","name":"PANAMA"},{"code":"421","name":"PAPUA NEW GUINEA"},{"code":"427","name":"PARAGUAY"},{"code":"12","name":"THE NETHERLANDS"},{"code":"76","name":"PERU"},{"code":"81","name":"REPUBLIC OF THE PHILIPPINES"},{"code":"14","name":"POLAND"},{"code":"420","name":"FRENCH POLYNESIA"},{"code":"424","name":"PORTO RICO"},{"code":"15","name":"PORTUGAL"},{"code":"77","name":"QATAR"},{"code":"342","name":"CENTRAL AFRICAN REPUBLIC"},{"code":"428","name":"CENTRAL AFRICAN REPUBLIC"},{"code":"341","name":"THE REPUBLIC OF THE CONGO"},{"code":"354","name":"DOMINICAN REPUBLIC"},{"code":"95","name":"SERBIA"},{"code":"351","name":"CZECH REPUBLIC"},{"code":"13","name":"ROMANIA"},{"code":"7","name":"UNITED KINGDOM"},{"code":"489","name":"RUSSIA"},{"code":"430","name":"RWANDA"},{"code":"356","name":"WESTERN SAHARA"},{"code":"443","name":"SAINT BARTHELEMY"},{"code":"439","name":"SAINT MARTIN"},{"code":"463","name":"SAINT VINCENT & GRENADINES"},{"code":"434","name":"ST HELENA"},{"code":"392","name":"ST. LUCIA"},{"code":"386","name":"SAINT-KITTS-AND-NEVIS"},{"code":"444","name":"SALVADOR"},{"code":"468","name":"SAMOA"},{"code":"28","name":"SOUTH AFRICA"},{"code":"438","name":"SAN MARINO"},{"code":"442","name":"SAO TOME"},{"code":"83","name":"SENEGAL"},{"code":"347","name":"SERBIA AND MONTENEGRO"},{"code":"432","name":"SEYCHELLES"},{"code":"437","name":"SIERRA LEONE"},{"code":"31","name":"SINGAPORE"},{"code":"58","name":"CZECH REPUBLIC"},{"code":"435","name":"SLOVENIA"},{"code":"440","name":"SOMALIA"},{"code":"433","name":"SOUDAN"},{"code":"85","name":"SRI LANKA"},{"code":"422","name":"ST. PIERRE ET MIQUELON"},{"code":"86","name":"SWEDEN"},{"code":"17","name":"SWITZERLAND"},{"code":"441","name":"SURINAME"},{"code":"436","name":"SVALBARD AND JAN MAYEN"},{"code":"446","name":"SWAZILAND"},{"code":"445","name":"SYRIA"},{"code":"451","name":"TADJIKISTAN"},{"code":"447","name":"TAHITI"},{"code":"87","name":"TAIWAN"},{"code":"458","name":"TANZANIA"},{"code":"449","name":"TCHAD"},{"code":"380","name":"TERR. BRITANNIQUE OCEAN INDIEN"},{"code":"474","name":"FRENCH SOUTHERN & ANTARCTIC LANDS"},{"code":"425","name":"PALESTINE"},{"code":"88","name":"THAILAND"},{"code":"453","name":"EAST TIMOR"},{"code":"450","name":"TOGO"},{"code":"452","name":"TOKELAU"},{"code":"455","name":"TONGA"},{"code":"456","name":"TRINIDAD AND TOBAGO"},{"code":"149","name":"TUNISIA"},{"code":"454","name":"TURKMENISTAN"},{"code":"27","name":"TURKEY"},{"code":"457","name":"TUVALU"},{"code":"90","name":"UKRAINE"},{"code":"91","name":"URUGUAY"},{"code":"466","name":"VANUATU"},{"code":"462","name":"VATICAN"},{"code":"33","name":"VENEZUELA"},{"code":"92","name":"VIETNAM"},{"code":"467","name":"WALLIS AND FUTUNA"},{"code":"82","name":"REPUBLIC OF YEMEN"},{"code":"470","name":"ZAMBIA"},{"code":"471","name":"ZIMBABWE"}]},{"fieldId":"fld_Category","type":"simple","formParentFieldId":"","data":[{"code":"21","name":"Pre-sales"},{"code":"35","name":"Other"},{"code":"39","name":"Partner"},{"code":"23","name":"Post-sales"},{"code":"22","name":"Support"}]},{"fieldId":"fld_SubCategory","type":"simple","formParentFieldId":"fld_Category","data":[{"code":"32","parentValue":"23","name":"Billing"},{"code":"24","parentValue":"21","name":"Booking"},{"code":"48","parentValue":"35","name":"Call"},{"code":"29","parentValue":"22","name":"Cancellation"},{"code":"33","parentValue":"23","name":"Claims"},{"code":"26","parentValue":"35","name":"Communication Client"},{"code":"42","parentValue":"39","name":"Communication Partner"},{"code":"56","parentValue":"22","name":"Coronavirus"},{"code":"41","parentValue":"39","name":"External"},{"code":"34","parentValue":"23","name":"Feedback"},{"code":"27","parentValue":"21","name":"General information"},{"code":"54","parentValue":"21","name":"Groupon"},{"code":"53","parentValue":"21","name":"Idealista"},{"code":"40","parentValue":"39","name":"Internal"},{"code":"43","parentValue":"21","name":"Leboncoin"},{"code":"28","parentValue":"22","name":"Modification"},{"code":"57","parentValue":"21","name":"MonieurParking"},{"code":"30","parentValue":"22","name":"On Going Booking"},{"code":"37","parentValue":"35","name":"Other"},{"code":"36","parentValue":"35","name":"Partnerships"},{"code":"25","parentValue":"21","name":"Subscriptions"},{"code":"38","parentValue":"22","name":"Subscriptions"},{"code":"55","parentValue":"35","name":"Unsubscribe"}]},{"fieldId":"fld_WebFormProducts","type":"multiple","formParentFieldId":"","data":[]},{"fieldId":"fld_Origin","type":"simple","formParentFieldId":"","data":[]},{"fieldId":"fld_HeadCounts","type":"simple","formParentFieldId":"","data":[{"code":"","name":""},{"code":"","name":""},{"code":"","name":""},{"code":"","name":""},{"code":"","name":""}]},{"fieldId":"fld_Turnover","type":"simple","formParentFieldId":"","data":[{"code":"De 0 à 1 M€","name":"De 0 à 1 M€"},{"code":"De 1 à 5 M€","name":"De 1 à 5 M€"},{"code":"De 5 à 10 M€","name":"De 5 à 10 M€"},{"code":"De 10 à 50 M€","name":"De 10 à 50 M€"},{"code":"De 100 à 500 M€","name":"De 100 à 500 M€"},{"code":"De 500 à 1000 M€","name":"De 500 à 1000 M€"},{"code":"De 1000 à 10000 M€","name":"De 1000 à 10000 M€"}]},{"fieldId":"fld_Salutation","type":"simple","formParentFieldId":"","data":[{"code":"Mme.","name":"Madame"},{"code":"Mlle.","name":"Mademoiselle"},{"code":"Mr.","name":"Monsieur"}]}];var formbuilder_obj = (function() {
// Instance stores a reference to the Singleton
var instance;
function init(config) {
// Singleton,
// cookies functions
this._insertAfter = function(newNode, referenceNode) {
referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
};
this._checkEmail = function(email){
var mailformat = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,25})+$/;
//var mailformat = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,15}$/;
return email.match(mailformat)
};
this._createCookie = function(name, value, days) {
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
var expires = "; expires=" + date.toGMTString();
} else var expires = "";
////console.log('cr?ation du cookies : ' + name + "=" + value + expires + "; path=/");
document.cookie = name + "=" + value + expires + "; path=/";
};
this._readCookie = function(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') c = c.substring(1, c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
}
return null;
};
this._eraseCookie = function(name) {
this._createCookie(name, "", -1);
};
this._feedDynamicLists = function() { // cette m�thode remplira les champs de type liste d�roulante
if(this._htmlcontent.length>0){
for (var index = 0; index < this._datas.length; ++index) {
_prefillfieldsfromcookies();
switch (this._datas[index].type) {
case "simple":
var selectbox = document.getElementById(this._datas[index].fieldId);
if (selectbox != null) {
opt = document.createElement("option");
opt.value = '';
opt.text = '';
opt.label = '';
selectbox.appendChild(opt);
var options = this._datas[index].data;
for (i = 0; i < options.length; ++i) {
var optdata = options[i];
var filteringField = document.getElementById(this._datas[index].formParentFieldId);
if((optdata.parentValue !== null && optdata.parentValue !== undefined) &&
(filteringField !== null && filteringField !== undefined)){
if(filteringField !== null && filteringField !== undefined){
if(optdata.parentValue === filteringField.value){
////console.log('optdata.parentValue === filteringField.value');
opt = document.createElement("option");
opt.value = optdata.code;
opt.text = optdata.name;
opt.label = optdata.name;
selectbox.appendChild(opt);
}
}
}else{
opt = document.createElement("option");
opt.value = optdata.code;
opt.text = optdata.name;
opt.label = optdata.name;
selectbox.appendChild(opt);
}
}
}
break;
case "multiple":
////console.log('_feedDynamicLists multiple : ' + this._datas[index].fieldId + 'area');
var multiplediv = document.getElementById(this._datas[index].fieldId + 'area');
if (multiplediv != null) {
var options = this._datas[index].data;
var multiplehtmlcontent = '';
for (i = 0; i < options.length; ++i) {
var optdata = options[i];
var filteringField = document.getElementById(this._datas[index].formParentFieldId);
if((optdata.parentValue !== null && optdata.parentValue !== undefined) &&
(filteringField !== null && filteringField !== undefined)){
if(filteringField !== null && filteringField !== undefined){
if(optdata.parentValue === filteringField.value){
multiplehtmlcontent += '' + optdata.name + '
';
}
}
}else
multiplehtmlcontent += '' + optdata.name + '
';
}
multiplediv.innerHTML = multiplehtmlcontent;
}
break;
}
}
}
};
this._feedDynamicList = function(fields,filteringValue){
for (var ind = 0; ind < this._datas.length; ++ind){
var field = fields[ind];
// //console.log('_feedDynamicList : field : ' + field + ' , filteringValue :' + filteringValue);
var fieldDatas = {};
for (var index = 0; index < this._datas.length; ++index) {
if(this._datas[index].fieldId === field) {
fieldDatas = this._datas[index];
break;
}
}
switch (fieldDatas.type) {
case "simple":
var selectbox = document.getElementById(this._datas[index].fieldId);
if (selectbox != null) {
//vider le champ
var length = selectbox.options.length;
for (i = 0; i < length+1; i++) {
selectbox.remove(1);
}
// remplir la liste d�roulante
opt = document.createElement("option");
opt.value = '';
opt.text = '';
opt.label = '';
//selectbox.appendChild(opt);
var options = fieldDatas.data;
for (i = 0; i < options.length; ++i) {
var optdata = options[i];
if(filteringValue !== null){
if(optdata.parentValue === filteringValue){
opt = document.createElement("option");
opt.value = optdata.code;
opt.text = optdata.name;
opt.label = optdata.name;
selectbox.appendChild(opt);
}
}else{
opt = document.createElement("option");
opt.value = optdata.code;
opt.text = optdata.name;
opt.label = optdata.name;
selectbox.appendChild(opt);
}
}
}
break;
case "multiple":
// //console.log('_feedDynamicList multiple : ' + this._datas[index].fieldId + 'area');
var multiplediv = document.getElementById(this._datas[index].fieldId + 'area');
if (multiplediv != null) {
var options = this._datas[index].data;
var multiplehtmlcontent = '';
for (i = 0; i < options.length; ++i) {
var optdata = options[i];
if(filteringValue !== null){
if(optdata.parentValue === filteringValue){
multiplehtmlcontent += '' + optdata.name + '
';
}
}else
multiplehtmlcontent += '' + optdata.name + '
';
}
multiplediv.innerHTML = multiplehtmlcontent;
}
break;
}
}
};
this._inject = function(src, type) { // fonction qui permet d'injecter un css ou un javascript dynamiquement dans la page
type = type || 'js';
if (type == 'js') {
var s = document.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = src;
} else if (type == 'css') {
var s = document.createElement('link');
s.type = 'text/css';
s.rel = 'stylesheet';
s.href = src;
}
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(s);
};
this._serializeform = function(form, format) {
switch (format) {
case 'uri':
if (!form || form.nodeName !== "FORM") {
return;
}
var i, j, q = [];
for (i = form.elements.length - 1; i >= 0; i = i - 1) {
if (form.elements[i].name === "") {
continue;
}
switch (form.elements[i].nodeName) {
case 'INPUT':
switch (form.elements[i].type) {
case 'text':
q.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value));
break;
case 'textarea':
q.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value));
break;
case 'hidden':
case 'password':
case 'button':
case 'reset':
case 'date':
q.push(form.elements[i].name + "=" + form.elements[i].value);
break;
case 'number':
q.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value));
break;
case 'submit':
q.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value));
break;
case 'checkbox':
case 'radio':
if (form.elements[i].checked) {
q.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value));
} else q.push(form.elements[i].name + "=");
break;
case 'file':
break;
}
break;
case 'TEXTAREA':
q.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value));
break;
case 'SELECT':
switch (form.elements[i].type) {
case 'select-one':
q.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value));
break;
case 'select-multiple':
for (j = form.elements[i].options.length - 1; j >= 0; j = j - 1) {
if (form.elements[i].options[j].selected) {
q.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].options[j].value));
}
}
break;
}
break;
case 'BUTTON':
switch (form.elements[i].type) {
case 'reset':
case 'submit':
case 'button':
q.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value));
break;
}
break;
}
}
return q.join("&");
break;
case 'rest':
if (!form || form.nodeName !== "FORM") {
return;
}
//var i, j, q = [];
var i, j = [];
var q = {};
for (i = form.elements.length - 1; i >= 0; i = i - 1) {
if (form.elements[i].name === "") {
continue;
}
switch (form.elements[i].nodeName) {
case 'INPUT':
switch (form.elements[i].type) {
case 'text':
q[form.elements[i].name] = form.elements[i].value;
break;
case 'textarea':
q[form.elements[i].name] = form.elements[i].value;
break;
case 'hidden':
break;
case 'password':
break;
case 'button':
break;
case 'reset':
break;
case 'date':
q[form.elements[i].name] = form.elements[i].value;
break;
case 'number':
q[form.elements[i].name] = form.elements[i].value;
break;
case 'submit':
q[form.elements[i].name] = form.elements[i].value;
break;
case 'checkbox':
break;
case 'radio':
if (form.elements[i].checked) {
q[form.elements[i].name] = form.elements[i].value;
} else {
q[form.elements[i].name] = "";
}
break;
case 'file':
break;
}
break;
case 'TEXTAREA':
q[form.elements[i].name] = form.elements[i].value;
break;
case 'SELECT':
switch (form.elements[i].type) {
case 'select-one':
q[form.elements[i].name] = form.elements[i].value;
break;
case 'select-multiple':
var selected = [];
for (j = form.elements[i].options.length - 1; j >= 0; j = j - 1) {
if (form.elements[i].options[j].selected) {
selected.push(form.elements[i].options[j].value);
}
}
q[form.elements[i].name] = selected;
break;
}
break;
case 'BUTTON':
switch (form.elements[i].type) {
case 'reset':
break;
case 'submit':
break;
case 'button':
q[form.elements[i].name] = form.elements[i].value;
break;
}
break;
}
}
return q;
break;
}
};
this._valideasiform = function() {
// Ajouter des test pour les champs obligatoire
var elements = document.forms['easiform'].elements;
var errorfields = '';
var errorfieldsarray = [];
var errorfieldsnamearray = [];
var validationError = false;
var errorMessage = "";
// Traitement des liens multiple avec des checbox :
var inputgroups = jQuery('#easiform .multiplechoicearea');
for (i = 0; i < inputgroups.length; i++) {
var inputgroup = inputgroups[i];
if (inputgroup.getAttribute('mandatory') == 'true') { // checboxes obligatoires
var empty = true;
var checkboxes = inputgroup.getElementsByTagName('input');
for (j = 0; j < checkboxes.length; j++) {
var element = checkboxes[j];
var value = element.checked;
if (element.checked) {
empty = false;
break;
}
}
if (empty) {
errorfieldsarray.push(element);
errorfieldsnamearray.push(inputgroup.getAttribute('label'));
validationError = true
}
}
}
//Champs obligatoires
for (i = 0; i < elements.length; i++) {
var element = elements[i];
var value = element.value;
if ((element.value == null || element.value == '') && element.getAttribute('mandatory') == 'true') {
errorfieldsarray.push(element);
errorfieldsnamearray.push(element.getAttribute('label'));
validationError = true
}
}
//construction du message d'erreur :
errorMessage = this._mandatoryFieldEmptyMessage.replace("%P1", errorfieldsnamearray.join());
// Test du champs email :
//D?tection du champs email
if(!validationError){
var emailfield = document.getElementById("fld_Email");
if(emailfield !== null && emailfield !== undefined ) {
if(emailfield.value !== null && emailfield.value !== undefined && emailfield.value.length>0 ){
var checkEmailFormat = this._checkEmail(emailfield.value)
if(!checkEmailFormat) {
validationError = true;
errorMessage = this._MailErrorMessage;
}
}
}
}
//ajouter un test li� au recaptcha
if(this._recaptchaResponseOK){
errorMessage = "captcha OFF";
validationError = true;
}
if (validationError) {
alert(errorMessage);
valid = false;
return valid;
} else {// si pas d'ereur on submit
jQuery('#validatebutton').addClass('disabled-validatebutton');
jQuery("#easiformWaiting").show();
//Param�tres syst�me
var systemParams = {};
systemParams["fld_formid"] = this._formid;
systemParams["fld_lang"] = this._language;
systemParams["recaptcha_token"] = _recaptchaResponseToken;
////console.log("System Params : ");console.dir(systemParams);
//donn�es du formulaire (type "simple")
var formSimpleData = this._serializeform(document.forms['easiform'], 'rest');
var filesNames = {};
var filesData = {};
//Appel ? la fonction JS en REST
jQuery.support.cors = true; //n?cessaire pour IE10 et IE11
jQuery.ajax({
url: this._formurl,
type:"POST",
data: JSON.stringify({
"fct_name": "jsCreateWebRequest",
"authentication" : {
"userid" : this._restUserId,
"password" : this._restPwd
},
"params": {
"odSystemParams": systemParams,
"odSimpleData" : formSimpleData,
"odInputFiles" : _fileFields
}
}),
contentType:"application/json",
dataType:"json",
crossDomain : true,
success: function(resultSuccess) {
if (resultSuccess) {
if(resultSuccess.status == "OK") {
//console.log("Call OK !");
//console.dir(resultSuccess);
var data = JSON.parse(resultSuccess.data);
if (data.result == 'success') {
jQuery("#easiformWaiting").hide();
//Affichage message de remerciement
if (_thankmessage !== null && _thankmessage.length > 0) alert(_thankmessage);
//Si redirection d�finie, redirection vers URL donn�e
if (data.redirection_url != null && data.redirection_url.length > 0) {
// window.open(data.redirecution_url,'_self');
if(config.redirectionMode=="_blank"){
window.open(data.redirection_url,config.redirectionMode);
}
else {
window.location.href = data.redirection_url;
}
} else {
//Sinon, affichage message de remerciement en lieu et place du formulaire
if (data.thankmessage != null && data.thankmessage.length > 0) {
jQuery('#easiformarea').html(data.thankmessage);
}
}
} else {
//Erreur easiware => consultant ou autre
jQuery("#easiformWaiting").hide();
alert(data.message);
if(_recaptchaEnabled) if (typeof $('#easi_recaptcha_div') != "undefined") { grecaptcha.reset(); }
}
} else {
jQuery("#easiformWaiting").hide();
//console.log("Call OK with status = KO : " + resultSuccess.error);
}
} else {
jQuery("#easiformWaiting").hide();
}
},
error: function (resultError) {
jQuery("#easiformWaiting").hide();
if(_recaptchaEnabled) if (typeof $('#easi_recaptcha_div') != "undefined") { grecaptcha.reset(); }
////console.log("Call KO !")
//console.dir(resultError);
}
});
return true;
}
};
this._createform = function() {
var formtosend ='';
if(this._htmlcontent.length>0){
formtosend = '