﻿function InitMainMenu(){    var oMenuBar = new YAHOO.widget.MenuBar("mainmenu", {
        autosubmenudisplay: true,
        hidedelay: 750,
        lazyload: true
    });        oMenuBar.render();}function InitSubscriptionForm(){    window["subscribeEmail"] = '';
    YAHOO.util.Event.addListener("subscribeButton", "click", doSubscribe);
    SubscribeTextFieldToEvents("subscribeEmailField", "subscribeEmail", "Your e-mail", validateSubscription);
    validateSubscription();}function InitMessageForm(){    window["messageName"] = '';
    window["messageEmail"] = '';
    window["messageText"] = '';

    YAHOO.util.Event.addListener("messageButton", "focus", function() {validateMessage();});
    YAHOO.util.Event.addListener("messageButton", "click", doSendMessage);
    
    YAHOO.util.Event.addListener('messageButton', 'mouseover', function(){ SetSendButtonState('hover'); });
	YAHOO.util.Event.addListener('messageButton', 'mouseout', function(){
        var link = YAHOO.util.Dom.get('messageButton');
        if (link.disabled != 'disabled'){
            SetSendButtonState('normal');
        }
    });
    
    SubscribeTextFieldToEvents("messageNameField", "messageName", "Your name", validateMessage);
	SubscribeTextFieldToEvents("messageEmailField", "messageEmail", "Your e-mail", validateMessage);
    SubscribeTextFieldToEvents("messageTextField", "messageText", "Your message", validateMessage);
    
    validateMessage();}function SubscribeTextFieldToEvents(textFieldId, valueVar, defaultText, validationFunc){	YAHOO.util.Event.addListener(textFieldId, "keyup", validationFunc);

    YAHOO.util.Event.addListener(textFieldId, "blur", function()
    {
        SetTextFieldColorAndValue(window[valueVar].length == 0, textFieldId, '#bbbbbb', defaultText);
    });

    YAHOO.util.Event.addListener(textFieldId, "focus", function()
    {
    	SetTextFieldColorAndValue(window[valueVar].length == 0, textFieldId, '#333333', '');
    });}

function SetTextFieldColorAndValue(condition, textFieldId, color, value) {	var textField = YAHOO.util.Dom.get(textFieldId);
	if (condition) {		textField.style.color = color;
        textField.value = value;
	}
}

function validateSubscription() {
    var subscribeEmailField = YAHOO.util.Dom.get('subscribeEmailField');
    window["subscribeEmail"] = (subscribeEmailField.value == 'Your e-mail') ? '' : subscribeEmailField.value;
    var isValid = (window["subscribeEmail"].length > 0);

    var subscribeButton = YAHOO.util.Dom.get('subscribeButton');

    subscribeButton.style.backgroundImage = (isValid) ? 'url(/i/subscribe-submit.gif)' : 'url(/i/subscribe-submit-disabled.png)';
    subscribeButton.disabled = (isValid) ? '' : 'disabled';
}

function validateMessage() {
    var isValid = true;

    var messageNameField = YAHOO.util.Dom.get('messageNameField');
    window["messageName"] = (messageNameField.value == 'Your name') ? '' : messageNameField.value;
    isValid &= (window["messageName"].length > 0);

    var messageEmailField = YAHOO.util.Dom.get('messageEmailField');
    window["messageEmail"] = (messageEmailField.value == 'Your e-mail') ? '' : messageEmailField.value;
    isValid &= (window["messageEmail"].length > 0);

    var messageTextField = YAHOO.util.Dom.get('messageTextField');
    window["messageText"] = (messageTextField.value == 'Your message') ? '' : messageTextField.value;
    isValid &= (window["messageText"].length > 0);

    var state = (isValid) ? 'normal' : 'disabled';
    SetSendButtonState(state);
}

function SetSendButtonState(state)
{
    var link = YAHOO.util.Dom.get('messageButton');

    if ((state == 'hover') && (link.disabled != 'disabled')){
       link.style.backgroundImage = "url('i/send-button-hover.png')";
    } else if (state == 'disabled') {
		link.style.backgroundImage = "url('i/send-button-disabled.png')";
        link.disabled = 'disabled';
    } else if (state == 'normal') {
        link.style.backgroundImage = "url('i/send-button.png')";
        link.disabled = '';
    }
}

function doSubscribe(e){
    var formObject = document.getElementById('subscribeEmailForm');
	YAHOO.util.Connect.setForm(formObject, false);

	YAHOO.util.Connect.asyncRequest('POST', "subscribeemail.php", {
	  	success: function(o){
            ElemContent2Message('subscribeEmailForm', 'Thank you for subscribing to our newsletter');
		},
	  	failure: function(o){
			ElemContent2Message('subscribeEmailForm', 'An error occured while subscribing your e-mail to our newsletter');
		},
	  	cache: false
	});
}

function doSendMessage(e){
    var formObject = document.getElementById('sendMessageForm');
	YAHOO.util.Connect.setForm(formObject, false);

	YAHOO.util.Connect.asyncRequest('POST', "sendmessage.php", {
	  	success: function(o){
            ElemContent2Message('messageform', 'Thank you for sending a message');
		},
	  	failure: function(o){
			ElemContent2Message('messageform', 'An error occured while sending the message');
		},
	  	cache: false
	});
}

function ElemContent2Message(elemId, message) {	var div = YAHOO.util.Dom.get(elemId);
	div.innerHTML = "<p style='font-weight: bold;'>" + message + "</p>";
}

// Validation -----------------------------------------------------------------

function IsValidEmail(email)
{
     re = /^([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}$/i;
     return re.test(email);
}

function IsFieldNotEmpty(fieldId){
    return YAHOO.util.Dom.get(fieldId).value.length > 0;
}