function dynamicSelect(id1, id2) {
	// Browser and feature tests to see if there is enough W3C DOM support
	var agt = navigator.userAgent.toLowerCase();
	var is_ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
	var is_mac = (agt.indexOf("mac") != -1);
	if (!(is_ie && is_mac) && document.getElementById && document.getElementsByTagName) {
		// Obtain references to both select boxes
		var sel1 = document.getElementById(id1);
		var sel2 = document.getElementById(id2);
		// Clone the dynamic select box
		var clone = sel2.cloneNode(true);
		// Obtain references to all cloned options 
		var clonedOptions = clone.getElementsByTagName("option");
		// Onload init: call a generic function to display the related options in the dynamic select box
		refreshDynamicSelectOptions(sel1, sel2, clonedOptions);
		// Onchange of the main select box: call a generic function to display the related options in the dynamic select box
		sel1.onchange = function() {
			refreshDynamicSelectOptions(sel1, sel2, clonedOptions);
		};
	}
}
function refreshDynamicSelectOptions(sel1, sel2, clonedOptions) {

	// Delete all options of the dynamic select box
	while (sel2.options.length) {
		sel2.remove(0);
	}
	// Create regular expression objects for "select" and the value of the selected option of the main select box as class names
	var pattern1 = /( |^)(select)( |$)/;
	var pattern2 = new RegExp("( |^)(" + sel1.options[sel1.selectedIndex].value + ")( |$)");
	// Iterate through all cloned options
	for (var i = 0; i < clonedOptions.length; i++) {
		// If the classname of a cloned option either equals "select" or equals the value of the selected option of the main select box
		if (clonedOptions[i].className.match(pattern1) || clonedOptions[i].className.match(pattern2)) {
			// Clone the option from the hidden option pool and append it to the dynamic select box
			sel2.appendChild(clonedOptions[i].cloneNode(true));
		}
	}
}

function toggleLayer( whichLayer )
{
  var elem, vis;
  if( document.getElementById ) // this is the way the standards work
    elem = document.getElementById( whichLayer );
  else if( document.all ) // this is the way old msie versions work
      elem = document.all[whichLayer];
  else if( document.layers ) // this is the way nn4 works
    elem = document.layers[whichLayer];
  vis = elem.style;
  // if the style.display value is blank we try to figure it out here
  if(vis.display==''&&elem.offsetWidth!=undefined&&elem.offsetHeight!=undefined)
    vis.display = (elem.offsetWidth!=0&&elem.offsetHeight!=0)?'block':'none';
  vis.display = (vis.display==''||vis.display=='block')?'none':'block';
}

function changeLink_hide(){
document.getElementById('rtanchor').innerHTML="Remove raidtime filters";
document.getElementById('rtanchor').href="javascript:rem_rt();";
}
function add_rt(){toggleLayer('raidtimes'); changeLink_hide(); rt_shown();}
function rem_rt(){toggleLayer('raidtimes'); changeLink_show(); rt_hidden(); pt_reset();}

function changeLink_show()
{
document.getElementById('rtanchor').innerHTML="Add raidtime filters";
document.getElementById('rtanchor').href="javascript:add_rt();";
}

function changeLink_p10hide(){
document.getElementById('p10anchor').innerHTML="Remove progression 10 filters";
document.getElementById('p10anchor').href="javascript:rem_p10()";
}

function add_p10(){toggleLayer('progress10'); changeLink_p10hide(); p10_shown();}
function rem_p10(){toggleLayer('progress10'); changeLink_p10show(); p10_hidden(); raid10_reset();}

function changeLink_p10show()
{
document.getElementById('p10anchor').innerHTML="Add progression 10 filters";
document.getElementById('p10anchor').href="javascript:add_p10()";
}

function changeLink_p25hide(){
document.getElementById('p25anchor').innerHTML="Remove progression 25 filters";
document.getElementById('p25anchor').href="javascript:rem_p25()";
}
function add_p25(){toggleLayer('progress25'); changeLink_p25hide(); p25_shown();}
function rem_p25(){toggleLayer('progress25'); changeLink_p25show(); p25_hidden(); raid25_reset();}

function changeLink_p25show()
{
document.getElementById('p25anchor').innerHTML="Add progression 25 filters";
document.getElementById('p25anchor').href="javascript:add_p25()";
}

function raid25_reset()
{
var plti1_1 = 2;
var plti1_2 = 2;
var plti2_1 = 2;
var plti2_2 = 2;
{
document.getElementById("naxx25_select").selectedIndex = plti1_1;
document.getElementById("naxx25").value = "";
document.getElementById("sanctum25_select").selectedIndex = plti1_1;
document.getElementById("sanctum25").value = "";
document.getElementById("nexuseye25_select").selectedIndex = plti1_1;
document.getElementById("nexuseye25").value = "";
document.getElementById("ul25_flame").selectedIndex = plti1_1;
document.getElementById("uld25_flame").value = "";
document.getElementById("ul25_ignis").selectedIndex = plti1_1;
document.getElementById("uld25_ignis").value = "";
document.getElementById("ul25_razor").selectedIndex = plti1_1;
document.getElementById("uld25_razor").value = "";
document.getElementById("ul25_xt").selectedIndex = plti1_1;
document.getElementById("uld25_xt").value = "";
document.getElementById("ul25_assembly").selectedIndex = plti1_1;
document.getElementById("uld25_assembly").value = "";
document.getElementById("ul25_kolo").selectedIndex = plti1_1;
document.getElementById("uld25_kolo").value = "";
document.getElementById("ul25_auria").selectedIndex = plti1_1;
document.getElementById("uld25_auria").value = "";
document.getElementById("ul25_hodir").selectedIndex = plti1_1;
document.getElementById("uld25_hodir").value = "";
document.getElementById("ul25_thorim").selectedIndex = plti1_1;
document.getElementById("uld25_thorim").value = "";
document.getElementById("ul25_freya").selectedIndex = plti1_1;
document.getElementById("uld25_freya").value = "";
document.getElementById("ul25_mimiron").selectedIndex = plti1_1;
document.getElementById("uld25_mimiron").value = "";
document.getElementById("ul25_general").selectedIndex = plti1_1;
document.getElementById("uld25_general").value = "";
document.getElementById("ul25_yogg").selectedIndex = plti1_1;
document.getElementById("uld25_yogg").value = "";
document.getElementById("ul25_algalon").selectedIndex = plti1_1;
document.getElementById("uld25_algalon").value = "";
document.getElementById("crusader25_select").selectedIndex = plti1_1;
document.getElementById("crusader25").value = "";
document.getElementById("grandcrusader25_select").selectedIndex = plti1_1;
document.getElementById("grandcrusader25").value = "";
}
}

function raid10_reset()
{
var plti1_1 = 2;
var plti1_2 = 2;
var plti2_1 = 2;
var plti2_2 = 2;
{
document.getElementById("naxx10_select").selectedIndex = plti1_1;
document.getElementById("naxx10").value = "";
document.getElementById("sanctum10_select").selectedIndex = plti1_1;
document.getElementById("sanctum10").value = "";
document.getElementById("nexuseye10_select").selectedIndex = plti1_1;
document.getElementById("nexuseye10").value = "";
document.getElementById("ul10_flame").selectedIndex = plti1_1;
document.getElementById("uld10_flame").value = "";
document.getElementById("ul10_ignis").selectedIndex = plti1_1;
document.getElementById("uld10_ignis").value = "";
document.getElementById("ul10_razor").selectedIndex = plti1_1;
document.getElementById("uld10_razor").value = "";
document.getElementById("ul10_xt").selectedIndex = plti1_1;
document.getElementById("uld10_xt").value = "";
document.getElementById("ul10_assembly").selectedIndex = plti1_1;
document.getElementById("uld10_assembly").value = "";
document.getElementById("ul10_kolo").selectedIndex = plti1_1;
document.getElementById("uld10_kolo").value = "";
document.getElementById("ul10_auria").selectedIndex = plti1_1;
document.getElementById("uld10_auria").value = "";
document.getElementById("ul10_hodir").selectedIndex = plti1_1;
document.getElementById("uld10_hodir").value = "";
document.getElementById("ul10_thorim").selectedIndex = plti1_1;
document.getElementById("uld10_thorim").value = "";
document.getElementById("ul10_freya").selectedIndex = plti1_1;
document.getElementById("uld10_freya").value = "";
document.getElementById("ul10_mimiron").selectedIndex = plti1_1;
document.getElementById("uld10_mimiron").value = "";
document.getElementById("ul10_general").selectedIndex = plti1_1;
document.getElementById("uld10_general").value = "";
document.getElementById("ul10_yogg").selectedIndex = plti1_1;
document.getElementById("uld10_yogg").value = "";
document.getElementById("ul10_algalon").selectedIndex = plti1_1;
document.getElementById("uld10_algalon").value = "";
document.getElementById("crusader10_select").selectedIndex = plti1_1;
document.getElementById("crusader10").value = "";
document.getElementById("grandcrusader10_select").selectedIndex = plti1_1;
document.getElementById("grandcrusader10").value = "";
}
}

function pt_reset()
{
var plti1_1 = 2;
var plti1_2 = 2;
var plti2_1 = 2;
var plti2_2 = 2;
{
document.getElementById("play1_1").selectedIndex = plti1_1;
document.getElementById("pt1_1").value = "";
document.getElementById("play1_1op").selectedIndex = plti1_1;
document.getElementById("pt1_1op").value = "";
document.getElementById("play1_2").selectedIndex = plti1_2;
document.getElementById("pt1_2").value = "";
document.getElementById("play1_2op").selectedIndex = plti1_2;
document.getElementById("pt1_2op").value = "";
document.getElementById("play2_1").selectedIndex = plti2_1;
document.getElementById("pt2_1").value = "";
document.getElementById("play2_1op").selectedIndex = plti2_1;
document.getElementById("pt2_1op").value = "";
document.getElementById("play2_2").selectedIndex = plti2_2;
document.getElementById("pt2_2").value = "";
document.getElementById("play2_2op").selectedIndex = plti2_2;
document.getElementById("pt2_2op").value = "";
document.getElementById("play3_1").selectedIndex = plti2_1;
document.getElementById("pt3_1").value = "";
document.getElementById("play3_1op").selectedIndex = plti2_1;
document.getElementById("pt3_1op").value = "";
document.getElementById("play3_2").selectedIndex = plti2_2;
document.getElementById("pt3_2").value = "";
document.getElementById("play3_2op").selectedIndex = plti2_2;
document.getElementById("pt3_2op").value = "";
document.getElementById("play4_1").selectedIndex = plti2_1;
document.getElementById("pt4_1").value = "";
document.getElementById("play4_1op").selectedIndex = plti2_1;
document.getElementById("pt4_1op").value = "";
document.getElementById("play4_2").selectedIndex = plti2_2;
document.getElementById("pt4_2").value = "";
document.getElementById("play4_2op").selectedIndex = plti2_2;
document.getElementById("pt4_2op").value = "";
document.getElementById("play5_1").selectedIndex = plti2_1;
document.getElementById("pt5_1").value = "";
document.getElementById("play5_1op").selectedIndex = plti2_1;
document.getElementById("pt5_1op").value = "";
document.getElementById("play5_2").selectedIndex = plti2_2;
document.getElementById("pt5_2").value = "";
document.getElementById("play5_2op").selectedIndex = plti2_2;
document.getElementById("pt5_2op").value = "";
document.getElementById("play6_1").selectedIndex = plti2_1;
document.getElementById("pt6_1").value = "";
document.getElementById("play6_1op").selectedIndex = plti2_1;
document.getElementById("pt6_1op").value = "";
document.getElementById("play6_2").selectedIndex = plti2_2;
document.getElementById("pt6_2").value = "";
document.getElementById("play6_2op").selectedIndex = plti2_2;
document.getElementById("pt6_2op").value = "";
document.getElementById("play7_1").selectedIndex = plti2_1;
document.getElementById("pt7_1").value = "";
document.getElementById("play7_1op").selectedIndex = plti2_1;
document.getElementById("pt7_1op").value = "";
document.getElementById("play7_2").selectedIndex = plti2_2;
document.getElementById("pt7_2").value = "";
document.getElementById("play7_2op").selectedIndex = plti2_2;
document.getElementById("pt7_2op").value = "";
}
}
