var sPath = "";
var pathname = location.pathname;
var iSecondSlashIndex = pathname.indexOf("/",1);

if (iSecondSlashIndex!=-1) {
	sPath = pathname.substring(0,iSecondSlashIndex);
}

var sContextName = sPath.substring(1);

//--------- PLAYER SECTION ----------------------

var fullScreenActive = true;
var myFullscreenPlayer;

var sDomain = null;
var iFirstDotIndex = location.hostname.indexOf('.');
if(iFirstDotIndex!=-1)
{
  sDomain = location.hostname.substring(iFirstDotIndex);
}

function thisMovie(movieName)
{
	if (navigator.appName.indexOf("Microsoft") != -1)
	{
		return window[movieName];
	}
	else
	{
		return document[movieName];
	}
}



function blinkx_PlayVideo(myVideo)
{
	alert(" blinkx_PlayVideo "+myVideo);
}

// Starting in 1
function blinkx_playerPlayClipNumber(iNumber)
{
	thisMovie("player").blinkx_PlayClip(iNumber);
}

// Jump in playlist and position on clip
function bjmp(iClipNumber, fPosition)
{
	//alert("bjmp: clip number: " + iClipNumber + " time: " + fPosition);
	thisMovie("player").blinkx_PlayClipSeek(iClipNumber,fPosition);;
}

function blinkx_VideoPress(iClipNumber, bPreview)
{
	//alert(" blinkx_VideoPress(iClipNumber "+iClipNumber+", bPreview "+bPreview+")");
	try
	{
		BURLOpenOrginalPosPlayer(  iClipNumber -1);
	}
	catch(ep)
	{
	}
}

function blinkx_Time(mydata){

	alert(" blinkx_Time "+mydata);
}

function blinkx_Volume(sVolumeVal, bMuteOn)
{

	var oExpires = new Date();
	offset = 1 / 1;
	oExpires.setYear(oExpires.getFullYear()+offset);

	// sContextName+
	writeCookie("blinkx_volume",sVolumeVal, oExpires, "/");
	writeCookie("blinkx_mute",bMuteOn, oExpires, "/");
}


function blinkx_Resume()
{
	thisMovie("player").blinkx_Play();;
}

function blinkx_Stop()
{
	thisMovie("player").blinkx_Stop();
}


function blinkx_Server(sServer) {

	alert(" blinkx_Server "+sServer);
	var oExpires = new Date();
	oExpires.setTime(oExpires.getTime()+28800000);
	writeCookie("ApplicationServer",sServer, oExpires, sPath);
	fullScreenActive=true;

}

function change_TextRight(name)
{
		d = document.getElementById("TextRight");
		d.innerHTML = name;
}


var blinkx_lastclip = 0;
function blinkx_Playing(sNewClip) {
	//alert('blinkx_Playing' + sNewClip);
	 //change_TextRight("Playing video "+sNewClip+"<br> BURL ID ["+thisMovie("player").blinkx_GetBurlID()+"]");
	 //change_TextRight(thisMovie("player").blinkx_GetBurlID());
	 //update_currentPlayingDetails();
	 ajaxEloPlayer(thisMovie("player").blinkx_GetBurlID());
}

function blinkx_HandleEvent(eventName, jsonParams)
{
}


function blinkx_SetApiQuery(query)
{
	thisMovie("player").blinkx_SetApiQuery(query);
	//alert(" Changing query ");
}

/**
 * ajax support
 */
function GetXmlHttpObject()
{
	var xmlHttp=null;
	try {
		xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
	}
	catch (e) { // Internet Explorer
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) {
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}
function stateChanged()
{
	if (xmlHttp.readyState==4) {
		handleELOPlayerUpdate(xmlHttp.responseText);
	}
}
function ajaxEloPlayer(bid)
{
	if(bid)
	{
		xmlHttp = GetXmlHttpObject();
		if (xmlHttp == null)
		{
			alert("Your browser does not support AJAX!");
			return;
		}
		var url = "ajax/eloplayer.ajax";
		url=url+"?bid="+bid;
		url=url+"&sid="+Math.random();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	}
}
function handleELOPlayerUpdate(text)
{
	try
	{
		var my_JSON_object = !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(
			text.replace(/"(\\.|[^"\\])*"/g, ''))) &&
			eval('(' + text + ')');

		// title and description
		update_currPlayingDetails(my_JSON_object.media);
		update_relatedMedia(my_JSON_object.relatedmedia);
		update_comments(my_JSON_object.comments);
		update_userRating(my_JSON_object.userRating);
	}
	catch (e) {}
}

/**
 * updates details
 */
function update_currPlayingDetails(media)
{
	if (media)
	{
		// BID
		var elem = document.getElementById('currBID');
		if (elem)
		{
			elem.innerHTML = media.bid;
		}
		// title
		elem = document.getElementById('playing_title');
		if (elem)
		{
			elem.innerHTML = media.title;
		}
		// summary
		elem = document.getElementById('playing_summary');
		if (elem)
		{
			elem.innerHTML = media.summary;
		}
		// channel
		elem = document.getElementById('playing_channel');
		if (elem)
		{
			elem.innerHTML = '<a href="canal?canal='+media.channel+'" title="'+media.channel+'">'+media.channel+'</a>';
		}
		// channel image
		elem = document.getElementById('playing_channelImage');
		if (elem)
		{
			elem.innerHTML = '<a href="canal?canal='+media.channel+'" title="'+media.channel+'"><img src="'+media.channelimage+'" /></a>';
		}
	}
}
function update_relatedMedia(html)
{
	var elem = document.getElementById('relatedMedia');
	if (elem) { elem.innerHTML = html; }
}
function update_comments(html)
{
	var elem = document.getElementById('comments');
	if (elem) { elem.innerHTML = html; }
}
function update_userRating(html)
{
	var elem = document.getElementById('playing_user_rating');
	if (html != undefined && html != false)
	{
		if (elem) { elem.innerHTML = html; }
	}
	else
	{
		if (elem) { elem.innerHTML = '0'; }
	}
}
function update_avgRating(html)
{
	var elem = document.getElementById('playing_avg_rating');
	if (html != undefined)
	{
		if (elem) { elem.innerHTML = html; }
	}
	else
	{
		if (elem) { elem.innerHTML = '0'; }
	}
}

/**
 * ajax ratings
 */
function ajaxUserRating_Callback()
{
	if (xmlHttp.readyState==4) {
		if (xmlHttp.responseText !== 'fail' && xmlHttp.responseText !== '')
		{
			if (xmlHttp.responseText === 'exist')
			{
				showConfirmModalWindow('Voc&ecirc; j&aacute; votou neste v&iacute;deo',null);
			}
			else
			{
				showConfirmModalWindow('Obrigado por votar',null);
				update_userRating(xmlHttp.responseText);
			}
		}
	}
}
function ajaxUserRating(bidElem, username, rating)
{
	var elem = document.getElementById(bidElem);
	if (elem)
	{
		var bid = elem.innerHTML;
	}
	xmlHttp = GetXmlHttpObject();
	if (xmlHttp == null)
	{
		alert("Your browser does not support AJAX!");
		return;
	}
	var url = "ajax/userrating.ajax";
	url=url+"?bid="+bid;
	url=url+"&username="+username;
	url=url+"&rating="+rating;
	url=url+"&nocache="+Math.random();
	xmlHttp.onreadystatechange=ajaxUserRating_Callback;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}
function ajaxAddToFavorites(bidElem, username)
{
	var elem = document.getElementById(bidElem);
	if (elem)
	{
		var bid = elem.innerHTML;
	}
	xmlHttp = GetXmlHttpObject();
	if (xmlHttp == null)
	{
		alert("Your browser does not support AJAX!");
		return;
	}
	var url = "ajax/addtofavorites.ajax";
	url=url+"?bid="+bid;
	url=url+"&username="+username;
	url=url+"&sid="+Math.random();
	alert(url);
	//xmlHttp.onreadystatechange=ajaxAddToFavorites_Callback;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function ajaxLogin()
{
	try
	{
		var u=document.getElementById("usernameInput"),
			p=document.getElementById("passwordInput"),
			r=document.getElementById("loginRefer");

		if(u && u.value && u.value.length)
		{
			if(p && p.value && p.value.length)
			{
				if(r && r.value && r.value.length)
				{
					var loginXmlHttp=GetXmlHttpObject();
					if(loginXmlHttp)
					{
						var url="/ajax/login.ajax";
						url+="?nome="+encodeURIComponent(u.value);
						url+="&pass="+encodeURIComponent(p.value);
						url+="&refer="+encodeURIComponent(r.value);

						loginXmlHttp.onreadystatechange=function()
						{
							if (loginXmlHttp.readyState==4)
							{
								eval(loginXmlHttp.responseText);
							}
						};

						loginXmlHttp.open("GET",url,true);
						loginXmlHttp.send(null);
					}
				}
			}
			else
			{
				showLoginError();
			}
		}
		else
		{
			showLoginError();
		}
	}
	catch(e){}
	return false;
}

function ajaxNewsletter()
{
	try
	{
		var u=document.getElementById("newsletterNameInput"),
			e=document.getElementById("newsletterEmailInput");

		if(u && u.value && u.value.length)
		{
			if(e && e.value && e.value.length)
			{
				var loginXmlHttp=GetXmlHttpObject();
				if(loginXmlHttp)
				{
					var url="/ajax/newsletter.ajax";
					url+="?nome="+encodeURIComponent(u.value);
					url+="&email="+encodeURIComponent(e.value);

					loginXmlHttp.onreadystatechange=function()
					{
						if (loginXmlHttp.readyState==4)
						{
							eval(loginXmlHttp.responseText);
						}
					};

					loginXmlHttp.open("GET",url,true);
					loginXmlHttp.send(null);
				}
			}
			else
			{
				showLoginError();
			}
		}
		else
		{
			showLoginError();
		}
	}
	catch(e){}
	return false;
}

function showLoginError(message)
{
	if(message)
	{
		var oID="loginError";
		var o=document.getElementById(oID);
		if(!o)
		{
			o=document.createElement("p");
			o.id=oID;
			o.className="error";
			var e=document.getElementById("headerLogin");
			if(e) e.parentNode.insertBefore(o,e);
		}
		o.innerHTML=message;
	}
}

function showNewsletterError(message)
{
	if(message)
	{
		var oID="newsletterError";
		var o=document.getElementById(oID);
		if(!o)
		{
			o=document.createElement("p");
			o.id=oID;
			o.className="error";
			var e=document.getElementById("newsletter");
			if(e) e.parentNode.insertBefore(o,e);
		}
		o.innerHTML=message;
	}
}

function getNextJumpTime(o)
{
	if(o && o.times && o.times.length)
	{
		if(!o.timecount || o.timecount==o.times.length) o.timecount=0;
		return o.times[o.timecount++];
	}
	return 0.0;
}

function displayAccountError(message)
{
	var oErrorContainer=document.getElementById("errorContainer");
	if(oErrorContainer)
	{
		oErrorContainer.innerHTML=message;
		oErrorContainer.style.display="block";
	}
}

function registerValidate(formData, jqForm, options)
{
	$(".accountSubmitFieldError").removeClass("accountSubmitFieldError");
	$(".accountSubmitLabelError").removeClass("accountSubmitLabelError");

	var aRequiredFieldNameObjects=new Array,
		aRequiredFieldHighlightObjects=new Array;

	var jObj,jObjLabel;

	jObj=$("#registerUsername");
	if(!jObj || !jObj.val() || !jObj.val().length)
	{
		var jObjLabel=$("#registerUsernameLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}


	jObj=$("#registerPassword");
	if(!jObj || !jObj.val() || !jObj.val().length)
	{
		var jObjLabel=$("#registerPasswordLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}


	jObj=$("#registerConfirmPassword");
	if(!jObj || !jObj.val() || !jObj.val().length)
	{
		var jObjLabel=$("#registerConfirmPasswordLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}


	jObj=$("#registerEmail");
	if(!jObj || !jObj.val() || !jObj.val().length)
	{
		var jObjLabel=$("#registerEmailLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}

	jObj=$("#registerDob");
	var reDob = /^(0[1-9]|[12][0-9]|3[01])\/(0[1-9]|1[012])\/(19|20)[0-9]{2}$/;
	if(!jObj || !jObj.val() || !jObj.val().length || !jObj.val().match(reDob) )
	{
		var jObjLabel=$("#registerDobLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}

	jObj=$("#registerCountry");
	if(!jObj || !jObj.val() || !jObj.val().length)
	{
		var jObjLabel=$("#registerCountryLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}

	// state and city only require if country is brasil
	if ( jQuery.trim(jObj.val().toLowerCase()) == 'brasil' ) {
		jObj=$("#registerLocation");
		if(!jObj || !jObj.val() || !jObj.val().length)
		{
			var jObjLabel=$("#registerLocationLabel");
			if(jObjLabel)
			{
				aRequiredFieldNameObjects.push(jObjLabel);
				aRequiredFieldHighlightObjects.push(jObj);
			}
		}

		jObj=$("#registerMunicipio");
		if(!jObj || !jObj.val() || !jObj.val().length)
		{
			var jObjLabel=$("#registerMunicipioLabel");
			if(jObjLabel)
			{
				aRequiredFieldNameObjects.push(jObjLabel);
				aRequiredFieldHighlightObjects.push(jObj);
			}
		}
	}

	jObj=$("#registerTermsOfUse");
	if(!jObj || !jObj.attr('checked'))
	{
		var jObjLabel=$("#registerTermsOfUseLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}

	if(aRequiredFieldNameObjects.length || aRequiredFieldHighlightObjects.length)
	{

		for(var i=0,iMax=aRequiredFieldHighlightObjects.length;i<iMax;i++)
		{
			aRequiredFieldHighlightObjects[i].addClass("accountSubmitFieldError");
		}

		var jAlertMessageContainer=$("#missingFieldText");
		if(jAlertMessageContainer)
		{
			var alertMessage=jAlertMessageContainer.html()+"\n\n";
			for(var i=0,iMax=aRequiredFieldNameObjects.length;i<iMax;i++)
			{
				alertMessage+=aRequiredFieldNameObjects[i].html()+"\n";
				aRequiredFieldNameObjects[i].addClass("accountSubmitLabelError");
			}
			alert(alertMessage);
			return false;
		}
	}
	else
	{
		var jPass1=$("#registerPassword"),
			jPass2=$("#registerConfirmPassword"),
			jPass1Label=$("#registerPasswordLabel"),
			jPass1Labe2=$("#registerConfirmPasswordLabel");

		if(jPass1 && jPass1.val() && jPass1.val().length && jPass2 && jPass2.val() && jPass2.val().length && jPass1.val()!=jPass2.val())
		{
			jPass1.addClass("accountSubmitFieldError");
			jPass2.addClass("accountSubmitFieldError");
			jPass1Label.addClass("accountSubmitLabelError");
			jPass1Labe2.addClass("accountSubmitLabelError");
			alert("As senhas devem combinar.");
			return false;
		}
	}

	return true;
}

function registerResponse(responseText, statusText)
{
	try{eval(responseText);}catch(e){}
}

function contatoResponse(responseText, statusText)
{
	try{eval(responseText);}catch(e){}
}

function accountValidate(formData, jqForm, options)
{
	$(".accountSubmitFieldError").removeClass("accountSubmitFieldError");
	$(".accountSubmitLabelError").removeClass("accountSubmitLabelError");

	var aRequiredFieldNameObjects=new Array,
		aRequiredFieldHighlightObjects=new Array;

	var jObj,jObjLabel;

	jObj=$("#accountCurrentPass");
	if(!jObj || !jObj.val() || !jObj.val().length)
	{
		var jObjLabel=$("#accountCurrentPassLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}

	jObj=$("#accountEmail");
	if(!jObj || !jObj.val() || !jObj.val().length)
	{
		var jObjLabel=$("#accountEmailLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}

	jObj=$("#accountCountry");
	if(!jObj || !jObj.val() || !jObj.val().length)
	{
		var jObjLabel=$("#accountCountryLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}

	jObj=$("#accountLocation");
	if(!jObj || !jObj.val() || !jObj.val().length)
	{
		var jObjLabel=$("#accountLocationLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}

	jObj=$("#accountMunicipio");
	if(!jObj || !jObj.val() || !jObj.val().length)
	{
		var jObjLabel=$("#accountMunicipioLabel");
		if(jObjLabel)
		{
			aRequiredFieldNameObjects.push(jObjLabel);
			aRequiredFieldHighlightObjects.push(jObj);
		}
	}





	if(aRequiredFieldNameObjects.length || aRequiredFieldHighlightObjects.length)
	{

		for(var i=0,iMax=aRequiredFieldHighlightObjects.length;i<iMax;i++)
		{
			aRequiredFieldHighlightObjects[i].addClass("accountSubmitFieldError");
		}

		var jAlertMessageContainer=$("#missingFieldText");
		if(jAlertMessageContainer)
		{
			var alertMessage=jAlertMessageContainer.html()+"\n\n";
			for(var i=0,iMax=aRequiredFieldNameObjects.length;i<iMax;i++)
			{
				alertMessage+=aRequiredFieldNameObjects[i].html()+"\n";
				aRequiredFieldNameObjects[i].addClass("accountSubmitLabelError");
			}
			alert(alertMessage);
			return false;
		}
	}
	else
	{
		var jPass1=$("#accountPass"),
			jPass2=$("#accountPassConfirm"),
			jPass1Label=$("#accountPassLabel"),
			jPass2Label=$("#accountPassConfirmLabel");

		if(jPass1 && jPass2 && jPass1.val()!=jPass2.val())
		{
			jPass1.addClass("accountSubmitFieldError");
			jPass2.addClass("accountSubmitFieldError");
			jPass1Label.addClass("accountSubmitLabelError");
			jPass2Label.addClass("accountSubmitLabelError");
			alert("As senhas devem combinar.");
			return false;
		}
	}

	return true;
}

function accountResponse(responseText, statusText)
{
	try{eval(responseText);}catch(e){}
}

function ajaxPasswordRecovery()
{
	try
	{
		var u=document.getElementById("emailInput");

		if(u && u.value && u.value.length)
		{

			var loginXmlHttp=GetXmlHttpObject();
			if(loginXmlHttp)
			{
				var url="/ajax/passwordrecovery.ajax";
				url+="?email="+encodeURIComponent(u.value);

				loginXmlHttp.onreadystatechange=function()
				{
					if (loginXmlHttp.readyState==4)
					{
						eval(loginXmlHttp.responseText);
					}
				};

				loginXmlHttp.open("GET",url,true);
				loginXmlHttp.send(null);
			}

		}
		else
		{
			showPasswordRecoveryError("Email n&atilde;o cadastrado");
		}
	}
	catch(e){}
	return false;
}

function showPasswordRecoveryError(message)
{
	if(message)
	{
		var oID="passwordRecoveryError";
		var o=document.getElementById(oID);
		if(!o)
		{
			o=document.createElement("p");
			o.id=oID;
			o.className="error";
			var e=document.getElementById("headerPasswordRecovery");
			if(e) e.parentNode.insertBefore(o,e);
		}
		o.innerHTML=message;
	}
}

function ajaxCancel()
{
	try
	{
		var r=document.getElementById("reasonInput"),
			p=document.getElementById("passwordInputCancel");

		if(r && r.value && r.value.length)
		{
			if(p && p.value && p.value.length)
			{
				var loginXmlHttp=GetXmlHttpObject();
				if(loginXmlHttp)
				{
					var url="/ajax/cancel.ajax";
					url+="?reason="+encodeURIComponent(r.value);
					url+="&pass="+encodeURIComponent(p.value);

					loginXmlHttp.onreadystatechange=function()
					{
						if (loginXmlHttp.readyState==4)
						{
							eval(loginXmlHttp.responseText);
						}
					};

					loginXmlHttp.open("GET",url,true);
					loginXmlHttp.send(null);
				}
			}
		}
	}
	catch(e){}
	return false;
}

function showCancelError(message)
{
	if(message)
	{
		var oID="cancelError";
		var o=document.getElementById(oID);
		if(!o)
		{
			o=document.createElement("p");
			o.id=oID;
			o.className="error";
			var e=document.getElementById("headerCancel");
			if(e) e.parentNode.insertBefore(o,e);
		}
		o.innerHTML=message;
	}
}