function processOrderFormChange(form_id) {
    if (form_id && document.getElementById(form_id)) {
        $(form_id).request({
            parameters: {
                title: 'no-title'
            },
            requestHeaders: {
                Accept: 'application/json'
            },
            onComplete: function(transport) {
                var json = transport.responseText.evalJSON(true);
                if (json != null) {
                    Object.keys(json.content_updates).each(function(key) {
                        $(key).update(json.content_updates[key]);
                    });
                    Object.keys(json.property_updates).each(function(key) {
                        $(key).writeAttribute(json.property_updates[key]);
                    });
                } else {
                    alert('Unable to parse response');
                }
            }
        });
    }
return(true);}

function checkIsCoherentToBeSelectedOrUnselectedSingle(min, max, fieldset)
{
    var list = fieldset.getElementsByTagName('input');
    var nb = 0;
    for (i = 0; i < list.length; i++)
        {
            if (list[i].checked)
                nb++;
        }
    if (nb == max)
        {
            for (i = 0; i < list.length; i++)
                {
                    if (!list[i].checked)
                        list[i].disabled = true;
               }
        }
    else if (nb < max)
        {
            for (i = 0; i < list.length; i++)
                {
                    if (!list[i].checked)
                        list[i].disabled = false;
                }
        }
    if (nb > max)
        return false;
    return true;
}
function checkIsCoherentToBeSelectedOrUnselectedMultiple(select_changed, min, max, fieldset)
{
    var list = fieldset.getElementsByTagName('select');
    var nb = 0;
    for (i = 0; i < list.length; i++)
        {
            nb = nb + parseInt(list[i].options[list[i].selectedIndex].value);
        }
    if (nb > max)
        {
            var too_much = nb - max;
            var index = (select_changed.options.selectedIndex) - too_much;
            select_changed.options[index].selected = true;
        }
    return true;
}
var AquaToolTip = Class.create( {
	initialize: function(idbutton, idtooltip) {
		this.button = idbutton;
		this.tooltip = idtooltip;
		this.setEvents();
    },
	setEvents: function() {
		$(this.button).observe('mouseover', this.onMouseOverEventHandler.bind(this));
		$(this.button).observe('mouseout', this.onMouseOutEventHandler.bind(this));
	},
	onMouseOverEventHandler: function() {
		var topleft = $(this.button).positionedOffset();
		$(this.tooltip).style.left = (5+topleft.left +$(this.button).getWidth())+"px";
		$(this.tooltip).style.top = (3+topleft.top + $(this.button).getHeight())+"px";
		$(this.tooltip).style.visibility = 'visible';
	},
	onMouseOutEventHandler: function() {
		$(this.tooltip).style.visibility = 'hidden';
	}
}
);
// var LoadingOverlay = Class.create( {
// 	initialize: function(onTopOfDiv) {
// 		this.onTopOfDiv = onTopOfDiv;
// 		this.overlayDiv = new Element('div', {
// 			'style':'background-color:#fff;display:none;position:absolute;top:0;left:0;overflow:auto;z-index:998;'
// 		});
// 		this.loadingImage = new Element('img', {
// 			'style': 'width:32px;height:32px;position:absolute;top:0;left:0;overflow:auto;z-index:999',
// 			'src': '/images/indicator.gif',
// 			'alt': 'loading'
// 		});
// 
// 		document.body.appendChild(this.overlayDiv);
// 		this.overlayDiv.appendChild(this.loadingImage);
// 
// 		Element.clonePosition(this.overlayDiv, this.onTopOfDiv);
// 		var topleft = this.overlayDiv.positionedOffset();
// 		this.overlayDiv.style.opacity = 0.0;
// 		this.loadingImage.style.left = Math.round(topleft.left + this.overlayDiv.getWidth()/2 - this.loadingImage.getWidth()/2)+"px";
// 		this.loadingImage.style.top = Math.round(topleft.top + this.overlayDiv.getHeight()/2 - this.loadingImage.getHeight()/2)+"px";
// 
// 		this.overlayDiv.show();
// 
// 		new Effect.Opacity(this.overlayDiv, { from: 0.0, to: 1.0, duration: 1});
//     },
// 	hide: function() {
// 		new Effect.Opacity(this.overlayDiv, {from: 1.0, to:0.0, duration: 1, afterFinish: this.removeFromDOM.bind(this)});
// 	},
// 	removeFromDOM: function(effect) {
// 		this.overlayDiv.remove();
// 		alert('Div removed');
// 	}
// });

function addslashes(str) {
     str=str.replace(/\'/g,'\\\'');
     str=str.replace(/\"/g,'\\"');
     str=str.replace(/\\/g,'\\\\');
     str=str.replace(/\0/g,'\\0');
     return str;
}
