
var ID=QueryString.id;
if (!ID) location.href='press.html';
document.write('<sc'+'ript language=javascript src="/apps/news.js.php?l='+LANG+'&id='+ID+'"></sc'+'ript>');

function mkCtl(type,req,name,value,params) {
 var res, validate='',xtra='', xObj=str2Obj(params);
 if (req) switch(type) {
 	case 'CHECK':
 	case 'RADIO':
 	                req=' CHECKED'; break;
 	default:	req=' class=req'; 
 } else req='';
 switch(type) {
        case 'TEXTBOX':	res='<textarea name="'+name+'"'+req+xtra+'>'+value+'</textarea>';
 	                return res;
        case 'SELECT':	var opts='<option value="">---Select---';
	                res='<select name="'+name+'"'+req+xtra+'>'+opts+'</select>';
	                return res;
 	case 'SUBMIT':
 	case 'RESET':	if (!name) name='_'+type.substr(0,3).toLowerCase()+'1';	break;
 }
 
 if (value) value=' value="'+value+'"'; else value='';
 switch(type) {
	case 'CHECK':	type='CHECKBOX'; name+='[]'; break;
	case 'NUMBER':	type='TEXT'; validate=' validateas=number onchange="this.value=this.value.replace(/[^0-9]/g,\'\')"'; break;
	case 'DATE': /* type='TEXT'; */ validate=' validateas=DateDMY'; xtra+=' maxlength=10'; break;
	case 'DATEMMYY':	type='DATE'; validate=' validateas=DateMMYY'; xtra+=' size=5 maxlength=5'; break;
	case 'DATEMMYYYY':	type='DATE'; validate=' validateas=DateMMYYYY'; xtra+=' size=7 maxlength=7'; break;
	case 'EMAIL': type='TEXT'; validate=' validateas=email'; xtra+=' maxlength=80'; break;
	case 'PHONE': type='TEXT'; validate=' validateas=phone'; xtra+=' maxlength=25'; break;
	
 }
 res='<input type='+type+' name="'+name+'"'+value+req+xtra+validate+'>';
// if (TQueryString().test==4) if (type.search(/^(RADIO|DATE)/)==0) alert(res);
 if (TQueryString().test==4) if (name.search(/^(CADUCIDAD|CVV|NUMERO)/)==0) alert(res);
 return res;
}

function xmkImg(n,p) {
 var s='', defMargin=8;
 if (QueryString.test==2) alert(n+'\n'+p);
 if (!p) p='';
 p=p.replace(/ margin=(\d+)/,function(cero,m) { defMargin=m; return '';});
 p=p.replace(/left|center|right/,function (a) {
	switch(a) {
		case 'left':	if (defMargin>0) s='margin-right:'+defMargin+'px'; break;
		case 'right':	if (defMargin>0) s='margin-left:'+defMargin+'px'; break;
		default:	if (defMargin>0) s='margin: '+defMargin+'px'; break;
	}
 	return 'align='+a;
 });
 p=p.replace(/ (\d+)x(\d+)?/,function(cero,w,h) {
	w=w ? ' width=' + w : '';
	h=h ? ' height=' + h : '';
 	return ' ' + w + h;
 });
 p=p.replace(/ #map([a-z0-9_]+)/,' usemap="#map$1"');
 if (s) p=p.replace(/(style=".+?)"/,function(cero,css) { css+=';'+s; s=''; return css; });
 if (s) s=' style="'+ s + '"';
 var res='<img border=0 src="' + n + '" ' + p + s + '>';
 if (QueryString.test==2) alert(res);
 return res; 
}

function mkImg(n,a,w,h,rest) {
 var s='';
 switch(a) {
 	case 'left':	s='margin-right:5px'; break;
 	case 'right':	s='margin-left:5px'; break;
 	default:	s='margin: 2px'; break;
 }
 a=a ? ' align=' + a : '';
 w=w ? ' width=' + w : '';
 h=h ? ' height=' + h : '';
 rest=rest ? ' ' + rest : '';
 if (s) s=' style="' + s + '"' ;
 var res='<img border=0 src="'+n+'"'+ a + w + h + rest + s + '>';
 if (QueryString.test==2) alert(res);
 return res; 
}

function mkCol(w,a) {
 w=w ? ' width='+w : '';
 a=a ? ' align='+a : '';
 return '<td'+w+a+' valign=top>';
}

function mkTable0(content,w,a) {
 content=content.replace(/<col(?: (\d+%?))?(?: (left|center|right))?>/g,function(cero,w,a) { return mkCol(w,a) });
 w=w ? ' width=' + w : '';
 a=a ? ' align=' + a : '';
 var res='<table'+w+' border=0 cellspacing=0 cellpadding=1><tr><td'+a+' valign=top>' + content + '</table>';
// alert(res);
 return res;
}

function mkTable(content,w,a) {
 if (content.search(/^<col/)<0) content='<col>'+content;
 content=content.replace(/<col(?: (\d+%?))?(?: (left|center|right))?>/g,function(cero,w,a) { return mkCol(w,a) });
 w=w ? ' width=' + w : '';
 a=a ? ' align=' + a : '';
 var res='<table'+w+a+' border=0 cellspacing=0 cellpadding=1><tr>' + content + '</table>';
// if (QueryString.test==4) alert(res);
 return res;
}

function strExpand(s,obj) {
// if (TQueryString().test==5) alert(s);
 var TRANS_ID=obj.id, FORMS_COUNT=0; // obj.txid;
 s=s.replace(/&#65533;/g,"'");
 s=s.replace(/\[-----\]/,'<hr>');
 s=s.replace(/\r/g,'');
 s=expandULs(s,'news');
// s=s.replace(String.fromCharCode(381),'\'');
 s=s.replace(/\u017D/g,'\'');
 s=s.replace(/\n\n/g,'<br>'); // <!--BRANCH-->');
 // OJO: esta es la que causa que no se detecte bien el final de los links en =>[]
 s=s.replace(/\n/g,'');
 s=s.replace(/<p spacing=(\d+)( .*)?>/g,function (cero,uno,dos) { return '<br>'.repeat(uno) + '<p'+dos+'>' });
 s=s.replace(/<p class=newBlock>(.+?)(<p|$)/g,'\n<br><p><div class=newBlock><p>$1</div>\n$2');
// s=s.replace(/\[translates (\d+)\]/,function(cero,uno) { TRANS_ID=uno; return ''; });
 s=s.replace(/\[FORM TO="(.+?)" SUBJECT="(.+?)"(?: NOTIFY="(.+?)")?\]=>\[(.+?)\]/g,function(cero, to, subject, notifyURL, successURL) {
              var res='';
              if (FORMS_COUNT++) res='</form>';
              res+='<form method=post name=formMail'+(FORMS_COUNT>1?FORMS_COUNT:'')+' action="/formmail" onsubmit="return validateForm(this)"><input type=hidden name=_from value="webmailer@bestofmice.com"><input type=hidden name=_to value="'+to+'"><input type=hidden name=_subject value="'+subject+'"><input type=hidden name=_success value="'+successURL+'">';
              if (notifyURL) res+='<input type=hidden name="_notify" value="">';
              return res;
              }
            );
/*
 s=s.replace(/\[/FORM\]/,function() {
              if (!FORMS_COUNT) return '';
              FORMS_COUNT--;
              return '</form>';
             }
            );
*/
 s=s.replace(/\[!(TEXT|TEXTBOX|RADIO|CHECK|SUBMIT|RESET|DATE[YMD]*|NUMBER|EMAIL|PHONE)(\*)?(?:\((.+?)\))? ([A-Z0-9_]+)?(?:=([^\]]+?))?\]/g,function(cero,type,req,attrs,name,value,params) { return mkCtl(type,req,name,value,attrs) });
// RADIOBTNS CARD_TYPE VISA=Visa;AMEX=Amex
// CHECKLIST DISCOUNT ABC=Soy Miembro de ABCevents.com BOM=He participado en Best Of M.I.C.E
// NUMBER(maxlength=X minlength=W size=10 length=3) DATO="default" ; otras=cosas 
 s=s.replace(/\[#([a-z0-9_]+)\]/ig,		'<a name="$1"></a>');
 
/*
	[515_1.jpg] [2.jpg]
	uno=>1.jpg
	uno=>[new-515_1.jpg]
	[1.pdf]
	[1.jpg]=>1.pdf
*/

 s=s.replace(/=>(\d+.(?:gif|jpg|pdf))/g,		'=>[/files/news/new-$TRANS_ID_$1]');
 s=s.replace(/=>(\d+_\d\.(?:gif|jpg|pdf))/g,		'=>[/files/news/new-$1]');
 s=s.replace(/=>(new-\d+_\d+.(?:gif|jpg|pdf))/g,	'=>[/files/news/$1]');

 s=s.replace(/=>\[(\d+\.(?:jpg|gif|pdf))/g,		'=>[/files/news/new-$TRANS_ID_$1');
 s=s.replace(/=>\[(\d+_\d+\.(?:jpg|gif|pdf))/g,		'=>[/files/news/new-$1');
 s=s.replace(/=>\[(new-\d+_\d+.(?:gif|jpg|pdf))/g,	'=>[/files/news/$1');
 
 s=s.replace(/\[(\d+\.(?:jpg|gif|pdf))/g,		'[new-$TRANS_ID_$1');
 s=s.replace(/\[(\d+_\d+\.(?:jpg|gif|pdf))/g,		'[new-$1');

 s=s.replace(/\$TRANS_ID/g,TRANS_ID);

 // Expand linked images... just embedded images will be expanded below.. 
// s=s.replace(/\[(new-[0-9_]+\.(?:jpg|gif))(?: (left|center|right))?(?: (\d+)x(\d+)?)?( [^\]]*)?\]=>/g,function(cero,name,align,width,height,rest) { return '['+ mkImg('/files/news/'+name,align,width,height) + (rest|| '') + ']=>' });
 s=s.replace(/\[(new-[0-9_]+\.(?:jpg|gif))(?: ([^\]]*))?\]=>/g,function(cero,name,params) { return '['+ xmkImg('/files/news/'+name,params) + ']=>' });

 s=s.replace(/=>(hotel|dmc|destination|congress|otheracc)(\d+)/g,'=>[/msg::LANG/$1_det.html?id=$2]');
 s=s.replace(/=>cvb([0-9]+)/g,			'=>[/msg::LANG/destination_det.html?id=$2]');
 s=s.replace(/=>new(\d+)/g,			'=>[/msg::LANG/news.html?id=$1]');
 
 s=s.replace(/=>([-a-z0-9@_.:+?&=\/#]+)/ig,	'=>[$1]');

 // Map shapes expansions must be done before this..
 s=s.replace(/#(map[a-z0-9_]+) \{([^}]+)\}/g,function(cero,name,params) { return expandMap(name,params); });
 s=s.replace(/\[([^\]]+?)( (?:class|target)=[a-z0-9_= \x22]+)?(?: (left|center|right))\]=>\[([^\]]+)\]/g,'<div align=$3><a$2 href="$4">$1</a></div>');
 s=s.replace(/\[([^\[\]]+?)( (?:class|target)=[a-z0-9_= \x22]+?)?\]=>\[([^\]]+?)\]/g,'<a$2 href="$3">$1</a>');
 
 s=s.replace(/\[(new-\d+_\d+.pdf)\]/g,'<iframe width=100% height=480 src="/files/news/$1" style="border: 1px solid #dedede"></iframe>');
 s=s.replace(/\[(new-\d+_\d+.pdf)!\]/,function (cero,uno) { window.open('/files/news/'+uno); return ''; });

 // Expand just embedded images, linked images were expanded above
// s=s.replace(/\[(new-[0-9_]+\.(?:jpg|gif))(?: (left|center|right))?(?: (\d+)x(\d+)?)?( [^\]]*)?\]/g,function(cero,name,align,width,height,rest) { return mkImg('/files/news/'+name,align,width,height,rest) });
 s=s.replace(/\[(new-[0-9_]+\.(?:jpg|gif))(?: ([^\]]*))?\]/g,function(cero,name,params) { return xmkImg('/files/news/'+name,params) });
 // Maybe this could be done by the line above..
 s=s.replace(/\[(pic-[0-9_]+\.(?:jpg|gif))(?: (left|center|right))?\]/g,'<img border=0 src="/files/$1" align=$2 hspace=5 vspace=6>');

 s=s.replace(/\[([-a-z09._]+@[-a-z0-9.]+)\]/ig,'<a href="mailto:$1">$1</a>');
 s=s.replace(/msg::LANG/g,LANG);

// <col>uno<col>dos<col>tres</col>
// <col>uno<col>dos<col>tres</col 60% right>
 s=s.replace(/(<col.+?)<\/col(?: (\d+%?))?(?: (left|center|right))?>/g,function(cero,content,w,a) { return mkTable(content,w || '100%',a) });

// s=s.replace(/<columns>(.+)?<col>(.+?)<\/columns>/g,'<table border=0 cellspacing=0 cellpadding=0 width=100%><tr><td align=left valign=top class=body>$1<td align=center valign=top class=body style="text-align: center; padding-right:10px">$2</table>');
/*
 s.replace(/<left>(.+?)<(justify)>(.+?)<\/end>/g,	function(cero,uno,dos,tres) {
 		alert(cero);
 		return '';
 	});
*/
 s=s.replace(/<left>(.+?)<(right|justify)>(.+?)<\/end>/g,	'<table border=0 cellspacing=0 cellpadding=0 width=100%><tr><td align=left valign=top class=body>$1<td align=$2 valign=top class=body style="text-align: $2; padding-right:10px">$3</table>');
// s=s.replace(/<right(?: (-\d+))?>(.+?)<\/right>/g,'<div align=right style="position: relative; top: -24px">$2</div>');
 s=s.replace(/<right>(.+)?<\/right>/g,'<table align=right border=0 cellspacing=0 cellpadding=0"><tr><td>$1</table>');
 s=s.replace(/\[(.+?)>>>(.+?)\]/g,'<table border=0 cellspacing=0 cellpadding=0 width=100%><tr><td align=left valign=top class=body>$1<td align=right valign=top class=body style="text-align: right; padding-right:10px">$2</table>');

 s=s.replace(/\[faq\d+\]/,'<div id=FAQ_Index class=faqIndex>-</div>' + 
 '<table class=rounded width=534 border=0 cellspacing=0 cellpadding=0 style="margin-top:10px; background: #e0e0e0">' +
  '<tr><td class=bar1st style="color: #e0e0e0; height:1px; font-size:1px; line-height:1px">.'+
  '<tr><td class=bar2nd style="color: #e0e0e0; height:1px; font-size:1px; line-height:1px">.'+
  '<tr><td class=bar3rd style="color: #e0e0e0; height:1px; font-size:1px; line-height:1px">.'+
  '<tr><td class=bar4th style="color: #e0e0e0; height:1px; font-size:1px; line-height:1px">.'+
  '<tr><td valign=top align=right>'+
  	'<div align=left class="faqAnswer grayTitle" id=FAQ_Contents style="width: 534px; height: 144px; overflow: auto; text-align:justify; padding: 3px 4px">&nbsp;</div>' +
  '<tr><td class=bar4th style="color: #e0e0e0; height:1px; font-size:1px; line-height:1px">.'+
  '<tr><td class=bar3rd style="color: #e0e0e0; height:1px; font-size:1px; line-height:1px">.'+
  '<tr><td class=bar2nd style="color: #e0e0e0; height:1px; font-size:1px; line-height:1px;">.' +
  '<tr><td class=bar1st style="color: #e0e0e0; height:1px; font-size:1px; line-height:1px;">.' +
  '</table>');
 if (QueryString.test==3) alert(s);
 if (FORMS_COUNT) s+='</form>';
// if ((s.indexOf('<form')>=0) && (s.indexOf('</form>')<0)) s+='</form>';
 return s; 
}

function expandMap(name,s) {
 var obj={ scale: '' };
 s=s.replace(/!([a-z_]+)="(.+?)"/g,function(cero,fname,fval) { obj[fname]=fval; return ''; });
 s=s.replace(/box\((\d+,\d+,\d+,\d+)(?:,(.+?))?\)=>\[(.+?)\]/g,'<area target=_blank shape=rect coords="$1" href="$3" title=$2>');
 s=s.replace(/\[(\d+,\d+,\d+,\d+)(?:,(.+?))?\]=>\[(.+?)\]/g,'<area target=_blank shape=rect coords="$1" href="$3" title=$2>');
 if (obj.scale) obj.scale=' scale="'+obj.scale+'"';
 var res='<map name="'+name+'"' + obj.scale + '>' + s + '</map>';
 if (QueryString.test==2) alert(res);
 return res;
}

function scaleMap(html,scale) {
 scale=eval(scale);
// if (QueryString.test==2) alert(html);
 html=html.replace(/coords="[0-9,]+"/g,function(cero) {
 	return cero.replace(/[0-9]+/g,function(coord) {
  		return Math.round(coord*scale);
  	});
  	
 });
// if (QueryString.test==2) alert(html.replace(/\\n/g,'\n'));
 return html;
}

function initialize() {
 if (!ID) { alert('Not available'); location.href='press.html'; }
 var obj=PressRow, aux;
// if (QueryString.test==2) alert(obj.body);
 if (!obj) obj={ intro: 'Not available', body: '' };
 var pressRelease=getObj('pressRelease').innerHTML;
 if (obj.bgcolor) pressRelease=
	'<div class=bar1st style="background: #$bgcolor">&nbsp;</div>' +
	'<div class=bar2nd style="background: #$bgcolor">&nbsp;</div>' +
 	'<div style="background: #$bgcolor; padding: 5px">' + pressRelease + '</div>' +
 	'<div class=bar2nd style="background: #$bgcolor">&nbsp;</div>' +
	'<div class=bar1st style="background: #$bgcolor">&nbsp;</div>';
 obj.intro=txtMakeup(obj.intro);
 var ctrlObj={ };
 obj.body=obj.body.replace(/\[!([a-z_]+)=(.+)\]/g,function(cero,fname,fval) { /* alert(fname+'='+fval); */ ctrlObj[fname]=fval; return ''; });
 
 obj.body=strExpand(obj.body,obj);
// if (QueryString.test==2) if (x=obj.body.match(/<map .+>/)) alert(x+'\n---\n'+obj.body);
 obj.body=obj.body.replace(/<map .+scale="(.+?)">.+?<\/map>/g,scaleMap);
 pressRelease=pressRelease.xParse(obj);
 if (obj.styles) getObj('pressReleaseCaption').className=obj.styles;
 setObjContent('pressRelease',pressRelease);
// obj.title='';
 parseObjContent('pressReleaseCaption',obj);
 if (ctrlObj.layout=='naked') {
 var aux=getObj('mainArea').innerHTML;
/*
 aux=aux.replace(/coords="(\d+),(\d+),(\d+),(\d+)"/g,function(cero,x1,y1,x2,y2) {
		var scale=800/560;
		return 'coords="'+Math.round(x1*scale)+','+Math.round(y1*scale)+','+Math.round(x2*scale)+','+Math.round(y2*scale)+'"';
 });
*/

 if (Platform.MSIE) {
	document.getElementById('mainAreaTable').outerHTML=
		'<table border=0 cellpadding=0 cellspacing=0 id=mainAreaTable width=800 align=center>' +
		'<tr><td align=center id=mainArea style="padding: 10px 0">' + aux + '</table>';
 } else
	document.getElementById('mainAreaTable').innerHTML='<tr><td align=center id=mainArea style="padding: 10px 0">' + aux;
  return;
 }

 if ((window.Items) && getObj('FAQ_Index')) {
 	setObjContent('FAQ_Index',getFAQIndex(Items));
 	swFAQ(FIRST_FAQ_ID);
 }
}
 
chainOnload(initialize);

