﻿var suggestIndex = 0;       
var suggestIndexMax = 10; 

var bannerAdRandomNumber = Math.random()*10000000000000000;

function showDiv(id)
{
    if (document.getElementById(id) != null)
    {
        document.getElementById(id).style.display = "block";
    }
}

function hideDiv(id)
{
    if (document.getElementById(id) != null)
    {
        document.getElementById(id).style.display = "none";
    }
}

function autoSuggest()
{        
    var echoElem = document.getElementById(tbTopSearch);    
    ajaxSolrAutoSuggest.AutoSuggest(echoElem.value,SucceededCallback,FailedCallback);
}

function SucceededCallback(result)
{
    var RsltElem = document.getElementById("autoResult");
    RsltElem.innerHTML = result;
    document.getElementById("search-auto-result").style.display = "block";
}

function FailedCallback(result)
{
    var RsltElem = document.getElementById("autoResult");
    RsltElem.innerHTML = "";
    document.getElementById("search-auto-result").style.display = "none";
}
    
function ClearAutoSuggest()
{
    var RsltElem = document.getElementById("autoResult");
    RsltElem.innerHTML = "";
    document.getElementById("search-auto-result").style.display = "none";
}

function detectKeyDown(e)
{
    var target = (e && e.target) || (window.event && window.event.srcElement);
    var obj = document.getElementById(tbTopSearch);
    var evt = e ? e : window.event;            
    var iKeyCode = evt.keyCode;                     
 
    if(target==obj)
    { 
        switch(iKeyCode)
        {
            case 38: //up arrow
                autoSuggestmoveUp();
                break;
            case 40: //down arrow
                autoSuggestmoveDown();
                break;
            case 13: //return key                                                         
                if (suggestIndex != 0)
                {
                    if (evt.preventDefault)
                        evt.preventDefault();
                    window.focus();
                    var obj = document.getElementById("autoSuggestLink_" + suggestIndex);                    
                    window.location = obj.href;
                    return false;
                }
                else
                {                    
                    if (evt.preventDefault)
                        evt.preventDefault();
                    window.focus();
                    window.location = SearchUrl + obj.value + '&Published=Past two years';
                    return false;            
                }
                break;
        }
    }
    return true;
}

function autoSuggestmoveUp()
{
    suggestIndex--;
    if (suggestIndex < 0)
        suggestIndex = 0;
    updateSelectedSuggest();
}

function autoSuggestmoveDown()
{
    suggestIndex++;
    if (suggestIndex > suggestIndexMax)
        suggestIndex = suggestIndexMax;
    updateSelectedSuggest();
}

function autoSuggestOver(i)
{
    suggestIndex = i;
    updateSelectedSuggest();
}

function updateSelectedSuggest()
{
    for (var i = 1; i<=suggestIndexMax ;i++)
    {
        if (i == suggestIndex)
        {                    
            var obj = document.getElementById("autoSuggest_" + i);                    
            obj.className = "autoSuggestItemSelected";
        }
        else
        {
            var obj = document.getElementById("autoSuggest_" + i);
            if (obj != null)
            obj.className = "autoSuggestItem";
        }
    }
}


function clickcheck(e)
{
    var target = (e && e.target) || (event && event.srcElement);
    var obj = document.getElementById(tbTopSearch);
        
    if(target!=obj)
    {
        ClearAutoSuggest();        
    }    
    else
    {
        if (obj.value=="Search over 8,000 archived articles")
            obj.value="";
    }
    
    var obj2 = document.getElementById("country-selector");
    var img = document.getElementById("country-selector-img");
    var cd = document.getElementById("country-dropdown");
    if(target==obj2 || target==img)
    {
        if (cd.className == "country-dropdown")
            cd.className = "country-dropdown-selected";
        else
            cd.className = "country-dropdown";
    }
    else
        cd.className = "country-dropdown";
        
        
}


function detectKeyUp(e)
{
    var target = (e && e.target) || (window.event && window.event.srcElement);
    var obj = document.getElementById(tbTopSearch);
    var evt = e ? e : window.event;  
    if(target==obj)
        {
        var iKeyCode = evt.keyCode;
        //if (iKeyCode != 38 && iKeyCode != 40 && iKeyCode != 13)
        //    autoSuggest();
        if (iKeyCode == 32)
            autoSuggest();
        }
}

function GotoSearch()
{
    var obj = document.getElementById(tbTopSearch);
    window.location = SearchUrl + obj.value + '&Published=Past two years';
}

function JobGotoSearch()
{
        var obj = document.getElementById(keyword);
        var form = document.createElement("form");
        form.setAttribute("method", "post");
        form.setAttribute("action", "http://asianinvestor.efinancialcareers.com/formhandler.cfm");
        form.setAttribute("target", "_blank");
        
        var hiddenField = document.createElement("input");              
        hiddenField.setAttribute("name", "keyword");
        hiddenField.setAttribute("value", escape(obj.value));
        form.appendChild(hiddenField);
        
        
        var hiddenField2 = document.createElement("input");              
        hiddenField2.setAttribute("name", "actionTemplate");
        hiddenField2.setAttribute("value", "jobsearchresults");
        form.appendChild(hiddenField2);
             
        document.body.appendChild(form);    // Not entirely sure if this is necessary                   
        form.submit();
}

function AdSwap(position, size) {
    var obj = document.getElementById(position + "_" + size);
    try {
        if (obj != null) {
            var posX = obj.offsetLeft;
            var posY = obj.offsetTop;
            while (obj.offsetParent) {
                posX = posX + obj.offsetParent.offsetLeft;
                posY = posY + obj.offsetParent.offsetTop;
                if (obj == document.getElementsByTagName('body')[0]) { break }
                else { obj = obj.offsetParent; }
            }
            var obj2 = document.getElementById(position + "_" + size + "_script");
            obj2.style.position = "absolute";
            obj2.style.left = posX + "px";
            obj2.style.top = posY + "px";
            obj2.style.display = "block";
            
            if (position == "article") { obj2.style.width = "600px" };

            var obj3 = document.getElementById(position + "_" + size);
            var objHeight = obj2.offsetHeight;
            obj3.style.minheight = objHeight + "px";
            obj3.style.height = objHeight + "px";
        }
        
         
        
    }
    catch (err) {
    }
}

        
function AlignAds()
{
    AdSwap('lead','728x90');
    AdSwap('sky','120x600');
    AdSwap('sto','300x250');
    AdSwap('sto2','300x250');
    AdSwap('article','1x1');
    AdSwap('banner','468x75');
    AdSwap('locked','1x1');
}
