// HRISTO HRISTOV - Basic JS Scripts

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_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_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];}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
window.open(theURL,winName,features);
}

function trigger_effect(src_element,div_id, effect, first_img, second_img){
	Effect.toggle(div_id, effect, {duration: 0.4, beforeFinish:function(){
		image = src_element.getElementsByTagName('img')[0];
		image.src = image.src.match(first_img) ? second_img : first_img;
	}});
	return true;
}

function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			if (oldonload) {
				oldonload();
			}
			func();
		}
	}
}

function trim ( string ) {
	var i, numFirstChar = -1, numLastChar = -1;
	for ( i = 0; i < string.length; i ++ ) {
		if ( string.substring ( i, i + 1 ) != ' ' ) {
			numFirstChar = i;
			break;
		}
	}
	if ( numFirstChar == -1 )
		return "";
	for ( i = string.length; i >= 0; i -- ) {
		if ( string.substring ( i - 1, i ) != ' ' ) {
			numLastChar = i;
			break;
		}
	}
	return string.substring ( numFirstChar, numLastChar );
}

function isEmail(email) {
	var valid_email_address = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	return valid_email_address.test(email)
}
function isPhoneNumber(phone) {
	var valid_phone_number=/^[01]?[- .]?(\([2-9]\d{2}\)|[2-9]\d{2})[- .]?\d{3}[- .]?\d{4}$/;
	return valid_phone_number.test(phone)
}


function pcase(str) {
	strlen = str.length
	jj = str.substring(0,1).toUpperCase()
	jj = jj + str.substring(1,strlen).toLowerCase()
	for (i = 2; i <= strlen; i++) {
		if (jj.charAt(i)==" ") {
			lefthalf = jj.substring(0,i+1)
			righthalf = jj.substring(i+1,strlen)
			righthalf = righthalf.substring(0,1).toUpperCase()+righthalf.substring(1,strlen)
			jj=lefthalf+righthalf
		}
	}
	return jj
}

function AutoResizeIFrm(ifrmobj) {
	if (document.getElementById) {
		var success = 0;
		var oFrame = ifrmobj; //document.getElementById("ifrm");
		if(oFrame.style.display=='none') {
			oFrame.style.height='0px';
			oFrame.style.display='inline';
		}
		var oLoading = document.getElementById('loading');
		if(oLoading) {
			oLoading.style.display='none';
		}
		// Mozilla solution
		if (oFrame.contentDocument) {
//			alert("id='" + oFrame.id + "' height='" + oFrame.contentDocument.height + "'");
			var height = oFrame.contentDocument.height;
//			if (height > 100) {
				oFrame.style.height = (height+2) + "px";
				success = 1;
//			}
			// IE solution
		} else if (navigator && navigator.userAgent && navigator.userAgent.indexOf("MSIE") != -1 && ifrmobj) {
			var oBody = ifrmobj.contentWindow.document.body;
			var height = oBody.scrollHeight + (oBody.offsetHeight - oBody.clientHeight);
//			alert("id='" + oFrame.id + "' height='" + ifrmobj.contentWindow.document.body.scrollHeight + "'");
//			if (height > 100) {
				oFrame.style.height = (height+2) + "px";
				success = 1;
//			}
		}
	}
	if(window.frameElement) {
		//alert("window.frameElement.id='"+window.frameElement.id+"'");
		parent.AutoResizeIFrm(window.frameElement);
	}
}

function clear_field(field,default_value) {
	if (field.value==default_value) {
		field.value=""
	}
}

function validate_quicksignup(obj_form) {
	obj_form.email.value=trim(obj_form.email.value)
	
	if (obj_form.email.value=="") {
		alert("Email is a required.");
		obj_form.email.focus();
		return false;
	} else if (!isEmail(obj_form.email.value)) {
		alert("Email must be a valid email address.");
		obj_form.email.focus();
		return false;
	}
	
	return true;
}

function getStyle(oElm, strCssRule){
	var strValue = "";
	if(document.defaultView && document.defaultView.getComputedStyle){
		strValue = document.defaultView.getComputedStyle(oElm, "").getPropertyValue(strCssRule);
	}
	else if(oElm.currentStyle){
		strCssRule = strCssRule.replace(/\-(\w)/g, function (strMatch, p1){
			return p1.toUpperCase();
		});
		strValue = oElm.currentStyle[strCssRule];
	}
	return strValue;
}

function setHover() {
	var containerDiv = document.getElementsByClassName('h2title')[0];
	var arrowDiv = document.getElementsByClassName('imgArrow')[0];
	var linkText = document.getElementsByClassName('linkOverText')[0];
	var renderedH2 = document.getElementsByTagName("h2")[0];
	containerDiv.style.width = renderedH2.offsetWidth + 20 + "px";
	
	if(renderedH2.offsetWidth < 100){
		arrowDiv.style.left = renderedH2.offsetWidth + "px";
		linkText.style.left = renderedH2.offsetWidth + 10 + "px";
	}
	else if(renderedH2.offsetWidth > 300){
		arrowDiv.style.left = renderedH2.offsetWidth - 20 + "px";
		linkText.style.left = renderedH2.offsetWidth - 10 + "px";
	}
	else if(renderedH2.offsetWidth > 160){
		arrowDiv.style.left = renderedH2.offsetWidth - 17 + "px";
		linkText.style.left = renderedH2.offsetWidth - 7 + "px";
	}
	else {
		arrowDiv.style.left = renderedH2.offsetWidth - 15 + "px";
		linkText.style.left = renderedH2.offsetWidth - 5 + "px";
	}
}

function facebookShare() {
	u = location.href;
	t = document.title;
   	//triggerShareOmnitureEvent('Facebook',t.replace('Noxzema - ',''),'event20');
	triggerShareOmnitureEvent('Facebook',t,'event20');
	window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t),'sharer','toolbar=0,status=0,width=626,height=436');
	return false;
}

function friendFeedShare() {
	u = location.href;
	t = document.title;
	//triggerShareOmnitureEvent('Friend Feed',t.replace('Noxzema - ',''),'event22');
	triggerShareOmnitureEvent('Friend Feed',t,'event22');
	window.open('http://friendfeed.com/?url=' + encodeURIComponent(u) + '&title=' + encodeURIComponent(t), 'sharer', 'toolbar=0,status=0,width=626,height=436');
	return false;
}

function twitterShare() {
	u = location.href;
	t = document.title;
	//	triggerShareOmnitureEvent('Twitter',t.replace('Noxzema - ',''),'event21');
	triggerShareOmnitureEvent('Twitter',t,'event21');
	window.open('http://twitter.com/home?status=' + encodeURIComponent(t) + ' ' + encodeURIComponent(u), 'sharer', 'toolbar=0,status=0,width=780,height=436');
	return false;
}

function myspaceShare(imgURL) {
	u = location.href;
	var t = document.title;
	//var imagePath = baseThumbURL + imgURL;
	//triggerShareOmnitureEvent('MySpace',t.replace('Noxzema - ',''),'event24');
	triggerShareOmnitureEvent('MySpace',t,'event24');
	//imageTag = '';
	//if (imgURL != '') {
	//imageTag = '<img src="' + imgURL + '" />'; 
//	}

	    window.open('http://www.myspace.com/Modules/PostTo/Pages/?u=' + encodeURIComponent(u) + '&t=' + encodeURIComponent(t), 'sharer', 'toolbar=0,status=0,width=626,height=436');
	return false;
}

function deliciousShare() {
	u = location.href; 
	t = document.title;
	//	triggerShareOmnitureEvent('digg',t.replace('Tresemme - ',''),'event25');
	triggerShareOmnitureEvent('delicious',t,'event25');
	var shareURL = 'http://delicious.com/save?jump=yes&v=4&noui&url=' + encodeURIComponent(u) 
			+ '&title=' + encodeURIComponent(t);
	window.open(shareURL, 'sharer', 'toolbar = 0, status = 0, width = 626, height = 436');
	return false;
}

function diggShare() {
	u = location.href; //will not work with IP
	t = document.title;
	//	triggerShareOmnitureEvent('digg',t.replace('Tresemme - ',''),'event23');
	triggerShareOmnitureEvent('digg',t,'event23');
	var shareURL = 'http://digg.com/remote-submit?phase=2&url=' + encodeURIComponent(u) + '&title=' + encodeURIComponent(t) + '&bodytext=' + encodeURIComponent('')	+ '&topic=health';
	window.open(shareURL,'sharer','toolbar = 0, status = 0, width = 626, height = 610');
	return false;
}

function triggerShareOmnitureEvent(site, product, eventName) {
	s.pageName='';
	s.channel='';
	s.prop1 = '';
	s.prop2='';
	s.prop3='';
	s.events=eventName;
	
	s.linkTrackVars='events';
	s.linkTrackEvents=eventName;
	void(s.tl(this,'o','Social Bookmark - ' + site + ' Link'))
}

function GetVideoModal(cssClassName) {
    Event.observe(window, 'load', function () {
        var videoLinks = $$(cssClassName);
        for (a = 0; a < videoLinks.length; a++) {
            var modal = new Control.Modal(videoLinks[a], {
                overlayOpacity: 0.75,
                className: 'modal',
				beforeClose:videoModalClose,
				afterOpen:videoModalOpen,
                fade: true
            });
        }
    }, false);
}
var modalPrevOpened = false;

function videoModalClose() {
	modalPrevOpened = true;
	if (browserType == 'ie') {
		document.getElementById('flash_ie').stopVid();
	}
}

function videoModalOpen() {
	if (browserType == 'ie' && !modalPrevOpened) {
		__flash__addCallback(document.getElementById('flash_ie'), 'stopVid');
		__flash__addCallback(document.getElementById('flash_ie'), 'playVid');	
	}
	if (modalPrevOpened) {
		document.getElementById('flash_ie').playVid();
	}
}
/**************************** Scrolling Area ****************************/
var scrolling=false;
function activateScrollArea(elements,x,numberOfItemsToScroll) {
	if(isNaN(x)) {
		x=355;
	}
	if(isNaN(numberOfItemsToScroll)) {
		numberOfItemsToScroll=1;
	} else if(numberOfItemsToScroll==0) {
		numberOfItemsToScroll=1;
	}
	Event.observe(window,'load',function(){
		var scrollAreas=$$(elements);
		for(a=0;a<scrollAreas.length;a++) {
			Event.observe(scrollAreas[a].getElementsByClassName('left')[0],'click',function(event) {
				ScrollBox(event.findElement(),x,numberOfItemsToScroll);
				Event.stop(event);
			},false);
			Event.observe(scrollAreas[a].getElementsByClassName('right')[0],'click',function(event) {
				ScrollBox(event.findElement(),-x,numberOfItemsToScroll);
				Event.stop(event);
			},false);
			checkArrows(scrollAreas[a],0,x,numberOfItemsToScroll);
		}
	},false);
}

function ScrollBox(object, x, numberOfItemsToScroll) {
	if(!scrolling) {
		object=object.parentNode;
		var scrollingBlock=object.getElementsByClassName('scrollingBlock')[0];
		var scrollDistance=numberOfItemsToScroll*x
		var width = scrollingBlock.getWidth();
		var left = parseInt($(scrollingBlock).getStyle('left').replace('px', ''));
		var itemCount=width/Math.abs(x);
		var itemsToLeft=-left/Math.abs(x);
		var itemsVisible=Math.round(scrollingBlock.parentNode.getWidth()/Math.abs(x));
		var itemsToRight=itemCount-itemsToLeft-itemsVisible;
//alert('itemsToLeft='+itemsToLeft+' | itemsVisible='+itemsVisible+' | itemsToRight='+itemsToRight+' | numberOfItemsToScroll='+numberOfItemsToScroll+' | itemCount='+itemCount);
		if(x<0) {
			if(itemsToRight<itemsVisible) {
				scrollDistance=itemsToRight*x
			}
		} else if(x>0) {
			if(itemsToLeft<itemsVisible) {
				scrollDistance=itemsToLeft*x
			}
		}
//alert('scrollDistance='+scrollDistance);
		scrolling=true;
		new Effect.Move(scrollingBlock, { x: scrollDistance, y: 0, afterFinish: function(){scrolling=false; checkArrows(object,scrollDistance,x,numberOfItemsToScroll);}});
	}
}
function checkArrows(object,scrollDistance,x,numberOfItemsToScroll) {
	var itemWidth = Math.abs(x);
	var rightArrowHidden=false;
	var leftArrowHidden=false;
	var leftArrow=object.getElementsByClassName('left')[0];
	var leftArrowR=object.getElementsByClassName('leftReplace')[0];
	var rightArrow=object.getElementsByClassName('right')[0];
	var rightArrowR=object.getElementsByClassName('rightReplace')[0];
	var scrollingBlock=object.getElementsByClassName('scrollingBlock')[0];
	var width = scrollingBlock.getWidth();
	var left = $(scrollingBlock).getStyle('left').replace('px', '');
	
	var itemCount=Math.round(width/itemWidth);
	var itemsToLeft=Math.round(-left/itemWidth);
	var itemsVisible=Math.round($(scrollingBlock.parentNode).getWidth()/itemWidth);
	var itemsToRight=itemCount-itemsToLeft-itemsVisible;
//alert('itemWidth='+itemWidth+' | itemsToLeft='+itemsToLeft+' | itemsVisible='+itemsVisible+' | itemsToRight='+itemsToRight+' | itemCount='+itemCount);
	
	if(itemsToLeft==0) {
		leftArrowHidden = true;
	}
	if(itemsToRight==0) {
		rightArrowHidden = true;
	}
	if (itemsVisible==itemCount) {
		leftArrowHidden = true;
		rightArrowHidden = true;
	}
	
	if (rightArrowHidden) {
		rightArrow.style.visibility = 'hidden';
		rightArrowR.style.display = 'block';
	} else {
		rightArrow.style.visibility = 'visible';
		rightArrowR.style.display = 'none';
	}
	if (leftArrowHidden) {
		leftArrow.style.visibility = 'hidden';
		leftArrowR.style.display = 'block';
	}
	else {
		leftArrow.style.visibility = 'visible';
		leftArrowR.style.display = 'none';
	}
	if (rightArrowHidden && leftArrowHidden) {
		leftArrow.style.visibility = 'hidden';
		rightArrow.style.visibility = 'hidden';
		rightArrowR.style.display = 'none';
		leftArrowR.style.display = 'none';
	}
}

function flashLink(loc) {
	if(browserType=='ie'){
		var referLink = document.createElement('a');
		referLink.href = loc;
		document.body.appendChild(referLink);
		referLink.click();
	} else {
		window.location = loc;
	}
}
// JS needed for Omniture to work in the video files.
var mediaTracking=new Array();
function openMedia(mediaName, mediaLength, mediaPlayerName) {
	if(mediaName=='undefined') {
		mediaName='mediaNameUndefined';
	}
    s.Media.open(mediaName.replace(/ /g, "-"), mediaLength, mediaPlayerName);
	mediaTracking.push(mediaName);
}
function playMedia(mediaName, mediaOffset) {
	if(mediaName=='undefined') {
		mediaName='mediaNameUndefined';
	}
    s.Media.play(mediaName.replace(/ /g, "-"), mediaOffset);
    //	s.Media.play(mediaName,mediaOffset);
}
function stopMedia(mediaName, mediaOffset) {
	if(mediaName=='undefined') {
		mediaName='mediaNameUndefined';
	}
    s.Media.stop(mediaName.replace(/ /g, "-"), mediaOffset);
    //s.Media.stop(mediaName,mediaOffset);
}
function closeMedia(mediaName) {
	if(mediaName=='undefined') {
		mediaName='mediaNameUndefined';
	}
    s.Media.close(mediaName.replace(/ /g, "-"));
	mediaTracking.splice(mediaTracking.indexOf(mediaName),1);
    //	s.Media.close(mediaName);
}

function videoFirstPlay(pagename,channel,events){	
	s.pageName=pagename;
	s.channel=channel;
	s.prop1='';
	s.prop2='';
	s.prop3='';
	s.events=events;
	
	s.linkTrackVars='events';
	s.linkTrackEvents=events;
	void(s.t())
}

