/*******************************************************************************
	ONLOAD FUNCTIONS
*******************************************************************************/

Event.observe(window, 'load',
	function() {
		time("+onload");
                // Verzekeraar
                var verzekeraarId1 = document.pre_fill_form.zvId1.value;
                var verzekeraarId2 = document.pre_fill_form.zvId2.value;
                var verzekeraarId3 = document.pre_fill_form.zvId3.value;

                // Verzekeringen
                var basisVerzekeringId1 = document.pre_fill_form.bvId1.value;
                var basisVerzekeringId2 = document.pre_fill_form.bvId2.value;
                var basisVerzekeringId3 = document.pre_fill_form.bvId3.value;
                var aanvullendeVerzekeringId1 = document.pre_fill_form.avId1.value;
                var aanvullendeVerzekeringId2 = document.pre_fill_form.avId2.value;
                var aanvullendeVerzekeringId3 = document.pre_fill_form.avId3.value;

		for( var i = 1; i <= 3; i ++ ) {
			if( $('kolom'+i+'pakketselectie') ) {
				new Ajax.Updater(
					'kolom'+i+'pakketselectie',
					$$('base')[0].readAttribute('href') + '/pakket/selectie/empty.do',
					{
						parameters: {
                                                    column: i,
                                                    verzekeraarId1: verzekeraarId1,
                                                    verzekeraarId2: verzekeraarId2,
                                                    verzekeraarId3: verzekeraarId3,
                                                    basisVerzekeringId1: basisVerzekeringId1,
                                                    basisVerzekeringId2: basisVerzekeringId2,
                                                    basisVerzekeringId3: basisVerzekeringId3,
                                                    aanvullendeVerzekeringId1: aanvullendeVerzekeringId1,
                                                    aanvullendeVerzekeringId2: aanvullendeVerzekeringId2,
                                                    aanvullendeVerzekeringId3: aanvullendeVerzekeringId3
                                                }
					}
				);
			}
		}

		new Ajax.Autocompleter(
			'autocomplete', 'autocomplete_choices',
			$$('base')[0].readAttribute('href') + '/kostensoort/auto/complete.do',
			{
				paramName: 'query',
				afterUpdateElement: function (inputElement, itemElement) {
                                    
                                    var row = $(itemElement.getAttribute("row_id"));
                                    if (row) {
                                        // use defer to delay the showing, because otherwise, in IE,
                                        // the input element would get the focus _after_ scrolling to the row 
                                        // causing scrolling back up to the input element
                                        (function() { showAndMarkRow(row, /*scrollTo=*/true); }).defer();
                                    }
				},
				onShow: function(element, update) { 
			        if(!update.style.position || update.style.position=='absolute') {
			        	update.style.position = 'absolute';
			        	Position.clone(element, update, {
			            	setHeight: false, 
			            	offsetTop: element.offsetHeight,
			            	setWidth: false
			          	});
			        }
			        Effect.Appear(update,{duration:0.15});
			    }
				
			}
		);

		/*
		var s1 = new AutoComplete(
			'querytop',
			$$('base')[0].readAttribute('href') + '/kostensoort/auto/complete.do?query=',
			{delay: .25, cssClass: 'autocomplete' }
		);
		
		s1.draw();
		*/
		
		/*
		 * Fix IE off by one error.
		 */
		if( Prototype.Browser.IE ) {
			$$('div.right-top').each( function( elem ) {
				elem.setStyle( {
					right: '-1px'
				});
			});
		}
		
		observeKostensoortenClicks();

		popupPakketSelectie();
		time("-onload");
	}
);

function onClickTweedeConfiguratie(columnNr) {
    // Verzekeraar
    var verzekeraarId = document.getElementById('column['+(columnNr)+'].verzekeraar').value;

    // Verzekeringen
    var basisVerzekeringId = document.getElementById('column['+(columnNr)+'].basisVerzekering').value;
    var aanvullendeVerzekeringId = document.getElementById('column['+(columnNr)+'].aanvullendeVerzekering').value;

    var configForm = document.pre_fill_form;
    configForm.zvId1.value = verzekeraarId;
    configForm.bvId1.value = basisVerzekeringId;
    configForm.avId1.value = aanvullendeVerzekeringId;
    configForm.zvId2.value = 0;
    configForm.bvId2.value = 0;
    configForm.avId2.value = 0;
    configForm.zvId3.value = 0;
    configForm.bvId3.value = 0;
    configForm.avId3.value = 0;
    configForm.submit();
}

function observeKostensoortenClicks() {
	$$('img[id^=info_kostensoort]').each(function(element,event) {
		Event.observe(element, 'click', function(event) {
			onClickKostensoort(element);
			Event.stop(event);
		})
	});
}

function stopObservingKostensoortenClicks() {
	$$('img[id^=info_kostensoort]').each(function(element,event) {
		Event.stopObserving(element, 'click', function(event) {
			onClickKostensoort(element);
			Event.stop(event);
		})
	});
}

