﻿function mod(divisee,base) {
// Created 1997 by Brian Risk.  http://members.aol.com/brianrisk
return Math.round(divisee - (Math.floor(divisee/base)*base));
}

// this function determines whether the event is the equivalent of the microsoft
// mouseleave or mouseenter events.
function isMouseLeaveOrEnter(e, handler)
{		
	if (e.type != 'mouseout' && e.type != 'mouseover') return false;
	var reltg = e.relatedTarget ? e.relatedTarget :
	e.type == 'mouseout' ? e.toElement : e.fromElement;
	while (reltg && reltg != handler) reltg = reltg.parentNode;
	return (reltg != handler);
}

function ViewObject(obj)
{
	var msg = "";
	for(var i in obj)
	{
		msg = msg + i + " - " + obj[i] + "<br>";
	}

	if($("#dummy") != null)
	{
		$("#dummy").html(msg);
	}
	else
	{
		tmp = msg.replace(/<br>/gim,"\n");
		alert(tmp);
	}
}

function OpenNewWindow(url, title, options)
{
	var newWindow = window.open(url, title, options);
	newWindow.focus();
}

function ChangeVisibility(elementID)
{
    var element = $("#" + elementID);
    
    if(element.css("display") == "none")
    {
        element.show();
    }
    else
    {
        element.hide();
    }   
}

function WebsiteSelector(ddl)
{
	var websites = $("#" + ddl);
	var url = websites.val();

	if(url != "")
	{
	    websites.attr("selectedIndex", 0);

        if(url.substr(0, 7) != "http://")
        { url = "http://" + url; }

	    if(url.indexOf("||") != -1)
	    {
	        var target = url.substring(url.indexOf("||") + 2);
	        url = url.substring(0, url.indexOf("||"));
	        
	        switch(target)
	        {
	            case "_blank":
	            {
	            	var newWindow = window.open(url);
		            newWindow.focus();
	                break;
	            }
	            default:
	            {
	                window.location.href = url;
	                break;
	            }
	        }
	    }
	    else
	    {
	        window.location.href = url;
	    }
	}
}

function ChangeVnavVisiblity(caller, vnav, showText, hideText)
{
    var container = $("#" + vnav);
    var link = $("#" + caller);
    
    if(container.css("display") == "none")
    {
        container.show();
        link.text(hideText);
    }
    else
    {
        container.hide();
        link.text(showText);
    }   
}

function ChangeSearchOptionsVisibility(baseID, hideSearchOptions, showSearchOptions)
{
    var searchOptionsContainer = $("#" + baseID + "_pnlSearchOptionsContainer");
    var searchOptionsVisibility = $("#" + baseID + "_hfSearchOptionsVisibility");
    var setVisibility = $("#SetSearchOptionsVisibility");

    if(searchOptionsContainer.css("display") == "none")
    {
        searchOptionsVisibility.val("");
        searchOptionsContainer.show();
        setVisibility.text(hideSearchOptions);
    }
    else
    {
        searchOptionsVisibility.val("none");
        searchOptionsContainer.hide();
        setVisibility.text(showSearchOptions);
    }
}

function AlternativeSearchWord(searchinputid, idx, word, alternative)
{
    var searchInput = $("#" + searchinputid);
    if(lastSearchWords[idx] == null)
    {
        searchInput.val(searchInput.val().replace(word, alternative));
    }
    else
    {
        searchInput.val(searchInput.val().replace(lastSearchWords[idx], alternative));
    }
    lastSearchWords[idx] = alternative;
}

function CampainAnswerImageSwap()
{
	var stateOneImage = "/NR/rdonlyres/15C2BB1B-5107-4DF3-82B2-CED3B570B2CA/0/wgabuttonstate1.gif";
	var stateTwoImage = "/NR/rdonlyres/321CDE67-AC69-4B9B-AC68-05A3174C1111/0/wgabuttonstate2.gif";
	
	var image = $("#campainAnswerImage");
	
	if (image.attr("src").indexOf("state1") == -1)
	{ image.attr("src", stateOneImage); }
	else
	{ image.attr("src", stateTwoImage); }
}

function JobSearchModal(obj, headline)
{
    var url = "http://www.heidelbergcement.com/global/en/hanson/careers/search_vacancies.htm";
    var tb_params = "#TB_inline?height=100&amp;width=200&amp;inlineId=externalJobs";

    if(obj.name.indexOf("lbxRegion") != -1)
    {
        switch(obj.value)
        {
            case "4":
            case "5":
            {
                //$("#jobSite").attr("href", "http://www.heidelbergcement.com/global/en/hanson/careers/search_vacancies.htm");
                //$("#jobRegion").html(obj.options[obj.options.selectedIndex].text);
                
                tb_show(headline, tb_params, null);
                
                $("#jobSite").attr("href", url);
                $("#jobRegion").html(obj.options[obj.options.selectedIndex].text);
                
                break;
            }
        }
    }
    else if(obj.name.indexOf("lbxCountry") != -1)
    {
        var selectedCountries = "";
        $("#" + obj.id + " :selected").each(function(i, selected)
        {
            if($(selected).val() == "14" ||
                $(selected).val() == "39" ||
                $(selected).val() == "230" ||
                $(selected).val() == "231")
            { selectedCountries += (selectedCountries == "" ? "" : ", ") + $(selected).text(); }
        });
    
        //if(jQuery.inArray("14", selectedCountries) != -1 || 
        //$("#jobSite").attr("href", "http://www.heidelbergcement.com/global/en/hanson/careers/search_vacancies.htm");
        //$("#jobRegion").html(obj.options[obj.options.selectedIndex].text);

        if(selectedCountries != "")
        {
            tb_show(headline, tb_params, null);
        
            $("#jobSite").attr("href", url);
            $("#jobRegion").html(selectedCountries);
        }
    }
}