// load google search api
google.load("search", "1", {"nocss" : true});		

window.addEvent('domready', function(){
	/**
	 * JAVASCRIPT CHECK
	 */
	
	// dispose javascript disable message
	$('javascriptCheck').dispose();
	
	// hide linear fallback navi and show treenavi
	$('linearnavi').hide();
	$('blockc0').show();
	
	/**
	 * WINDOW SIZE CHECK
	 */	

	// check window size
	if (window.outerWidth < 1200 && !Cookie.read('screensizeCheck')){
		/*var notice = new Sandbox.UI.Overlay.Window({
			content: 'Diese Website benötigt eine Breite von mindestens 1200px.',
			title: 'Warnung'
		});
		notice.show()<h2>Hilfe <img style="display:inline" src="http://static.a3non.org/icon/silkicons/help.png" width="16" height="16" alt="Hilfe" /></h2>
										<div class="border">
											<p>Hier finden Sie einige Hilfethemen</p>	
										</div>
										<a href="#">ededwfe</a>
										
		*/								
		var content = new Element('div', {'class':'border'});								
		content.grab(new Element('p', {text: 'Diese Website benötigt eine Breite von mindestens 1200px.'}));								
																
		var notice = new Sandbox.UI.Overlay.Window(content);
		notice.show();
	
		Cookie.write('screensizeCheck', 'checked', {duration: 1});
	}
	
	/**
	 * Treenavi Expander FX
	 */
	$$('.footer .expander').addEvent('click', function(){
		if ($('treenavi').isDisplayed()) {
			$$('.footer .expander span').set('text', 'Show');
			$('treenavi').dissolve();
		}else{
			$$('.footer .expander span').set('text', 'Hide');
			$('treenavi').reveal();
		}
	});
	
	/**
	 * Tree Navigation System
	 */
	// treenavi
	var treenavi = new Sandbox.TreeNavigation({
		block0:  $('blockc0'),
		blockl1: $('blockl1'),
		blockl2: $('blockl2'),
		blockr1: $('blockr1'),
		blockr2: $('blockr2')
	});
	
	treenavi.addEvent('link', function(link, level){
		document.sandbox.load(link);
	});

	
	/**
	* Google Search
	*/
	var gsearchStoredContent = null;
	
	// root content container of page
	var gsearchContainer = new Element('div', {
			'class': 'leftcontent_blue'
	});	   		
	
	gsearchContainer.addClass('floatfullcontent_100');
	
	// search closer
	gsearchContainer.grab(new Element('img', {
		'src' : 'http://static.a3non.org/icon/silkicons/cancel.png',
		'styles':{
			'float': 'right',
			'cursor': 'pointer'
		},
		'events': {
			'click': function(){
				gsearchContainer.dispose();
				// show content
				$('contentarea_center').reveal();
				$('content_navigation_container').show();
				gsearchStoredContent = null;
			}
		}
	}));
	
	// search title
	gsearchContainer.grab(new Element('h2', {
			'text': MooTools.lang.get('GLOBAL', 'googleAPISuche')
	}));
	
	// google content root
	var gsearchContentElement = new Element('div');
	
	// insert google content into page content element
	gsearchContainer.grab(gsearchContentElement);	   		
	
	// Create a search control
	var searchControl = new google.search.SearchControl();
	
	// Add in a WebSearch
	var webSearch = new google.search.WebSearch();
	
	// Restrict our search to pages from the a3non.org
	webSearch.setSiteRestriction('a3non.org');
	
	options = new google.search.SearcherOptions();
	options.setExpandMode(GSearchControl.EXPAND_MODE_OPEN);
	
	// add websearch to control
	searchControl.addSearcher(webSearch, options);
	
	// Set the Search Control to get the most number of results
	searchControl.setResultSetSize(google.search.Search.LARGE_RESULTSET);
	
	// Set no result message
	searchControl.setNoResultsString(MooTools.lang.get('GLOBAL', 'googleAPINoResult'));
	
	var drawOptions = new google.search.DrawOptions();
	drawOptions.setInput(document.getElementById('searchinput'));
	
	var searchLoadingOverlayer = new Sandbox.UI.Overlay.Loading({
		url: 'google://SearchAPI',
		contentOpacity: 1,
		styles: {
			zIndex: 11111,
			backgroundColor: '#000000'
		}
	});
	
	searchControl.setSearchCompleteCallback(this, function(searchControl, searcher){
		if (gsearchStoredContent == null) {
			$('contentarea_center').dissolve();
			$('content_navigation_container').hide();
			$('contentarea_pre').grab(gsearchContainer);
		}
		searchLoadingOverlayer.hide();
	
	});
	
	searchControl.setSearchStartingCallback(this, function(searchControl, searcher){
		searchLoadingOverlayer.show();
	});
	
	// Tell the searcher to draw itself and tell it where to attach
	searchControl.draw(gsearchContentElement, drawOptions);	

});