var pars		= null;
var new_page	= null;

Event.observe(window, 'load', function() {
	
	$('site-search').hide();
	$('e-form').onsubmit	= get_results;
	$('e-submit').onclick	= get_results;
	$('e-reset').onclick	= reset_search;
	
	$$('fieldset').each(function(f){
		f.onclick = over_fieldset;
	});

	$$('li.tab').each(function(t){
		t.onclick = tab_click;
	});

	$$('div.browse a').each(function(a){
		a.onclick = browse;
	});

	/*$$('a.question').each(function(a){
		new Tip(a.id, $('program-copy-' + a.rel).innerHTML, { title: $('program-copy-' + a.rel).previous('a').rel , fixed: false });
	});*/

	$$('a.ask').each(function(a){
		a.onclick = show_how;
	})

	new Ajax.Autocompleter('autocomplete', 'autocomplete-choices', "/ajax/e-catalog-auto-complete.php");

});

function show_how(){

	unset_fields();
	$('how-tip').style.display = 'block';
	$('tip').style.display = 'block';
}

function sort_by_name(){
	pars = pars + '&sort=name';
	show_results(pars);
	return false;
}

function sort_by_program(){
	pars = pars + '&sort=program';
	show_results(pars);
	return false;
}

function sort_by_date(){
	pars = pars + '&sort=date';
	show_results(pars);
	return false;
}

function tab_click(){
	var id = this.id;

	$$('ul.nav a').each(function(a){
		a.removeClassName('active');
	});

	this.down('a').addClassName('active');
	this.down('a').blur();

	$$('div.tab').each(function(d){
		d.hide();
	});

	$(id + '-wrap').show();

	reset_search();

	return false;
}

function over_fieldset(){
	
	unset_fields();

	var orig_class = this.className;
	this.addClassName('over');
	$(orig_class + '-tip').style.display = 'block';
	$('tip').style.display = 'block';
}

function unset_fields(){

	$$('fieldset').each(function(f){
		f.removeClassName('over');
		unset_tips();
		$('tip').style.display = 'none';
	});
}

function unset_tips(){
	$$('div.tip div').each(function(t){
		t.hide();
	});
}

function browse(){

	pars = this.className + '[]=' + this.rel;
	show_results(pars);
	return false;
}

function get_results(){
	
	pars = $('e-form').serialize();
	show_results(pars);
	return false;
}

function show_results(pars){

	var url = '/ajax/ajax-file-search-v2.php';
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'post', 
			parameters: pars, 
			onComplete: update_results
		});
}

function update_results(resp){

	var message = resp.responseText;
	var r = $('e-results');
	r.innerHTML = message;
	new Effect.Highlight(r);

	activate_pagination();
	$('name-sort').onclick = sort_by_name;
	$('date-sort').onclick = sort_by_date;
	$('program-sort').onclick = sort_by_program;

	$('e-results').show();
	new Effect.ScrollTo('e-results');
}

function activate_pagination(){
	
	$$('p.pagination a').each(function(a){
		a.onclick = pagination_click;
	});
}

function pagination_click(){

	new_page = this.innerHTML;

	$$('tr.result-row').each(function(r){
		r.hide();
	});

	$$('tr.page-' + this.rel).each(function(s){
		s.show();
	});
	
	$$('span.current-page').each(function(s){
		var last_page = s.innerHTML;
		s.replace('<a href="#" class="page-' + last_page + '-link" rel="' + last_page + '">' + last_page + '</a>');
	});

	$$('p.pagination a').each(function(a){
		if (a.rel == new_page){
			a.replace('<span class="current-page">' + a.rel + '</span>');
		}
	});

	activate_pagination();

	return false;
}

function reset_search(){
	$('e-results').hide();
	$('e-form').reset(); 
	return false;
}