window.addEvent( 'domready', function() {
	// adicionar target _blank a links para o exterior
	$$('a.external').each( function( item, index ) {
		item.setProperty( 'target', '_blank' );
	});

	if( $('siteSearch') ) {
		$$('#siteSearch #tipo').addEvent( 'change', function( e ) {
			var item = $$('#siteSearch #tipologia');
			if( this.get( 'value' ) != 1 && this.get( 'value' ) != 3 ) {
				var option = '<option value=\"-1\">tipologia</option>';
				item.set( 'html', option );
				item.set( 'disabled', 'disabled' );
				item.getParent( 'span' ).addClass( 'disabled' );
				return;
			}
			new Request.JSON({
				url: '_json/sitesearch.json.php',
				onRequest: function() {
					item.set( 'html', '<option value=\"-1\">loading...</option>' );
				},
				onSuccess: function( json ) {
					var option = '<option value=\"-1\">tipologia</option>';
					json.each( function( item, index ) {
						option += '<option value=\"'+item.id+'\">'+item.designacao+'</option>';
					});
					item.set( 'html', option );
					item.set( 'disabled', '' );
					item.getParent( 'span' ).removeClass( 'disabled' );
				}
			}).post({ 'name': 'tipologias' });
		});
		$$('#siteSearch #concelho').addEvent( 'change', function( e ) {
			var id = this.options[this.options.selectedIndex].value;
			var item = $$('#siteSearch #localidade');
			if( this.get( 'value' ) <= 0 ) {
				var option = '<option value=\"-1\">localidade</option>';
				item.set( 'html', option );
				item.set( 'disabled', 'disabled' );
				item.getParent( 'span' ).addClass( 'disabled' );
				return;
			}
			new Request.JSON({
				url: '_json/sitesearch.json.php',
				onRequest: function() {
					item.set( 'html', '<option value=\"-1\">loading...</option>' );
				},
				onSuccess: function( json ) {
					if( json.length > 0 ) {
						var option = '<option value=\"-1\">localidade</option>';
						json.each( function( item, index ) {
							option += '<option value=\"'+item.id+'\">'+item.designacao+'</option>';
						});
						item.set( 'html', option );
						item.set( 'disabled', '' );
						item.getParent( 'span' ).removeClass( 'disabled' );
					}
				}
			}).post({ 'name': 'localidades', 'id': id });
		});
		this.addEvent( 'submit', function( e ) {
			new Event.stop( e );
			var tipo = $$('#siteSearch #tipo')[0];
			var tipologia = $$('#siteSearch #tipologia')[0];
			var concelho = $$('#siteSearch #concelho')[0];
			var localidade = $$('#siteSearch #localidade')[0];

			if( tipo.value > 0 || tipologia.value > 0 || concelho.value > 0 || localidade.value > 0 ) {
				var whereAppend = '';
				if( tipo.value > 0 ) whereAppend += 'tipo='+tipo.value+'&';
				if( tipologia.value > 0 ) whereAppend += 'tipologia='+tipologia.value+'&';
				if( concelho.value > 0 ) whereAppend += 'concelho='+concelho.value+'&';
				if( localidade.value > 0 ) whereAppend += 'localidade='+localidade.value+'&';
				window.location = 'imoveis.php?'+whereAppend.substr( 0, whereAppend.length - 1 );
			}
		});
	}
});