/*****************************************************************
** COPYRIGHT. HSBC HOLDINGS PLC ccyy. ALL RIGHTS RESERVED.
** THIS SOFTWARE IS ONLY TO BE USED FOR THE PURPOSE FOR WHICH IT
** HAS BEEN PROVIDED. NO PART OF IT IS TO BE REPRODUCED,
** DISASSEMBLED, TRANSMITTED, STORED IN A RETRIEVAL SYSTEM NOR
** TRANSLATED IN ANY HUMAN OR COMPUTER LANGUAGE IN ANY WAY OR
** FOR ANY OTHER PURPOSES WHATSOEVER WITHOUT THE PRIOR WRITTEN
** CONSENT OF HSBC HOLDINGS PLC.
*******************************************************************
** Navigation Event Management Javascript
** This script groups navigation event management functions.
** Extension for ESRA

** @file				action.js
** @version
** @author				F CHERPION
*******************************************************************/

function actionSubmit(formId,action) {
	//alert(""+formId);
	// Deactivate the event handler to prevent double submit
	//eH.deactivate();
	Event.desactivate;

	try {
			var divId = formId + "_divSetEvent";
			var form = getForm(formId);

		if (form != null) 
			{
				var div = getOrCreateDiv( form, divId);
				var eventInput = document.createElement("INPUT");
				eventInput.type = "hidden";
				eventInput.name = action;
				div.appendChild(eventInput);
			}
	}
	catch (e) {
		alert("Error durring field creation : " + e.message);
	}
	try {
		//alert("ttt");	
		form.submit();
		//alert("rrr");
	} catch(e) {	
		alert("Error during the submit : " + e.message);
	}
}

/**
 todo : modifié par TFA pour support actions en mode es processor.
 dans HTL cette le parametre de cette focntion etait le name du form, dans PS les form n'ont plus de name (on utilise le form de JSF sun), mais ont un id,
 l'implem de cette methode a donc ete modifiée en consequence
 */
function getForm(formId)
{
	return document.getElementById(formId);
}

function getOrCreateDiv(form,divId)
{
	try {
	var div = document.getElementById(divId);
	if (div == null)
		{
		div = document.createElement("DIV");
		div.id = divId;
		div.style.display = "none";
		form.appendChild(div);
		}
	} catch(e) {	
		alert("Error during the div creation : " + e.message);
	}	
	return div;
}
