More refactoring in js code
This commit is contained in:
@@ -186,7 +186,7 @@
|
||||
</div>
|
||||
<div class="inputcontainer">
|
||||
<div class="divselect" id="divapptype" style="width:135px;">
|
||||
<select id="apptype" name="apptype" style="width:153px" onchange="ToggleChks((this.value.toUpperCase()!='APPLICANT' && this.value.toUpperCase()!='-1'),'sradd!C0L!soadd!C0L!spadd!C0L!','!C0L!')" onblur="CygnusInitiationValidation.validateField(this);">
|
||||
<select id="apptype" name="apptype" style="width:153px" onchange="ToggleChks((this.value.toUpperCase()!='APPLICANT' && this.value.toUpperCase()!='-1'),['sradd','soadd','spadd'])" onblur="CygnusInitiationValidation.validateField(this);">
|
||||
<option value="-1" selected>SELECT</option>
|
||||
<c:choose>
|
||||
<c:when test="${not empty model}"><c:forEach items="${model.options['applicationType.']}" var="option"><option value="${option.value}"><c:out value="${option.label}" /></option></c:forEach></c:when>
|
||||
|
||||
@@ -33,6 +33,15 @@
|
||||
refname2: sectionRule("refv", { format: "AlphaSpace" }), refaddress2: sectionRule("refv", { format: "SplInstruction" }),
|
||||
refcontactno2: sectionRule("refv", { format: "Phone" })
|
||||
};
|
||||
const VERIFICATION_GROUPS = Object.freeze({
|
||||
rv: ["raddr1", "raddr2", "raddr3", "rlandmark", "rcity", "colr", "rpincode"],
|
||||
rtv: ["rphone"],
|
||||
ov: ["companyname", "oaddr1", "oaddr2", "oaddr3", "olandmark", "ocity", "colo",
|
||||
"opincode", "department", "designation"],
|
||||
otv: ["ophone"],
|
||||
pv: ["paddr1", "paddr2", "paddr3", "plandmark", "pcity", "colp", "ppincode"],
|
||||
refv: ["refname1", "refaddress1", "refcontactno1"]
|
||||
});
|
||||
|
||||
function registerDynamicRules(form) {
|
||||
if (!form) return;
|
||||
@@ -56,6 +65,15 @@
|
||||
return window.CygnusFormValidation.validateRules(RULES);
|
||||
}
|
||||
|
||||
function validateVerification(verificationId) {
|
||||
const invalid = [];
|
||||
(VERIFICATION_GROUPS[verificationId] || []).forEach(function (fieldId) {
|
||||
const field = element(fieldId);
|
||||
if (!validateField(field)) invalid.push(field);
|
||||
});
|
||||
return { valid: invalid.length === 0, invalid: invalid };
|
||||
}
|
||||
|
||||
function bind(form) {
|
||||
if (!form || form.dataset.initiationValidationBound === "true") return;
|
||||
registerDynamicRules(form);
|
||||
@@ -70,6 +88,7 @@
|
||||
rules: RULES,
|
||||
bind: bind,
|
||||
validateField: validateField,
|
||||
validateVerification: validateVerification,
|
||||
validateForm: validateForm
|
||||
});
|
||||
}(window, document));
|
||||
|
||||
@@ -5,19 +5,21 @@
|
||||
* address copying and duplicate-address lookup. The encrypted JSON save
|
||||
* workflow is intentionally isolated in application-save.js.
|
||||
*/
|
||||
var records=new Array(1);
|
||||
var fields=new Array(1);
|
||||
var records=[];
|
||||
var fields=[[]];
|
||||
var recIndx = 0;
|
||||
var recpos = 0;
|
||||
var autocut = 0;
|
||||
var SameAddr=new Array(0);
|
||||
var AddrElem=new Array(4);
|
||||
var SameAddr=[];
|
||||
var AddrElem=[
|
||||
["rv","raddr1","raddr2","raddr3","rlandmark","Rcolony","colr","rcity","rpincode","rphone"],
|
||||
["ov","companyname","oaddr1","oaddr2","oaddr3","olandmark","Ocolony","colo","ocity","opincode","ophone","extension"],
|
||||
["pv","paddr1","paddr2","paddr3","plandmark","Pcolony","colp","pcity","ppincode"],
|
||||
["bankcode","bankcode","bank_branch_id","product","loanamount","apptype","contactperson","specialinst"]
|
||||
];
|
||||
var selectedAddr=-1;
|
||||
var FocusAfter="customername";
|
||||
AddrElem[0]=["rv","raddr1","raddr2","raddr3","rlandmark","Rcolony","colr","rcity","rpincode","rphone"];
|
||||
AddrElem[1]=["ov","companyname","oaddr1","oaddr2","oaddr3","olandmark","Ocolony","colo","ocity","opincode","ophone","extension"];
|
||||
AddrElem[2]=["pv","paddr1","paddr2","paddr3","plandmark","Pcolony","colp","pcity","ppincode"];
|
||||
AddrElem[3]=["bankcode","bankcode","bank_branch_id","product","loanamount","apptype","contactperson","specialinst"];
|
||||
var CHECKBOX_FIELDS=new Set(["rv","sradd","rtv","ov","soadd","otv","rco","pv","rcp","ocp","spadd","refv","docv"]);
|
||||
var DUPLICATE_OPERATION={R:19,O:20,P:21,A:22};
|
||||
|
||||
function InitPage()
|
||||
{
|
||||
@@ -88,7 +90,7 @@ function AddNewRecord()
|
||||
var cols=fields[0].length;
|
||||
recIndx = recIndx+1;
|
||||
recpos = recIndx-1;
|
||||
records[recpos]=new Array(cols);
|
||||
records[recpos]=Array(cols);
|
||||
records[recpos][0]='0';
|
||||
records[recpos][1]=$("#portfolio_id").val();
|
||||
records[recpos][cols-4]='0';
|
||||
@@ -105,103 +107,45 @@ function AddNewRecord()
|
||||
}
|
||||
function AfterResponse(response,oprID)
|
||||
{
|
||||
var rindx=0;
|
||||
if(oprID==1)
|
||||
{
|
||||
$("#ajaxmsg").remove();
|
||||
if(response.trim().search('Error')==-1)
|
||||
{
|
||||
var rows=response.split(RowDelim);
|
||||
for(rindx=0;rindx<rows.length-1;rindx++)
|
||||
{
|
||||
var cindx=0;
|
||||
var cols=rows[rindx].split(ColDelim);
|
||||
if(rindx==0)
|
||||
{
|
||||
fields[rindx]=new Array(cols.length);
|
||||
}
|
||||
else
|
||||
{
|
||||
records[rindx-1]=new Array(cols.length);
|
||||
}
|
||||
for(cindx=0;cindx<cols.length;cindx++)
|
||||
{
|
||||
if(rindx==0)
|
||||
{
|
||||
fields[rindx][cindx]=cols[cindx];
|
||||
}
|
||||
else
|
||||
{
|
||||
records[rindx-1][cindx]=cols[cindx];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
CygnusNotifications.showLegacy(response,{duration:3000});
|
||||
}
|
||||
recIndx= rindx==0 ? rindx : rindx-1;
|
||||
$("#recfound").html("<b>( 0 / "+(recIndx==0 ? "0" : recIndx)+" )</b>");
|
||||
recpos=recIndx==0 ? 0 : recIndx-1;
|
||||
FillDetails(recpos);
|
||||
}
|
||||
else if(oprID==2)
|
||||
{
|
||||
var collen=fields[0].length;
|
||||
$("#ajaxmsg").remove();
|
||||
if(response.trim().search('Error')==-1)
|
||||
{
|
||||
if(autocut==1)
|
||||
{
|
||||
records[recpos][collen-4]='1';
|
||||
}
|
||||
if($("#case_id").val()!='0')
|
||||
{
|
||||
findRecord(3);
|
||||
}
|
||||
else
|
||||
{
|
||||
records[recpos][2]=response.split(ColDelim)[0];
|
||||
records[recpos][0]=response.split(ColDelim)[1];
|
||||
records[recpos][collen-1]=response.split(ColDelim)[2];
|
||||
AddNewRecord();
|
||||
}
|
||||
CygnusNotifications.show({type:"info",code:"1001IRNG",message:"Record updated successfully",duration:3000});
|
||||
}
|
||||
else
|
||||
{
|
||||
records[recpos][collen-4]='-1';
|
||||
CygnusNotifications.showLegacy(response,{duration:3000});
|
||||
}
|
||||
}
|
||||
else if(oprID==19 || oprID==20 || oprID==21 || oprID==22)
|
||||
if(oprID==1) handleRecordsResponse(response);
|
||||
else if(oprID>=19 && oprID<=22) handleDuplicateDetailsResponse(response,oprID);
|
||||
}
|
||||
function handleRecordsResponse(response)
|
||||
{
|
||||
$("#ajaxmsg").remove();
|
||||
var rowCount=0;
|
||||
if(response.trim().search('Error')==-1)
|
||||
{
|
||||
var TabRows=response.split(RowDelim);
|
||||
for(var indx=0;indx<TabRows.length-1;indx++)
|
||||
{
|
||||
if($("#portfolio_id").val()==81)
|
||||
{
|
||||
var appl = $("#applno").val();
|
||||
CygnusNotifications.show({type:"warning",code:"APP-DUPLICATE",message:"Application number "+appl+" already exists.",duration:3000});
|
||||
appl= (appl.search('_1') < 0 ? appl+'_1' : appl.split('_')[0]+'_'+(parseInt(appl.split('_')[1])+1));
|
||||
$("#applno").val(appl);
|
||||
validate(document.getElementById('applno'),'t','AlphaNumeric');
|
||||
document.getElementById('applno').focus();
|
||||
}
|
||||
else
|
||||
{
|
||||
var TabCols=TabRows[indx].split(ColDelim);
|
||||
SameAddr[indx]=new Array(TabCols.length);
|
||||
for(var cindx=0;cindx<TabCols.length;cindx++)
|
||||
{
|
||||
SameAddr[indx][cindx]=TabCols[cindx];
|
||||
}
|
||||
}
|
||||
}
|
||||
SelectAddr(oprID-19);
|
||||
var rows=response.split(RowDelim);
|
||||
fields[0]=rows[0].split(ColDelim);
|
||||
records=[];
|
||||
for(var index=1;index<rows.length-1;index++) records.push(rows[index].split(ColDelim));
|
||||
rowCount=rows.length-1;
|
||||
}
|
||||
else CygnusNotifications.showLegacy(response,{duration:3000});
|
||||
recIndx=rowCount==0 ? 0 : rowCount-1;
|
||||
updateRecordCounter(0,recIndx);
|
||||
recpos=recIndx==0 ? 0 : recIndx-1;
|
||||
FillDetails(recpos);
|
||||
}
|
||||
function handleDuplicateDetailsResponse(response,oprID)
|
||||
{
|
||||
var rows=response.split(RowDelim).slice(0,-1);
|
||||
if($("#portfolio_id").val()==81)
|
||||
{
|
||||
for(var index=0;index<rows.length;index++) incrementDuplicateApplicationNumber();
|
||||
}
|
||||
else SameAddr=rows.map(function(row){return row.split(ColDelim);});
|
||||
SelectAddr(oprID-19);
|
||||
}
|
||||
function incrementDuplicateApplicationNumber()
|
||||
{
|
||||
var appl=$("#applno").val();
|
||||
CygnusNotifications.show({type:"warning",code:"APP-DUPLICATE",message:"Application number "+appl+" already exists.",duration:3000});
|
||||
appl=appl.search('_1')<0 ? appl+'_1' : appl.split('_')[0]+'_'+(parseInt(appl.split('_')[1])+1);
|
||||
$("#applno").val(appl);
|
||||
CygnusInitiationValidation.validateField(document.getElementById('applno'));
|
||||
document.getElementById('applno').focus();
|
||||
}
|
||||
function findRecord(arrOpr)
|
||||
{
|
||||
@@ -227,50 +171,10 @@ function FillDetails(indx)
|
||||
if(recIndx > 0)
|
||||
{
|
||||
document.forms['casedetails'].reset();
|
||||
$("#recfound").html("<b>( "+(indx+1)+" / "+(recIndx==0 ? "0" : recIndx)+" )</b>");
|
||||
var findx=0;
|
||||
for(findx=0;findx<fields[0].length;findx++)
|
||||
{
|
||||
if($("#"+fields[0][findx]).length > 0)
|
||||
{
|
||||
if(fields[0][findx]=='rv' || fields[0][findx]=='sradd' || fields[0][findx]=='rtv' ||
|
||||
fields[0][findx]=='ov' || fields[0][findx]=='soadd' || fields[0][findx]=='otv' || fields[0][findx]=='rco'
|
||||
|| fields[0][findx]=='pv' || fields[0][findx]=='rcp' || fields[0][findx]=='ocp' || fields[0][findx]=='spadd'|| fields[0][findx]=='refv'|| fields[0][findx]=='docv')
|
||||
{
|
||||
|
||||
if(fields[0][findx]=='docv')
|
||||
{
|
||||
if($("#"+fields[0][findx]).is(":visible"))
|
||||
{
|
||||
$("#"+fields[0][findx]).attr('checked',true);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(records[indx][findx]=='1')
|
||||
{
|
||||
$("#"+fields[0][findx]).attr('checked',true);
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#"+fields[0][findx]).attr('checked',false);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#"+fields[0][findx]).val(records[indx][findx]);
|
||||
}
|
||||
}
|
||||
}
|
||||
if($("#status").val()=='1')
|
||||
{
|
||||
$("#btnsave").hide();
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#btnsave").show();
|
||||
}
|
||||
updateRecordCounter(indx+1,recIndx);
|
||||
for(var fieldIndex=0;fieldIndex<fields[0].length;fieldIndex++)
|
||||
fillRecordField(fields[0][fieldIndex],records[indx][fieldIndex]);
|
||||
$("#btnsave").toggle($("#status").val()!='1');
|
||||
FireClickEvents();
|
||||
document.getElementById("applno").focus();
|
||||
}
|
||||
@@ -280,97 +184,69 @@ function FillDetails(indx)
|
||||
AddNewRecord();
|
||||
}
|
||||
}
|
||||
function fillRecordField(fieldName,fieldValue)
|
||||
{
|
||||
var field=document.getElementById(fieldName);
|
||||
if(!field) return;
|
||||
if(CHECKBOX_FIELDS.has(fieldName))
|
||||
{
|
||||
field.checked=fieldName=='docv' ? $(field).is(":visible") : fieldValue=='1';
|
||||
return;
|
||||
}
|
||||
field.value=fieldValue;
|
||||
}
|
||||
function updateRecordCounter(current,total)
|
||||
{
|
||||
$("#recfound").html("<b>( "+current+" / "+total+" )</b>");
|
||||
}
|
||||
function FireClickEvents()
|
||||
{
|
||||
HandleClick(document.getElementById('rv'));
|
||||
HandleClick(document.getElementById('ov'));
|
||||
HandleClick(document.getElementById('rtv'));
|
||||
HandleClick(document.getElementById('otv'));
|
||||
HandleClick(document.getElementById('pv'));
|
||||
HandleClick(document.getElementById('refv'));
|
||||
["rv","ov","rtv","otv","pv","refv"].forEach(function(id){HandleClick(document.getElementById(id));});
|
||||
}
|
||||
function FireToggleEvents()
|
||||
{
|
||||
ToggleChks((document.getElementById('rv').checked && document.getElementById('ov').checked),'rco'+ColDelim,ColDelim);
|
||||
ToggleChks((document.getElementById('apptype').value.toUpperCase()!='APPLICANT' && document.getElementById('apptype').value.toUpperCase()!='-1'),'sradd!C0L!soadd!C0L!spadd!C0L!','!C0L!');
|
||||
ToggleChks((document.getElementById('rv').checked),'rcp'+ColDelim,ColDelim);
|
||||
ToggleChks((document.getElementById('ov').checked),'ocp'+ColDelim,ColDelim);
|
||||
ToggleChks(document.getElementById('rv').checked && document.getElementById('ov').checked,["rco"]);
|
||||
var applicationType=document.getElementById('apptype').value.toUpperCase();
|
||||
ToggleChks(applicationType!='APPLICANT' && applicationType!='-1',["sradd","soadd","spadd"]);
|
||||
ToggleChks(document.getElementById('rv').checked,["rcp"]);
|
||||
ToggleChks(document.getElementById('ov').checked,["ocp"]);
|
||||
}
|
||||
function HandleClick(el)
|
||||
{
|
||||
if(el.id=='rv')
|
||||
{
|
||||
setFormValidation(el,'FormPanel2','raddr1,raddr2,raddr3,rlandmark,rcity,colr,rpincode','t,f,t,f,t,t,f','SplInstruction,SplInstruction,SplInstruction,SplInstruction,,SplInstruction,Pincode',document.getElementById('rtv').checked);
|
||||
EnableDisableFields(el.checked,'raddr1,raddr2,raddr3,rlandmark,colr,rpincode',',');
|
||||
}
|
||||
if(el.id=='rtv')
|
||||
{
|
||||
setFormValidation(el,'FormPanel2','rphone','t','Phone',document.getElementById('rv').checked);
|
||||
}
|
||||
if(el.id=='ov')
|
||||
{
|
||||
setFormValidation(el,'FormPanel3','companyname,oaddr1,oaddr2,oaddr3,olandmark,ocity,colo,opincode,department,designation','f,t,f,t,f,t,t,f,f,f','SplInstruction,SplInstruction,SplInstruction,SplInstruction,SplInstruction,,SplInstruction,Pincode,SplInstruction,SplInstruction',document.getElementById('otv').checked);
|
||||
EnableDisableFields(el.checked,'oaddr1,oaddr2,oaddr3,olandmark,colo,opincode',',');
|
||||
}
|
||||
if(el.id=='rco')
|
||||
{
|
||||
if(el.checked)
|
||||
{
|
||||
AutoFill('rco',1);
|
||||
}
|
||||
else
|
||||
{AutoFill('rco',0);}
|
||||
}
|
||||
if(el.id=='otv')
|
||||
{
|
||||
setFormValidation(el,'FormPanel3','ophone','t','Phone',document.getElementById('ov').checked);
|
||||
}
|
||||
if(el.id=='pv')
|
||||
{
|
||||
setFormValidation(el,'FormPanel4','paddr1,paddr2,paddr3,plandmark,pcity,colp,ppincode','t,f,t,f,t,t,f','SplInstruction,SplInstruction,SplInstruction,SplInstruction,,SplInstruction,Pincode',false);
|
||||
EnableDisableFields(el.checked,'paddr1,paddr2,paddr3,plandmark,colp,ppincode',',');
|
||||
if(!el.checked)
|
||||
{
|
||||
var chkrcp=document.getElementById('rcp');
|
||||
chkrcp.checked=false;
|
||||
var chkocp=document.getElementById('ocp');
|
||||
chkocp.checked=false;
|
||||
}
|
||||
}
|
||||
if(el.id=='rcp')
|
||||
{
|
||||
if(el.checked)
|
||||
{
|
||||
AutoFill('rcp',1);
|
||||
var chkocp=document.getElementById('ocp');
|
||||
chkocp.checked=false;
|
||||
var chkprop=document.getElementById('pv');
|
||||
chkprop.checked=true;
|
||||
HandleClick(chkprop);
|
||||
}
|
||||
else
|
||||
{AutoFill('rcp',0);}
|
||||
}
|
||||
if(el.id=='ocp')
|
||||
{
|
||||
if(el.checked)
|
||||
{
|
||||
AutoFill('ocp',1);
|
||||
var chkrcp=document.getElementById('rcp');
|
||||
chkrcp.checked=false;
|
||||
var chkprop=document.getElementById('pv');
|
||||
chkprop.checked=true;
|
||||
HandleClick(chkprop);
|
||||
}
|
||||
else
|
||||
{AutoFill('ocp',0);}
|
||||
}
|
||||
if(el.id=='refv')
|
||||
{
|
||||
setFormValidation(el,'FormPanel5','refname1,refaddress1,refcontactno1','t,f,t','AlphaSpace,SplInstruction,Phone',false);
|
||||
}
|
||||
var handler=VERIFICATION_HANDLERS[el.id];
|
||||
if(handler) handler(el);
|
||||
}
|
||||
function setFormValidation(Elem,FormPanel,ChildElems,IsRequired,Validation,CounterPartElem)
|
||||
var VERIFICATION_HANDLERS={
|
||||
rv:function(el){
|
||||
setFormValidation(el,'FormPanel2',document.getElementById('rtv').checked);
|
||||
EnableDisableFields(el.checked,'raddr1,raddr2,raddr3,rlandmark,colr,rpincode',',');
|
||||
},
|
||||
rtv:function(el){setFormValidation(el,'FormPanel2',document.getElementById('rv').checked);},
|
||||
ov:function(el){
|
||||
setFormValidation(el,'FormPanel3',document.getElementById('otv').checked);
|
||||
EnableDisableFields(el.checked,'oaddr1,oaddr2,oaddr3,olandmark,colo,opincode',',');
|
||||
},
|
||||
otv:function(el){setFormValidation(el,'FormPanel3',document.getElementById('ov').checked);},
|
||||
pv:function(el){
|
||||
setFormValidation(el,'FormPanel4',false);
|
||||
EnableDisableFields(el.checked,'paddr1,paddr2,paddr3,plandmark,colp,ppincode',',');
|
||||
if(!el.checked){document.getElementById('rcp').checked=false;document.getElementById('ocp').checked=false;}
|
||||
},
|
||||
refv:function(el){setFormValidation(el,'FormPanel5',false);},
|
||||
rco:function(el){AutoFill('rco',el.checked ? 1 : 0);},
|
||||
rcp:function(el){handlePropertyCopy(el,'rcp','ocp');},
|
||||
ocp:function(el){handlePropertyCopy(el,'ocp','rcp');}
|
||||
};
|
||||
function handlePropertyCopy(el,copyType,otherCheckboxId)
|
||||
{
|
||||
AutoFill(copyType,el.checked ? 1 : 0);
|
||||
if(!el.checked) return;
|
||||
document.getElementById(otherCheckboxId).checked=false;
|
||||
var property=document.getElementById('pv');
|
||||
property.checked=true;
|
||||
HandleClick(property);
|
||||
}
|
||||
function setFormValidation(Elem,FormPanel,CounterPartElem)
|
||||
{
|
||||
if(Elem.checked || CounterPartElem)
|
||||
{
|
||||
@@ -380,100 +256,53 @@ function setFormValidation(Elem,FormPanel,ChildElems,IsRequired,Validation,Count
|
||||
{
|
||||
HideSections(FormPanel);
|
||||
}
|
||||
CheckForm(Elem,ChildElems,IsRequired,Validation);
|
||||
CygnusInitiationValidation.validateVerification(Elem.id);
|
||||
FireToggleEvents();
|
||||
}
|
||||
function CheckForm(Elem,ChildElems,IsRequired,Validation)
|
||||
{
|
||||
var Childs=ChildElems.split(",");
|
||||
for(var Indx=0;Indx<Childs.length;Indx++)
|
||||
{
|
||||
CygnusInitiationValidation.validateField(document.getElementById(Childs[Indx]));
|
||||
}
|
||||
}
|
||||
function AutoFill(Opt,FillMode)
|
||||
{
|
||||
var SourceFields="";
|
||||
var TargetFields="";
|
||||
var isSameAdd=false;
|
||||
if(Opt=='rco')
|
||||
{
|
||||
SourceFields="raddr1"+ColDelim+"raddr2"+ColDelim+"raddr3"+ColDelim+"Rcolony"+ColDelim+"colr"+ColDelim+"rcity"+ColDelim+"rlandmark"+ColDelim+"rpincode"+ColDelim+"rphone";
|
||||
TargetFields="oaddr1"+ColDelim+"oaddr2"+ColDelim+"oaddr3"+ColDelim+"Ocolony"+ColDelim+"colo"+ColDelim+"ocity"+ColDelim+"olandmark"+ColDelim+"opincode"+ColDelim+"ophone";
|
||||
if(document.getElementById('Rcolony').value==document.getElementById('Ocolony').value)
|
||||
{
|
||||
isSameAdd=true;
|
||||
}
|
||||
}
|
||||
else if(Opt=='rcp')
|
||||
{
|
||||
SourceFields="raddr1"+ColDelim+"raddr2"+ColDelim+"raddr3"+ColDelim+"Rcolony"+ColDelim+"colr"+ColDelim+"rcity"+ColDelim+"rlandmark"+ColDelim+"rpincode";
|
||||
TargetFields="paddr1"+ColDelim+"paddr2"+ColDelim+"paddr3"+ColDelim+"Pcolony"+ColDelim+"colp"+ColDelim+"pcity"+ColDelim+"plandmark"+ColDelim+"ppincode";
|
||||
if(document.getElementById('Rcolony').value==document.getElementById('Pcolony').value)
|
||||
{
|
||||
isSameAdd=true;
|
||||
}
|
||||
}
|
||||
else if(Opt=='ocp')
|
||||
{
|
||||
SourceFields="oaddr1"+ColDelim+"oaddr2"+ColDelim+"oaddr3"+ColDelim+"Ocolony"+ColDelim+"colo"+ColDelim+"ocity"+ColDelim+"olandmark"+ColDelim+"opincode";
|
||||
TargetFields="paddr1"+ColDelim+"paddr2"+ColDelim+"paddr3"+ColDelim+"Pcolony"+ColDelim+"colp"+ColDelim+"pcity"+ColDelim+"plandmark"+ColDelim+"ppincode";
|
||||
if(document.getElementById('Ocolony').value==document.getElementById('Pcolony').value)
|
||||
{
|
||||
isSameAdd=true;
|
||||
}
|
||||
}
|
||||
if(FillMode==1)
|
||||
{
|
||||
CopyDetails(SourceFields,TargetFields);
|
||||
}
|
||||
else if(FillMode==0 && isSameAdd)
|
||||
{
|
||||
ClearDetails(TargetFields);
|
||||
}
|
||||
var mapping=ADDRESS_COPY_MAPPINGS[Opt];
|
||||
if(!mapping) return;
|
||||
if(FillMode==1) CopyDetails(mapping.source,mapping.target);
|
||||
else if(document.getElementById(mapping.sourceColony).value==document.getElementById(mapping.targetColony).value)
|
||||
ClearDetails(mapping.target);
|
||||
}
|
||||
function ToggleChks(IsVisible,ChildElems,Delim)
|
||||
var ADDRESS_COPY_MAPPINGS={
|
||||
rco:{
|
||||
source:["raddr1","raddr2","raddr3","Rcolony","colr","rcity","rlandmark","rpincode","rphone"],
|
||||
target:["oaddr1","oaddr2","oaddr3","Ocolony","colo","ocity","olandmark","opincode","ophone"],
|
||||
sourceColony:"Rcolony",targetColony:"Ocolony"
|
||||
},
|
||||
rcp:{
|
||||
source:["raddr1","raddr2","raddr3","Rcolony","colr","rcity","rlandmark","rpincode"],
|
||||
target:["paddr1","paddr2","paddr3","Pcolony","colp","pcity","plandmark","ppincode"],
|
||||
sourceColony:"Rcolony",targetColony:"Pcolony"
|
||||
},
|
||||
ocp:{
|
||||
source:["oaddr1","oaddr2","oaddr3","Ocolony","colo","ocity","olandmark","opincode"],
|
||||
target:["paddr1","paddr2","paddr3","Pcolony","colp","pcity","plandmark","ppincode"],
|
||||
sourceColony:"Ocolony",targetColony:"Pcolony"
|
||||
}
|
||||
};
|
||||
function ToggleChks(IsVisible,ChildElems)
|
||||
{
|
||||
if(IsVisible)
|
||||
{
|
||||
UnhideSections(ChildElems,Delim);
|
||||
ChildElems.forEach(function(id){UnhideSections(id+ColDelim,ColDelim);});
|
||||
}
|
||||
else
|
||||
{
|
||||
var Childs=ChildElems.split(Delim);
|
||||
for(var indx=0;indx<Childs.length-1;indx++)
|
||||
{
|
||||
HideSections(Childs[indx]);
|
||||
document.getElementById(Childs[indx]).checked=false;
|
||||
}
|
||||
ChildElems.forEach(function(id){HideSections(id);document.getElementById(id).checked=false;});
|
||||
}
|
||||
}
|
||||
|
||||
function ClearDetails(TargetFields)
|
||||
{
|
||||
if(TargetFields.length!=0)
|
||||
{
|
||||
var TargetList=TargetFields.split(ColDelim);
|
||||
for(var pos=0;pos<TargetList.length;pos++)
|
||||
{
|
||||
$("#"+TargetList[pos]).val("");
|
||||
}
|
||||
}
|
||||
TargetFields.forEach(function(id){document.getElementById(id).value="";});
|
||||
}
|
||||
function CopyDetails(SourceFields,TargetFields)
|
||||
{
|
||||
if(SourceFields.length!=0 && TargetFields.length!=0)
|
||||
{
|
||||
var SourceList=SourceFields.split(ColDelim);
|
||||
var TargetList=TargetFields.split(ColDelim);
|
||||
if(SourceList.length==TargetList.length)
|
||||
{
|
||||
for(var pos=0;pos<SourceList.length;pos++)
|
||||
{
|
||||
$("#"+TargetList[pos]).val($("#"+SourceList[pos]).val());
|
||||
}
|
||||
}
|
||||
}
|
||||
SourceFields.forEach(function(id,index){document.getElementById(TargetFields[index]).value=document.getElementById(id).value;});
|
||||
}
|
||||
function AfterOptSelect(ElemToRemove,OprID)
|
||||
{
|
||||
@@ -522,7 +351,8 @@ function FillSameDet(AddrIndex,OprID)
|
||||
$("#"+AddrElem[OprID][cindx+1]).val((SameAddr[AddrIndex][cindx]));
|
||||
}
|
||||
document.getElementById(FocusAfter).focus();
|
||||
ToggleChks((document.getElementById('apptype').value.toUpperCase()!='APPLICANT' && document.getElementById('apptype').value.toUpperCase()!='-1'),'sradd!C0L!soadd!C0L!spadd!C0L!','!C0L!');
|
||||
var applicationType=document.getElementById('apptype').value.toUpperCase();
|
||||
ToggleChks(applicationType!='APPLICANT' && applicationType!='-1',["sradd","soadd","spadd"]);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -572,25 +402,23 @@ function FindSameDet(Elm,Visit,focAfter)
|
||||
}
|
||||
else
|
||||
{
|
||||
SameAddr=new Array(0); // Empty Address Array
|
||||
var oprId=(Visit=='R' ? 19:Visit=='O' ? 20:Visit=='P' ? 21:22);
|
||||
SameAddr=[];
|
||||
var oprId=DUPLICATE_OPERATION[Visit];
|
||||
var QryStr="val="+encodeURIComponent(Applno)+"&val1="+encodeURIComponent($("#portfolio_id").val())+"&val2="+encodeURIComponent(oprId);
|
||||
RunAjax("GET","findsdet",QryStr,oprId);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
function FindStr(el,elmids,rstfld)
|
||||
function FindStr(el,elmids)
|
||||
{
|
||||
el.value=el.value.split('->')[0];
|
||||
var skey=el.value.trim().toUpperCase();
|
||||
if(skey!='UNKNOWN' && skey!='-1')
|
||||
{
|
||||
var elms=elmids.split(ColDelim);
|
||||
var indx=0;
|
||||
for(indx=0;indx<elms.length;indx++)
|
||||
for(var indx=0;indx<elmids.length;indx++)
|
||||
{
|
||||
if($("#"+elms[indx]).val().toUpperCase().search(skey)>-1)
|
||||
if(document.getElementById(elmids[indx]).value.toUpperCase().search(skey)>-1)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
@@ -602,40 +430,46 @@ function FindStr(el,elmids,rstfld)
|
||||
}
|
||||
return false;
|
||||
}
|
||||
var ADDRESS_SECTIONS={
|
||||
r:{verification:"rv",city:"rcity",colony:"colr",colonyId:"Rcolony",addressFields:["raddr2","raddr3"]},
|
||||
o:{verification:"ov",city:"ocity",colony:"colo",colonyId:"Ocolony",addressFields:["oaddr2","oaddr3"]},
|
||||
p:{verification:"pv",city:"pcity",colony:"colp",colonyId:"Pcolony",addressFields:["paddr2","paddr3"]}
|
||||
};
|
||||
function addressSectionFor(fieldId)
|
||||
{
|
||||
var keys=Object.keys(ADDRESS_SECTIONS);
|
||||
for(var index=0;index<keys.length;index++)
|
||||
{
|
||||
var section=ADDRESS_SECTIONS[keys[index]];
|
||||
if(fieldId==section.city || fieldId==section.colony) return section;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
function HandleBlur(el)
|
||||
{
|
||||
if(el.id=='rcity' || el.id=='ocity' || el.id=='pcity')
|
||||
var section=addressSectionFor(el.id);
|
||||
if(!section) return;
|
||||
if(el.id==section.city)
|
||||
{
|
||||
var pel= (el.id=='rcity' ? 'Rcolony':(el.id=='ocity' ? 'Ocolony':'Pcolony'));
|
||||
var cel= (el.id=='rcity' ? 'raddr':(el.id=='ocity' ? 'oaddr':'paddr'));
|
||||
var hel= (el.id=='rcity' ? 'colr':(el.id=='ocity' ? 'colo':'colp'));
|
||||
var chk= (el.id=='rcity' ? 'rv':(el.id=='ocity' ? 'ov':'pv'));
|
||||
if(!FindStr(el,cel+'2!C0L!'+cel+'3'))
|
||||
if(!FindStr(el,section.addressFields))
|
||||
{
|
||||
CygnusNotifications.show({type:"danger",code:"1001AREA",message:"Invalid area.",duration:3000});
|
||||
$(el).val("-1");
|
||||
$("#"+pel).val("");
|
||||
$("#"+hel).val("");
|
||||
el.value="-1";
|
||||
document.getElementById(section.colonyId).value="";
|
||||
document.getElementById(section.colony).value="";
|
||||
}
|
||||
CygnusInitiationValidation.validateField(el);
|
||||
}
|
||||
if(el.id=='colr' || el.id=='colo' || el.id=='colp')
|
||||
if(el.id==section.colony)
|
||||
{
|
||||
var pel= (el.id=='colr' ? 'rv':(el.id=='colo' ? 'ov':'pv'));
|
||||
var cel= (el.id=='colr' ? 'raddr':(el.id=='colo' ? 'oaddr':'paddr'));
|
||||
if(!FindStr(el,cel+'2!C0L!'+cel+'3'))
|
||||
if(!FindStr(el,section.addressFields))
|
||||
{
|
||||
CygnusNotifications.show({type:"danger",code:"1001AREA",message:"Invalid colony.",duration:3000});
|
||||
$(el).val("");
|
||||
el.value="";
|
||||
}
|
||||
if(el.value=='')
|
||||
{
|
||||
document.getElementsByName(el.id+'_hidden')[0].value='';
|
||||
}
|
||||
if(document.getElementsByName(el.id+'_hidden')[0].value=='')
|
||||
{
|
||||
el.value='';
|
||||
}
|
||||
CygnusInitiationValidation.validateField(el);
|
||||
var colonyId=document.getElementById(section.colonyId);
|
||||
if(el.value=='') colonyId.value='';
|
||||
if(colonyId.value=='') el.value='';
|
||||
CygnusInitiationValidation.validateField(el);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user