var wwwbase = '';
// JavaScript Document
Event.observe(window, 'load', function() {
		Event.observe('sortby', 'change', function() {
			var url = window.location.href.replace(/\/results.*/,'/results/?sortby=' + $F('sortby'));
			window.location.href = url; 
		});	
		
		// figure out the www base
		var scripttag = document.getElementsByTagName('script')[0];
		wwwbase = scripttag.src.match(/(.*)public\/js.*/)[1];
		
		Event.observe('selectall', 'click', MAG.markAll.bind($('selectall')));
		if($('bulkadd-bookmark')) 
			Event.observe('bulkadd-bookmark', 'click', MAG.bulkAddBookmark);
		
		Event.observe('print-all', 'click', MAG.printall);
});


var MAG = Object.extend({}, MAG || {});

MAG.markAll = function() {
	var mode = this.checked ? true : false;
	
	var checkboxes = $A($('search_results').getElementsByTagName("input")).findAll(
		function(el) { return el.type == 'checkbox'; });
		
	checkboxes.each(function(checkbox) {
		checkbox.checked = mode;
	});
}

MAG.bulkAddBookmark = function() {
	var checkboxes = $A($('search_results').getElementsByTagName("input")).findAll(
		function(el) { return el.type == "checkbox" && el.checked });

	for(i = 0; i < checkboxes.length; i++)
	{
		var link = document.getElementsByClassName("add-bookmark", checkboxes[i].parentNode);
		if(link.length)
		{
			var thelink = link[0];
			MAG.addBookmark(thelink, checkboxes[i].value);
		}
	}
}

MAG.printall = function() {
	var checkboxes = $A($('search_results').getElementsByTagName("input")).findAll(
		function(el) { return el.type == "checkbox" && el.checked });
	
	var values = [];
	for(i = 0; i< checkboxes.length; i++ ) {
		values.push(checkboxes[i].value);
	}
	var controller = (window.location.toString().indexOf('estates') == -1) ? 'offers' : 'estates';
	var url = wwwbase + controller + '/printoffer/' + values.join(',');
	openWindow(url, 'Printing', '')
}


function openWindow(theURL,winName,features) {
	var popupWindow = window.open(theURL,winName,features);
	popupWindow.focus();
}


