// JavaScript Document

function chgImg(id,newImg) {
	document.getElementById(id).src = newImg;
}

function chgSubnav(id,color) {
	document.getElementById(id).style.backgroundColor = color;
}

function chgContent(targetID,newID) {
	document.getElementById(targetID).innerHTML=document.getElementById(newID).innerHTML;
}

function thisYear() {
	thisYear = new Date();
	currYear = thisYear.getFullYear();
	document.write(currYear);
}



var currState;
function showSubnav(targetID) {
	if (currState) {
		document.getElementById(currState).style.visibility = "hidden";
	}
	document.getElementById(targetID).style.visibility = "visible";
	currState = targetID;
}
function hideSubnav() {
	document.getElementById(currState).style.visibility = "hidden";
}

function selectRadio(n){document.forms["PRODProducts"]["Product_Attributes[1]:value"][n].checked=true}

$(document).ready(
  function(){
    var shirts = $("td.productStyle input:radio[name^='Product_Attributes']");
    var shirts_pics = shirts.closest("table").find("img"); 
    var gems = $("td.crystal input:radio[name^='Product_Attributes']");
    var gems_pics = gems.closest("table").find("img");
    shirts_pics.css({"border":"solid 1px white"});
    gems_pics.css({"border":"solid 1px white"});
    if(shirts.filter(":checked").length){doBorders(shirts.filter(":checked"), shirts);}
    if(gems.filter(":checked").length){doBorders(gems.filter(":checked"), gems);}
    shirts.click(function(){doBorders(this,shirts);});
    shirts_pics.click(function(){shirts.eq(shirts_pics.index(this)).trigger('click');});
	gems.click(function(){doBorders(this, gems);});
	gems_pics.click(function(){gems.eq(gems_pics.index(this)).trigger('click');});
	$("select.required").change(function(){$(this).trigger('blur');});
  }
);

function doBorders(e,f){
  var num = f.index(e);
  var tab = f.closest("table").find("img");
  var rads = f.closest("table").find("input:radio");
  tab.css({"border":"solid 1px white"});
  tab.eq(num).css({"border":"solid 2px red"});
}

$(document).ready(function() {
  $("form").validate({
    rules: {

    },
    errorPlacement: function(error, element) {
    },
    highlight: function(element, errorClass) {
      if($(element).attr('type') == 'radio'){
        var el = $(element).closest("table");
      }else{
        var el = $(element);
      }
      el.addClass("error");
    },
    unhighlight: function(element, errorClass) {
      if($(element).attr('type') == 'radio'){
        var el = $(element).closest("table");
      }else{
        var el = $(element);
      }
      el.removeClass("error");
    },
    focusInvalid: false,
    showErrors: function(errorMap, errorList) {
      var inv = this.numberOfInvalids()
  		var msg = "<div id='errors' class='error'>You missed "+inv+ " required field.<br>Required fields are highlighted.</div>";
      $("div#errors").remove();
      if(inv > 0){$("input[name=I32]").closest("table").after(msg);}
	    this.defaultShowErrors();
    }
  });
});
