$(document).ready(function () {
	if (!$('body').hasClass('nobox')) {
		$('#search_json').live("mouseover",function(){
			$('#search_json').draggable({
				handle: '#handle'
			});
		  });
	}
	
	if ($('#presentation_title').length)
		$.scrollTo('#presentation_title', 1200);
	
	$('.searchinput, .search_input').live('focus', function() {
			$(this).val('');
	});

	
	if ($('#btn, #search_button').attr('type')) {
		$('#search_form').submit(function () {
			sortFilter = "relevance";
			searchSinglePresentation(null);
		});
	} else {		
		$('#search_form').submit(function () {
			sortFilter = "relevance";
			searchSinglePresentation(null);
		});
		
		$('#btn, #search_button').click(function () {
			sortFilter = "relevance";
			searchSinglePresentation(null);
		});
	}
	
	$('#search_form_invalid').live('submit', function () {
			sortFilter = "relevance";
			$('#searchTXT').val($('#searchTXT_invalid').val());
			searchSinglePresentationInvalid(null);
	});
	
	$('.button_invalid, #btn_invalid').live('click', function () {
		if (hasButton = false) {
			sortFilter = "relevance";
			$('#searchTXT').val($('#searchTXT_invalid').val());
			searchSinglePresentationInvalid(null);
		}
	});
	

	$('#time_label').live('click', function() {
		sortFilter = "time";
		$('#searchTXT').val($('.keyword').html());
		searchSinglePresentation('sort_time');
	});

	$('#relevance_label').live('click', function() {
		sortFilter = "relevance";
		$('#searchTXT').val($('.keyword').html());
		searchSinglePresentation(null);
	});
	
	$('#close').live('click', function() {
		$('#search_json').remove();
	});
	
	$('#search_toggle_single').live('click', function() {
		sortFilter = "relevance";
		$('#searchTXT').val($('.keyword').html());
		searchSinglePresentation(null);
	});
	
	$('.hidden_row').live('click', function() {
		$('.row[asset=' + $(this).attr('asset') + ']').css('display', 'block');
		$('.hidden_row[asset=' + $(this).attr('asset') + ']').remove();
	});
	
	$('.autojump, .imagejump').live('click', function (e) {
		var reRoute = $('body').attr('data-reroute');
		if (reRoute == null) {
			reRoute = '';
		}
		var altval = $(this).attr("data-tc");
		if (altval.length < 20) {
			try {
				//Main.setTimeCode("flash_player", altval);
				$f("player").seek(altval);
			} catch (err) {}
		} else {
			//var seconds = Main.getTimeCode("flash_player");
			var seconds = $f("player").getTime();
			window.location = reRoute + altval + '&from_presentation_offset=' + seconds;
		}
	}).css({ cursor: 'pointer'});
	
	$('#search_toggle').live('click', function() {
		var reRoute = $('body').attr('data-reroute');
		if (reRoute == null) {
			reRoute = '';
		}
		
		$.ajax({
			type: "POST",
			url: reRoute + "/multisearch/",
			data: {
				raw_search: $('.keyword').html(),
				search: '(' + $('.keyword').html() + ')' + ' AND NOT presentation_id:' + $('#presentation_id').attr('value'),
				presentation_id: $('#presentation_id').attr('value'),
				ajax: 1
			},
			dataType: "html",
			success:function(result) {
				$('#search_json').remove();
				if ($('body').hasClass('nobox')) {
					$('#search_results').prepend(result);
				}
				else
					$("body").prepend(result);
				
				//position the div
				var result_anchor = $("#result_anchor").val();
				var offset = $("." + result_anchor).offset();
				$("#search_json")
					.css({
						top: (offset['top'] + 'px'),
						left: (offset['left'] + 'px')
					});
				if (!$('body').hasClass('nobox')) {
					$.scrollTo('#presentation_title', 1200);
				}
				else
					$.scrollTo('#search_results_container', 1200);
					
			},
			error: function() {
				console.log("error sending ajax data!");
				alert('An unexpected error occured.');
			}
		});
	});
});

var sortFilter = "relevance";

function searchSinglePresentation(condition) {
	var reRoute = $('body').attr('data-reroute');
	if (reRoute == null) {
		reRoute = '';
	}
	
	if ($('#searchTXT').val() == '') {
		alert('Please Enter text in the textbox.');
	}
	else {
		$.ajax({
			type: "POST",
			url: reRoute + "/singlesearch/",
			data: {
				raw_search: $('#searchTXT').attr('value'),
				search: '(' + $('#searchTXT').attr('value') + ') AND presentation_id:' + $('#presentation_id').attr('value'),
				condition: condition,
				ajax: 1
			},
			dataType: "html",
			success:function(result) {
				$('#search_json').remove();
				//add search div to page
				if ($('body').hasClass('nobox')) {
					$('#search_results').prepend(result);
				}
				else
					$("body").prepend(result);
				
				if (sortFilter == "relevance")
					relevanceStyle();
				else
					timeStyle();
				
				//position the div
				var result_anchor = $("#result_anchor").val();
				var offset = $("." + result_anchor).offset();
				$("#search_json")
					.css({
						top: (offset['top'] + 'px'),
						left: (offset['left'] + 'px')
					});
				if (!$('body').hasClass('nobox')) {
					$.scrollTo('#presentation_title', 1200);
				}
				else
					$.scrollTo('#search_results_container', 1200);
			},
			error: function() {
				console.log("error sending ajax data!");
				alert('An unexpected error occured.');
			}
		});
	}
}

var hasButton = false;
function searchSinglePresentationInvalid(condition) {
	var reRoute = $('body').attr('data-reroute');
	if (reRoute == null) {
		reRoute = '';
	}
	
	if ($('#searchTXT_invalid').val() == '') {
		alert('Please Enter text in the textbox.');
	}
	else {
	$.ajax({
		type: "POST",
		url: reRoute + "/singlesearch/",
		data: {
			raw_search: $('#searchTXT_invalid').attr('value'),
			search: '(' + $('#searchTXT_invalid').attr('value') + ')' + ' AND presentation_id:' + $('#presentation_id').attr('value') + ' AND type:blob',
			condition: condition,
			ajax: 1
		},
		dataType: "html",
		success:function(result) {
			$('#search_json').remove();
			//add search div to page
			if ($('body').hasClass('nobox')) {
				$('#search_results').prepend(result);
			}
			else
				$("body").prepend(result);
			
			if (sortFilter == "relevance")
				relevanceStyle();
			else
				timeStyle();
			
			//position the div
			var result_anchor = $("#result_anchor").val();
			var offset = $("." + result_anchor).offset();
			$("#search_json")
				.css({
					top: (offset['top'] + 'px'),
					left: (offset['left'] + 'px')
				});
			if (!$('body').hasClass('nobox')) {
				$.scrollTo('#presentation_title', 1200);
			}
			else
				$.scrollTo('#search_results_container', 1200);
		},
		error: function() {
			console.log("error sending ajax data!");
			alert('An unexpected error occured.');
		}
	});
	
	if ($('#search_form_invalid .button_invalid').attr('type') == 'image') {
		hasButton = true;
	}
	}
}

function timeStyle() {
	$('#time_label').removeClass('unselected');
	$('#time_label').addClass('selected');
	$('#relevance_label').removeClass('selected');
	$('#relevance_label').addClass('unselected');
}

function relevanceStyle() {
	$('#relevance_label').removeClass('unselected');
	$('#relevance_label').addClass('selected');
	$('#time_label').removeClass('selected');
	$('#time_label').addClass('unselected');
}
