//////////////////////
function backToTop()
{
    window.scrollTo(0,0);     
}

function trim(str)
{
	try {
		return str.replace(/^\s+|\s+$/g,'');
	}
	catch (e) {
		return str;
	}
}
//////////////////////
function isnull(arg)
{
	arg = arg+'';
	return (arg == '' || arg == 'null' || arg == 'undefined');
}
//////////////////////
function nvl()
{
	for (var i=0; i<arguments.length; i++) {
		if (!isnull(arguments[i])) return arguments[i];
	}
	return null;
}	

//''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
function getHostAddress()
{
	var	urlPrefix		= getUrlPrefix();
	lastSlashPos		= urlPrefix.lastIndexOf('/');
	hostAddress			= urlPrefix.substring(0,lastSlashPos);
	
	return hostAddress;
}

function getUrlPrefix()
{
	// cut all the url file & query suffix
	var	urlPath			= location.href.substring(0,location.href.indexOf('.aspx'));
	var lastSlashPos	= urlPath.lastIndexOf('/');
	var urlPrefix		= urlPath.substring(0,lastSlashPos);	
	
	return urlPrefix;
}

function getQueryFields()
{
	var newQuery	=	"";
	
	// get the relevant section from the url
	var	urlPrefix	= getUrlPrefix();
	var queryFields = urlPrefix.substring(urlPrefix.lastIndexOf('/')+1,urlPrefix.length);	
	var fieldsArr	= new Array();
	fieldsArr		= queryFields.split("-");
	
	if (fieldsArr.length > 2)
	{
		newQuery	=	"FolderID=" + fieldsArr[0] + "&docID=" + fieldsArr[1] + "&lang=" + fieldsArr[2];				
	}
	else if (fieldsArr.length == 2)
	{
		newQuery	=	"FolderID=" + fieldsArr[0] + "&lang=" + fieldsArr[1];
	}
	
	return newQuery;
	
}

/* DHTML Function */


function GetObjValue(objID)
{
    var result = -1;
    var obj = document.getElementById(objID);
    if (obj)
    {
        result = obj.value;            
    }
    
    return result;
}

function SetObjValue(objID, value)
{
    var obj = document.getElementById(objID);
    try
    {
        obj.value = value;  
    }
    catch (e)
    {
        return false;
    }    
    
    return true;
}

//Redirect Page
function RedirectPage(url, filter)
{
    window.location = url + filter!=""?"?Filter="+filter:"";          
}


var scrollAmount = 1;

function scrollAdd(objID,step)
{
    
	window.clearInterval(scrollAdd.I);
	scrollAdd.elem		= document.getElementById(objID);
		
	if(scrollAdd.elem)
	{
	    //scrollAmount++;
		scrollAdd.step	= step > 0 ? scrollAmount : -scrollAmount;
		scrollAdd.I		= window.setInterval(startScroll,10);
	}
}

function startScroll()
{       
    scrollAdd.elem.scrollLeft	= scrollAdd.elem.scrollLeft + scrollAdd.step;
    //alert(scrollAdd.step);	
    
}

function scrollStop()
{
	//scrollAmount = 0;
	//window.clearInterval(scrollAdd.I);
}

function OpenPopUp(docId)
 {
   url=PopupUrlPrefix + '?docid=' + docId;
   //   alert(url);
   var _win=window.open (url, "mywindow", "location=1, status=1, scrollbars=1, width=340, height=210"); 
   var _leftLoc=(screen.width-_win.document.documentElement.clientWidth)/2;
   var _topLoc=(screen.height-_win.document.documentElement.clientHeight)/2;
   _win.moveTo(_leftLoc, _topLoc);  
 }
 
function OpenLookEnlargePopup(url)
{
    popup = window.open (url, "enlargeWindow", "location=0, status=1, scrollbars=0, width=500, height=680"); 
}

function OpenProductPopup(url)
 {
    var imgNumObj = document.getElementById("imgNum");
    if (imgNumObj)
        url += "&imgNum=" + imgNumObj.value;
   var _win = window.open(url, "mywindow", "location=0, status=1, scrollbars=0, width=683, height=667, top=50, left=200"); 
 
 }
 
function sendToFreind(url, name, params, from)
{
    //alert(params);
     url = url + '?from=' + from;
     popup = window.open(url, name, params);
}

function displayStatusBarText(text)
{
    window.status=text;
}

function changeCursorShape(obj,style)
{
    obj.style.cursor = 'hand';
}

/* code for submitting on Enter Key is pressed  */
function enterListner(submitBtnID)
{
	if (document.layers)
		document.captureEvents(Event.KEYDOWN);
		document.onkeydown =
		function (evt) { 
			var keyCode = evt ? (evt.which ? evt.which : evt.keyCode) : event.keyCode;
			if (keyCode == 13)   //13 = the code for pressing ENTER 
			{
				document.getElementById(submitBtnID).focus()					
			}
		}
}

function banner_openWindow(url, new_window, top, left, width, height, toolbar)
{
    window.open (url, "");//,"height=" + 200 + ",width=" + 400 + ",toolbar=yes,status=yes,menubar=yes,location=yes");
}

function searchSolultionProviderItems(){
    var url = searchPageUrl;
    
    var c = document.getElementById(lstCountriesID).value
    var i = document.getElementById(lstIndustriesID).value
    
    if(!isnull(c)){
        if(url.indexOf("?") > -1){
            url = url + "&c=" + c
        }
        else{
            url = url + "?c=" + c
        }
    }
    
    if(!isnull(i)){
        if(url.indexOf("?") > -1){
            url = url + "&i=" + i
        }
        else{
            url = url + "?i=" + i
        }
    }    
    window.location.href = url;
}

var currentTrId = '';
var currentTitleTrId = '';
function ToggleTr(TrId, titleTrId, tblCVId, tblCVFormId, itemIndex)
{
    HideError();
    var titleTr = document.getElementById(titleTrId);
    if(currentTrId != TrId)
    {
        var Tr = document.getElementById(TrId);
        if(Tr)
        {
            if(Tr.style.display == 'none')
            {
                Tr.style.display = '';
                 if (titleTr)
                {
                    titleTr.className = 'row_on';
                }
            }
            else
            {
                Tr.style.display = 'none';
                 if (titleTr)
                {
                    titleTr.className = 'row_off';
                }
            }
        }
    }
    if(currentTrId != '' && currentTrId != TrId)
    {
        var currentTr = document.getElementById(currentTrId);
        if(currentTr)
            currentTr.style.display = 'none';
            
        var currentTitleTr = document.getElementById(currentTitleTrId);
        if(currentTitleTr)
               currentTitleTr.className = 'row_off';
    }
    if(currentTrId != '' && currentTrId == TrId)
    {
        var currentTr = document.getElementById(currentTrId);
        if(currentTr)
            if(currentTr.style.display == 'none')
                currentTr.style.display = '';
            else
            {
                currentTr.style.display = 'none';
                 if (titleTr)
                {
                    titleTr.className = 'row_off';
                }
            }
    }
    var CVtbl = document.getElementById(tblCVId);
    if(CVtbl)
        CVtbl.style.display = 'none';

    var CVFormtbl = document.getElementById(tblCVFormId);
    if(CVFormtbl)
        CVFormtbl.style.display = 'none';

    currentTrId = TrId;
    currentTitleTrId = titleTrId;
    try
    {
        document.getElementById(hidItemIndexId).value = itemIndex;
    }
    catch(e){}
}

function HideError()
{
    document.getElementById(rvCVNameId).style.display = 'none';
    document.getElementById(rvCvEmailId).style.display = 'none';
    document.getElementById(revCvEmailId).style.display = 'none';
}

function ChangeTrClassName(titleTrId)
{
    if(titleTrId != currentTitleTrId)
    {
        var titleTr = document.getElementById(titleTrId);
        if (titleTr)
        {
            titleTr.className = 'row_off';
        }  
    }
}

var currentExp = 1;
function ShowMoreExp()
{
    if(currentExp < 5)
    {
        currentExp++;
        var trExp = document.getElementById(trExpId+currentExp.toString());
        if(trExp)
            trExp.style.display = '';
        if (currentExp == 5)
            document.getElementById("ancShowMoreExp").style.display = 'none';
    }
}

function d(o){
    var v = window.open("about:blank", "v")
    with([])
    {
        for(x in o)
            push(x+" : " + o[x])
            
        v.document.write(join("<br>"))
    }
}

function ShowCVSection(f1ID,f2ID,currItemID){
    var f1 = document.getElementById(f1ID)
    var f2 = document.getElementById(f2ID)
    
    var currElement = document.getElementById(currItemID)

    currElement.appendChild(f1)
    f1.style.display = '';
    f2.style.display = 'none';
}

function ShowCVFormSection(f1ID,f2ID,currItemID){
    var f1 = document.getElementById(f1ID)
    var f2 = document.getElementById(f2ID)
    
    var currElement = document.getElementById(currItemID)

    currElement.appendChild(f2)
    f1.style.display = 'none';
    f2.style.display = '';
}
function chkArea()
{
    var obj = document.getElementById(selAreasId);
    if(obj)
    {
        if (obj.value == '')
        {
            alert(selAreaError);
            obj.focus();
            return false;
         }
         return true;
    }
    return true;
}

function chkCompanyJobs()
{
    var obj = document.getElementById(selCompanyJobsId);
    if(obj)
    {
        if (obj.value == '')
        {
            alert(selCompanyJobsError);
            obj.focus();
            return false;
         }
         return true;
    }
    return true;
}

var lastSmallDivObj = null;
var currentBigPictureSrc;
function changeBigPicture(imgSrc, bigImgId, divId, imgNum, imgAlt,jqImgUrl)
{
    var bigImg = document.getElementById(bigImgId);
    var divObj = document.getElementById(divId);
    if(bigImg)
    {
        bigImg.src = imgSrc;
        bigImg.alt = imgAlt;
        bigImg.setAttribute("title", imgAlt);
        bigImg.setAttribute("jqimg", jqImgUrl);
    }   
    if(lastSmallDivId != '')
    {
        lastSmallDivObj = document.getElementById(lastSmallDivId);
        lastSmallDivObj.className = 'pics_picture';
    }
    lastSmallDivId = divId;
    divObj.className = 'pics_picture_s';
    document.getElementById("imgNum").value = imgNum;
    currentBigPictureSrc = imgSrc;
}

function swapBigPicture(imgSrc, bigImgId, divId, imgNum, imgAlt)
{
    var bigImg = document.getElementById(bigImgId);
    var divObj = document.getElementById(divId);
    if((event.type == "mouseout")&&(currentBigPictureSrc != undefined))
        bigImg.src = currentBigPictureSrc;
    else if(bigImg)
    {
        bigImg.src = imgSrc;
        bigImg.alt = imgAlt;
        bigImg.setAttribute("title", imgAlt);
    }
}

function changeClassName(obj, objId)
{
    if(objId != lastSmallDivId)
    {
        obj.className = 'pics_picture';
    }
}

function send_sendToFriend(lang, FolderID, ProductID, nPopupWinWidth, nPopupWinHeight, bPopupWinScrollbars, bPopupWinToolbar)
{
	var redirectUrl	= getHostAddress() + "/TemplatesInPopup/SendToFriend.aspx";
	nPopupWinTop = screen.height/2 - nPopupWinHeight/2;
	nPopupWinLeft = screen.width/2 - nPopupWinWidth/2;
	
	var arrLocation = String(document.links[0]).split('Templates');
	var currLocation	=	window.location.href;
	redirectUrl += "?lang=" + lang + "&FolderID=" + FolderID;
	if(ProductID != "")
	    redirectUrl += "&ProductID=" + ProductID;
	redirectUrl	+= "&linkURL=" + currLocation;
	window.open(redirectUrl, 'sendToFriend','status=yes,top=' + nPopupWinTop + ',left=' + nPopupWinLeft + ',width=' + nPopupWinWidth + ',height=' + nPopupWinHeight + ',scrollbars=' + bPopupWinScrollbars + ',toolbar=' + bPopupWinToolbar);
}

var aBigPictures;
var BigPictureSrcOrig;
var aExtraPictures=null;
var childrenOrigHTML;
var ColorNameOrig;
function ChangeVariant(obj)
{
    //alert("change");
    BigPictureSrcOrig = document.getElementById(imgBigId).src;
    obj.className = 'product_color_image_h';

    var BigPictureSrc = aBigPictures[obj.id];
    document.getElementById(imgBigId).src = BigPictureSrc;
    
    if(document.getElementById("SelectedColor") != null)
    {
        ColorNameOrig = document.getElementById("SelectedColor").innerText;
        var SelectedColorImage = document.getElementById(obj.id).getElementsByTagName("img")[0];
        
        document.getElementById("SelectedColor").innerText = SelectedColorImage.alt;
    }
    
    var childrenCount = document.getElementById(divSidePicturesId).childNodes.length;
    childrenOrigHTML = document.getElementById(divSidePicturesId).innerHTML;
    
    for(var i=0; i<childrenCount; i++)
    {
        var currentChild = document.getElementById(divSidePicturesId).childNodes[0];
        currentChild.parentNode.removeChild(currentChild);
    }
    if(aExtraPictures!=null && aExtraPictures[obj.id]!=null && aExtraPictures[obj.id].length!=null)
    {
        var PicturesCount = aExtraPictures[obj.id].length;
        
        if(aExtraPictures[obj.id].length > 4)
        {
            PicturesCount = 4;
            document.getElementById(tdArrowTopId).style.display = '';
            document.getElementById(tdArrowBottomId).style.display = '';
        }
        else
        {
            document.getElementById(tdArrowTopId).style.display = 'none';
            document.getElementById(tdArrowBottomId).style.display = 'none';
        }
    }
    for(var j=0; j<PicturesCount; j++)
    {
        var newDiv = document.createElement("div");
        if(j == 0)
            newDiv.setAttribute("className", "pics_picture_s");
        else
            newDiv.setAttribute("className", "pics_picture");
            
        var newImg = document.createElement("img");
        newImg.setAttribute("src", aExtraPictures[obj.id][j]);
        document.getElementById(divSidePicturesId).appendChild(newDiv);
        newDiv.appendChild(newImg);
    }
}

function RestoreVariant(obj,numOfPic)
{
    obj.className = 'product_color_image';
    document.getElementById(imgBigId).src = BigPictureSrcOrig;
    
    if(document.getElementById("SelectedColor") != null)
        document.getElementById("SelectedColor").innerText = ColorNameOrig;
        
    document.getElementById(divSidePicturesId).innerHTML = childrenOrigHTML;
    if(numOfPic)
    {
        if(numOfPic<5)
        {
            document.getElementById(tdArrowTopId).style.display = 'none';
            document.getElementById(tdArrowBottomId).style.display = 'none';
        }
        else
        {
            document.getElementById(tdArrowTopId).style.display = '';
            document.getElementById(tdArrowBottomId).style.display = '';
        }
    }
}

function RedirectByRegion(url)
{
    var resultUrl = url.replace("[lang]", lang).replace("[region]", region);
    var urlHost = getHostAddress();    
    window.location.href = urlHost + resultUrl;
}

function showLangsDiv()
{
    try
    {
        document.getElementById('footer_lang_popup').style.display = '';
    }
    catch(e){}
}
function CheckJoinMail()
{
    var txtObj=document.getElementById(txtJoinMailId);
    if(txtObj)
    {
        if(!isValidEmail(txtObj.value) || !CheckIllegalCharacters(txtObj.value))
        {
            alert(validEmailAlert);
            return false;
        }
        document.getElementById(btnJoinId).click();
    }
    

}
function isValidEmail(strEmail)
{
    var regex1 ="\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*";
    return strEmail.match(regex1);
}

//function isValidEmail(strEmail){
//  validRegExp = /^[^@]+@[^@]+.[a-z]{2,}$/i;
//  if (strEmail.search(validRegExp) == -1) 
//  {
//      return false;
//  } 
//    return true; 
//   
//}
function CheckIllegalCharacters(sText)
    {
	    var NotValidChars = "!#$%^*()/<>?;[]{}|";
        var Char;
        var idx=0;
        for (var i = 0; i < sText.length; i++) 
	    { 
	        Char = sText.charAt(i); 
	        idx=NotValidChars.indexOf(Char);
	        if (idx>-1)
	        {
	            return false;
	        }
	    }
        return true;
    }
    
    function joinEnterPress(e)
    {
	    var code        = (window.event) ? event.keyCode    : e.keyCode;
	    if(code==13)
		{
		   if(!CheckJoinMail())
		    return false;
		}
		return true;
	    
    }
    function clearJoinText(DefText)
    {
        var txtObj=document.getElementById(txtJoinMailId);
        if(txtObj && txtObj.value==DefText)
        {
            txtObj.value='';
            txtObj.focus();
            
        }
        
    }