//CALENDAR
function initpopcalendar(formname,fieldname,fieldvalue){
    if (document.forms[formname]){
        var x = $(fieldname)
        x.onclick = function() {
            popCalendar.show(this,x,'mm/dd/yyyy','en',1,null,null,0)
        }
    }
}

//SWAP
function changeshot(img,cap,divid,captionid){
    $(divid).style.background = 'url(/assets/small/' + img + ')';
    $(captionid).innerHTML = cap;   
}

//POP
function open_popup(page,parameters) {
    top.window_handle = open(page,'order',parameters);
    top.window_handle.focus();
    if (!top.window_handle.opener) top.window_handle.opener = self;
}

//REGISTER
function register(formname,validateid,indicatorid,color1,color2){
    if(validateform(formname,color1,color2)){
        document.getElementById(indicatorid).style.display = "block";
        new Ajax.Request('sc_register.ashx', {
		method: "post",
		parameters: Form.serialize(document.forms[formname]),
		onComplete: function(transport) {
		        var r = transport.responseText; 
		        if (!r.indexOf("KeepGoing")){
		          document.getElementById('ctl04_reg_wrapper').style.display = "none";
		          document.getElementById('message').style.display = "block";
		        } else {
		            document.getElementById(indicatorid).style.display = "none";
		            document.getElementById(validateid).innerHTML = r;
                    
                    if (document.getElementById(validateid).style.display == "none"){
		                document.getElementById(validateid).style.display = "block";
		            } else {
		                Effect.Shake(validateid);
		            }
		        }
			}
		}
		);
		
    }
}

//VALIDATION
function createaccount(formname,validateid,indicatorid,color1,color2) {
	//VALIDATE REQUIRED
	if(validateform(formname,color1,color2)){	 

	    document.forms[formname].__VIEWSTATE.name = 'NOVIEWSTATE';
	    document.forms[formname].__VIEWSTATE.id= 'NOVIEWSTATE';

		new Ajax.Request('sc_createnewaccount.ashx', {
		method: "post",
		parameters: Form.serialize(document.forms[formname]),
		onComplete: function(transport) {
		        var r = transport.responseText; 
		        if (!r.indexOf("KeepGoing")){
		            document.forms[formname].NOVIEWSTATE.name = '__VIEWSTATE';
		            document.forms[formname].NOVIEWSTATE.id = '__VIEWSTATE';
		            document.forms[formname].submit();
		        } else {
		            document.getElementById(indicatorid).style.display = "none";
		            document.getElementById(validateid).innerHTML = r;
                    formfieldbg(r,"Zip","billing_zip",color1,color2);
                    formfieldbg(r,"Email","billing_email",color1,color2);
                    formfieldbg(r,"Username","newuser",color1,color2);
                    formfieldbg(r,"Passwords","newpassword",color1,color2);
                    formfieldbg(r,"Passwords","newpassword2",color1,color2);	           
		            if (document.getElementById(validateid).style.display == "none"){
		                document.getElementById(validateid).style.display = "block";
		            } else {
		                Effect.Shake(validateid);
		            }
		        }
			}
		}
		);
	} else {
	    document.getElementById(validateid).innerHTML = 'Please fill in Required Fields.';
	    if (document.getElementById(validateid).style.display == "none"){
			Effect.Appear(validateid,'blind');
		} else {
			Effect.Shake(validateid);
		}
	}
}

function toggleimg(id){
    if (document.getElementById(id).style.display == "none"){
        document.getElementById('nav1').src = '/images/nav/on/6.gif';
        document.getElementById('nav1').name = '';
    }
    else {
        document.getElementById('nav1').src = '/images/nav/off/6.gif';
        document.getElementById('nav1').name = 'rollover';
    }
}

function formfieldbg(search1,search2,elementid,color1,color2){
     if (search1.indexOf(search2)>-1){
        document.getElementById(elementid).style.background = color1;
     } else {
        document.getElementById(elementid).style.background = color2;
     }        
}

function ShowSwap(_image,_div){
    var x = document.getElementById(_div);
    x.src = _image
}

function showmenu(themenu){
	if (document.getElementById(themenu).style.display == "none"){
		document.getElementById(themenu).style.display = "block"
	} else {
		document.getElementById(themenu).style.display = "none"
	}
}

function loaddiv(divid,ajaxpage,tab,handle){
	//TABS
	var x=document.getElementsByTagName("img");
	for (var i=0;i<x.length;i++){
		if (x[i].id.indexOf(handle)>-1){
			var element = document.getElementById(x[i].id);
			if (element.id == tab){
				element.src = element.src.replace('/off/','/on/')
			} else {
				element.onmouseover = tabover;
				element.onclick = tabclick; 
				element.onmouseout = tabout; 
				element.src = element.src.replace('/on/','/off/')
			}
		}
	}
	
	//AJAX REQUEST
	new Ajax.Request(ajaxpage, {
	method: "get",
	onComplete: function(transport) { 
		document.getElementById(divid).innerHTML = transport.responseText;
		}//-onSuccess
		}//-request arguments
		);// new ajax request	
}

function nav(id) {
    var x=document.getElementsByTagName("div");
    for (var i=0;i<x.length;i++){
		if (x[i].id.indexOf(id)>-1){
		    var element = document.getElementById(x[i].id);
		    var theid = element.id.replace(id,'');
		    //var theid = element.id.replace('_drop','');
		    //var theid = theid + "_drop";
		    //alert(theid);
            var dropdiv = document.getElementById(id + theid);
            dropdiv.onmouseover = function() {
                var navtoswitch = this.id;
                document.getElementById(navtoswitch).style.backgroundColor = "#c7e09f";
            }
            dropdiv.onmouseout = function() {
                //alert('hi1');
                var navtoswitch = this.id;
                document.getElementById(navtoswitch).style.backgroundColor = "#e2e1e1";
            }
        }
    }
    
}

//TYPE OF PROBLEM
function problem(level,parentid){
    level += 1;
    var x=document.getElementsByTagName("div");
    var ii = 0
    var handle  = 'problem-name-' + level + '-' + parentid + '-'
	for (var i=0;i<x.length;i++){
	    if (x[i].id.indexOf(handle)>-1){
	        var element = document.getElementById(x[i].id);
			var theid = element.id.replace(handle,'');
			if (document.getElementById(handle + theid).style.display == 'block'){
			   	document.getElementById(handle + theid).style.display = 'none';
			} else {
			    document.getElementById(handle + theid).style.display = 'block';
			}	
	    }
	}
}

function spidermenus(triggerhandle,menuhandle){
	var x=document.getElementsByTagName("div");
	for (var i=0;i<x.length;i++){
		if (x[i].id.indexOf(triggerhandle)>-1){
			//VARIABLES
			var element = $(x[i].id);
			var theid = element.id.replace(triggerhandle,'');
			var thetrigger = $(triggerhandle + theid);

			//OVER
			thetrigger.onmouseover = function() {
				$(this.id.replace('trigger','')).style.display = "block";
				//$('nav' + this.id.replace('menutrigger','')).src = $('nav' + navimg).src.replace('/off/','/roll/');
			};
			    
			//OUT
			thetrigger.onmouseout = function() {
				$(this.id.replace('trigger','')).style.display = "none";
				//$('nav' + this.id.replace('menutrigger','')).src = $('nav' + navimg).src.replace('/roll/','/off/');
			};
		} 
	}
}

//RELOAD TESTS
function loadtests(formname){
    loadcount +=1;
    
    $('indicator').style.display = 'block';
    new Ajax.Request('/ajax/list.aspx', {
	method: "post",
	parameters: Form.serialize(document.forms[formname]),
    onSuccess: function(transport) {
        $('indicator').style.display = 'none';
	    document.getElementById("sortcenter").innerHTML = transport.responseText
			}//-onSuccess
	    }//-request arguments
    );// new ajax request
}

//VALIDATION
function validEmail(email) {
			var re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
			return re.test(email); 
		}
		
//VALIDATION
function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}
		
//VALIDATION
function ltrim(stringToTrim) {
	return stringToTrim.replace(/^\s+/,"");
}
		
//VALIDATION
function rtrim(stringToTrim) {
	return stringToTrim.replace(/\s+$/,"");
}
		
//VALIDATION
function isFilled(elm) {
	//alert(elm.type);
	//Last Updated by Sol - 6/14/07
	switch(elm.type){
	case "text":
		if (trim(elm.value) == "" || elm.value == null){
		return false;}
		else {return true;}
		break;
	case "password":
		if (trim(elm.value) == "" || elm.value == null){
		return false;}
		else {return true;}
		break;
	case "textarea":
		if (trim(elm.value) == "" || elm.value == null){
		return false;}
		else {return true;}
		break;
	case "select-one":
		var myindex=elm.selectedIndex;
		if (myindex==0){
		return false;}
		else {return true;}
		break;
	}
}

//VALIDATION
function validateform(formname,color1,color2){
	//last updated on 9/27/07
	//index of is mo betta
	var x = document.forms[formname];
	var allgood = true;
	for (var i=0;i<x.length;i++){
		if (x.elements[i].className.indexOf('required')>-1) {
		 	var thisformname = x.elements[i].name;
			var thisformid = x.elements[i].id;
			if (!isFilled(x.elements[i])) {
				document.getElementById(thisformid).style.background = color1;
				allgood = false;
				} else {
				  document.getElementById(thisformid).style.background = color2; 
				}
			}
		}
		if (allgood) {
			return true;
			} else {
			return false;
			}
	}

function spiderform(formname,validateid,successid,indicatorid,ajaxpage) {
	//VALIDATE REQUIRED
	if(validateform(formname,'#a7c5f8','#e8e0cd')){
	
		//EMAIL IS VALID?
		var email = document.getElementById("email").value;
		if(!validEmail(email)){
			//document.getElementById("email").style.background = "white"; 
			document.getElementById(validateid).innerHTML = 'Invalid Email';
			if (document.getElementById(validateid).style.display == "none"){
					Effect.Appear(validateid,'blind');
					} else {
					Effect.Shake(validateid);
					}
			} else {
			document.getElementById(validateid).style.display = "none";
			document.getElementById(indicatorid).style.display = "block";
			//alert('got here')
			//AJAX POST
			new Ajax.Request(ajaxpage, {
			method: "post",
			parameters: Form.serialize(document.forms[formname]),
			onComplete: function(transport) {		
			document.getElementById(successid).innerHTML = transport.responseText;
			document.getElementById(indicatorid).style.display = "none";
				//alert(transport.responseText);			
				
				}//-onSuccess
			}//-request arguments
			);// new ajax request	
			
			//document.form.formname.submit();	
			}
	}
}

function spiderfriend(formname,validateid,successid,indicatorid,ajaxpage) {
	//VALIDATE REQUIRED
	if(validateform(formname,'#f9f7cb','#f9f7cb')){	
	
		//EMAIL IS VALID?
		var friendemailfrom = document.getElementById("friendemailfrom").value;
		var friendemailto = document.getElementById("friendemailto").value;
		if(!validEmail(friendemailfrom)){
			//document.getElementById("email").style.background = "white"; 
			document.getElementById(validateid).innerHTML = 'Invalid Email';
			if (document.getElementById(validateid).style.display == "none"){
					Effect.Appear(validateid,'blind');
					} else {
					Effect.Shake(validateid);
					}
			} else {
			document.getElementById(validateid).style.display = "none";
			document.getElementById(indicatorid).style.display = "block";
			//alert('got here')
			//AJAX POST
			new Ajax.Request(ajaxpage, {
			method: "post",
			parameters: Form.serialize(document.forms[formname]),
			onComplete: function(transport) {		
			document.getElementById(successid).innerHTML = transport.responseText;
			document.getElementById(indicatorid).style.display = "none";
				//alert(transport.responseText);			
				
				}//-onSuccess
			}//-request arguments
			);// new ajax request	
			
			//document.form.formname.submit();	
			}
	}
}

function ordersupplies(formname,validateid,ajaxpage){
	//VALIDATE REQUIRED
	if(validateform(formname)){				
	
		//EMAIL IS VALID?
		var email = document.getElementById("email").value;
		if(!validEmail(email)){
			document.getElementById("email").style.background = "yellow"; 
			document.getElementById(validateid).innerHTML = 'Invalid Email';
			if (document.getElementById(validateid).style.display == "none"){
					Effect.Appear(validateid,'blind');
					} else {
					Effect.Shake(validateid);
					}
			} else {	
			//AJAX POST
			new Ajax.Request(ajaxpage, {
			method: "post",
			parameters: Form.serialize(document.forms[formname]),
			onComplete: function(transport) { 
			document.getElementById('submitform').innerHTML = '';
			document.getElementById(validateid).innerHTML = transport.responseText;	
			Effect.Appear(validateid,'blind');
			
			}//-onSuccess
			}//-request arguments
			);// new ajax request	
			}
	}
}

//IMAGE ROLLOVER
function rolloverInit() {
    var x = document.getElementsByTagName("img");
    for (var i = 0; i < x.length; i++) {
        if (x[i].className.indexOf('rollover') > -1) {
            x[i].onmouseover = function() {
                this.src = this.src.replace('/off/', '/roll/')
            }
            x[i].onmouseout = function() {
                this.src = this.src.replace('/roll/', '/off/')
            }
        }
    }
}

//IMAGE ROLLOVER
//Last Update August 1, 2008
function setupRollover(thisImage) {
	thisImage.outImage = new Image();
	thisImage.outImage.src = thisImage.src;
	//alert(thisImage.id);
	thisImage.outImage.id = thisImage.id;
	thisImage.onmouseout = rollOut;
	thisImage.overImage = new Image();
	thisImage.overImage.id = thisImage.id
	thisImage.overImage.src = thisImage.src.replace('/off/','/roll/')
	thisImage.onmouseover = rollOver;
}

//IMAGE ROLLOVER
function rollOver() {
	this.src = this.overImage.src;
}

//IMAGE ROLLOVER
function rollOut() {
	this.src = this.outImage.src;
}

function arrowtoggle(id){
    var arrow = document.getElementById(id);
    if(arrow.getAttribute('src').indexOf('off') >-1){
        document.getElementById(id).src = "/images/onarrow.gif";
    } else {
        document.getElementById(id).src = "/images/offarrow.gif";
    }
}

function dropstyle(){
    var x=document.getElementsByTagName("div");
    for (var i=0;i<x.length;i++){
	    if (x[i].id.indexOf('drop')>-1){
	        x[i].onmouseover = function() {
	            this.style.backgroundImage = 'url(/images/dropitembg.gif)';
	            this.style.color = '#fdc39b';
	        }
	        x[i].onmouseout = function() {
	            this.style.backgroundImage = '';
	            this.style.color = '#fff';
	        }
	    }
	}
}

function bulletstyle(){
    var x=document.getElementsByTagName("div");
    for (var i=0;i<x.length;i++){
	    if (x[i].id.indexOf('labbullet')>-1){
	        x[i].onmouseover = function() {
	            this.style.backgroundImage = 'url(/images/bullet3bg.gif)';
	            this.style.backgroundPosition = '0 0';
	        }
	        x[i].onmouseout = function() {
	            this.style.backgroundImage = 'url(/images/bullet3.gif)';
	            this.style.backgroundPosition = '12px 4px';
	        }
	    }
	}
}

function testrow(){
    var x=document.getElementsByTagName("div");
    for (var i=0;i<x.length;i++){
        if (x[i].className.indexOf('testrow')>-1){
            x[i].onmouseover = function() {
                this.style.backgroundImage = 'url(/images/testhoverbg.gif)';
            }
            x[i].onmouseout = function() {
                this.style.backgroundImage = 'none';
            }
        }
    }
}


//SLIDE

function SlidesShow(){
    //PROPERTIES
    this.slideTotal = 0;
    this.slideContainer = ''; //ID NAME
    this.slideWrapper = '';//ID NAME
    this.nextButton = ''; //ID OF HREF(SO THAT ELEMENT CAN BE TEXT OR IMAGE)
    this.prevButton = '';
    this.slideIncrement = 5; //SLIDE INCREMENTS
    this.slideWidth = 350; // WIDTH OF EACH DIV OR IMAGE
    this.next = nextSlide;
    this.previous = prevSlide;
    this.nextUrl = '';
    this.prevUrl = '';
    
  
    //VARIABLES
    var loopI = 0; //KEEPS TRACK OF EACH slideIncrement FROM 0 TO slideWidth, 50, 100, 150, 200
    var goNext = null;
    var goBack = null;
    var me = this;
    
    function setProperties(){
          me.prevUrl = document.getElementById(me.prevButton).style.href;
          me.nextUrl = document.getElementById(me.nextButton).style.href;
    }
    
    //METHODS
    function nextSlide(){  
	    document.getElementById(me.prevButton).style.display = "block";
	    goNext = setInterval(nextSlideDetail,1);
    }
    
    function prevSlide(){
	    goBack = setInterval(prevSlideDetail,1);
    }
    
    function nextSlideDetail(slideEnd,nextUrl){
        
        document.getElementById(me.nextButton).removeAttribute("href");  
	    var slideStart = parseFloat(document.getElementById(me.slideContainer).style.left);
	    slideEnd = slideStart - me.slideWidth;
	    var endFrame = 0 - ((me.slideTotal-1) * me.slideWidth);
	     
	    var addIncrement;
	    if ((loopI + me.slideIncrement) > me.slideWidth){

	         addIncrement = me.slideWidth -loopI;
	    } else {
	        addIncrement = me.slideIncrement;
	    }

	    loopI += me.slideIncrement;
	    if(slideEnd <= endFrame){
		     document.getElementById(me.nextButton).style.display = "none";
	    }
	    
	    document.getElementById(me.slideContainer).style.left = slideStart - addIncrement + 'px';
	    if(loopI>=me.slideWidth){
	        document.getElementById(me.nextButton).setAttribute('href',me.nextUrl);
		    clearInterval(goNext);
		    loopI = 0;
	    }
    }
    
    function prevSlideDetail(){
        document.getElementById(me.prevButton).removeAttribute("href");
	    var slideStart = parseFloat(document.getElementById(me.slideContainer).style.left);
	    slideEnd = slideStart + me.slideWidth;    
	        
	    var addIncrement;
	    if ((loopI + me.slideIncrement) > me.slideWidth){
	         addIncrement = me.slideWidth -loopI;
	    } else {
	        addIncrement = me.slideIncrement;
	    }
	    loopI += me.slideIncrement;
 
	    document.getElementById(me.slideContainer).style.left = slideStart + addIncrement + 'px';
	    if(loopI>=me.slideWidth){
	        document.getElementById(me.prevButton).setAttribute('href', me.prevUrl);
		    clearInterval(goBack);
		    loopI = 0;
		    if(slideStart == -addIncrement){
		       document.getElementById(me.prevButton).style.display = "none";
		        document.getElementById(me.nextButton).style.display = "block";
		    } else {
                document.getElementById(me.nextButton).style.display = "block";
		    }
	    }
    }
}

function loadcart(){
    if ($("minicart_wrapper")){
        var Digital=new Date();
        var seconds=Digital.getSeconds();
        var hours=Digital.getHours();
        var minutes=Digital.getMinutes();
        
        //AJAX REQUEST
	    new Ajax.Request('/ajax/minicart.aspx?refresh=' + seconds + hours + minutes, {
	    method: "get",
	    onComplete: function(transport) { 
		    document.getElementById("minicart_wrapper").innerHTML = transport.responseText;
		    }//-onSuccess
		    }//-request arguments
		    );// new ajax request	
    }
}

window.onload = masterloader;

function masterloader(){
    bulletstyle();
    dropstyle();
	rolloverInit();
	spidermenus('menutrigger','menu');
	nav('sc_header_');
	//contact();
	testrow();
	//nav('drop');
	loadcart();
}