<!--

var yearStart = 1978;
var monthStart = 11;

var year = yearEnd;
var month = monthEnd;


var img_ext = ".png";

var root_dir = "../data/msu/";
var data_dir = "../data/msu/data/binary/";
var graphics_folder = "graphics/";


var region_key = "global";
var image_size = "medium";

var anomaly = 0;
var climate = 0;

var num_channels = 4
var first_channel_num = 1
var last_channel_num = 4
var channel_num = 1

var view_msu_only = 0

url_params = window.location.search.substring(1);
params = url_params.split("&");

for (i=0; i<params.length; ++i) {
	param = params[i];
	param = param.split("=");
	name = param[0];
	val = param[1];

	switch (name) {
		case "year": year = val - 0; break;
		case "month": month = val - 0; break;
		case "channel": 
			switch (val) {
			case "tlt": channel_num = 1; break;
			case "tmt": channel_num = 2; break;
			case "tts": channel_num = 3; break;
			case "tls": channel_num = 4; break;
			default: channel_num = val - 1; break;
			}
		break;
	}
}


var form


msu_amsu_channels = new createArray(num_channels)
msu_amsu_channels[1] = new channel("tlt", "TLT (1)")
msu_amsu_channels[2] = new channel("tmt", "TMT (2)")
msu_amsu_channels[3] = new channel("tts", "TTS (3)")
msu_amsu_channels[4] = new channel("tls", "TLS (4)")

msu_channels = new createArray(num_channels)
msu_channels[1] = new channel("ch1", "1")
msu_channels[2] = new channel("ch2", "2")
msu_channels[3] = new channel("ch3", "3")
msu_channels[4] = new channel("ch4", "4")


channels = msu_amsu_channels
if (view_msu_only) { channels = msu_channels }


var channel_key = channels[channel_num].key

set_image_folder();



function createArray(n) {
	this.length = n;
	return this;
}


function channel(key, title) {
	this.key = key
	this.title = title
}


function msg(p) { alert(p) }


function init() {
	form = document.forms["select_date"];
}


function key_pressed() {

//	msg(window.event.keyCode);

	switch (window.event.keyCode) {

	case 52:
	case 44:
	case 60:
		step_month(-1); break;

	case 54:
	case 46:
	case 62:
		step_month(1); break;

	case 49:
	case 55:
	case 109:
	case 77:
		step_year(-1); break;

	case 57:
	case 51:
	case 47:
	case 63:
		step_year(1); break;

	case 97:
	case 65:
	case 53:
		toggle_anomaly(); break;

	case 56:
	case 61:
	case 43:
		step_channel(1); break;

	case 50:
	case 45:
	case 95:
		step_channel(-1); break;

	case 99:
	case 67:
		toggle_climate(); break;

	case 118:
	case 86:
		toggle_view_msu_only(); break;
	}
}


function toggle_view_msu_only() { set_view_msu_only((view_msu_only + 1) % 2); }

function set_view_msu_only(p) {
	if (view_msu_only == p) return;
	view_msu_only = p;
	switch (view_msu_only) {
	case 1: str = "on"; break;
	case 0: str = "off"; break;
	}
	document.images["msu_only"].src = "../images/btns/bg/ice/msu_only_" + str + ".gif";

	if (view_msu_only) { channels = msu_channels }
	else { channels = msu_amsu_channels }
	
	set_channel(channel_num)
}



function get_version_key() {
	return("v03_3");
}



function year_options() {
	opts = "<option value=" + year + ">Year&nbsp;&nbsp;"
	for (var i=yearStart; i<=yearEnd; ++i) {
		opts += "<option value=" + i;
		if (i == year) opts += " selected";
		opts += ">" + i;
	}
	opts += "<option value='climate'>Clim."
	return opts
}


function set_year() {
	si = form.year.selectedIndex;
	if (si == 0) { sync_year(); return; }
	sv = form.year.options[si].value
	if (sv == 'climate') { set_climate(1); return; }
	set_climate(0);
	year = parseInt(sv);
	sync_buttons();
	display_image();
}


function sync_year() {
	if (climate) { si = yearEnd - yearStart + 2; }
	else { si = year - yearStart + 1; }
	form.year.options[si].selected = true;
}

function sync_year_buttons() {

	str = "on";
	
	switch(year) {
	case (yearStart): str = "off"; break;
	case (yearStart + 1): if (month < monthStart) { str = "off"; } break;
	}
	
	if (climate) { str = "off"; }
	
	document.images["prev_year"].src = "../img/btns/prev_" + str + ".gif";

	str = "on";
	switch(year) {
	case (yearEnd): str = "off"; break;
	case (yearEnd - 1): if (month > monthEnd) { str = "off"; } break;
	}
	if (climate) { str = "off"; }
	document.images["next_year"].src = "../img/btns/next_" + str + ".gif";
}


function sync_all() {
	sync_month(); sync_year(); sync_buttons();
}

function sync_buttons() {
	sync_year_buttons()
	sync_month_buttons()
}


function month_options() {
	opts = "<option>Month"
	for (var i=1; i<=12; ++i) {
		opts += "<option"
		if (i == month) opts += " selected"
		opts += ">"
		opts += month_names[i].substring(0, 3);
	}
	return opts
}


function set_month() {
	si = form.month.selectedIndex;
	if (si == 0) { sync_month(); return; }

	month = si;
	sync_buttons();
	display_image();
}

function sync_month() {
	form.month.options[month].selected = true;
}

function sync_month_buttons() {

	str = "on";
	if (year == yearStart && month == monthStart) { str = "off"; }
	if (climate) { str = "on"; }
	document.images["prev_month"].src = "../img/btns/prev_" + str + ".gif";

	str = "on";
	if (year == yearEnd && month == monthEnd) { str = "off"; }
	if (climate) { str = "on"; }
	document.images["next_month"].src = "../img/btns/next_" + str + ".gif";
}



function channel_options() {
	opts = ""

	for (var i=first_channel_num; i<=last_channel_num; i++) {
		opts += "<option value=" + channels[i].key;
		if (i == channel_num) opts += " selected";
		opts += ">Channel: " + channels[i].title;
	}
	return opts
}



function channel_selected() {
	set_channel(first_channel_num + form.channel.selectedIndex);
}


function sync_channel() {
	form.channel.options[channel_num - first_channel_num].selected = true;
}


function set_channel(p) {
	channel_num = p;
	channel_key = channels[channel_num].key;
	
	set_image_folder();
	display_image();
}


function step_channel(p) {
	new_channel = channel_num + p;

	switch (p) {
	case 0: new_channel = channel_num + 1;
 	if (new_channel > last_channel_num) new_channel = first_channel_num;
	break;

	case 1:  if (new_channel > last_channel_num) return;
	case -1: if (new_channel < first_channel_num) return;
	}

	set_channel(new_channel);
	sync_channel();
}

function toggle_anomaly() { set_anomaly((anomaly + 1) % 2); }

function set_anomaly(p) {
	if (anomaly == p) return;
	anomaly = p;
	switch (anomaly) {
	case 1: set_climate(0); str = "on"; break;
	case 0: str = "off"; break;
	}
	document.images["anomaly"].src = "../images/btns/bg/ice/anomaly_" + str + ".gif";

	display_image();
}


function toggle_climate() { set_climate((climate + 1) % 2); }

function set_climate(p) {
	if (climate == p) return;
	climate = p;
	switch (p) {
	case 1: set_anomaly(0); str = "on"; break;
	case 0: str = "off"; break;
	}
	document.images["climate"].src = "../images/btns/bg/ice/climatology_" + str + ".gif";
	sync_year(); sync_buttons();
	display_image();
}



function set_image_folder() {
	image_folder = root_dir + graphics_folder + channel_key + "/" + image_size + "/" + region_key + "/";
}



function download_binary_data() {

	fyl = data_dir;

	if (view_msu_only) { fyl += "msu_channel_" + channels[channel_num].title }
	else {fyl += "channel_" + channel_key }

	fyl +=  "_Tb_";
	if (anomaly) { fyl += "anom_"; }
	fyl += get_version_key() + ".dat";

	fyl = "ftp://ftp.remss.com/msu/data/"
	window.location = fyl;
}


function pad(p) {
	if (p < 10) { return("0" + p); }
	return("" + p);
}


function get_image_path() {

	yyyy = "" + year; mm = pad(month);
	if (climate) { yyyy = "clim"; }

	if (view_msu_only) { img_name = "msu_"; }
	else { img_name = "ch_"; }

	img_name += channel_key + "_"

	switch (time_frame) {
	case "month":
		img_name += yyyy + "_" + mm + "_";
		if (anomaly) { img_name += "anom_"; }
		img_name += get_version_key();
		break;
	}
//	alert(image_folder + img_name + img_ext)
	return image_folder + img_name + img_ext;
}


function display_image() {
	document.images['temp'].src = get_image_path();
}



function previous_month() { step_month(-1); }
function next_month() { step_month(1); }

function step_month(d) {

	month = month + d;

	if (month == 0) { month = 12; if (! climate) year--; }
	if (month == 13) { month = 1; if (! climate) year++; }

	out_of_range = month_out_of_range();

	if ( out_of_range > 0 ) { set_last_month(); }
	if ( out_of_range < 0 ) { set_first_month(); }

	sync_all();
	display_image();
}


function month_out_of_range() {
	if (climate) return(0);
	
	if (year < yearStart) return(-1);
	if (year > yearEnd) return(1);
	
	if ((year == yearStart) && (month < monthStart)) return(-1);
	if ((year == yearEnd) && (month > monthEnd)) return(1);
	
	return(0);
}


function previous_year() { step_year(-1); }
function next_year() { step_year(1); }

function step_year(d) {
	set_climate(0);
	
	new_year = year + d;
	
	switch(new_year) {
	case (yearStart - 1): return;
	case (yearStart): if (month < monthStart) { return; } break;
	case (yearEnd): if (month > monthEnd) { return; } break;
	case (yearEnd + 1): return;
	}

	year = new_year;

	sync_all();
	display_image();
}



function set_first_month() { year = yearStart; month = monthStart; }

function set_last_month() { year = yearEnd; month = monthEnd; }


function open_tips() {
	spawn_window("msu_tips.html", "help");
}



function small_img(p) {

	tag = "<img src='" + get_image_path() + "' name="

	if (p == "t") tag += "'temp'"
 
	tag += " border=0"
	
	tag += ">"
	
	return tag
}


function img_table(p_time) {

str = "<table border='4' align='center' cellpadding='6'>"

str += "<tr>"

str += "<td align='center'>"

str += small_img("t")

str += "</td>"

str += "</tr>"

str += "</table>"

return(str)

}



// -->

