﻿
sfHover = function() {    
	var sfEls = document.getElementById("menu").getElementsByTagName("li");    
	for (var i=0; i<sfEls.length; i++) {        
		sfEls[i].onmouseover=function() {            
		this.className+=" sfhover";        }        
		sfEls[i].onmouseout=function() {            
		this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		        }
		    }
		}
	if (window.attachEvent) window.attachEvent("onload", sfHover);
	
	
function imghover(imgid,hoversrc){
	//alert(document.images[1].src);
	var obj = document.getElementById(imgid);
	if (obj){
	obj.src = "images/" + hoversrc;
	}
}

function setnewsheights() {
    var divArray = new Array();
    var leftHeight = document.getElementById('news_left').offsetHeight;
    var middleHeight = document.getElementById('news_middle').offsetHeight;
    var rightHeight = document.getElementById('news_right').offsetHeight;

    divArray.push(leftHeight);
    divArray.push(middleHeight);
    divArray.push(rightHeight);

    var divHeight = (Math.max.apply(0, divArray) + 'px');

    document.getElementById('news_middle').style.height = divHeight;
    document.getElementById('news_right').style.height = divHeight;
    document.getElementById('news_left').style.height = divHeight;

}

function setLogos(product_type){
	if (product_type=='connectors'){
		var img = document.getElementById('imgacp');
		grayscale(img);
		var img = document.getElementById('imgdeecon');
		grayscale(img);

	}
}

function grayscale(img){
	var imgObj = img;
	imgObj.className = 'greyscale';
}

function checkTextLength(uid) {
    /*Function to test and warn of exceeded text lengths before they are submitted to the database.
    Note: The heading field does not strictly need to be tested as this data is a single line textbox
    and therefore is constrained by parameter, but is included for conformity*/
    if (uid) {
    var m = uid.id.substring(44);
    var txtheading = document.getElementById('ContentPlaceHolder1_lvNewsEdit_txtHeading_' + m);
    var txtsummary = document.getElementById('ContentPlaceHolder1_lvNewsEdit_txtNewsSummary_' + m);
    var txtbody = document.getElementById('ContentPlaceHolder1_lvNewsEdit_txtNewsCopy_' + m);
    }
    else {
    var txtheading = document.getElementById('ContentPlaceHolder1_lvNewsEdit_txtHeading');
    var txtsummary = document.getElementById('ContentPlaceHolder1_lvNewsEdit_txtNewsSummary');
    var txtbody = document.getElementById('ContentPlaceHolder1_lvNewsEdit_txtNewsCopy');
    }
    var boolExceeded = new Boolean();
    var message = "\nCMS Message\n" +
    "________________" +
    "\n\n"
    /*Test for length exceeded on the text fields*/
    if (txtheading) {
        if (txtheading.value.length > 100) {
            var strHeadingExceeded = "The Heading text exceeds 100 characters and will be truncated.\n";
            boolExceeded = true;
        }
    }
    
    if (txtsummary) {
        if (txtsummary.value.length > 350) {
            var strSummaryExceeded = "The Summary text exceeds 350 characters and will be truncated.\n";
            boolExceeded = true;
        }
    }
    
    if (txtbody) {
        if (txtbody.value.length > 2000) {
            var strBodyExceeded = "The Body text exceeds 2000 characters and will be truncated.\n";
            boolExceeded = true;
        }
    }
    /*Build the message string*/
    if (strHeadingExceeded) {
        message = message + strHeadingExceeded;
    }
    if (strSummaryExceeded) {
        message = message + strSummaryExceeded;
    }
    if (strBodyExceeded) {
        message = message + strBodyExceeded;
    }
    message = message + "\nContinue?\n\nClick OK to proceed or Cancel to go back";
    if (boolExceeded == true){
        return confirm(message);
    }
    else{
        return;
    }
    
}

function checkTextAreaMaxLength(textBox, e, length) {

    var mLen = textBox["MaxLength"];
    if (null == mLen)
        mLen = length;

    var maxLength = parseInt(mLen);
    if (!checkSpecialKeys(e)) {
        if (textBox.value.length > maxLength - 1) {
            /*if (window.event)//IE
                e.returnValue = false;
            else//Firefox*/
                e.preventDefault();
        }
    }
}

function checkSpecialKeys(e) {
    if (e.keyCode != 8 && e.keyCode != 46 && e.keyCode != 37 && e.keyCode != 38 && e.keyCode != 39 && e.keyCode != 40)
        return false;
    else
        return true;
}

function watermark(txt, evt) {
    var defaultText = "0.00";
    if (txt.value.length == 0 && evt.type == "blur") {
        txt.style.color = "gray";
        txt.value = defaultText;
    }
    if (txt.value == defaultText && evt.type == "focus") {
        txt.style.color = "black";
        txt.value = "";
    }
}

function test() {
    alert('Test');
}

function showmodalpopup() {
    var btn = document.getElementById('ContentPlaceHolder1_ModalWait1_btnHiddenShow');
    if (btn) {
        btn.click();
    }
}

function mast_normal(){	
	var divtree = document.getElementById('imgTree');
	if (divtree ){
	divtree.src = "images/masthead_bg_tree_normal.jpg"; 
	}
}

function preloadarray(){
	// counter     
	var i = 0;     
	// create object     
	imageObj = new Image(300,500);     
	// set image list     
	images = new Array();     
	images[1]="images/search_bar_click.png";   
	images[2]="images/Emech_bg_hover.jpg";    
	images[3]="images/hmi_bg_hover.jpg";  
	images[4]="images/ksd_bg_hover.jpg";   
	// start preloading     
	for(i=0; i<=3; i++)      
	{          
	imageObj.src=images[i];     
	} 
}

function preloadecd(){
if (document.images) {
    img1 = new Image();
    img1.src = "../images/search_bar_click.png";
	}
}

function preload(){
if (document.images) {
    img1 = new Image();
    img1.src = "images/search_bar_click.png";
	}
}

function preloadslides(){
if (document.images) {
    img1 = new Image();
    img1.src = "images/ecd_home.jpg";
    img2 = new Image();
    img2.src = "images/ksd_default.jpg";
    img3 = new Image();
    img3.src = "images/hmi_default.jpg";
	}
}


function preloadhome(){
if (document.images) {
    img1 = new Image();
    img1.src = "images/search_bar_click.png";
    img2 = new Image();
    img2.src = "images/HMI_bg_hover.jpg";
    img3 = new Image();
    img3.src = "images/Emech_bg_hover.jpg";
	img4 = new Image();
    img4.src = "images/KSD_bg_hover.jpg";
	}
}

function preloadaspx() {
    if (document.images) {
        img1 = new Image();
        img1.src = "../images/search_bar_click.png";
    }
}

function changebgimage(id,img){
	var obj = document.getElementById(id);
	if (obj){
		obj.style.backgroundImage='';
		obj.style.backgroundImage="url("+img+")";
		}}
		
function changevisibility(id){
	var obj = document.getElementById(id);
	if (obj){
		obj.style.visibility = 'hidden';
		}
	}


function changepanelimage(id,img){
	var obj = id;
	if (obj){
		obj.style.backgroundImage='';
		obj.style.backgroundImage= img 
		}
}

function rowselected(row) {
    row.className = 'rowselected';
    row.style.cursor = 'Hand';
}

function rowdeselected(row, cssclass) {
    row.className = cssclass;
}

function rowclick(row, listviewid, pane) {
    var m = row.rowIndex - 1;
    if (pane) {
        var btn = document.getElementById('ctl00_MainContent_ctl' + pane + '_' + listviewid + '_ctrl' + m + '_imgbtnEdit');
        if (btn)
            btn.click();
    }
    else {
        var btn = document.getElementById('ContentPlaceHolder1_' + listviewid + '_imgbtnEdit_' + m);
        if (btn)
            btn.click();
    }
}


var timerlen = 5;
var slideAniLen;
var elapsed;
var imgheight = new Array();
var timerID = new Array();
var startTime = new Array();
var obj = new Array();
var endHeight = new Array();
var movingHeight = new Array();
var moving = new Array();
var dir = new Array();


function slidedown(objname) {
       
    /*if (moving[objname] && dir[objname] == "up")
    	return;

    if (document.getElementById(objname).style.display == "none")
        return; // cannot slide down something that is already visible */

    if (moving[objname]) {
        slideAniLen = 300;
    }
    else if (!moving[objname]) {
        slideAniLen = 300;
        elapsed = (new Date()).getTime() - startTime[objname];
    }
    moving[objname] = true;
    dir[objname] = "down";
    startslide(objname);
}

function slideup(objname, imgh) {
    imgheight[objname] = imgh;
    /*if (moving[objname])
        return;*/

    /*if (document.getElementById(objname).style.display != "none")
        return; // cannot slide up something that is already hidden*/

    if (moving[objname]) {
        slideAniLen = 300;
    }
    else if (!moving[objname]) {
        slideAniLen = 300;
        elapsed = (new Date()).getTime() - startTime[objname];
    }

    moving[objname] = true;
    dir[objname] = "up";
    startslide(objname);
}

function startslide(objname) {
    obj[objname] = document.getElementById(objname);
    startTime[objname] = (new Date()).getTime();

    if (dir[objname] == "up") {
        if (obj[objname].style.display = "none") {
            obj[objname].style.height = "1px";
        }
        endHeight[objname] = parseInt(imgheight[objname]);
    }
    else {
        endHeight[objname] = parseInt(obj[objname].style.height);
    }
  
    obj[objname].style.display = "block";

    timerID[objname] = setInterval('slidetick(\'' + objname + '\');', timerlen);
}

function slidetick(objname) {
    elapsed = (new Date()).getTime() - startTime[objname];
    var d = Math.round(elapsed / slideAniLen * endHeight[objname]);

    if (elapsed > slideAniLen) {
        endSlide(objname);
    }
    /*else if (dir[objname] == "down" && movingHeight[objname] == 1) {
        endSlide[objname];
    }*/
    else if (dir[objname] == "down") {
        d = endHeight[objname] - d;
        movingHeight[objname] = d;
        obj[objname].style.height = d + "px";
    }
    else if (dir[objname] == "up") {
        obj[objname].style.height = d + "px";
        movingHeight[objname] = d;
    }    
   return;
}

function endSlide(objname) {
    clearInterval(timerID[objname]);
    moving[objname] = false;
    if (dir[objname] == "down")
        obj[objname].style.display = "none";
    obj[objname].style.height = endHeight[objname] + "px";

    delete (moving[objname]);
    delete (timerID[objname]);
    delete (startTime[objname]);
    delete (endHeight[objname]);
    delete (movingHeight[objname]);
    delete (obj[objname]);
    delete (dir[objname]);
    delete (imgheight[objname]);


    return;
}


//This code was created by the fine folks at Switch On The Code - http://blog.paranoidferret.com
//This code can be used for any purpose

function animate(elementID, newLeft, newTop, newWidth,
      newHeight, time, callback)
{
  var el = document.getElementById(elementID);
  if(el == null)
    return;
 
  var cLeft = parseInt(el.style.left);
  var cTop = parseInt(el.style.top);
  var cWidth = parseInt(el.style.width);
  var cHeight = parseInt(el.style.height);
 
  var totalFrames = 1;
  if(time> 0)
    totalFrames = time/40;

  var fLeft = newLeft - cLeft;
  if(fLeft != 0)
    fLeft /= totalFrames;
 
  var fTop = newTop - cTop;
  if(fTop != 0)
    fTop /= totalFrames;
 
  var fWidth = newWidth - cWidth;
  if(fWidth != 0)
    fWidth /= totalFrames;
 
  var fHeight = newHeight - cHeight;
  if(fHeight != 0)
    fHeight /= totalFrames;
   
  doFrame(elementID, cLeft, newLeft, fLeft,
      cTop, newTop, fTop, cWidth, newWidth, fWidth,
      cHeight, newHeight, fHeight, callback);
}

function doFrame(eID, cLeft, nLeft, fLeft,
      cTop, nTop, fTop, cWidth, nWidth, fWidth,
      cHeight, nHeight, fHeight, callback)
{
   var el = document.getElementById(eID);
   if(el == null)
     return;

  cLeft = moveSingleVal(cLeft, nLeft, fLeft);
  cTop = moveSingleVal(cTop, nTop, fTop);
  cWidth = moveSingleVal(cWidth, nWidth, fWidth);
  cHeight = moveSingleVal(cHeight, nHeight, fHeight);

  el.style.left = Math.round(cLeft) + 'px';
  el.style.top = Math.round(cTop) + 'px';
  el.style.width = Math.round(cWidth) + 'px';
  el.style.height = Math.round(cHeight) + 'px';
 
  if(cLeft == nLeft && cTop == nTop && cHeight == nHeight
    && cWidth == nWidth)
  {
    if(callback != null)
      callback();
    return;
  }
   
  setTimeout( 'doFrame("'+eID+'",'+cLeft+','+nLeft+','+fLeft+','
    +cTop+','+nTop+','+fTop+','+cWidth+','+nWidth+','+fWidth+','
    +cHeight+','+nHeight+','+fHeight+','+callback+')', 40);
}

function moveSingleVal(currentVal, finalVal, frameAmt)
{
  if(frameAmt == 0 || currentVal == finalVal)
    return finalVal;
 
  currentVal += frameAmt;
  if((frameAmt> 0 && currentVal>= finalVal)
    || (frameAmt <0 && currentVal <= finalVal))
  {
    return finalVal;
  }
  return currentVal;
}

function slideExample1(elementId)
{
   var element = document.getElementById(elementId);
   if(element.up == false || element.down)
   {
      animate(elementId, 0, 375, 292, 0, 500, null);
      element.up = true;
      element.down = false;
   }
   else
   {
      animate(elementId, 0, 375, 292, 125, 500, null);
      element.down = true;
      element.up = false;
   }
}

function doPop(imgPath){
	var img = new Image;
	img.src = imgPath;
	var pop = new myPop();
    pop.popOut(img);
}

function myPop() { 
    this.square = null;
    this.overdiv = null;

    this.popOut = function(img) {
        //filter:alpha(opacity=25);-moz-opacity:.25;opacity:.25;
        this.overdiv = document.createElement("div");
        this.overdiv.className = "overdiv";

        this.square = document.createElement("div");
        this.square.className = "square";
        this.square.Code = this;
        var imgZoom = img
        this.square.appendChild(imgZoom);
        var closebtn = document.createElement("button");
        closebtn.onclick = function() {
            this.parentNode.Code.popIn();
        }
        closebtn.innerHTML = "Close";
        this.square.appendChild(closebtn);

        document.body.appendChild(this.overdiv);
        document.body.appendChild(this.square);
    }
    this.popIn = function() {
        if (this.square != null) {
            document.body.removeChild(this.square);
            this.square = null;
        }
        if (this.overdiv != null) {
        document.body.removeChild(this.overdiv);
        this.overdiv = null;
        }

    }
}



