var popUp = function( url, params ) {
    return Modalbox.show( url, params );
};

Form.Methods.CheckAndSubmit = function( element ) {
    element = $(element);
    if ( !element.getInputs().invoke( 'CheckField' ).include( false ) ) {
	if ( $('agreement') && ['',undefined,false].include($('agreement').checked)) {
	    $('agreement').scrollTo();
	    alert( 'Моля потърдете съгласието си с условията');
	} else {
	    element.submit();
	}
    } else {
	alert( "Моля попълнете задължителните полета" );
    }
}

Form.Element.Methods.CheckField = function(element) {
    element = $(element); label = $$( 'label.check[for="'+element.id+'"]' )[0];
    if ( element.tagName.toLowerCase() == 'input' && element.id && label && ( element.value == '' ) ) {
	label.setStyle({ color: 'red' });
	return false;
    }
    return true;
};

Form.Element.Methods.SubmitObserver = function( element ) {
    element = $(element);
    if ( element.tagName.toLowerCase() == 'input' && ['button','submit'].include( element.type ) )
	element.observe( 'click', element.submit.bindAsEventListener(element) );
}

Form.Element.Methods.submit = function( element, event ) {
    element = event.element();
    if ( element.tagName.toLowerCase() == 'input' && ['button','submit'].include( element.type ) )
	$(element.parentNode.parentNode).CheckAndSubmit();
}

Element.Methods.loginFieldToggle = function(element) {
    if ( element.descendantOf('login-form') && (element.tagName.toLowerCase() == 'input') && ['text','button'].include(element.type) )
    {
	if ( (element.type == 'text') && ['username','password'].include(element.name) )
	{
	    element.observe( 'focus', function(eve) {
		var e = eve.element();
		if ( e.name == 'password' )
		{
		    r = e.next('input[type=password]');
		    e.hide();
		    r.show();
		    r.focus();
		}
		else
		{
		    e.value = '';
		    e.focus();
		}
		e.stopObserving('focus');
	    });
	}
	else if ( (element.type == 'button') && element.hasClassName('submit') )
	{
	    element.observe('click', function(eve) {
		$('login-form').submit();
	    });
	}
    }
}
Element.addMethods();
Event.observe( window, 'load', function( event ) {
	$$( 'li:last-child' ).invoke( 'addClassName', 'last-child' );
	$$( 'input.CheckFormButton' ).invoke( 'SubmitObserver' );
	if ($('homePageLeft') && $('homePageRight')) {
	if ($('homePageLeft').getHeight() > $('homePageRight').getHeight()) {
	    var h = parseInt(parseInt($('homePageLeft').getHeight())-parseInt($('homePageRight').previous('div.title').getHeight())-10);
	    $('homePageRight').setStyle({height: h+'px'});
	} else {
	    var h = parseInt(parseInt($('homePageRight').getHeight())+parseInt($('homePageRight').previous('div.title').getHeight()));
	    $('homePageLeft').setStyle({height: h+'px'});
	}
	}
});
