//
//  Licensed Materials - Property of IBM
//  5724Y82
//  (C) Copyright IBM Corp. 1995, 2009 All Rights Reserved.
//
// ***** DO NOT EDIT THIS FILE *****

var HPB_SLIDE_STATUS = 0
var HPB_SLIDE_PAUSED = 0
var HPB_MOVIE_COUNT = 0;
var HPB_END_OF_STREAM = false;
var HPB_TIMER_ID = -1;
var HPB_OPENED_WINDOW = null;
var HPB_WINDOW_CLOSECHECK = false;
var HPB_MSG_CLOSECHECK = null;
var HPB_MAX_TAG = 0;
var HPB_MAX_MOVIE = 0;
var HPB_PLAYER_PARAMS = null;
var HPB_PLAYER_PARAMS_LEN = 0;
var HPB_TAG_ARRAY = null;
var HPB_TAG_FIELDS = new Array(".movie", ".event", ".url", ".features", ".closecheck", ".msg", ".time", ".image");
var HPB_MOVIE_ARRAY = null;
var HPB_ACTIVE_IMAGE = "";

function HPB_eLBStartMovie(startOffset, bSelectSeg) {

	if (HPB_SLIDE_PAUSED == 0) {
    HPB_PLAYER_PARAMS = HPB_eLBPlayer.childNodes;
    HPB_PLAYER_PARAMS_LEN = HPB_PLAYER_PARAMS.length;
    for (i=0; i<HPB_PLAYER_PARAMS_LEN; i++) {
      var param = HPB_PLAYER_PARAMS[i];
      if (param.name == "HPB_MAX_TAG") {
  	HPB_MAX_TAG = param.value;
      }
      if (param.name == "HPB_MAX_MOVIE") {
  	HPB_MAX_MOVIE = param.value;
      }
    }
    if (HPB_MAX_TAG > 0) {
      HPB_TAG_ARRAY = new Array(HPB_MAX_TAG);
    }
    for (i=0; i<HPB_MAX_TAG; i++) {
      HPB_TAG_ARRAY[i] = new Object();
      var param_name = "HPB_TAG_ARRAY[" + i + "]";
      var param_fields = new Array(HPB_TAG_FIELDS.length);
      for (k=0; k<HPB_TAG_FIELDS.length; k++) {
        param_fields[k] = null;
      }
      for (j=0; j<HPB_PLAYER_PARAMS_LEN; j++) {
        var param = HPB_PLAYER_PARAMS[j];
        for (k=0; k<HPB_TAG_FIELDS.length; k++) {
          var param_name_sub = param_name + HPB_TAG_FIELDS[k];
          if (param.name == param_name_sub) {
            param_fields[k] = param.value;
            if (param_fields[k] == "") {
              param_fields[k] = null;
            }
            break;
          }
        }
      }
      HPB_TAG_ARRAY[i].movie = null;
      HPB_TAG_ARRAY[i].event = null;
      HPB_TAG_ARRAY[i].url = null;
      HPB_TAG_ARRAY[i].features = null;
      HPB_TAG_ARRAY[i].closecheck = new Boolean(false);
      HPB_TAG_ARRAY[i].msg = null;
      HPB_TAG_ARRAY[i].time = new Number(-1);
      HPB_TAG_ARRAY[i].image = null;
      for (k=0; k<HPB_TAG_FIELDS.length; k++) {
        var eval_line = null;
        if ((param_fields[k] == null) || (param_fields[k] == "true") || (param_fields[k] == "false")) {
          eval_line = param_name + HPB_TAG_FIELDS[k] + " = " + param_fields[k] + ";";
        } else {
          var var_number = new Number(param_fields[k]);
          var var_string = new String(var_number.toString());
          if (param_fields[k] == var_string) {
            eval_line = param_name + HPB_TAG_FIELDS[k] + " = " + param_fields[k] + ";";
          } else {
            eval_line = param_name + HPB_TAG_FIELDS[k] + " = \"" + param_fields[k] + "\";";
          }
        }
        var dummy = eval(eval_line);
      }
    }
    if (HPB_MAX_MOVIE > 0) {
      HPB_MOVIE_ARRAY = new Array(HPB_MAX_MOVIE);
      for (i=0; i<HPB_MAX_MOVIE; i++) {
        var param_name = "HPB_MOVIE_ARRAY[" + i + "]";
        for (j=0; j<HPB_PLAYER_PARAMS_LEN; j++) {
          var param = HPB_PLAYER_PARAMS[j];
          if (param.name == param_name) {
            HPB_MOVIE_ARRAY[i] = param.value;
            break;
          }
        }
      }
    }
    // Preload all images
    HpbImgPreload();
    for (i=0; i<HPB_SLIDE_TEXT.all.length; i++) {
      if (HPB_SLIDE_TEXT.all.item(i).tagName == "IMG") {
//      HPB_SLIDE_TEXT.all.item(i).src = HPB_TAG_ARRAY[0].image;
        HPB_SLIDE_TEXT.all.item(i).src = swImg[0].src;
      }
    }
    HPB_eLBPlayer.AutoStart = false;
    HPB_eLBPlayer.AutoRewind = false;
    if (HPB_eLBPlayer.controls != null) {
      HPB_eLBPlayer.URL = HPB_MOVIE_ARRAY[HPB_MOVIE_COUNT];
      HPB_eLBPlayer.uiMode = "none";
    } else {
      HPB_eLBPlayer.FileName = HPB_MOVIE_ARRAY[HPB_MOVIE_COUNT];
      HPB_eLBPlayer.ShowControls = false;
    }
  } else {
    if (HPB_OPENED_WINDOW != null) {
      if (HPB_OPENED_WINDOW.closed) {
        HPB_OPENED_WINDOW = null;
        HPB_WINDOW_CLOSECHECK = false;
        HPB_MSG_CLOSECHECK = null;
      } else if (HPB_WINDOW_CLOSECHECK) {
        return;
      }
    }
  }
  if (HPB_SLIDE_STATUS == 0) {
    HPB_SLIDE_STATUS = 1;
  }
  HPB_SLIDE_PAUSED = 0;
  if (HPB_eLBPlayer.controls != null) {
    if (bSelectSeg)
	HPB_eLBPlayer.controls.currentPosition = startOffset;
    HPB_eLBPlayer.controls.play();
  } else {
    if (bSelectSeg)
	HPB_eLBPlayer.SelectionStart = startOffset;
    HPB_eLBPlayer.Play();
  }
  HPB_eLBSetButtonState("playing");
  HPB_TIMER_ID = window.setInterval("HPB_eLBTimerCallback()", 100, "JScript");
  HPB_END_OF_STREAM = false;
}

function HPB_eLBSelectSegment(startOffset)
{
	if (typeof(startOffset) == "undefined")
	{
		startOffset = 0.0;
	}

	if( HPB_SLIDE_STATUS ==1)
	{	
		HPB_eLBStopMovie();
	}
  	HPB_eLBStartMovie(startOffset, true);
}

function HPB_eLBStopMovie() {
  if (HPB_TIMER_ID != -1) {
    window.clearInterval(HPB_TIMER_ID);
    HPB_TIMER_ID = -1;
  }
  if (HPB_eLBPlayer.controls != null) {
    HPB_eLBPlayer.controls.stop();
    HPB_eLBPlayer.URL = HPB_MOVIE_ARRAY[0];
  } else {
    HPB_eLBPlayer.Stop();
    HPB_eLBPlayer.FileName = HPB_MOVIE_ARRAY[0];
  }
  HPB_eLBSetSlideImage(0);
  HPB_eLBSetButtonState("stopping");
  HPB_SLIDE_PAUSED = 0;
}

function HPB_eLBPauseMovie() {
  if (HPB_TIMER_ID != -1) {
    window.clearInterval(HPB_TIMER_ID);
    HPB_TIMER_ID = -1;
  }
  if (HPB_eLBPlayer.controls != null) {
    HPB_eLBPlayer.controls.pause();
  } else {
    HPB_eLBPlayer.Pause();
  }
  HPB_eLBSetButtonState("pausing");
  HPB_SLIDE_PAUSED = 1;
}

function HPB_eLBTimerCallback() {
  if ((HPB_eLBPlayer.currentMedia != null) && (HPB_eLBPlayer.openState == 13)) {
    var HPB_duration;
    var HPB_currentTime;
    if (HPB_eLBPlayer.controls != null) {
      HPB_duration = HPB_eLBPlayer.currentMedia.duration;
      HPB_currentTime = HPB_eLBPlayer.controls.currentPosition;
    } else {
      HPB_duration = HPB_eLBPlayer.Duration;
      HPB_currentTime = HPB_eLBPlayer.CurrentPosition;
    }
    if (HPB_duration - 1 < 0) {
      HPB_END_OF_STREAM = true;
    } else if (HPB_duration - 1 < HPB_currentTime) {
      HPB_END_OF_STREAM = true;
    }
    if (HPB_END_OF_STREAM) {
      if (HPB_eLBPlayer.playState == 1) {
        HPB_eLBPlayer.AutoStart = false;
        HPB_eLBPlayer.AutoRewind = false;
        if (HPB_eLBPlayer.controls != null) {
          HPB_eLBPlayer.uiMode = "none";
        } else {
          HPB_eLBPlayer.ShowControls = false;
        }
        HPB_MOVIE_COUNT = HPB_MOVIE_COUNT + 1;
        if (HPB_MOVIE_COUNT < HPB_MAX_MOVIE) {
          if (HPB_eLBPlayer.controls != null) {
            HPB_eLBPlayer.URL = HPB_MOVIE_ARRAY[HPB_MOVIE_COUNT];
            HPB_eLBPlayer.controls.play();
          } else {
            HPB_eLBPlayer.FileName = HPB_MOVIE_ARRAY[HPB_MOVIE_COUNT];
            HPB_eLBPlayer.Play();
          }
          HPB_END_OF_STREAM = false;
        } else {
          HPB_SLIDE_STATUS = 2;
          HPB_eLBStopMovie();
          HPB_END_OF_STREAM = false;
          HPB_MOVIE_COUNT = 0;
        }
      }
    }
    var current_url = null;
    if (HPB_eLBPlayer.controls != null) {
      current_url = HPB_eLBPlayer.URL;
    } else {
      current_url = HPB_eLBPlayer.FileName;
    }
    var cur_time = new Number(HPB_currentTime);
    var next_time = new Number(HPB_duration);
    for (i=HPB_MAX_TAG-1; i>=0; i--) {
      var tag_time = new Number(HPB_TAG_ARRAY[i].time);
      if (i < HPB_MAX_TAG-1) {
        next_time = new Number(HPB_TAG_ARRAY[i+1].time);
      }
      if (HPB_eLBCheckName(HPB_TAG_ARRAY[i].movie, current_url)) {
        if ((tag_time <= cur_time) && (cur_time < next_time)) {
          if (HPB_TAG_ARRAY[i].image != null) {
            HPB_eLBSetSlideImage(i);
          } else if (HPB_TAG_ARRAY[i].event != null) {
            if (HPB_SLIDE_PAUSED != 1) {
              HPB_eLBPauseMovie();
            }
          } else if (HPB_TAG_ARRAY[i].url != null) {
            if (HPB_SLIDE_PAUSED != 1) {
              HPB_eLBPauseMovie();
              HPB_WINDOW_CLOSECHECK = HPB_TAG_ARRAY[i].closecheck;
              HPB_MSG_CLOSECHECK = HPB_TAG_ARRAY[i].msg;
              HPB_OPENED_WINDOW = window.open(HPB_TAG_ARRAY[i].url, HPB_OPENED_WINDOW, HPB_TAG_ARRAY[i].features, false);
            }
          }
          break;
        }
      }
    }
  }
}
function HPB_eLBSetSlideImage(i)
{

  for (j=0; j<HPB_SLIDE_TEXT.all.length; j++) {
    if (HPB_SLIDE_TEXT.all.item(j).tagName == "IMG") {
//    HPB_SLIDE_TEXT.all.item(j).src = HPB_TAG_ARRAY[i].image;
      if (HPB_ACTIVE_IMAGE != swImg[i].src) {
        HPB_SLIDE_TEXT.all.item(j).src = swImg[i].src;
        HPB_ACTIVE_IMAGE = swImg[i].src;
      }
      break;
    }
  }
}

function HPB_eLBSetButtonState(state)
{
  var data = {// play, pause, stop
    stopping : [ true, false, false ],
    playing :  [false, true,  true ],
    pausing :  [ true, false, true ]
  };
  var d = data[state];
  if(typeof d == "undefined") return;
  
  HPB_eLBSetButtonStateEach("HPB_eLBButtonPlay",  d[0]);
  HPB_eLBSetButtonStateEach("HPB_eLBButtonPause", d[1]);
  HPB_eLBSetButtonStateEach("HPB_eLBButtonStop",  d[2]);
}
function HPB_eLBSetButtonStateEach(name,bEnabled)
{
  if(eval("typeof "+name+".disabled") == "undefined") return;
  eval(name).disabled = !bEnabled;
}

var reg_prefix = new RegExp("^file:///","");
var reg_delimt = new RegExp("\\\\","g");
function HPB_eLBCheckName(aname1,aname2)
{
  var name1 = aname1.replace(reg_prefix, "");
  var name2 = aname2.replace(reg_delimt, "/");

  if (name2.length > name1.length) {
    var subpath = name2.substr(0,name2.length-name1.length);
    var lastpath = subpath.substr(subpath.length-1);
    if ((lastpath == "/")) {
      var subname = name2.substr(name2.length-name1.length);
      return (subname == name1);
    }
  }
  return (name2 == name1);
}

// HpbImgPreload:
//
function HpbImgPreload()
{
  swImg=new Array(HPB_MAX_TAG);
  for (i=0; i<HPB_MAX_TAG; i++) {
    swImg[i] = new Image();
    swImg[i].src = HPB_TAG_ARRAY[i].image
  }
}
var swImg;

