

  /**
* Initializes elements and events for live engraving.
*/

if (window.addEventListener) //DOM method for binding an event
window.addEventListener("load", initEngrave, false)
else if (window.attachEvent) //IE exclusive method for binding an event
window.attachEvent("onload", initEngrave)
else if (document.getElementById) //support older modern browsers
window.onload=initEngrave

var engraver_interval = null;
var engraver_interval_delay = 1000;
var time_shifted_line1 = null;
//var time_shifted_line2 = null;

function thisMovie(movieName) {
    if (navigator.appName.indexOf("Microsoft") != -1) {
        return window[movieName]
    }
    else {
        return document[movieName]
    }
}
function addEventToObject(obj, evt, func)
	{
	var oldhandler = obj[evt];
	if(typeof obj[evt] != 'function'){obj[evt] = func;}
	else{obj[evt] = function(){oldhandler();func();}}
	}
	
function initEngrave()
{

    // kill off old browsers
    if (!document.getElementById) return false;
    var line1   = document.getElementById('line1');
    //var line2   = document.getElementById('line2');
    //var engraveImage = document.getElementById("engrave-image");

    // Make sure the basic components are present.
    if (line1   == null) return;

    addEventToObject(line1, 'onkeyup',  wakeEngraver);
   // addEventToObject(line2, 'onkeyup',  wakeEngraver);
    addEventToObject(line1, 'onchange', wakeEngraver);
   // if(line2!=null)
   // {
    //    addEventToObject(line2, 'onkeyup',  wakeEngraver);
       // addEventToObject(line2, 'onchange', wakeEngraver);
   //  }
}

/**
* Replaces the src attribute of engraving images.
*/
function engrave()
{
    var line1 = document.getElementById("line1");
   // var line2 = document.getElementById("line2");
    

    var engraveURL = "";
    var verifyURL  = "";
    var textHigh = "";
    var textLow  = "";

    

    if (line1 != null)
    {
        textHigh = line1.value;
        engraveURL += "&th="+textHigh;
        verifyURL  += "&th="+textHigh;
    }
  //  if (line2 != null)
  //  {
  //      textLow  = prepareText(line2.value);
  //      engraveURL += "&tl="+textLow;
  //      verifyURL  += "&tl="+textLow;
  //  }
    //if (engraveImage != null) engraveImage.setAttribute("src", engraveURL);
    //if (verifyImage  != null) verifyImage.setAttribute ("src", verifyURL);
	thisMovie("engraveSWF").updateText(textHigh);
}

/**
* Escapes a given piece of text according to browser
* capabilities.
*/
function prepareText(text)
{
    try { return encodeURIComponent(text); }
    catch (e) { return escape(text); }
}

function wakeEngraver()
{
    if (!window.setInterval) return engrave();

    if (engraver_interval == null)
    {
        initIntervalDelay();
        engraver_interval = setInterval("check_buffer_and_engrave()", engraver_interval_delay);
    }
    return true;
}

function initIntervalDelay()
{
    var timerDelay = document.getElementById("timer-delay");
    if (timerDelay != null)
    {
        var timerDelayInt = parseInt(timerDelay.value);
        if ((timerDelayInt != NaN) && (timerDelayInt != 0)) engraver_interval_delay = timerDelayInt;
    }
}

function sleepEngraver()
{
    if (engraver_interval != null)
    {
        clearInterval(engraver_interval);
    }
}

function check_buffer_and_engrave()
{
    if (has_buffer_changed()) return engrave();
}

function has_buffer_changed()
{
    var line1 = document.getElementById("line1");
    var line2 = document.getElementById("line2");
    if (line1 != null)
    {
        value1 = line1.value;
        if (time_shifted_line1 == null)
        {
            if ((value1 != null) && (value1.length > 0))
            {
                time_shifted_line1 = value1;
                return true;
            }
        }
        else
        {
            if (time_shifted_line1 != value1)
            {
                time_shifted_line1 = value1;
                return true;
            }
        }
    }
    if (line2 != null)
    {
        value2 = line2.value;
        if (time_shifted_line2 == null)
        {
            if ((value2 != null) && (value2.length > 0))
            {
                time_shifted_line2 = value2;
                return true;
            }
        }
        else
        {
            if (time_shifted_line2 != value2)
            {
                time_shifted_line2 = value2;
                return true;
            }
        }
    }
    return false;
}



//addEventToObject(window,'onload',initEngrave);

