var medium_fieldwidth = 40;
var small_fieldwidth = 25;
var countryoptions;
var joboptions;
var ie = navigator.appName == "Microsoft Internet Explorer";

function add_projects()
{
	d1 = document.getElementById("tblproject");	
	d2 = document.getElementById("tblperiod");
	rowcount = d1.rows.length;

	fstrow = d1.insertRow(rowcount++);
	sndrow = d1.insertRow(rowcount++);
	thdrow = d1.insertRow(rowcount++);
	fthrow = d1.insertRow(rowcount++);
	fifthrow = d1.insertRow(rowcount++);
	sixthrow = d1.insertRow(rowcount++);
	
	fstrow.className="bold_label";
	sndrow.className="bold_label";
	thdrow.className="bold_label";
	fthrow.className="bold_label";
	fifthrow.className="bold_label";
	sixthrow.className="bold_label";
	
	
	lbltitle=fstrow.insertCell(0);
	//fstrow.setAttribute("bgcolor","#006600");
	updatelabelleft(lbltitle, 'Project Title:<span style=color:red;>*</span>');
	lbltitle=fstrow.insertCell(1);
	updatelabelleft(lbltitle, ':');
	cell_1 = fstrow.insertCell(2);
	cell_1.colSpan="4";
	cell_1.appendChild(createprojtext('projecttitle'));
	
	lbltitle=sndrow.insertCell(0);
	//sndrow.setAttribute("bgcolor","#006600");
	updatelabelleft(lbltitle, 'Technologies Used:<span style=color:red;>*</span>');
	lbltitle=sndrow.insertCell(1);
	updatelabelleft(lbltitle, ':');
	cell_2 = sndrow.insertCell(2);
	cell_2.colSpan="4";
	cell_2.appendChild(createprojtextarea('technologies'));
	
	lblcustomer = thdrow.insertCell(0);
	//thdrow.setAttribute("bgcolor","#006600");
	updatelabelleft(lblcustomer,'Customer Name:<span style=color:red;>*</span>');
	lbltitle=thdrow.insertCell(1);
	updatelabelleft(lbltitle, ':');
	cell_3 = thdrow.insertCell(2);
	cell_3.colSpan="4";
	cell_3.appendChild(createprojtext('customername'));
	
	lbldescription = fthrow.insertCell(0)
	//fthrow.setAttribute("bgcolor","#006600");
	updatelabelleft(lbldescription,'Short Description:<span style=color:red;>*</span>');
	lbltitle=fthrow.insertCell(1);
	updatelabelleft(lbltitle, ':');
	cell_4 = fthrow.insertCell(2);
	cell_4.colSpan="4";
	cell_4.appendChild(createprojtextarea('shortdescription'));
	
	lblteamsize = fifthrow.insertCell(0);
	//fifthrow.setAttribute("bgcolor","#006600");
	updatelabelleft(lblteamsize,'Team size: <span style=color:red;>*</span>');
	lbltitle=fifthrow.insertCell(1);
	updatelabelleft(lbltitle, ':');
	fifthrow.insertCell(2).appendChild(createprojtextsmall('teamsize'));
	
	lblteamsizeonsite = fifthrow.insertCell(3);
	updatelabelleft(lblteamsizeonsite,'Project duration in months:<span style=color:red;>*</span>');
	lbltitle=fifthrow.insertCell(4);
	updatelabelleft(lbltitle, ':');
	fifthrow.insertCell(5).appendChild(createprojtextsmall('projectduration'));
	
	cell = sixthrow.insertCell(0);
	cell.colSpan="6";
	cell.setAttribute("height","10")
	updatelabelleft(cell,'<hr style="height:2px;border:0;background-color:#666"/>');
	
	/*lbltitle=fstrow.insertCell(0);
	updatelabelleft(lbltitle, 'Project Title:<span style=color:red;>*</span>');
	fstrow.insertCell(1).appendChild(createtext('projecttitle'));
	technologies = fstrow.insertCell(2)
	updatelabelleft(technologies,'Technologies Used:<span style=color:red;>*</span>');
	fstrow.insertCell(3).appendChild(createtextarea('technologies'));

	lblcustomer = sndrow.insertCell(0);
	updatelabelleft(lblcustomer,'Customer Name:<span style=color:red;>*</span>');
	sndrow.insertCell(1).appendChild(createtext('customername'));
	lbldescription = sndrow.insertCell(2)
	updatelabelleft(lbldescription,'Short Description:<span style=color:red;>*</span>');
	sndrow.insertCell(3).appendChild(createtextarea('shortdescription'));

	lblteamsize = thdrow.insertCell(0);
	thdrow.setAttribute("height","23");
	updatelabelleft(lblteamsize,'Team size: <span style=color:red;>*</span>');
	thdrow.insertCell(1).appendChild(createtextnumsmall('teamsize'));
	lblteamsizeonsite = thdrow.insertCell(2);
	updatelabelleft(lblteamsizeonsite,'Team size onsite:<span style=color:red;>*</span>');
	thdrow.insertCell(3).appendChild(createtextnumsmall('teamsizeonsite'));

	lblproj = fthrow.insertCell(0);
	fthrow.setAttribute("height","23");
	updatelabelleft(lblproj,'Project duration in months:<span style=color:red;>*</span>');	
	fthrow.insertCell(1).appendChild(createtextnumsmall('projectduration'));
	lblvolume = fthrow.insertCell(2);
	updatelabelleft(lblvolume,'Project volume in man months:<span style=color:red;>*</span>');
	fthrow.insertCell(3).appendChild(createtextnumsmall('volumemonths'));

	cell = fifthrow.insertCell(0);
	cell.colSpan="4";
	cell.setAttribute("height","10")
	updatelabelleft(cell,'<hr style="height:1px;border:0;background-color:#ccc"/>');*/
	//updatelabelliner(cell,'a');


	/*var tbl = document.createElement('table');
	r1 = tbl.insertRow(0);
	lblteamsize = r1.insertCell(0);
	updatelabelleft(lblteamsize,'Team size');
	r1.insertCell(1).appendChild(createtextsmall('teamsize'));
	lblteamsizeonsite = r1.insertCell(2);
	updatelabelleft(lblteamsizeonsite,'Team size onsite');
	r1.insertCell(3).appendChild(createtextsmall('teamsizeonsite'));
	lblproj = r1.insertCell(4);
	updatelabelleft(lblproj,'Project duration in months');
	r1.insertCell(5).appendChild(createtextsmall('projectduration'));
	lblvolume = r1.insertCell(6);
	updatelabelleft(lblvolume,'Project volume in man months');
	r1.insertCell(7).appendChild(createtextsmall('volumemonths'));
											
	cell = thdrow.insertCell(0)
	cell.colSpan = 4;
	cell.appendChild(tbl);*/
}

function remove_projects()
{
	var tbl = document.getElementById("tblproject");
	row=document.getElementById("tblproject").rows.length-1;
	if (document.getElementById("tblproject").rows.length-1 == 6) {
		alert("Atleast one project is required.");
		}
	for ( itr = 0; itr < 6 ; itr++ )
		{
		if (document.getElementById("tblproject").rows.length-1 > 5) {
			row=document.getElementById("tblproject").rows.length-1;
			document.getElementById("tblproject").deleteRow(row);
			
		}
	}
}

//function for adding experiences
function add_experience()
{
	d1=document.getElementById("tblexperience");
	childtable = document.getElementById("tblexp1");
	rowcount =d1.rows.length;
	//since row length start with 0 new row will have returned value
	fstrow = d1.insertRow(rowcount++);
	sndrow =d1.insertRow(rowcount++);
	thdrow =d1.insertRow(rowcount++);
	fthrow =d1.insertRow(rowcount++);
	//fifrow =d1.insertRow(rowcount++);

	fstrow.setAttribute('height','23');
	sndrow.setAttribute('height','23');
	thdrow.setAttribute('height','23');
	fthrow.setAttribute('height','23');

	lblemployer =fstrow.insertCell(0);
	updatelabel(lblemployer, '<strong>Employer</strong><strong style="color:#f00">*</strong>:');
	fstrow.insertCell(1).appendChild(createtext('companyname'));
	fromcell = fstrow.insertCell(2)
	updatelabel(fromcell,'<strong>From Date</strong><strong style="color:#f00">*</strong>:');
	fstrow.insertCell(3).appendChild(createtextdate('startdate',''));
	//fstrow.insertCell(4).appendChild(createbutton('start'));

	lblposition = sndrow.insertCell(0);
	updatelabel(lblposition,'<strong>Position</strong><strong style="color:#f00">*</strong>:');

	sndrow.insertCell(1).appendChild(createtext('designation'));
	tocell = sndrow.insertCell(2)
	updatelabel(tocell,'<strong>To Date</strong><strong style="color:#f00">*</strong>:');
	sndrow.insertCell(3).appendChild(createtextdate('enddate',''));

	lblresp = thdrow.insertCell(0);
	updatelabel(lblresp,'<strong>Responsibilities</strong><strong style="color:#f00">*</strong>:');
	thdrow.insertCell(1).appendChild(createtextarea('responsibilities'));
	/*lblleaving = thdrow.insertCell(2);
	updatelabel(lblleaving,'Leaving Reason<strong style="color:#f00">*</strong>:');
	thdrow.insertCell(3).appendChild(createtext('leavingreason'));*/
	
	/*lbljobtype = thdrow.insertCell(2);
	updatelabel(lbljobtype,'Job Type<strong style="color:#f00">*</strong>:');
	thdrow.insertCell(3).appendChild(creatediv('divjobtype',rowcount));
	var divid = document.getElementById('divjobtype'+rowcount);
	divid.innerHTML = joboptions;*/
	
	lblplace = thdrow.insertCell(2);
	updatelabel(lblplace,'<strong>Country:</strong><strong style="color:#f00">*</strong>');
	thdrow.insertCell(3).appendChild(creatediv('divcountry',rowcount));
	var divid = document.getElementById('divcountry'+rowcount);
	divid.innerHTML = countryoptions;

	/*lbljobtype = fthrow.insertCell(2);
	updatelabel(lbljobtype,'Job Type<strong style="color:#f00">*</strong>:');
	fthrow.insertCell(3).appendChild(creatediv('divjobtype',rowcount));
	var divid = document.getElementById('divjobtype'+rowcount);
	divid.innerHTML = joboptions;*/
	//fthrow.insertCell(3).appendChild(createhidden('weid'));
	cell = fthrow.insertCell(0);
	cell.colSpan="4";
	cell.setAttribute("height","10")
	updatelabelleft(cell,'');

}

function remove_experience()
{
	row=document.getElementById("tblexperience").rows.length-1;
	for ( itr = 0; itr < 4 ; itr++ )
	{
		if (document.getElementById("tblexperience").rows.length > 5) 
		{
			row=document.getElementById("tblexperience").rows.length-1;
			document.getElementById("tblexperience").deleteRow(row);			
		}
	}
}

function add_education()
{
	d1=document.getElementById("tbleducation");
	//country = document.getElementById('institute_country');

	var rlength = d1.rows.length;	
	nd1=d1.insertRow(d1.rows.length);
		
/*n1=document.createElement("input");
n2=document.createElement("input");
n3=document.createElement("input");
n4=document.createElement("input");
n5=document.createElement("select");
n6=document.createElement("input");
n7=document.createElement("input");


n1.setAttribute('id','institution[]');
n1.setAttribute('name','institution[]');
n2.setAttribute('id','degreename[]');
n2.setAttribute('name','degreename[]');
n3.setAttribute('id','areaofstudy[]');
n3.setAttribute('name','areaofstudy[]');
n4.setAttribute('id','completionyear[]');
n4.setAttribute('name','completionyear[]');
n5.setAttribute('id','place[]');
n5.setAttribute('name','place[]');
n6.setAttribute('id','id[]');
n6.setAttribute('name','edid[]');
n6.setAttribute('type','hidden');
n6.setAttribute('value','');*/

/* country commented-- 22-10-09  */
//var n5 = country.cloneNode(true);
//n5.setAttribute('id','place[]');
//n5.setAttribute('name','place[]');
//n5.value ="";
/* country commented end-- 22-10-09  */
nd1.setAttribute('align','center');
nd1.setAttribute('height','23');
nd1.insertCell(0).appendChild(createtextedu('institution'));
nd1.insertCell(1).appendChild(createtextedu('degreename'));
nd1.insertCell(2).appendChild(createtextedu('areaofstudy'));
//nd1.insertCell(3).appendChild(createtextedu('completionyear'));
cell_1 = nd1.insertCell(3);
if(!ie) {
alignVal = 'center';
alignValY = 'right';
}
else {
alignVal = 'left';
alignValY = 'left'; }
cell_1.setAttribute("align",alignVal);
cell_1.setAttribute("style","width:18px");
cell_1.appendChild(createmonthedu('startmonth'));
cell_2 = nd1.insertCell(4);
cell_2.setAttribute("align",alignValY);
cell_2.setAttribute("style","width:30px");
cell_2.appendChild(createyearedu('startyear'));
cell_3 = nd1.insertCell(5);
cell_3.setAttribute("align",alignVal);
cell_3.setAttribute("style","width:18px");
cell_3.appendChild(createmonthedu('completionmonth'));
cell_4 = nd1.insertCell(6);
cell_4.setAttribute("align",alignVal);
cell_4.setAttribute("style","width:30px");
cell_4.appendChild(createyearedu('completionyear'));
  /* country commented-- 22-10-09  */
//nd1.insertCell(4).appendChild(creatediv('divcountry',rlength));
//var divid = document.getElementById('divcountry'+rlength);
//  divid.innerHTML = countryoptions;
/* country commented end-- 22-10-09  */
}

function remove_education()
{
	var tbl = document.getElementById("tbleducation");
	
row=document.getElementById("tbleducation").rows.length-1;

/*alert(document.getElementById("tbleducation").rows.length-1);*/
		if (document.getElementById("tbleducation").rows.length-1 > 2) {
			document.getElementById("tbleducation").deleteRow(row);
		}
}

function getCompletedYears()
{
	var i=0;
	var retval="";
	retval+="<select name='completionyear[]' style='border:1px solid #ccc;color:#555'>";
	retval+="<option value='0'>- Select -</option>";	
	for(i=1980;i<=2011;i++)
	{
		retval+="<option value="+i+">"+i+"</option>";	
	}
	retval+="</select>";	
	return retval;
}



function updatelabelright(cell,description)
{
cell.setAttribute('align','right');
	cell.innerHTML = description;
	cell.setAttribute('id','');
cell.setAttribute('height','20px');
cell.setAttribute('style','background-color:#000000');

}
function updatelabelleft(lbl,description)
{
	lbl.setAttribute('align','left');		
	lbl.innerHTML = description;	
	//return lbl;
}

function updatelabelleft_1(lbl,description)
{
	lbl.setAttribute('align','left');
	lbl.setAttribute('style','padding-bottom:10px;padding-left:10px;');
	lbl.innerHTML = description;	
	//return lbl;
}
function updatelabel(lbl,description)
{

	lbl.setAttribute('align','left');
	lbl.setAttribute('style','font-weight:bold');		
	lbl.innerHTML = description;	
	//return lbl;
}

function updatelabelcenter(lbl,description)
{

	lbl.setAttribute('align','center');
	lbl.innerHTML = description;	
	//return lbl;
}

function updatelabelamount(lbl,description)
{
	lbl.setAttribute('align','left');
	lbl.setAttribute('class','inputboxdate');
	lbl.setAttribute('style','font-size:14px');
	lbl.setAttribute('style','padding-left:10px');
	lbl.innerHTML = description;
	
	//return lbl;
}

function createtextsmall(inputName)
{
	var txt = document.createElement('input');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value','');
	if(!ie)
		txt.setAttribute('class', 'inputboxsmallnumber required');
	else
		txt.className="inputboxsmallnumber required";
		
	txt.setAttribute('maxLength',3);
	return txt;
}
function createprojtextsmall(inputName)
{
	var txt = document.createElement('input');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value','');
	if(!ie) {
		txt.setAttribute('class', 'inputboxsmallnumber required');
		txt.setAttribute('onkeypress','return blockNonNumbers(this, event, false, false)');
		txt.setAttribute('onblur','extractNumber(this,0,false)');
	}
	else {
		txt.className="inputboxsmallnumber required";
		txt.onkeypress=function(){return blockNonNumbers(this, event, false, false);};
		txt.onblur=function(){extractNumber(this,0,false);};
		txt.onkeyup=function(){extractNumber(this,0,false);};
	}
	txt.setAttribute('maxLength',3);
	return txt;
}
function createprojtext(inputName)
{
	var txt = document.createElement('input');	
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value','');
	txt.setAttribute('style','width:300px');
	txt.setAttribute('maxLength',50);
	if(!ie)
	{
		txt.setAttribute('class', 'inputboxsmallnumber required');		
	}
	else
	{
		txt.className="inputboxsmallnumber1";
	}
		
	return txt;
}
function createtextnumsmall(inputName)
{
	var txt = document.createElement('input');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('onBlur','extractNumber(this,0,false);');
	txt.setAttribute('onkeyup','extractNumber(this,0,false);');
	txt.setAttribute('onKeyPress','blockNonNumbers(this, event, false, false);');
	txt.setAttribute('value','');
	if(!ie)
		txt.setAttribute('class', 'inputboxsmallnumber required');
	else
		txt.className="inputboxsmallnumber required";
		
	txt.setAttribute('maxLength',3);
	return txt;
}
//createtextid
//without array
function createtextid(inputName,txt1)
{

	var txt = document.createElement('input');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value',txt1);
	if(!ie)
		txt.setAttribute('class', 'inputboxdate');
	else
		txt.className="inputboxdate";
	return txt;
}

function createtext(inputName)
{	
	var txt = document.createElement('input');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value','');			
	if(!ie)
		txt.setAttribute('class', 'inputboxbig')	
	else
		txt.className="inputboxbig";	
	return txt;
}
function createtextdate1(inputName,stdate)
{
	
	var txt = document.createElement('input');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('readonly','readonly');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('onFocus','showCalendarControl(this)');
	if(stdate!='') {
		txt.setAttribute('value',stdate);
	} else
	{
		txt.setAttribute('value','');
	}
	//txt.setAttribute('onfocus','showCalendarControl(this);'); // suk--date 16-10-09 to b worked 
	if(!ie)
		txt.setAttribute('class', 'inputboxbig')	
	else
		txt.className="inputboxbig";	
	return txt;
}
function createtextdate(inputName,stdate)
{
	
	var txt = document.createElement('input');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('readOnly','readonly');
	txt.setAttribute('name',inputName+'[]');
	//txt.setAttribute('onFocus','showCalendarControl(this)'); // suk--date 16-10-09 to b worked 
	//txt.onfocus=function(){showCalendarControl(this);};
	if(stdate!='') {
		txt.setAttribute('value',stdate);
	} else
	{
		txt.setAttribute('value','');
	}
	
	//alert(ie);
	if(!ie)
		{
		txt.setAttribute('class', 'inputboxbig');
		txt.setAttribute('onFocus','showCalendarControl(this)');
		}
	else
		{
		txt.className="inputboxbig";	
		txt.onfocus=function(){showCalendarControl(this);};
		}
	return txt;
}

function createbutton(inputName)
{
	//document.write(inputName);
	var txt = document.createElement('input');
	txt.setAttribute('type','button');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value','...');		
	/*txt.setAttribute('onClick','displayDatePicker(name, this);');*//* suk--date 16-10-09 to b worked */
	return txt;
}

function createtextedu(inputName)
{	
	var txt = document.createElement('input');
	txt.setAttribute('type','text');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value','');	
	txt.setAttribute('size','15');	
	if(!ie)
		txt.setAttribute('class', 'inputboxbig');
	else
		txt.className="inputboxbig";
	
	return txt;
}

function createmonthedu(inputName)
{	
	var txt = document.createElement('input');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value','');	
	txt.setAttribute('size','2');
	txt.setAttribute('maxLength',2);
	
	if(!ie)
		{
		txt.setAttribute('class', 'txtboxMonth');
		txt.setAttribute('onkeypress','return blockNonNumbers(this, event, false, false)');
		txt.setAttribute('onkeyup','extractNumber(this,0,false)');
		txt.setAttribute('onblur','extractNumber(this,0,false)');
		}
	else
		{
		txt.className="txtboxMonth";	
		txt.onkeypress=function(){return blockNonNumbers(this, event, false, false);};
		txt.onblur=function(){extractNumber(this,0,false);};
		txt.onkeyup=function(){extractNumber(this,0,false);};
		}
	
	
	return txt;
}

function createyearedu(inputName)
{	
	var txt = document.createElement('input');
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value','');	
	txt.setAttribute('size','4');	
	txt.setAttribute('maxLength',4);
	if(!ie)
		{
		txt.setAttribute('class', 'txtboxYear');
		txt.setAttribute('onkeypress','return blockNonNumbers(this, event, false, false)');
		txt.setAttribute('onkeyup','extractNumber(this,0,false)');
		txt.setAttribute('onblur','extractNumber(this,0,false)');
		}
	else
		{
		txt.className="txtboxYear";	
		txt.onkeypress=function(){return blockNonNumbers(this, event, false, false);};
		txt.onblur=function(){extractNumber(this,0,false);};
		txt.onkeyup=function(){extractNumber(this,0,false);};
		}
	
	return txt;
}

function createoption(optionName)
{
	opt = document.getElementById(optionName);
	
	var option = opt.cloneNode(true);
	option.setAttribute(('id',optionName));
	option.setAttribute('name',optionName+'[]');
		option.setAttribute('class', 'inputboxbig');
	return option;
}

function creatediv(optionName,rcnt)
{
	var el = document.createElement('div');
  	el.id = optionName+rcnt;	
	return el;
}

function createhidden(hdnName)
{
	var n6 = document.createElement('input');
	n6.setAttribute('id',hdnName+'[]');
n6.setAttribute('name',hdnName+'[]');
n6.setAttribute('type','hidden');
n6.setAttribute('value','');
return n6;
}

function createtextarea(inputName)
{	
	var txttoclone = document.createElement('textarea');
	var txt =txttoclone.cloneNode(true);
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value','');
	if(!ie)
		txt.setAttribute('class','inputbox');	
	else
		txt.className="inputbox";
	//txt.setAttribute('cols',medium_fieldwidth);	
	//txt.setAttribute('rows',3);	
//	txt.setAttribute('class', 'inputboxbig');
	return txt;
}
function createprojtextarea(inputName)
{	
	var txttoclone = document.createElement('textarea');
	var txt =txttoclone.cloneNode(true);
	txt.setAttribute('id',inputName+'[]');
	txt.setAttribute('name',inputName+'[]');
	txt.setAttribute('value','');
	txt.setAttribute('style','width:300px;height:100px;');
	txt.setAttribute('cols',medium_fieldwidth);	
	txt.setAttribute('rows',3);	
	if(!ie)
	{
		txt.setAttribute('class','inputtextbig required');	
	}
	else
	{
		txt.className="inputtextbig1";
	txt.setAttribute('cols',medium_fieldwidth);	
	txt.setAttribute('rows',3);	
	}
//	txt.setAttribute('class', 'inputboxbig');
	return txt;
}


function addselectedservice(serviceid,description,amount) {
amount = CurrencyFormatted(amount);

checkbox = document.getElementById("service"+serviceid);
checkbox.disabled = true;
servicetable = document.getElementById("tblsubscriptions");
servicetable.setAttribute("style","visibility:visible");
rowscount = servicetable.rows.length;
servicerow = servicetable.insertRow(rowscount++);
servicerow.setAttribute("id", serviceid);
blank = servicerow.insertCell(0);
slno = servicerow.insertCell(1);
updatelabelcenter(slno,rowscount -1);
desc = servicerow.insertCell(2);
updatelabelleft(desc,description);

//insert startdate and enddate
today = new Date();
thismonth=today.getMonth()+1;
thisyr=today.getFullYear();
stdate = today.getDate() +"-"+thismonth+"-"+today.getFullYear();
//today.setMonth(today.getMonth() +1);
if(thismonth==12)
{
nextmonth=1;
}
else
{
nextmonth=thismonth+1;
}
if(nextmonth==1)
{
nextyr=thisyr+1;
}
else
{
nextyr=thisyr;
}
eddate = today.getDate() +"-"+nextmonth+"-"+nextyr;

//eddate = today.getDate() +"-"+today.getMonth()+"-"+today.getFullYear();
startdate = servicerow.insertCell(3).appendChild(createtextdate1("startdate"+serviceid,stdate));
enddate =servicerow.insertCell(4).appendChild(createtextdate("enddate"+serviceid,eddate));

amt =servicerow.insertCell(5);
updatelabelamount(amt,"&euro;"+amount);
removelink = servicerow.insertCell(6);	
updatelink(removelink,"Remove",serviceid,amount);
txtcost = document.getElementById("txtcost");
txtvat = document.getElementById("txtvat");
txttotal = document.getElementById("txttotal");
var is_ie = (navigator.userAgent.toLowerCase().indexOf("ie") != -1);
if(!is_ie) {
lblcost = document.getElementById("lblcost");
lblvat = document.getElementById("lblvat");
lbltotal = document.getElementById("lbltotal");
}


if(txtcost.value =="0")
{
	txtcost.value = CurrencyFormatted(amount);
}
else
{
	txtcost.value = CurrencyFormatted(roundNumber(parseFloat(txtcost.value) + parseFloat(amount),2));
}

txtvat.value = CurrencyFormatted(roundNumber( parseFloat(txtcost.value) * 0.19,2));

	
txttotal.value = CurrencyFormatted(parseFloat(txtcost.value) + parseFloat(txtvat.value));
	
	lblcost.innerHTML ="&euro;"+ txtcost.value;
	lblvat.innerHTML ="&euro;"+ txtvat.value;
	lbltotal.innerHTML ="&euro;"+ txttotal.value;
}

function updatelink(lbl, txt, serviceid,amount)
{
	//alert(amount);
	lbl.setAttribute("align","center");
	lbl.innerHTML ="<a href= '#' style='color:#FF0000;font-weight:bold;' onclick='removeservice(" +serviceid +"," +amount+"); return false;'>"+txt+"</a>";
	
}
function removeservice(row,amount)
{

	checkbox = document.getElementById("service"+row);
	checkbox.disabled = false;
	checkbox.checked = false;
	tablerow = document.getElementById(row);
	tble = document.getElementById('tblsubscriptions');
	
	tble.deleteRow(tablerow.rowIndex);
	
	if(tble.rows.length < 2)
	{
		tble.setAttribute("style","visibility:hidden");
	}
	
	txtcost = document.getElementById("txtcost");
	txtvat = document.getElementById("txtvat");
	txttotal = document.getElementById("txttotal");
	var is_ie = (navigator.userAgent.toLowerCase().indexOf("ie") != -1);
if(!is_ie) {
lblcost = document.getElementById("lblcost");
lblvat = document.getElementById("lblvat");
lbltotal = document.getElementById("lbltotal");
}
	txtcost.value = CurrencyFormatted(roundNumber((parseFloat(txtcost.value) - parseFloat(amount)),2));
	txtvat.value = CurrencyFormatted(roundNumber( parseFloat(txtcost.value) * 0.19,2));
	txttotal.value = CurrencyFormatted( parseFloat(txtcost.value) + parseFloat(txtvat.value));
	
	lblcost.innerHTML ="&euro;"+ txtcost.value;
	lblvat.innerHTML ="&euro;"+ txtvat.value;
	lbltotal.innerHTML ="&euro;"+ txttotal.value;
}

function getsubscribed()
{
	txtcost = document.getElementById("txtcost");
	txtvat =  document.getElementById("txtvat");
	txttotal = document.getElementById("txttotal");
	if(Math.round(txttotal.value) !="0")
	{
	tble = document.getElementById('tblsubscriptions');
	rowcount = tble.rows.length;
	var serviceID="";
	var startdate="";
	var enddate="";
	
	for(itr =1; itr < rowcount; itr++)
	{
		//startdate = stdate[itr-1].value +",";
		//enddate=eddate[itr-1].value+",";
		serviceID = serviceID + tble.rows[itr].id +",";
		stdate = document.getElementById("startdate"+tble.rows[itr].id+"[]");
		startdate = startdate + stdate.value+",";
		eddate = document.getElementById("enddate"+tble.rows[itr].id+"[]");
		enddate = enddate + eddate.value+",";

	}
	//remove last , from the string

	hdnserviceid=	document.getElementById("serviceID");	
	hdnserviceid.value = serviceID;
	hdnstartdates=	document.getElementById("startdates");	
	hdnstartdates.value = startdate;
	hdnenddates=	document.getElementById("enddates");
	hdnenddates.value=enddate;
	return true;
	}
	else
	{
		alert("Please select any service to subscribe");
		return false;
	}
}


function roundNumber(num, dec) {
	var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
	return result;
}
/// date picker

var datePickerDivID = "datepicker";
var iFrameDivID = "datepickeriframe";

var dayArrayShort = new Array('Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa');
var dayArrayMed = new Array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');
var dayArrayLong = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');
var monthArrayShort = new Array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
var monthArrayMed = new Array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'June', 'July', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec');
var monthArrayLong = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
 
var defaultDateSeparator = "-";        // common values would be "/" or "."
var defaultDateFormat = "dmy"    // valid values are "mdy", "dmy", and "ymd"
var dateSeparator = defaultDateSeparator;
var dateFormat = defaultDateFormat;

function displayDatePicker(dateFieldName, displayBelowThisObject, dtFormat, dtSep)
{
	var dfield =document.getElementsByName(dateFieldName);
  var targetDateField = document.getElementsByName(dateFieldName);
 
  if (!displayBelowThisObject)
    displayBelowThisObject = targetDateField[1];
 
  if (dtSep)
    dateSeparator = dtSep;
  else
    dateSeparator = defaultDateSeparator;
 
  if (dtFormat)
    dateFormat = dtFormat;
  else
    dateFormat = defaultDateFormat;
 
  var x = displayBelowThisObject.offsetLeft;
  var y = displayBelowThisObject.offsetTop + displayBelowThisObject.offsetHeight ;
 
  var parent = displayBelowThisObject;
  while (parent.offsetParent) {
    parent = parent.offsetParent;
    x += parent.offsetLeft;
    y += parent.offsetTop ;
  }
 
  drawDatePicker(targetDateField[1], x, y);
}


function drawDatePicker(targetDateField, x, y)
{
  var dt = getFieldDate(targetDateField.value );
  if (!document.getElementById(datePickerDivID)) {
    var newNode = document.createElement("div");
    newNode.setAttribute("id", datePickerDivID);
    newNode.setAttribute("class", "dpDiv");
    newNode.setAttribute("style", "visibility: hidden;");
    document.body.appendChild(newNode);
  }
 
  var pickerDiv = document.getElementById(datePickerDivID);
  pickerDiv.style.position = "absolute";
  pickerDiv.style.left = x + "px";
  pickerDiv.style.top = y + "px";
  pickerDiv.style.visibility = (pickerDiv.style.visibility == "visible" ? "hidden" : "visible");
  pickerDiv.style.display = (pickerDiv.style.display == "block" ? "none" : "block");
  pickerDiv.style.zIndex = 10000;
 
 refreshDatePicker(targetDateField.name, dt.getFullYear(), dt.getMonth(), dt.getDate());
}


function refreshDatePicker(dateFieldName, year, month, day)
{
  var thisDay = new Date();
 
  if ((month >= 0) && (year > 0)) {
    thisDay = new Date(year, month, 1);
  } else {
    day = thisDay.getDate();
    thisDay.setDate(1);
  }
 
  var crlf = "\r\n";
  var TABLE = "<table cols=7 class='dpTable'>" + crlf;
  var xTABLE = "</table>" + crlf;
  var TR = "<tr class='dpTR'>";
  var TR_title = "<tr class='dpTitleTR'>";
  var TR_days = "<tr class='dpDayTR'>";
  var TR_todaybutton = "<tr class='dpTodayButtonTR'>";
  var xTR = "</tr>" + crlf;
  var TD = "<td class='dpTD' onMouseOut='this.className=\"dpTD\";' onMouseOver=' this.className=\"dpTDHover\";' ";    // leave this tag open, because we'll be adding an onClick event
  var TD_title = "<td colspan=5 class='dpTitleTD'>";
  var TD_buttons = "<td class='dpButtonTD'>";
  var TD_todaybutton = "<td colspan=7 class='dpTodayButtonTD'>";
  var TD_days = "<td class='dpDayTD'>";
  var TD_selected = "<td class='dpDayHighlightTD' onMouseOut='this.className=\"dpDayHighlightTD\";' onMouseOver='this.className=\"dpTDHover\";' ";    // leave this tag open, because we'll be adding an onClick event
  var xTD = "</td>" + crlf;
  var DIV_title = "<div class='dpTitleText'>";
  var DIV_selected = "<div class='dpDayHighlight'>";
  var xDIV = "</div>";
 
  var html = TABLE;
 
  html += TR_title;
  html += TD_buttons + getButtonCode(dateFieldName, thisDay, -1, "&lt;") + xTD;
  html += TD_title + DIV_title + monthArrayLong[ thisDay.getMonth()] + " " + thisDay.getFullYear() + xDIV + xTD;
  html += TD_buttons + getButtonCode(dateFieldName, thisDay, 1, "&gt;") + xTD;
  html += xTR;
 
  // this is the row that indicates which day of the week we're on
  html += TR_days;
  for(i = 0; i < dayArrayShort.length; i++)
    html += TD_days + dayArrayShort[i] + xTD;
  html += xTR;
 
  html += TR;
 
  for (i = 0; i < thisDay.getDay(); i++)
    html += TD + "&nbsp;" + xTD;
 
  do {
    dayNum = thisDay.getDate();
    TD_onclick = " onclick=\"updateDateField('" + dateFieldName + "', '" + getDateString(thisDay) + "');\">";
    
    if (dayNum == day)
      html += TD_selected + TD_onclick + DIV_selected + dayNum + xDIV + xTD;
    else
      html += TD + TD_onclick + dayNum + xTD;
    
    if (thisDay.getDay() == 6)
      html += xTR + TR;
    
    thisDay.setDate(thisDay.getDate() + 1);
  } while (thisDay.getDate() > 1)
 
  if (thisDay.getDay() > 0) {
    for (i = 6; i > thisDay.getDay(); i--)
      html += TD + "&nbsp;" + xTD;
  }
  html += xTR;
 
  var today = new Date();
  var todayString = "Today is " + dayArrayMed[today.getDay()] + ", " + monthArrayMed[ today.getMonth()] + " " + today.getDate();
  html += TR_todaybutton + TD_todaybutton;
  html += "<button class='dpTodayButton' onClick='refreshDatePicker(\"" + dateFieldName + "\");'>This Month</button> ";
  //html += "<button class='dpTodayButton' onClick='updateDateField(\"" + dateFieldName + "\");'>close</button>";
  html += xTD + xTR;
 
  html += xTABLE;
 
  document.getElementById(datePickerDivID).innerHTML = html;
  adjustiFrame();
}


function getButtonCode(dateFieldName, dateVal, adjust, label)
{
  var newMonth = (dateVal.getMonth () + adjust) % 12;
  var newYear = dateVal.getFullYear() + parseInt((dateVal.getMonth() + adjust) / 12);
  if (newMonth < 0) {
    newMonth += 12;
    newYear += -1;
  }
 
  return "<button class='dpButton' onClick='refreshDatePicker(\"" + dateFieldName + "\", " + newYear + ", " + newMonth + ");'>" + label + "</button>";
}


function getDateString(dateVal)
{
  var dayString = "00" + dateVal.getDate();
  var monthString = "00" + (dateVal.getMonth()+1);
  dayString = dayString.substring(dayString.length - 2);
  monthString = monthString.substring(monthString.length - 2);
 
  switch (dateFormat) {
    case "dmy" :
      return dayString + dateSeparator + monthString + dateSeparator + dateVal.getFullYear();
    case "ymd" :
      return dateVal.getFullYear() + dateSeparator + monthString + dateSeparator + dayString;
    case "mdy" :
    default :
      return monthString + dateSeparator + dayString + dateSeparator + dateVal.getFullYear();
  }
}


function getFieldDate(dateString)
{
  var dateVal;
  var dArray;
  var d, m, y;
 
  try {
    dArray = splitDateString(dateString);
    if (dArray) {
      switch (dateFormat) {
        case "dmy" :
          d = parseInt(dArray[0], 10);
          m = parseInt(dArray[1], 10) - 1;
          y = parseInt(dArray[2], 10);
          break;
        case "ymd" :
          d = parseInt(dArray[2], 10);
          m = parseInt(dArray[1], 10) - 1;
          y = parseInt(dArray[0], 10);
          break;
        case "mdy" :
        default :
          d = parseInt(dArray[1], 10);
          m = parseInt(dArray[0], 10) - 1;
          y = parseInt(dArray[2], 10);
          break;
      }
      dateVal = new Date(y, m, d);
    } else if (dateString) {
      dateVal = new Date(dateString);
    } else {
      dateVal = new Date();
    }
  } catch(e) {
    dateVal = new Date();
  }
 
  return dateVal;
}


function splitDateString(dateString)
{
  var dArray;
  if (dateString.indexOf("/") >= 0)
    dArray = dateString.split("/");
  else if (dateString.indexOf(".") >= 0)
    dArray = dateString.split(".");
  else if (dateString.indexOf("-") >= 0)
    dArray = dateString.split("-");
  else if (dateString.indexOf("\\") >= 0)
    dArray = dateString.split("\\");
  else
    dArray = false;
 
  return dArray;
}

function updateDateField(dateFieldName, dateString)
{
	//suk
  var targetDateField = document.getElementsByName (dateFieldName).item(0);
  if (dateString)
    targetDateField.value = dateString;
 
  var pickerDiv = document.getElementById(datePickerDivID);
  pickerDiv.style.visibility = "hidden";
  pickerDiv.style.display = "none";
 
  adjustiFrame();
  targetDateField.focus();
 
  if ((dateString) && (typeof(datePickerClosed) == "function"))
    datePickerClosed(targetDateField);
}

function adjustiFrame(pickerDiv, iFrameDiv)
{
  var is_opera = (navigator.userAgent.toLowerCase().indexOf("opera") != -1);
  if (is_opera)
    return;
  
  try {
    if (!document.getElementById(iFrameDivID)) {
      var newNode = document.createElement("iFrame");
      newNode.setAttribute("id", iFrameDivID);
      newNode.setAttribute("src", "javascript:false;");
      newNode.setAttribute("scrolling", "no");
      newNode.setAttribute ("frameborder", "0");
      document.body.appendChild(newNode);
    }
    
    if (!pickerDiv)
      pickerDiv = document.getElementById(datePickerDivID);
    if (!iFrameDiv)
      iFrameDiv = document.getElementById(iFrameDivID);
    
    try {
      iFrameDiv.style.position = "absolute";
      iFrameDiv.style.width = pickerDiv.offsetWidth;
      iFrameDiv.style.height = pickerDiv.offsetHeight ;
      iFrameDiv.style.top = pickerDiv.style.top;
      iFrameDiv.style.left = pickerDiv.style.left;
      iFrameDiv.style.zIndex = pickerDiv.style.zIndex - 1;
      iFrameDiv.style.visibility = pickerDiv.style.visibility ;
      iFrameDiv.style.display = pickerDiv.style.display;
    } catch(e) {
    }
 
  } catch (ee) {
  }
 
}

//veera added for currency format

function CurrencyFormatted(amount)
{
	var i = parseFloat(amount);
	if(isNaN(i)) { i = 0.00; }
	var minus = '';
	if(i < 0) { minus = '-'; }
	i = Math.abs(i);
	i = parseInt((i + .005) * 100);
	i = i / 100;
	s = new String(i);
	if(s.indexOf('.') < 0) { s += '.00'; }
	if(s.indexOf('.') == (s.length - 2)) { s += '0'; }
	s = minus + s;
	//alert(s);
	//return s;
	return CommaFormatted(s);
}
 
 
function CommaFormatted(amount)
{
	var delimiter = ","; // replace comma if desired
	var a = amount.split('.',2)
	var d = a[1];
	var i = parseInt(a[0]);
	if(isNaN(i)) { return ''; }
	var minus = '';
	if(i < 0) { minus = '-'; }
	i = Math.abs(i);
	var n = new String(i);
	var a = [];
	while(n.length > 3)
	{
		var nn = n.substr(n.length-3);
		a.unshift(nn);
		n = n.substr(0,n.length-3);
	}
	if(n.length > 0) { a.unshift(n); }
	n = a.join(delimiter);
	if(d.length < 1) { amount = n; }
	else { amount = n + '.' + d; }
	amount = minus + amount;
	//alert(amount);
	return  amount;
	//return parseFloat (amount).toFixed (2);
}
// sukanya
function extractNumber(obj, decimalPlaces, allowNegative)
{
	var temp = obj.value;
	
	// avoid changing things if already formatted correctly
	var reg0Str = '[0-9]*';
	if (decimalPlaces > 0) {
		reg0Str += '\\.?[0-9]{0,' + decimalPlaces + '}';
	} else if (decimalPlaces < 0) {
		reg0Str += '\\.?[0-9]*';
	}
	reg0Str = allowNegative ? '^-?' + reg0Str : '^' + reg0Str;
	reg0Str = reg0Str + '$';
	var reg0 = new RegExp(reg0Str);
	if (reg0.test(temp)) return true;

	// first replace all non numbers
	var reg1Str = '[^0-9' + (decimalPlaces != 0 ? '.' : '') + (allowNegative ? '-' : '') + ']';
	var reg1 = new RegExp(reg1Str, 'g');
	temp = temp.replace(reg1, '');

	if (allowNegative) {
		// replace extra negative
		var hasNegative = temp.length > 0 && temp.charAt(0) == '-';
		var reg2 = /-/g;
		temp = temp.replace(reg2, '');
		if (hasNegative) temp = '-' + temp;
	}
	
	if (decimalPlaces != 0) {
		var reg3 = /\./g;
		var reg3Array = reg3.exec(temp);
		if (reg3Array != null) {
			// keep only first occurrence of .
			//  and the number of places specified by decimalPlaces or the entire string if decimalPlaces < 0
			var reg3Right = temp.substring(reg3Array.index + reg3Array[0].length);
			reg3Right = reg3Right.replace(reg3, '');
			reg3Right = decimalPlaces > 0 ? reg3Right.substring(0, decimalPlaces) : reg3Right;
			temp = temp.substring(0,reg3Array.index) + '.' + reg3Right;
		}
	}
	
	obj.value = temp;
}
function blockNonNumbers(obj, e, allowDecimal, allowNegative)
{

	var key;
	var isCtrl = false;
	var keychar;
	var reg;
		
	if(window.event) {
		key = e.keyCode;
		isCtrl = window.event.ctrlKey
	}
	else if(e.which) {
		key = e.which;
		isCtrl = e.ctrlKey;
	}
	
	if (isNaN(key)) return true;
	
	keychar = String.fromCharCode(key);
	
	// check for backspace or delete, or if Ctrl was pressed
	if (key == 8 || isCtrl)
	{
		return true;
	}

	reg = /\d/;
	var isFirstN = allowNegative ? keychar == '-' && obj.value.indexOf('-') == -1 : false;
	var isFirstD = allowDecimal ? keychar == '.' && obj.value.indexOf('.') == -1 : false;
	
	return isFirstN || isFirstD || reg.test(keychar);
}
// callout texts
 function showFloatDesc( text )
{ 
	descDiv = document.getElementById( 'FloatDesc' );
	if ( descDiv )
	{
		descDiv.innerHTML = text;
		descDiv.style.display = 'block';
	}
}

function hideFloatDesc()
{
	descDiv = document.getElementById( 'FloatDesc' );
	if ( descDiv )
		descDiv.style.display = 'none';
}

function moveFloatDesc( ev )
{
	descDiv = document.getElementById( 'FloatDesc' );
	if ( descDiv )
	{
		showPos = getPositionData( descDiv, ev );
		descDiv.style.left = showPos['posX'] + 'px';
		descDiv.style.top = showPos['posY'] + 'px';
	}
}
function getPositionData(obj, showEvent)
{
	if ( !showEvent )
		showEvent = window.event;
	
	var pos_X = 0, pos_Y = 0;
	if ( showEvent )
	{
		if ( typeof(showEvent.pageX) == 'number' )
		{
			pos_X = showEvent.pageX;
			pos_Y = showEvent.pageY;
		}
		else if ( typeof(showEvent.clientX) == 'number' )
		{
			pos_X = showEvent.clientX; pos_Y = showEvent.clientY;
			if ( document.body && 
				( document.body.scrollTop || document.body.scrollLeft ) && 
				!( window.opera || window.debug || navigator.vendor == 'KDE' ) )
			{
				pos_X += document.body.scrollLeft;
				pos_Y += document.body.scrollTop;
			}
			else if ( document.documentElement &&
				( document.documentElement.scrollTop ||
				document.documentElement.scrollLeft ) &&
				!( window.opera || window.debug || navigator.vendor == 'KDE' ) )
			{
				pos_X += document.documentElement.scrollLeft;
				pos_Y += document.documentElement.scrollTop;
			}
		}
	}
	
	var scroll_X = 0, scroll_Y = 0;
	if ( document.body &&
		( document.body.scrollTop || document.body.scrollLeft ) &&
		!( window.debug || navigator.vendor == 'KDE' ) )
	{
		scroll_X = document.body.scrollLeft;
		scroll_Y = document.body.scrollTop;
	}
	else if ( document.documentElement &&
		( document.documentElement.scrollTop ||
		document.documentElement.scrollLeft ) &&
		!( window.debug || navigator.vendor == 'KDE' ) )
	{
		scroll_X = document.documentElement.scrollLeft;
		scroll_Y = document.documentElement.scrollTop;
	}
	
	var win_size_X = 0, win_size_Y = 0;
	if (window.innerWidth && window.innerHeight)
	{
		win_size_X = window.innerWidth;
		win_size_Y = window.innerHeight;
	}
	else if ( document.documentElement &&
		document.documentElement.clientWidth &&
		document.documentElement.clientHeight )
	{
		win_size_X = document.documentElement.clientWidth;
		win_size_Y = document.documentElement.clientHeight;
	}
	else if (document.body && document.body.clientWidth && document.body.clientHeight)
	{
		win_size_X = document.body.clientWidth;
		win_size_Y = document.body.clientHeight;
	}
	
	pos_X += 15;
	pos_Y += 20;
	
	if (obj.offsetWidth && obj.offsetHeight)
	{
		if (pos_X - scroll_X + obj.offsetWidth + 5 > win_size_X)
			pos_X -= (obj.offsetWidth + 25);
		if (pos_Y - scroll_Y + obj.offsetHeight + 5 > win_size_Y)
			pos_Y -= (obj.offsetHeight + 20);
	}
	
	var res = new Array;
	res['posX'] = pos_X;
	res['posY'] = pos_Y;
	res['scrollX'] = scroll_X;
	res['scrollY'] = scroll_Y;
	res['winSizeX'] = win_size_X;
	res['winSizeY'] = win_size_Y;
	
	return res;
}