

function AddEventHandler(control, eventName, handler)
{
    if (control.addEventListener)
	{
	   control.addEventListener(eventName, handler, false);
	}
	else
	{
	    control.attachEvent("on" + eventName, handler);
	}
}

var rem;

function RemoveEventHandler(control, eventName, handler)
{
    if(control.removeEventListener)
    {
       control.removeEventListener(control, handler, false);
       rem = true;
    }
    else
       {
         if(control.detachEvent)
         {
           control.detachEvent("on" + eventName, handler);
         }
         else
         {
           control["on" + eventName] = null;
         }
      }
}


AddEventHandler(window, "beforeunload", checkunsaveddata);

var isExistUnsavedData = false;
var isInternalLoad = false;

function checkunsaveddata(ev)
{
  if(isInternalLoad == true || isExistUnsavedData == false)
    return;
  
  //alert(isExistUnsavedData);
  var ev = ev || window.event;
 
        var res;
 
        var msg = "All unsaved data will be lost.";
        
        if(window.event)
	    {
	       window.event.returnValue = msg;
	       window.event.cancelBubble = true;
	       return msg;
		}
		else
		{
		   if(rem && rem == true)
		   {
		     rem = false;
		   }
		   else
		   {
		     ev.returnValue = msg;
		   }
		   return;
	     }
            
         isExistUnsavedData = false;
      
}


 //for check changes on the edit page
 
 
 /*AddEventHandler(window, "load", addEventsCheckChanging);
 var isChangeEditPage = false; 
 
 function addEventsCheckChanging()
 {
    //if(editcontrolid)
    //{
        //select all input
        var arInputs = document.getElementsByTagName("INPUT");
    
        //select all input
        var arSelects = document.getElementsByTagName("SELECT");
    
        //attach event for xmlinputcontrol
        if(arInputs)
        {
            for(var i=0; i<arInputs.length; i++)
            {
                if(arInputs[i])
                {
                    AddEventHandler(arInputs[i], "change", setIsChange);
                }
            }
        }
    
        //attach event for xmlinputcontrol
        if(arInputs)
        {
            for(var i=0; i<arSelects.length; i++)
            {
                if(arSelects[i])
                {
                    AddEventHandler(arSelects[i], "change", setIsChange);
                }
            }
        }
   //}
 }
 
 
 //set flag changing for editpage true
 function setIsChange()
 {
    isChangeEditPage = true;
 }
 
 //set flag changing for editpage true
 function clearIsChange()
 {
    isChangeEditPage = false;
 }
 
 
 
 //checking 
 function checkChanging()
 {
   return isChangeEditPage?isChangeEditPage:false;
 }*/
 

