/*
+ ----------------------------------------------------------------------------+
|     Plus Framework
|
|     ©Positron 2006-2008
|     http://mixlife.net
|     positron.th@gmail.com
|
|     $Revision: 1.0.2 $
|     $Date: 2008/09/23 10:32:00 $
|     $Author: Positron $
+----------------------------------------------------------------------------+
*/
var plus={
			version:'1.0.2',
			layer:{
				top:function(e){var v=e.offsetTop,o=e.offsetParent;while(o){v+=o.offsetTop;o=o.offsetParent;};return v;},
				left:function(e){var v=e.offsetLeft,o=e.offsetParent;while(o){v+=o.offsetLeft;o=o.offsetParent;};return v;},
				width:0,
				height:0,
				sctop:0,
				scleft:0,
				update:function(){if(self.innerWidth){this.width=self.innerWidth;this.height=self.innerHeight;}else if(document.documentElement&&document.documentElement.clientWidth){this.width=document.documentElement.clientWidth;this.height=document.documentElement.clientHeight;}else if(document.body){this.width=document.body.clientWidth;this.height=document.body.clientHeight;};if( typeof( window.pageYOffset )=='number'){this.sctop=window.pageYOffset;this.scleft=window.pageXOffset;}else if(document.body&&(document.body.scrollLeft||document.body.scrollTop)){this.sctop=document.body.scrollTop;this.scleft=document.body.scrollLeft;}else if(document.documentElement&&(document.documentElement.scrollLeft||document.documentElement.scrollTop)){this.sctop=document.documentElement.scrollTop;this.scleft=document.documentElement.scrollLeft;}else{this.sctop=0;this.scleft=0;}},
				ischild:function(s,d){while(s){if(s==d)return true;s=s.parentNode;};return false;},
				byclass:function(f){var _c=document.getElementsByTagName('*')||document.all;var _e=new Array();for(var i=0;i<_c.length;i++){var $c=_c[i];var _n=$c.className.split(' ');for(var j=0;j<_n.length;j++){if(_n[j]==f){_e.push($c);break;}}};return _e;}
			},
			cookie:{
				set:function(n,v,d){var date=new Date();date.setTime(date.getTime()+(d*24*60*60*1000));var expires="; expires="+date.toGMTString();var curCookie=n+"="+escape(v)+expires+"; path=/; domain="+DOMAIN+";";document.cookie=curCookie;},
				get:function(n){var dc=document.cookie;var prefix=n+"=";var begin=dc.indexOf("; "+prefix);if(begin==-1){begin=dc.indexOf(prefix);if(begin!=0)return "";}else begin+=2;var end=document.cookie.indexOf(";", begin);if (end == -1)end=dc.length;return unescape(dc.substring(begin + prefix.length, end));}
			},
			event:{
				add:function(a,b,c){if (typeof a.addEventListener != "undefined"){a.addEventListener(b, c, false);}else if (typeof a.attachEvent != "undefined"){a.attachEvent("on" + b, c);}else{eval("a." + "on" + b + "=c");}},
				remove:function(a,b,c){if (typeof a.removeEventListener != "undefined"){a.removeEventListener(b, c, false);}else if (typeof a.detachEvent != "undefined"){a.detachEvent("on" + b, c);}else{a["on" + b] = null;}},
				get:function(i){if(!i)i=event;if(i.target)i=i.target;else if(i.srcElement)i=i.srcElement;if(i.nodeType==3)i=i.parentNode;return i;}
			},
			string:{
				trim:function(v){return v.replace(/^\s*|\s*$/g, "");}
			},
			menu:{
				click:function(s,p){this.mymenu=s.parentNode;this.mopen=(this.mymenu.offsetHeight!=20)?true:false;this.slide(p);},
				slide:function(p){this.step2=19;this.height=this.mymenu.offsetHeight;this.myul=this.mymenu.getElementsByTagName('ul');this.menuopen=this.myul[0].offsetHeight+20;if((this.height!=this.menuopen&&!this.mopen)||(this.height!=20&&this.mopen)){if(this.mopen){this.step2=(this.height<40?1:Math.ceil((this.height)/10));this.mymenu.style.height=this.height-this.step2+'px';}else{this.step2=(this.menuopen-this.height<20?1:Math.ceil((this.menuopen-this.height)/10));this.mymenu.style.height=this.step2+this.height+'px';};setTimeout("plus.menu.slide('"+p+"')",20);}else{this.step2=19;this.mopen=!this.mopen;}}
			},
			browser: {
				IE:!!(window.attachEvent && !window.opera),
				Opera:!!window.opera,
				WebKit:navigator.userAgent.indexOf('AppleWebKit/') > -1,
				Gecko:navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('KHTML') == -1,
				MobileSafari:!!navigator.userAgent.match(/Apple.*Mobile.*Safari/)
			},
			box:
			{
				width:910,
				height:450,
				open:function(){if(arguments.length>0)this.width=arguments[0]+(plus.browser.IE?20:0);if(arguments.length>1)this.height=arguments[1]+(plus.browser.IE?20:0);$('gboxc').innerHTML='';var div=document.createElement('DIV');div.innerHTML='<img src="'+HTTP+'images/admin/close.gif" style="position:absolute;top:5px;right:5px;cursor:pointer" onclick="javascript:plus.box.close()">';if(arguments.length>2)div.innerHTML+=$(arguments[2]).innerHTML.replace(/_tmp_/gi,'_box_');$('gboxc').appendChild(div);$('gboxb').style.height='0px';$('gboxb').style.display='none';$('gboxa').style.MozOpacity=0;$('gboxa').style.opacity=0;$('gboxa').style.filter="alpha(opacity=0)";$('gbox').style.display='block';$('gboxc').style.display='none';this.alpha=0;this.set=50;this.update();this.show();},
				show:function(){clearTimeout(this.tmrshow);if(this.alpha<this.set){this.alpha=this.alpha+10;$('gboxa').style.MozOpacity=this.alpha/100;$('gboxa').style.opacity=this.alpha/100;$('gboxa').style.filter="alpha(opacity="+this.alpha+")";this.update();this.tmrshow=setTimeout("plus.box.show()",1);}else{this.curheight=0;$('gboxc').style.width=this.width+'px';$('gboxc').style.height='0px';this.speed=40;$('gboxc').style.display='block';$('gboxb').style.display='block';this.slide();}},
				slide:function(){clearTimeout(this.tmrslide);if(this.curheight<this.height){if(this.height-this.curheight<(this.height/2))this.speed=Math.ceil((this.height-this.curheight)/10);this.curheight=this.curheight+this.speed;$('gboxc').style.height=this.curheight+'px';this.tmrslide=setTimeout("plus.box.slide()",1);}},
				update:function(){if($('gbox').style.display=='block'){plus.layer.update();$('gbox').style.top=plus.layer.sctop+'px';$('gbox').style.left=plus.layer.scleft+'px';$('gbox').style.height=plus.layer.height+'px';$('gboxa').style.height=plus.layer.height+'px';$('gboxb').style.top=(0+((plus.layer.height-plus.box.height)/2))+'px';$('gboxb').style.left=(0+((plus.layer.width-plus.box.width)/2))+'px';}},
				close:function(){this.speed=40;this.slideup();},
				slideup:function(){clearTimeout(this.tmrslide);if(this.curheight>this.speed){if(this.curheight<(this.height/2))this.speed=Math.ceil((this.curheight)/10);this.curheight=this.curheight-this.speed;$('gboxc').style.height=this.curheight+'px';this.tmrslide=setTimeout("plus.box.slideup()",1);}else{$('gboxb').style.display='none';$('gboxc').style.display='none';this.hidden();}},
				hidden:function(){clearTimeout(this.tmrshow);if(this.alpha>0){this.alpha=this.alpha-10;$('gboxa').style.MozOpacity=this.alpha/100;$('gboxa').style.opacity=this.alpha/100;$('gboxa').style.filter="alpha(opacity="+this.alpha+")";this.tmrshow=setTimeout("plus.box.hidden()",1);}else{$('gbox').style.display='none';}}
			},
			slide:
			{
				tmr:'',
				hide:function(o){clearTimeout(this.tmr);plus.slide.up(o,o.offsetHeight,80,o.offsetHeight);},
				up:function(o,h,op,he){var _5=Math.ceil(h/5),_6=Math.ceil(he/100);if(op>0){op-=_6;if(op<0)op=0;if(o.filters){try{o.filters.item("DXImageTransform.Microsoft.Alpha").opacity=op;}catch(e){o.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+op+')';}}else{o.style.opacity=op/100;}};if(h>0){h-=_5;if(h<0)h=0;o.style.height=h+"px";};if(h>0||op>0){var oSelf=this;this.tmr=setTimeout(function(){oSelf.up(o,h,op,he);},50);}else{}},
				show:function(o,h){clearTimeout(this.tmr);o.style.display="block";o.style.height="0px";plus.slide.down(o,h,0);},
				down:function(o,h,op){var height=o.offsetHeight,_5=Math.ceil(h/5),_6=Math.ceil(h/100);if(op<100){op+=_6;if(op>100)op=100;if(o.filters){try{o.filters.item("DXImageTransform.Microsoft.Alpha").opacity=op;}catch(e){o.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+op+')';}}else{o.style.opacity=op/100;}};if(height<h){height+=_5;if(height>h)height=h;o.style.height=height+"px";};if(height<h||op<100){var oSelf=this;this.tmr=setTimeout(function(){oSelf.down(o,h,op);},50);}else{o.style.height='';}}
			},
			edit:
			{
				profile:new Array(),
				mouseover:function(e){e=plus.edit.find(plus.event.get(e));if(e){if(e!=plus.edit.cur){plus.edit.mouseclear();};if(e.getAttribute('bg')==null){e.setAttribute('bg',e.style.background)};if(e.innerHTML.indexOf('update_')<0)e.style.background='#FFFFD2 url('+HTTP+'images/admin/edit.gif) right 4px no-repeat';plus.edit.cur=e;};return},
				mouseout:function(e){e=plus.event.get(e);if(e.className=='edit'){clearTimeout(plus.edit.curtime);plus.edit.curtime=setTimeout("plus.edit.mouseclear()",5000);};return},
				mouseclear:function(){if(plus.edit.cur){if(plus.edit.cur.getAttribute('bg')!=null){plus.edit.cur.style.background=(plus.edit.cur.getAttribute('bg')!='')?plus.edit.cur.getAttribute('bg'):'#FFFFFF';};plus.edit.cur='';}},
				click:function(e){e=plus.edit.find(plus.event.get(e));if(e){var div=e.getElementsByTagName('SPAN')[0],p=e.getElementsByTagName('STRONG')[0],em=e.getElementsByTagName('EM');if(div.innerHTML.toLowerCase().indexOf(p.innerHTML.toLowerCase().substr(0,5))<0){plus.edit.profile[div.id]=div.innerHTML;if(plus.edit.curedit!=div&&plus.edit.curedit){plus.edit.curedit.innerHTML=plus.edit.profile[plus.edit.curedit.id];plus.edit.curedit.style.textIndent='5px'}div.innerHTML=p.innerHTML.replace(/tmp_/gi, "update_")+" <input type='image' src='"+HTTP+"images/admin/save.gif' onclick='plus.edit.submit(\""+div.id+"\")' style='vertical-align:text-bottom'> <input type='image' src='"+HTTP+"images/admin/reload.gif' onclick='plus.edit.cancel(\""+div.id+"\")' style='vertical-align:text-bottom'>";if(em.length>0)em[0].style.display='none';plus.edit.curedit=div;if(e.style.background!=e.getAttribute('bg')||e.style.background!='#FFFFFF'){e.style.background=(e.getAttribute('bg')!='')?e.getAttribute('bg'):'#FFFFFF';};div.style.textIndent='0px';}}},
				find:function(e){var i=0;while(e&&i<3){if(e.className=='edit')return e;e=e.parentNode;i++;};return false;},submit:function(p){var v=(p=='_birthday')?$('update_year').value+'-'+$('update_month').value+'-'+$('update_day').value:$('update'+p).value;var t=p.split('_');switch(t.length){case 4:ajax_update(t[1],t[2],t[3],v);break;case 3:ajax_service(t[1],t[2],v);break;case 2:ajax_save(t[1],v);break;};$(p).innerHTML='saving...';plus.edit.curedit='';},cancel:function(p){$(p).innerHTML=plus.edit.profile[p];$(p).style.textIndent='5px';var em=$(p).parentNode.getElementsByTagName('EM');if(em.length>0)em[0].style.display='inline';}
			},
			load:
			{
				tmr:'',opacity:0,delay:10000,
				show:function(s){this.opacity=0;$('loading').style.display='block';$('loading').innerHTML='<div><a href="javascript:;" onclick="plus.load.hide()" class="loading_close"><img src="'+HTTP+'images/close.gif"></a><span>'+s+'</span></div>';this.delay=(arguments.length>1?arguments[1]:10000);if(arguments.length>2)$('loading').style.width=arguments[2]+'px';if(arguments.length>3)$('loading').style.height=arguments[3]+'px';plus.load.update();this.up();},
				up:function(){clearTimeout(this.tmr);if(this.opacity<100){if($('loading').filters){try{$('loading').filters.item("DXImageTransform.Microsoft.Alpha").opacity=this.opacity;}catch(e){$('loading').style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+this.opacity+')';}}else{$('loading').style.opacity=this.opacity/100;};this.tmr=setTimeout("plus.load.up()",5);this.opacity+=2;}else{this.tmr=setTimeout("plus.load.hide()",this.delay);}},
				hide:function(){clearTimeout(this.tmr);if(this.opacity>=0){if($('loading').filters){try{$('loading').filters.item("DXImageTransform.Microsoft.Alpha").opacity=this.opacity;}catch(e){$('loading').style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+this.opacity+')';}}else{$('loading').style.opacity=this.opacity/100;};this.tmr=setTimeout("plus.load.hide()",5);this.opacity-=2;}else{$('loading').style.display='none';}},
				update:function(){if($('loading')){plus.layer.update();$('loading').style.top=(plus.layer.sctop+((plus.layer.height-$('loading').offsetHeight)/2))+'px';$('loading').style.left=(plus.layer.scleft+((plus.layer.width-$('loading').offsetWidth)/2))+'px';}}
			},
			update:function()
			{
				plus.box.update();
				plus.load.update();
			}
}
//
function $(s){if (!s){return null;}var i=document.getElementById(s);if(!i&&document.all){i=document.all[s];};return i;}	
plus.event.add(window,'resize',plus.update);
plus.event.add(window,'scroll',plus.update);
plus.event.add(document,'mouseover',plus.edit.mouseover);
plus.event.add(document,'mousemove',plus.edit.mouseover);
plus.event.add(document,'mouseout',plus.edit.mouseout);
plus.event.add(document,'click',plus.edit.click);  
//plus.event.add(window,'load',function(){var _=document.getElementsByTagName("object");for (var i=0;i<_.length;i++)_[i].outerHTML = _[i].outerHTML;});

var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();

function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}