if (!QueryString.test) {
 if (!window.LOGIN) 
	if (location.pathname.search(/meetingplanner\/(index+|prizedraws|shows|testimonials(_ok)?|query(_ok)?).html$/)==-1) location.href='index.html';
 
// alert(LOGIN.pclass!='0'); 
// alert((window.LOGIN) && (LOGIN.pclass!='0'));
 if ((window.LOGIN) && (LOGIN.pclass!='0')) location.href='/apps/login.php?o=redir&l='+LANG;
 
 if (LOGIN.pclass=='0') if (location.pathname.search(/meetingplanner\/index.html$/)>-1) location.href='account.html';
}

function swType(n,ctl) {
 if (!ctl) ctl=document.form1.MEMBER_TYPE;
 ctl.length=1;
 for (var i in Categs)
 	if (Categs[i].parent==n) ctl.options.add(new TOption(i,Categs[i].name));
 return false;
}

function getSelectionRows(s) {
 var res={ };
 s=s.replace(/\r?\n/g,'\\n');
 s=s.replace(/<#([0-9]+):([0-9]+):(.*?)\/\/>/gm,function (cero, uno, dos, tres) {
// 	alert(uno+': '+tres);
 	res[uno]={ date: dos.replace(/(\d\d\d\d)(\d\d)(\d\d)/,'$1/$2/$3'), comment: tres ? tres.replace(/\\n/g,'\n') : '' };
 	return '';
 	});
 	
 return res; 	
}

function editSelectionComments(id,me) {
 var obj=getObj('postIt'), F=document.formComments;
 if (me) { safe_setObjPos(obj,myX(me)-320,myY(me)-56) }
// alert(obj.style.background);
 obj.style.background='#ffb64f url(http://www.abcevents.com/images/pincho.gif) 98% 10px no-repeat';
 getObj('editCommentsMsg').innerHTML=ROW.suppliers[id].name;
 F.sc.value=id;
 if (F.keep) F.keep.value='';
// alert(id);
// alert(ROW.selRows[id].comments);
 F.COMMENTS.value=ROW.selRows[id].comment || '';
 obj.style.visibility='visible';
 F.COMMENTS.focus();
 return false;
}

function sendSelectionComments(F) {
 var ID=F.sc.value, obj=ROW.suppliers[ID];
 obj.selNotes=F.COMMENTS.value;
 getObj('comments'+ID).innerHTML='Wait...';
 F.submit();
 return hidePostIt();
}

function updateSelectionComments(id) {
 var obj=ROW.suppliers[id];
 getObj('comments'+id).innerHTML=obj.selNotes.limit(256,56);
 return false;
}

function safe_setObjPos(obj,x,y) {
 var B=document.body;
 if (y+obj.clientHeight>B.scrollTop+B.clientHeight) y=B.clientHeight+B.scrollTop-obj.clientHeight-8;
 if (y<document.body.scrollTop) y=document.body.scrollTop+8;
 obj.style.left=x; obj.style.top=y;
}

function editRFPComments(id,me) {
 var obj=getObj('postIt'), F=document.formComments;
 if (me) { safe_setObjPos(obj,myX(me)-300,myY(me)-70) }
 obj.style.background='#ffb64f url(http://www.abcevents.com/images/pincho.gif) 98% 10px no-repeat';
 var RFP=ROW.rfps[id];
 getObj('editCommentsMsg').innerHTML='#'+RFP.id+': '+RFP.data.EVENT_NAME;
 F.sc.value=id;
 F.STATUS.value=RFP.status;
 F.COMMENTS.value=ROW.rfps[id].comments || '';
 obj.style.visibility='visible';
 F.COMMENTS.focus();
 return false;
}

/*
function updateRFPComments(id) {
 var obj=ROW.rfps[id];
 getObj('comments'+id).innerHTML=obj.comments.limit(64);
 getObj('status'+id).innerHTML=RFP_STATES[obj.status];
 return hidePostIt();
}
*/

function sendRFPComments(F) {
 var ID=F.sc.value, obj=ROW.rfps[ID];
 obj.comments=F.COMMENTS.value;
 obj.status=F.STATUS.value;
 getObj('comments'+ID).innerHTML=obj.comments.limit(54,30);
 getObj('status'+ID).innerHTML=RFP_STATES[obj.status];
 F.submit();
 return hidePostIt();
}

function hidePostIt() {
 getObj('postIt').style.visibility='hidden';
 return false;
}

var DET_PAGES={
	'hotels': 'hotel_det',
	'congress': 'congress_det',
	'agencies': 'dmc_det',
	'cvbs': 'destination_det',
	'otheracc': 'otheracc_det'
}

function getSelectionList(row) {
 if (!row.selRows) row.selRows=getSelectionRows(row.selections);
// alert(row.selRows);
 var selectionTemplate=getObjContent('briefTmp');
 var res={ }
 
// for (var i in row.selRows) {
 for (var i in row.suppliers) {
 	var selRow=row.selRows[i];
 	var supplier=row.suppliers[i];
 	if ((!supplier) || (!selRow)) { /* alert(i); */ continue; }
 	if (!supplier.firstPic) {
 		var m;
 		if (m=supplier.pics.match(/([0-9]+):[10]/))
 			supplier.firstPic='/files/pic-'+supplier.pclassid+'-'+supplier.id+'-'+m[1]+'.jpg';
 		else
 			supplier.firstPic='/files/pic-none4.jpg';
 	}
 	supplier.date=row.selRows[i].date;
 	supplier.detPage=DET_PAGES[supplier.pclass] + '.html';
 	// OJO: Pending implement, from "selection" meetingplanner field...
 	supplier.selNotes=selRow.comment || ''; 
 	if (!res[supplier.pclass]) res[supplier.pclass]='';
 	res[supplier.pclass]+=selectionTemplate.xParse(supplier);
 }
 var xres='';
 for (var i in res) {
// 	xres+='<div><p style="text-align: center; margin: 0; padding: 4 10px 8px 10px; font-size: 14px"><b class=maroon>'+getObjContent('selectionHeader_'+i)+'</b></p>';
 	xres+='<a name="'+i+'"></a>' + getObjContent('selectionHeader_'+i);
//	xres+='<div style="border: 1px solid #cacaca; margin-bottom: 10px">' + res[i] + '</div>';
	xres+='<table width=100% border=0 cellspacing=0 cellpadding=0 style="border: 1px solid #cacaca; margin-bottom: 10px"><tr><td>' +
			res[i] +
		'</table>';
// 	xres+=res[i];
// 	xres+='</div><br>';
 }
 return xres;
}

function updateRFPStatus(id,status) {
// alert(id+': '+status);
 var s='/apps/myrfps.php?l='+LANG+'&ss='+id+'&status='+status;
 location.href=s;
 return false;
}

function getRFPList(row) {
 var rfpTable=getObjContent('briefTmp'), rfpTemplate=getObjContent('briefTmpRow'), res='';
// alert(rfpTable);
 var n=0;
 for (var i in ROW.rfps) {
 	var rfp=ROW.rfps[i];
 	rfp.statusName=RFP_STATES[rfp.status] || '???';
// 	rfp.status=2;
 	rfp.odd=(n++%2).toString();
//	alert(rfpTemplate.xParse(rfp));
 	res+=rfpTemplate.xParse(rfp);
 }
 res=rfpTable.replace('<!-- ROWS -->',res);
 return res;
}

function getPrizeDrawList(t) {
 var resObj=getObj('prizeDrawsTmpl_'+t);
 var res=getObjContent('prizeDrawsTmpl_'+t).replace(/\r?\n/g,' ');
// alert(res);
// var rowTmpl=res.match(/<tr class="?rowTmpl.+?<\/tr>/i);
 var rowTmpl=res.match(/<tr class=\x22?rowTmpl.+?<\/tr>/i);
 if (QueryString.test) alert(res+'\n---\n'+rowTmpl);
// alert(rowTmpl);
 if (!rowTmpl) return '';
 rowTmpl=rowTmpl[0];
// alert(rowTmpl);
 var rowsHTML='', n=0, row, Country;
 for (var i in ROWS) if ((row=ROWS[i]) && (row.type==t)) {
 	if (Country=CTYS[row.country])
 		Country=Country.n;
	else
		Country='???';
 	row.xcity=Country + ',<br>' + row.city;
 	if ( (row.isSelected) || ((!row.isSelected) && (ROW.nPrizes<ROW.maxPrizes)) )
	 	row.slink=xParse(getObjContent('selectLnk_'+row.isSelected),row);
	else
		row.slink='';
 	rowsHTML+=xParse(rowTmpl,row);
 	n++;
 }
// if (n) res=res.replace(/<tr class="?noResults.+?<\/tr>/i,'');
// res=res.replace(/<tr class="?rowTmpl.+?<\/tr>/i,rowsHTML);
 if (n) res=res.replace(/<tr class=\x22?noResults.+?<\/tr>/i,'');
 res=res.replace(/<tr class=\x22?rowTmpl.+?<\/tr>/i,rowsHTML);
 if (QueryString.test) alert(res);
 return res;
}

function showPrizeDraws(t) {
 setObjContent('prizeDrawList',getPrizeDrawList(t));
 return false;
}

function form1_validate(me,sending) {
 if (me._ETYPES) me._ETYPES.value=getCheckTextValues(me['ETYPES[]']); // .replace(/,/g,', ');
 return true;
}

function form4_validate(me,sending) {
 me.MEMBER_TYPE_NAME.value=Categs[me.CATEG.value].name + '/' + Categs[me.MEMBER_TYPE.value].name;
 me.REFER_TYPE_NAME.value=Categs[me.REFER_CATEG.value].name + '/' + Categs[me.REFER_TYPE.value].name;
// var ctl=me.REFER_TITLE;
// me.REFER_TITLE_TRANSLATED.value=ctl.options[ctl.selectedIndex].text;
 return true;
}

function form7_validate(me,sending) {
 var res='', obj, chkObj;
 for (var i in ROWS) 
  if ((obj=ROWS[i]) && (chkObj=getObj('check'+i)) && chkObj.checked) res+='\n  '+i+': '+obj.name;
 me.SHOW_NAMES.value=res;
// alert(res);
 return true;
}


function updateEventRow(row) {
 LOGIN.events[row.id]=row;
 updateEventList(row.past);
 return false;
}

function rmEventRow(id) {
 var past=LOGIN.events[id].past;
 delete(LOGIN.events[id]);
 updateEventList(past);
 return false;
}

function getEventList(ROWS,past) {
 var EVENT_REPORT=LOGIN.EVENT_REPORT;
 var res='';
 var n=0, row;
 for (var i in ROWS) if ((row=ROWS[i]) && (row.past==past)) {
 	row.ord=++n;
 	row.odd=n%2;
 	row.briefName=row.name.limit(128,25);
 	row.briefLocation=row.location.limit(16,20);
 	if (!row.progtypeName) row.progtypeName=EVENTTYPES[row.progtype];
 	res+=EVENT_REPORT.rowTmpl.xParse(row);
 }
 if (res)
 	res='<table border=0 class=rfpList width=100% border=0 cellspacing=0 cellpadding=2>' + EVENT_REPORT.rowHdr + res + '</table>';
 else
 	res=EVENT_REPORT.noResults.replace('$past',past);
 return res;
}

function editEvent(row,x,y) {
 fillForm(document.form9,row);
 showPopUp('eventPopUp',x,y);
 return false;
}

function newEvent(t,x,y) {
 var row={ id: '', past: t.toString(), name: '', progtype:'', progdate: '', attenddees: '', location: '', npax: '', hotelname: '', hotelcontact: '', agencyname: '', agencycontact: '', congressname: '', congresscontact: '' };
 return editEvent(row,x,y);
}

function setEvent(id,x,y) {
 var row=LOGIN.events[id];
 return editEvent(row,x,y);
}

function form9_validate(me,sending) {
 return false;
}

function updateEventList(past) {
 getObj('eventList'+past).innerHTML=getEventList(LOGIN.events,past);
 return false;
}

// function setCustomToBOM() {
// var aux; if (aux=getObj('captionMsg')) { aux.innerHTML='Hosted Buyer Programme'; aux.height=20; }
// }

function initialize() {
// if (document.form1) swType(ROW?Categs[ROW.member_type].parent:3);
// if ((location.hostname=='www.bestofmice.com') || (location.pathname.indexOf('bom.html')>0)) setCustomToBOM();
 
 if (window.LOGIN) {
 	if (!LOGIN.title) LOGIN.title='';
 	if (getObj('itemContents')) parseObjContent('itemContents',LOGIN);
 }
 
 if (!window.ROW) ROW=null;
 
 if (document.form1) {

	addGroupOptsToCombo(document.form1.COUNTRY,CTYS,'n','z'); 
	if (ROW) {
		swType(Categs[ROW.member_type].parent);
	 	if (ROW.services.indexOf('TOURISM_FAIRS')>=0) document.form1.FAIRS.disabled=false;
		// Pending remove
	 	if (ROW.services.indexOf('BOM')>=0) ROW.WORKSHOPS_AND_EVENTS=1;
//	 	if (ROW.services.indexOf('FAM_TRIPS')>=0) document.form1.FAM_TRIPS.disabled=false;
		if (!ROW.email) ROW.email=ROW.events_email;
 		fillForm(document.form1,ROW);
 	} else {
 		fillForm(document.form1,{ SERVICES: 'BOM' });
 		swType(3);
 	}
 }
 
 if (document.form2) { if (ROW) fillForm(document.form2,ROW); return false }
 
 if ( (ROW) && (getObj('resultSelections')) ) {
 	setObjContent('resultSelections',getSelectionList(ROW));
 	var hash=location.hash.match(/^#supp(\d+)$/);
 	if (hash) {
 		hash=hash[1];
 		location.hash+='';
// 		editSelectionComments(hash,getObj('modLnk'+hash));
 	}
 }
 
 if ( (ROW) && (getObj('resultRFPs')) ) setObjContent('resultRFPs',getRFPList(ROW));
 
 if ( (ROW) && (getObj('FAQ_Index')) ) {
 	if (window.ItemCategs)
 		getXtdFAQIndex(Items,ItemCategs,getObj('FAQ_Index'));
 	else
	 	setObjContent('FAQ_Index',getFAQIndex(Items));
 }
 
 if ( (ROW) && (document.form3) ) {
 	document.form3.MEMBER_ID.value=LOGIN.xid;
 	document.form3.LOGIN_ID.value=LOGIN.id;
 	document.form3.MEMBER_NAME.value=ROW.member_name;
 	document.form3.LOGIN_NAME.value=LOGIN.name;
 }
 
 if (document.form4) {
 	if (ROW) document.form4.CATEG.value=Categs[ROW.member_type].parent;
 //	swType(document.form4.CATEG.value,document.form4.MEMBER_TYPE);
 	swType(document.form4.REFER_CATEG.value,document.form4.REFER_TYPE);
 	if (ROW) fillForm(document.form4,ROW);
 	var fLnk=getObj('firstFAQLnk');
 	for (var i in Items) { fObj=Items[i]; break; }
 	fLnk.innerHTML=fObj.question;
 	fLnk.onclick=function() { swFAQ(fObj.id); return true };
 }
 
 if (document.form5) {
	addGroupOptsToCombo(document.form5.SUPPLIER_COUNTRY,CTYS,'n','z');
	if ((window.SUPPLIER) && (window.SUPPLIER.pclass)) {
		ROW.supplier_type=SUPPLIER.pclass.toUpperCase();
		ROW.supplier_name=SUPPLIER.name;
		ROW.supplier_country=SUPPLIER.country;
		ROW.supplier_city=SUPPLIER.city;
		document.form5.SUPPLIER_TYPE.options[0]=null;
		getObj('selectSupplierLnk').href='../'+SEARCH_URL[ROW.supplier_type];
	} else {
		getObj('selectSupplierLnk').style.visibility='hidden';
		getObj('rateSupplierDetails').style.visibility='hidden';
	}
	ROW.title=LOGIN.title;
 	if (ROW) fillForm(document.form5,ROW);
// 	document.form5.SUPPLIER_TYPE_NAME.value=document.form5.SUPPLIER_TYPE.text;
 }
 
 if (document.form6) if (ROW) fillForm(document.form6,ROW);
 if (document.form7) if (ROW) fillForm(document.form7,ROW);
 
 if (document.form8) {
 	LOGIN.company=ROW.member_name;
 	if (ROW) fillForm(document.form8,LOGIN);
 }
 
 if (document.form9) {
 	addOptsToCombo(document.form9.progtype,EVENTTYPES);
 	LOGIN.events=EVENTS;
 	LOGIN.EVENT_REPORT={
		listTmpl: getObj('eventList1').innerHTML,
		rowHdr: getObj('eventListHeader').innerHTML,
		rowTmpl: getObj('eventListRow').innerHTML,
		noResults: getObj('eventList0').innerHTML
	};
 	getObj('eventList1').innerHTML=null;
 	updateEventList(0);
 	updateEventList(1);
 }

}

chainOnload(initialize);
