//fix ie7 flash objects

// JavaScript Document
function createRequestObject() {
	var ro;
	var browser = navigator.appName;
	if(browser == "Microsoft Internet Explorer") {
		ro = new ActiveXObject("Microsoft.XMLHTTP");
	} else {
		ro = new XMLHttpRequest();
	}
	return ro;
}

var http = createRequestObject();
var xhttp = createRequestObject();
var thttp = createRequestObject();

function fold(type){
	var commentsFold = document.getElementById('commentsBox');
	var editor = document.getElementById('editor');
	var id = document.getElementById('viewID');
	if(editor.height=='250px'){
		editor.innerHTML = '<a href="javascript:fold();">Post A Comment</a>';
		editor.height = '15px';
	}else{
		editor.height = '250px';
		switch(type){
			case 'user':
			getForm(id.value);
			break;
			case 'video':
			var video = document.getElementById('video');
			getVideoForm(id.value,video.value);
			break;
		}
	}
}

function getForm(id) {
	http.open('post', 'http://www.ballfusionlive.com/lupiinyourhoopi.php');
	http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	http.onreadystatechange = handleResponse;
	http.send('&id=' + id);
}
function getVideoForm(id,video) {
	http.open('post', 'http://www.ballfusionlive.com/lupiinyourhoopi.php');
	http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	http.onreadystatechange = handleResponse;
	http.send('&id=' + id + '&video=' + video);
}

function handleResponse() {
	if(http.readyState == 4) {
		var response = http.responseText;
		var update = new Array();

		if(response.indexOf('|' != -1)) {
			update = response.split('|');
			document.getElementById('editor').innerHTML = update[1];
		}
	}
}
function handleUpdateResponse() {
	if(http.readyState == 4) {
		var response = http.responseText;
		var update = new Array();

		if(response.indexOf('|' != -1)) {
			update = response.split('|');
			fold();
			document.getElementById('commentsBox').innerHTML = update[1];
		}
	}
}
function handleTimedUpdateResponse() {
	if(thttp.readyState == 4) {
		var response = thttp.responseText;
		var update = new Array();

		if(response.indexOf('|' != -1)) {
			update = response.split('|');
			document.getElementById('commentsBox').innerHTML = update[1];
		}
	}
}

function sendComment(){
	var comment = document.getElementById('comment').value;
	var id = document.getElementById('id').value;
	http.open('post', 'http://www.ballfusionlive.com/lupiinyourhoopi.php');
	http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	http.onreadystatechange = handleUpdateResponse;
	http.send('&comment=' + comment + '&id=' + id);

}
function sendVideoComment(){
	var comment = document.getElementById('comment').value;
	var id = document.getElementById('id').value;
	var video = document.getElementById('video').value;
	http.open('post', 'http://www.ballfusionlive.com/lupiinyourhoopi.php');
	http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	http.onreadystatechange = handleUpdateResponse;
	http.send('&comment=' + comment + '&id=' + id + '&video=' + video);

}
var secs
var timerID = null
var timerRunning = false
var delay = 1000
function doTimer(id,video){

	InitializeTimer(id,video)

}
function InitializeTimer(id,video)
{
	// Set the length of the timer, in seconds
	secs = 10
	StopTheClock()
	StartTheTimer(id,video)
}

function StopTheClock()
{
	if(timerRunning)
	clearTimeout(timerID)
	timerRunning = false
}

function StartTheTimer(id,video)
{

	if (secs==0)
	{
		StopTheClock()
		refreshComments(id,video);
	}
	else
	{
		self.status = secs
		secs = secs - 1
		timerRunning = true
		timerID = self.setTimeout("StartTheTimer("+id+","+video+")", delay)
	}
}
function refreshComments(id,video){
	thttp.open('post', 'http://www.ballfusionlive.com/lupiinyourhoopi.php');
	thttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	thttp.onreadystatechange = handleTimedUpdateResponse;
	thttp.send('&id=' + id + '&video=' + video + '&refresh=true');
	InitializeTimer(id,video);
}
function search(string){
	var latest = document.getElementById('tempLatest');
	latest.style.display = 'none';
	var searching = document.getElementById('searching');
	searching.style.display = 'block';
	var title = document.getElementById('titleMatch').value;
	var searchString = '&title='+escape(title);

	http.open('post', 'http://www.ballfusionlive.com/gateway/lupisearch.php');
	http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	http.onreadystatechange = handleSearchReturn;
	http.send(searchString);

}
function handleSearchReturn(){
	if(http.readyState == 4) {
		var response = http.responseText;
		var update = new Array();
		var latest = document.getElementById('tempLatest');
		var searching = document.getElementById('searching');
		if(response.indexOf('|' != -1)) {
			update = response.split('|');
			switch(update[0]){
				case 'success':
				latest.innerHTML = update[1];
				searching.style.display = 'none';
				latest.style.display = 'block';
				break;
				case 'error':
				var i = '';
				if(i = document.getElementById('searcherror')){
					latest.removeChild(i);

				}
				switch (update[1]){
					case 'stringlen':
					var err = 'Searches must be at least 3 characters in length';
					break;
					case 'noresults':
					var err = 'Your search returned no results';
					break;
					default:
					var err = 'An undefined error occured';
				}
				var temp = latest.innerHTML;
				latest.innerHTML = '<p id="searcherror">'+err+'</p>'+temp;
				searching.style.display = 'none';
				latest.style.display = 'block';
				break;
				default:
				var err = 'An undefined error occured';
				var temp = latest.innerHTML;
				latest.innerHTML = '<p id="searcherror">'+err+'</p>'+temp;
				searching.style.display = 'none';
				latest.style.display = 'block';

			}

		}
	}
}
function editVideo(id){
	http.open('post', 'http://www.ballfusionlive.com/videoEdit.php');
	http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	http.onreadystatechange = dashEditor;
	http.send('&action=getForm&id=' + id);
}

function dashEditor(){
	if(http.readyState == 4) {
		var response = http.responseText;
		var update = new Array();
		var latest = document.getElementById('tempLatest');
		var searching = document.getElementById('searching');
		if(response.indexOf('|' != -1)) {
			update = response.split('|');
			switch(update[0]){
				case 'success':
					var container = document.getElementById('dashMid');
					container.innerHTML = update[1];
					break;
				default:
					alert(update[1]);
			}
		}
	}
}
function editThumb(id){
	var container = document.createElement('div');
	container.setAttribute('id', 'dialog');
	var bigWhiteBox = document.createElement('div');
	bigWhiteBox.setAttribute ('class','bigwhitebox');
	var thumbsBox = document.createElement('div');
	thumbsBox.setAttribute ('class','thumbnailswindow');
	thumbsBox.innerHTML += '<p>Please choose from the following thumbnails.<br />Note: Once you have chosen a thumbnail, you cannot change it again.</p>';
	thumbsBox.innerHTML += '<div class="thumbTrack" id="thumbNailTrack"> </div>'
	container.appendChild(bigWhiteBox);
	container.appendChild(thumbsBox);
	var top = document.getElementById('topLevel');
	document.body.insertBefore(container,top);
	getThumbnails(id);
}
function getThumbnails(id){
	http.open('post', 'http://www.ballfusionlive.com/videoEdit.php');
	http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	http.onreadystatechange = drawThumbs;
	http.send('&action=getThumbs&id=' + id);
}
function drawThumbs(){
	if(http.readyState == 4) {
		var response = http.responseText;
		var update = new Array();
		var latest = document.getElementById('tempLatest');
		var searching = document.getElementById('searching');
		if(response.indexOf('|' != -1)) {
			update = response.split('|');
			switch(update[0]){
				case 'success':
					var container = document.getElementById('thumbNailTrack');
					container.innerHTML = update[1];
					break;
				default:
					alert(update[1]);
			}
		}
	}
}
function chooseThumb(id, clip){
		http.open('post', 'http://www.ballfusionlive.com/videoEdit.php');
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.onreadystatechange = thumbChosen;
		http.send('&action=chooseThumb&id=' + id + '&clip='+clip);
}
function thumbChosen(){
	if(http.readyState == 4) {
		var response = http.responseText;
		var update = new Array();
		var latest = document.getElementById('tempLatest');
		var searching = document.getElementById('searching');
		if(response.indexOf('|' != -1)){
			update = response.split('|');
			switch(update[0]){
				case 'success':
					var dialog = document.getElementById('dialog');
					alert('Saved');
					dialog.style.display = 'none';
					window.location = window.location;
					break;
				default:
					alert(update[1]);
					var dialog = document.getElementById('dialog');
					dialog.style.display = 'none';
			}
		}
	}
}
function saveTrickDetails(id){
	var name = escape(document.getElementById('txtName').value);
	var description =  escape(document.getElementById('txtDescription').value);
	var select = document.getElementById('selCategory');
	var category =  select.options[select.selectedIndex].value;
	xhttp.open('post', 'http://www.ballfusionlive.com/videoEdit.php');
	xhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhttp.onreadystatechange = trickDetailsSaved;
	xhttp.send('&action=saveDetails&id='+ id + '&name='+name+'&description='+description+'&category='+category);
}

function trickDetailsSaved(){
	if(xhttp.readyState == 4) {
		var response = xhttp.responseText;
		var update = new Array();
		var latest = document.getElementById('tempLatest');
		var searching = document.getElementById('searching');
		if(response.indexOf('|' != -1)){
			update = response.split('|');
			switch(update[0]){
				case 'success':
					alert("Details Saved");
					break;
				default:
				alert(update[1]);
			}
		}
	}
}
function deletetrick(id,ts,key){
	if(confirm("Are you sure?")){
		http.open('post', 'http://www.ballfusionlive.com/videoEdit.php');
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.onreadystatechange = refresh;
		http.send('&action=delete&id=' + id+'&ts='+ts+'&key='+key);
	}
}
function refresh(){
	if(http.readyState == 4) {
		var response = http.responseText;
		var update = new Array();
		var latest = document.getElementById('tempLatest');
		var searching = document.getElementById('searching');
		if(response.indexOf('|' != -1)) {
			update = response.split('|');
			switch(update[0]){
				case 'success':
					window.location = window.location;
					break;
				default:
					alert(update[1]);
			}
		}
	}
}
function myFavorite(id){
	if(confirm("Are you sure you want to set this as your favorite trick?\nYour current favorite will be lost.")){
		http.open('post', 'http://www.ballfusionlive.com/videoEdit.php');
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.onreadystatechange = refresh;
		http.send('&action=fav&id='+id);
	}

}