154 lines
4.4 KiB
JavaScript
154 lines
4.4 KiB
JavaScript
var Webforms ={
|
|
|
|
confirmAction:function(msg){
|
|
return confirm(msg);
|
|
},
|
|
deleteForm:function(formname,id){
|
|
if (typeof webforms_alert_arr != 'undefined') {
|
|
var status=Webforms.confirmAction(getTranslatedString('LBL_DELETE_MSG', webforms_alert_arr));
|
|
} else {
|
|
var status=Webforms.confirmAction(getTranslatedString('LBL_DELETE_MSG'));
|
|
}
|
|
if(!status){
|
|
return false;
|
|
}
|
|
Webforms.submitForm(formname, 'index.php?module=Webforms&action=Delete&id='+id);
|
|
return true;
|
|
},
|
|
editForm:function(id){
|
|
Webforms.submitForm('action_form', 'index.php?module=Webforms&action=WebformsEditView&id='+id+'&parenttab=Settings&operation=edit');
|
|
},
|
|
submitForm:function(formName,action){
|
|
document.forms[formName].action=action;
|
|
document.forms[formName].submit();
|
|
},
|
|
showHideElement:function(){
|
|
var i;
|
|
var len=arguments.length;
|
|
for(i=0;i<len;i++){
|
|
if($(arguments[i])){
|
|
if($(arguments[i]).style.display!="none"){
|
|
$(arguments[i]).style.display="none";
|
|
}else{
|
|
$(arguments[i]).style.display="inline";
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
validateForm: function(form,action) {
|
|
var name=$('name').value;
|
|
var ownerid=$('ownerid').value;
|
|
var module=$('targetmodule').value;
|
|
if((name=="")||(name==null)||(ownerid=="")||(ownerid==null)||(module=="")||(module==null)){
|
|
if (typeof webforms_alert_arr != 'undefined') {
|
|
alert(getTranslatedString('LBL_MADATORY_FIELDS', webforms_alert_arr));
|
|
} else {
|
|
alert(getTranslatedString('LBL_MADATORY_FIELDS'));
|
|
}
|
|
return false;
|
|
}
|
|
elem=document.getElementById(form).elements;
|
|
elemNo=document.getElementById(form).elements.length;
|
|
for(i=0;i<elemNo;i++){
|
|
if((elem[i].value!='' && elem[i].value!=null) && (elem[i].getAttribute('fieldtype')!=null && elem[i].getAttribute('fieldtype')!='') && elem[i].style.display!='none' ){
|
|
switch(elem[i].getAttribute('fieldtype')){
|
|
case 'date' :if(!dateValidate(elem[i].name,elem[i].getAttribute('fieldlabel'),elem[i].getAttribute('fieldtype')))
|
|
return false;
|
|
break;
|
|
case 'time' :if(!timeValidate(elem[i].name,elem[i].getAttribute('fieldlabel'),elem[i].getAttribute('fieldtype')))
|
|
return false;
|
|
break;
|
|
case 'currency':
|
|
case 'number':
|
|
case 'double' :if(!numValidate(elem[i].name,elem[i].getAttribute('fieldlabel'),elem[i].getAttribute('fieldtype')))
|
|
return false;
|
|
break;
|
|
case 'email' :if(!patternValidate(elem[i].name,elem[i].getAttribute('fieldlabel'),elem[i].getAttribute('fieldtype')))
|
|
return false;
|
|
break;
|
|
default :break;
|
|
|
|
|
|
}
|
|
}
|
|
}
|
|
if(mode=="save")
|
|
Webforms.checkName(name,form,action);
|
|
else
|
|
Webforms.submitForm(form, action);
|
|
return false;
|
|
},
|
|
|
|
getHTMLSource:function(id){
|
|
var url = "module=Webforms&action=WebformsAjax&file=WebformsHTMLView&ajax=true&id=" + encodeURIComponent(id);
|
|
|
|
VtigerJS_DialogBox.block();
|
|
new Ajax.Request('index.php', {
|
|
queue: {
|
|
position: 'end',
|
|
scope: 'command'
|
|
},
|
|
method: 'post',
|
|
postBody:url,
|
|
onComplete: function(response) {
|
|
VtigerJS_DialogBox.unblock();
|
|
var str = response.responseText
|
|
$('webform_source').innerText = str;
|
|
$('webform_source').value=str;
|
|
$('orgLay').style.display="block";
|
|
}
|
|
});
|
|
},
|
|
|
|
fetchFieldsView: function(module) {
|
|
if((module=="")||(module==null)) return;
|
|
var url = "module=Webforms&action=WebformsAjax&file=WebformsFieldsView&ajax=true&targetmodule=" + encodeURIComponent(module);
|
|
|
|
VtigerJS_DialogBox.block();
|
|
new Ajax.Request('index.php', {
|
|
queue: {
|
|
position: 'end',
|
|
scope: 'command'
|
|
},
|
|
method: 'post',
|
|
postBody:url,
|
|
onComplete: function(response) {
|
|
VtigerJS_DialogBox.unblock();
|
|
var str = response.responseText;
|
|
$('Webforms_FieldsView').innerHTML = str;
|
|
eval(document.getElementById('counter').innerHTML);
|
|
for(i=1;i<=count;i++){
|
|
if(document.getElementById("date_"+i)){
|
|
eval(document.getElementById("date_"+i).innerHTML);
|
|
}
|
|
}
|
|
}
|
|
});
|
|
},
|
|
checkName: function(name,form,action) {
|
|
if((name=="")||(name==null)) return;
|
|
var url = "module=Webforms&action=WebformsAjax&file=Save&ajax=true&name=" + encodeURIComponent(name);
|
|
|
|
new Ajax.Request('index.php', {
|
|
queue: {
|
|
position: 'end',
|
|
scope: 'command'
|
|
},
|
|
method: 'post',
|
|
postBody:url,
|
|
onComplete: function(response) {
|
|
var JSONres = JSON.parse(response.responseText);
|
|
if(JSONres.result==false){
|
|
alert(getTranslatedString('LBL_DUPLICATE_NAME', webforms_alert_arr));
|
|
}
|
|
else{
|
|
Webforms.submitForm(form, action);
|
|
}
|
|
}
|
|
});
|
|
|
|
}
|
|
}
|
|
|