//##########################################################################
//                           * image looper *
//##########################################################################

var T_first_image = 1;
var T_last_image = 17;

//##########################################################################
// set up images (EX: .jpg .gif .png)

var T_image_array = new Array();
T_image_array[1] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T00.png";
T_image_array[2] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T03.png";
T_image_array[3] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T06.png";
T_image_array[4] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T09.png";
T_image_array[5] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T12.png";
T_image_array[6] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T15.png";
T_image_array[7] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T18.png";
T_image_array[8] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T21.png";
T_image_array[9] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T24.png";
T_image_array[10] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T27.png";
T_image_array[11] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T30.png";
T_image_array[12] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T33.png";
T_image_array[13] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T36.png";
T_image_array[14] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T39.png";
T_image_array[15] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T42.png";
T_image_array[16] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T45.png";
T_image_array[17] = "http://www.srh.noaa.gov/data/ifps/hgx/GFE/graphics/T/T48.png";

//###################### time variables for loop ###########################
//normal_delay = delay between each image
//dwell_delay = delay between last image and first image

var T_current_image = T_first_image;
var T_image = new Array();
var T_normal_delay = 1000;
var T_dwell_delay = 3000;
var T_delay_increment = 100;
var T_delay_max = 8000;
var T_delay_min = 10;
var T_repeat_delay
var T_play_mode = 0;
var T_play_status = 0;


for (var i = T_first_image; i <= T_last_image; i++) {
   T_image[i] = new Image();
   T_image[i].src = T_image_array[i];
}

T_browser_name = navigator.appName;
T_browser_version = parseInt(navigator.appVersion);
if (T_browser_name == "Microsoft Internet Explorer" && T_browser_version >= 4) T_browser = "ie4";
else if (T_browser_name == "Netscape" && T_browser_version >= 3) T_browser = "n3";
else {
   T_browser = "xx";
   document.write("You need Microsoft Internet Explorer 4+ or Netscape Navigator 3+ for this page to work");
}

//##########################################################################
// sets all the modes when page loaded

function T_on_load() {
   T_current_image = T_first_image;
   T_play_status = 0;
   T_play_mode = 0;
   document.T_image.src = T_image[T_current_image].src;
}

//##########################################################################
// plays animation forward

function T_forward_play() {
   T_current_image++;
   if (T_current_image > T_last_image) {
      if (T_play_mode == 0) {
         T_current_image = T_first_image;
         document.T_image.src = T_image[T_current_image].src;
         T_repeat_delay = setTimeout("T_forward_play()", T_normal_delay);
      }
      if (T_play_mode == 1) {
         T_current_image = T_last_image - 1;
         document.T_image.src = T_image[T_current_image].src;
         T_repeat_delay = setTimeout("T_reverse_play()", T_normal_delay);
      }
      if (T_play_mode == 2) {
         T_current_image = T_last_image;
         T_stop();
      }
   }
   else {
      if (T_current_image == T_last_image) {
         document.T_image.src = T_image[T_current_image].src;
         T_repeat_delay = setTimeout("T_forward_play()", T_dwell_delay);
      }
      else {
         document.T_image.src = T_image[T_current_image].src;
         T_repeat_delay = setTimeout("T_forward_play()", T_normal_delay);
      }
   }
}

//##########################################################################
// plays animation in reverse

function T_reverse_play() {
   T_current_image--;
   if (T_current_image < T_first_image) {
      if (T_play_mode == 0) {
         T_current_image = T_last_image;
         document.T_image.src = T_image[T_current_image].src;
         T_repeat_delay = setTimeout("T_reverse_play()", T_normal_delay);
      }
      if (T_play_mode == 1) {
         T_current_image = T_first_image + 1;
         document.T_image.src = T_image[T_current_image].src;
         T_repeat_delay = setTimeout("T_forward_play()", T_normal_delay);
      }
      if (T_play_mode == 2) {
         T_current_image = T_first_image;
         T_stop();
      }
   }
   else {
      if (T_current_image == T_first_image) {
         document.T_image.src = T_image[T_current_image].src;
         T_repeat_delay = setTimeout("T_reverse_play()", T_dwell_delay);
      }
      else {
         document.T_image.src = T_image[T_current_image].src;
         T_repeat_delay = setTimeout("T_reverse_play()", T_normal_delay);
      }
   }
}

//##########################################################################
// start forward animation

function T_forward() {
   T_stop();
   T_play_status = 1;
   T_forward_play();
}

//##########################################################################
// start reverse animation

function T_reverse() {
   T_stop();
   T_play_status = 1;
   T_reverse_play();
}

//##########################################################################
// stops animation

function T_stop() {
   if (T_play_status == 1) clearTimeout(T_repeat_delay);
   T_play_status = 0;
}

//##########################################################################
// forward to next image

function T_forward_image() {
   T_stop();
   if (T_current_image == T_last_image) T_current_image = T_first_image;
   else T_current_image++;
   document.T_image.src = T_image[T_current_image].src;
}

//##########################################################################
// reverse to previous image

function T_reverse_image() {
   T_stop();
   if (T_current_image == T_first_image) T_current_image = T_last_image;
   else T_current_image--;
   document.T_image.src = T_image[T_current_image].src;
}

//##########################################################################
// go to a desired image

function T_goto_image(go_to) {
   T_stop();
   if (go_to > T_last_image) {
      alert("Image " + "does not exsist.");
      T_current_image = T_last_image;
   }
   else if (go_to < T_first_image) {
      alert("Image " + "does not exsist.");
      T_current_image = T_first_image;
   }
   else T_current_image = go_to;
   document.T_image.src = T_image[T_current_image].src;
}

//##########################################################################
// change the normal delay

function T_normal_speed(dvdt, delay) {
   if (dvdt == -1) T_normal_delay += delay;
   else if (dvdt == 1) T_normal_delay -= delay;
   if (T_normal_delay > T_delay_max) T_normal_delay = T_delay_max;
   else if (T_normal_delay < T_delay_min) T_normal_delay = T_delay_min;
}

//##########################################################################
// change the dwell delay

function T_dwell_speed(dvdt, delay) {
   if (dvdt == -1) T_dwell_delay += delay;
   else if (dvdt == 1) T_dwell_delay -= delay;
   if (T_dwell_delay > T_delay_max) T_dwell_delay = T_delay_max;
   else if (T_dwell_delay < T_delay_min) T_dwell_delay = T_delay_min;
}

//##########################################################################
// change the play mode

function T_change_mode(chmod) {
   T_play_mode = chmod;
}

//##########################################################################
// button

function button() {
}

//##########################################################################
