﻿var lang_cur = 1;
var img_cur = 1;
var img_max = 1;
var scroll_content = 0;
var scroll_content_loop = false;
var scroll_content_loop_left = false;
var scroll_content_last = 0;
var scroll_content_last_left = 0;

var page_content_auto_scroll_trd = null;
var page_content_auto_scroll_dir = 0;
var page_content_auto_scroll_last = 0;
var page_content_auto_scroll_pause = false;
var search_scroll_auto_enable = true;

var order_items_count = 0;
var order_btn_txt = "";

var scroll_countries_at = 0;
var scroll_countries_to = -1;
var scroll_countries_pause = false;
var scroll_countries_show_all = false;
var content_html = "";
var scroll_arrows_visible = false;
var fit_images_in_content = false;

var content_scrolling_trd = null;


function BrowseLocations(fnc) {
    window.open("./Browse_Locations.aspx?function=" + fnc, "acnww_browse_locations", "width=400, height=200");
}

function AddWindowURLComment(str) {
    var url = "" + window.location;
    var index = url.indexOf('#');
    if (index > 0)
        url = url.substr(0, index);

    url += "#" + str;
    window.location = url;
}

function GetWindowAnchor() {
    var values = new Array(0);
    var count = 0;

    if (window.location.hash) {
        var url = "" + window.location.hash;
        url = url.substr(1);

        var index = url.indexOf('=');
        var itmp = 0;
        while (index > 0) {
            values[count] = new Array(2);
            values[count][0] = url.substr(0, index).toLowerCase();
            url = url.substr(index + 1);

            itmp = url.indexOf('&');
            if (itmp > 0) {
                values[count][1] = url.substr(0, itmp);
                url = url.substr(itmp + 1);
            }
            else {
                values[count][1] = url;
                url = "";
            }

            index = url.indexOf('=');
            count++;
        }
    }

    return values;
}

function GetWindowAnchorValue(anchors, key) {
    for (var i = 0; i < anchors.length; i++) {
        if (anchors[i].length == 2) {
            if (anchors[i][0] == key)
                return anchors[i][1];
        }
    }

    return "";
}

function StartOrderItemMove(btn, what, issue) {
    btn.disabled = true;
    order_btn_txt = btn.innerHTML;
    btn.value = "Please Wait...";

    while (issue.indexOf('_') > 0)
        issue = issue.replace("_", " ");

    var a = document.getElementById("a_order_count");
    if (a.innerHTML != "") {
        order_items_count = parseInt(a.innerHTML.substr(1, a.innerHTML.length - 2));
    }
    
    order_items_count++;

    a.innerHTML = "(" + order_items_count + ")";

    var html = "<b>" + what + "&nbsp;";
    if (issue != "")
        html += "-&nbsp;" + issue;  
    html +=  "</b>&nbsp;has&nbsp;been&nbsp;added"

    var ele = document.createElement("div");
    ele.className = "order_item_move";
    ele.innerHTML = html;
    ele.id = "order_item_move_" + order_items_count;

    document.getElementById("body").appendChild(ele);
    setTimeout("OrderItemMove('" + ele.id + "');", 2000);
    setTimeout("OrderItem('" + btn.id + "', '" + what + "', '" + issue + "');", 10);
    
    return false;
}

function OrderItemMove(id) {
    var ele = document.getElementById(id);
    var y = ele.offsetTop;

    var alpha = ele.style.opacity;
    if (alpha == undefined || alpha == null || alpha == "")
        alpha = 1;
    alpha = parseFloat(alpha);

    y += 1;
    alpha -= 0.02;
    if (alpha <= 0.01) {
        alpha = 0.0;
    }

    ele.style.top = y + "px";
    ele.style.opacity = alpha;
    ele.style.filter = "alpha(opacity=" + (alpha * 100) + ")";

    if (alpha > 0.0) {
        setTimeout("OrderItemMove('" + id + "');", 40);
    }
}

function OrderItem(btn_id, what, issue) {
    var url = "./Order.aspx?action=add&what=" + what + "&issue=" + issue + "&btn_id=" + btn_id;
    GetAJAX(url, OrderItemDone);
}

function OrderItemDone(html) {
    html = "" + html;

    var id = html;

    setTimeout("OrderItemDoneRestore('" + id + "', '" + order_btn_txt + "');", 100);
}

function OrderItemDoneRestore(btn_id, txt) {
    var btn = document.getElementById(btn_id);

    btn.disabled = false;
    btn.innerHTML = txt;
}

function getCookie(c_name) {
    var i, x, y, ARRcookies = document.cookie.split(";");
    for (i = 0; i < ARRcookies.length; i++) {
        x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
        y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
        x = x.replace(/^\s+|\s+$/g, "");
        if (x == c_name) {
            return unescape(y);
        }
    }
}

function InitPage() {
    if (document.getElementById("val_lang") != undefined)
        lang_cur = parseInt(document.getElementById("val_lang").value);

    if(document.getElementById("div_countries") != undefined && document.getElementById("div_countries").style.display != "none")
        InitScrollingCountries3();
    
    if (IsIE6()) {
        if (getCookie("visit_anyway") != "true") {
            window.location = "./Outdated_Browser.aspx";
            return;
        }
        
        var as = document.getElementsByTagName("img");
        for (var i = 0; i < as.length; i++) {
            if (as[i].src.indexOf(".png") > 0) {
                IE6Alpha(as[i]);
                as[i].src = "./Images/t.gif";
            }
        }
    }

    if (document.getElementById("content_txt") != undefined) {
        document.getElementById("content_txt").onscroll = function(e) {
            if (content_scrolling_trd != null)
                clearTimeout(content_scrolling_trd);

            content_scrolling_trd = setTimeout("scroll_countries_show_all = false; content_scrolling_trd=null;", 1000);
        }
    }

    if (!IsIE9() && !IsChrome() && !IsSafari() && !IsFirefox() && !IsOpera())
        document.getElementById("b_old_browser").innerHTML = "You appear to be using an outdated web browser, <a href='./about_website.aspx#a_comp'>click here to learn more</a>";

    if (document.getElementById("div_page") != undefined) {
        document.getElementById("div_page").onmousedown = function(e) {
            return false;
        }
    }

    //SwitchLanguage(1);
    RepositionWindow();
    InitHeaderScroll2();
    //GetNextFeaturedPropertyTop();
}

function InitHeaderScroll2() {
    if (scroll_countries_pause || scroll_countries_show_all) {
        setTimeout("InitHeaderScroll2();", 100);
        return;
    }
    
    var ele = document.getElementById("div_countries");
    if (ele != undefined) {
        var as = ele.getElementsByTagName("A");
        scroll_countries_to = Math.floor(Math.random() * (as.length - 2)) + 1;
        StartScrollingCountries();
    }
}

function StartScrollingCountries() {
    if (scroll_countries_show_all) {
        setTimeout("StartScrollingCountries();", 3500);
        return;
    }
    
    var ele = document.getElementById("div_countries");
    var as = ele.getElementsByTagName("A");
    
    GetViewport();
    var width = document.getElementById("a_inflation_link").offsetWidth + 20;
    var width_max = viewportwidth;

    scroll_countries_at = scroll_countries_to + 1;
    scroll_countries_to++;
    if (scroll_countries_at >= as.length) {
        scroll_countries_at = 1;
        scroll_countries_to = 1;
    }

    while (width < width_max) {
        as[scroll_countries_to].style.display = "block";
        as[scroll_countries_to].style.left = width + "px";
        as[scroll_countries_to].style.top = "30px";
        if (!IsIE()) {
            as[scroll_countries_to].style.opacity = 0.0;
            as[scroll_countries_to].style.filter = "alpha(opacity=0)";
        }
        width += as[scroll_countries_to].offsetWidth + 20;
        if (width - 20 < width_max) {
            scroll_countries_to++;
            if (scroll_countries_to >= as.length)
                scroll_countries_to = 1;
        }
        else
            scroll_countries_to--;
    }

    setTimeout("DoScrollCountries(0);", 10);
}

function DoScrollCountries(step, _count) {
    if (scroll_countries_show_all) {
        setTimeout("StartScrollingCountries();", 3500);
        return;
    }
    else if (content_scrolling_trd != null) {
        setTimeout("DoScrollCountries(" + step + ", " + _count + ");", 100);
        return;
    }
    
    var ele = document.getElementById("div_countries");
    var as = ele.getElementsByTagName("A");
    var count = scroll_countries_at;
    var itmp = 0;
    var ok = true;
    var speed = 2;

    while (count != scroll_countries_to && scroll_countries_to >= 0) {
        if (itmp * 3 > step) {
            ok = false;
            break;
        }
        
        if (count == 0)
            count++;
        if (as[count].offsetTop > 5) {
            as[count].style.top = (as[count].offsetTop - speed) + "px";
            if (!IsIE()) {
                as[count].style.opacity = 5 / as[count].offsetTop;
                as[count].style.filter = "alpha(opacity=" + (5 / as[count].offsetTop * 100) + ")";
            }
            ok = false;
        }

        itmp++;
        count++;
        if (count >= as.length)
            count = 0;
    }

    step++;

    if (!ok)
        setTimeout("DoScrollCountries(" + step + ");", 30);
    else {
        setTimeout("StartHideScrollCountries();", 3500);
    }
}

function StartHideScrollCountries() {
    if (scroll_countries_pause) {
        setTimeout("StartHideScrollCountries();", 100);
        return;
    }
    if (scroll_countries_show_all) {
        setTimeout("StartScrollingCountries();", 3500);
        return;
    }

    setTimeout("HideScrollCountries(0);", 10);
}

function HideScrollCountries(step) {
    if (scroll_countries_show_all) {
        setTimeout("StartScrollingCountries();", 3500);
        return;
    }
    else if (content_scrolling_trd != null) {
        setTimeout("HideScrollCountries(" + step + ");", 100);
        return;
    }
    
    var ele = document.getElementById("div_countries");
    var as = ele.getElementsByTagName("A");
    var count = scroll_countries_at;
    var itmp = 0;
    var ok = true;
    var speed = 2;

    while (count != scroll_countries_to) {
        if (itmp * 3 > step) {
            ok = false;
            break;
        }
        if (as[count].offsetTop > -25 && as[count].style.display == "block") {
            as[count].style.top = (as[count].offsetTop - speed) + "px";
            if (!IsIE()) {
                as[count].style.opacity -= 0.2;
                as[count].style.filter = "alpha(opacity=" + (as[count].style.opacity * 100) + ")";
            }
            ok = false;
        }
        else
            as[count].style.display = "none";

        itmp++;
        count++;
        if (count >= as.length)
            count = 1;
    }

    step++;

    if (!ok)
        setTimeout("HideScrollCountries(" + step + ");", 30);
    else {
        setTimeout("StartScrollingCountries();", 20);
    }
}

function ScrollTop(to, content, bar, ball) {
    if (scroll_content_loop)
        return;

    scroll_content_loop = true;
    ScrollTopLoop(to, content, bar, ball);
}

function ScrollLeft(to, contnet, bar, ball)
{
    if (scroll_content_loop_left || scroll_content > 0)
        return;
    
    scroll_content_loop_left = true;
    ScrollLeftLoop(to, contnet, bar, ball);
}

function ScrollTopEleDirect(id, content, bar, ball) {
    if (scroll_content_loop)
        return;

    document.getElementById(content).scrollTop = document.getElementById(id).offsetTop;
    PositionScrollBar(document.getElementById(content), document.getElementById(bar), document.getElementById(ball));
}

function ScrollTopEle(id, content, bar, ball) {
    if (scroll_content_loop)
        return;
    
    scroll_content_loop = true;
    var to = document.getElementById(id).offsetTop;

    ScrollTopLoop(to, content, bar, ball);
}

function ScrollTopLoop(to, content, bar, ball) {
    var ele = document.getElementById(content);
    if (ele == undefined) {
        scroll_content_loop = false;
        return;
    }
    
    var scroll = ele.scrollTop;
    if (scroll > to) {
        scroll -= 80;
        if (scroll < to)
            scroll = to;
    }
    else {
        scroll += 80;
        if (scroll > to)
            scroll = to;
    }

    ele.scrollTop = scroll;
    PositionScrollBar(ele, document.getElementById(bar), document.getElementById(ball));

    if (scroll != to && scroll != scroll_content_last) {
        scroll_content_last = scroll;
        setTimeout("ScrollTopLoop(" + to + ", '" + content + "', '" + bar + "', '" + ball + "');", 10);
    }
    else
        scroll_content_loop = false;
}

function ScrollLeftLoop(to, content, bar, ball) {
    var ele = document.getElementById(content);
    if (ele == undefined)
        return;

    var scroll = ele.scrollLeft;
    if (scroll > to) {
        scroll -= 20;
        if (scroll < to)
            scroll = to;
    }
    else {
        scroll += 20;
        if (scroll > to)
            scroll = to;
    }

    ele.scrollLeft = scroll;
    PositionScrollBar(ele, document.getElementById(bar), document.getElementById(ball));
    
    if(scroll != to && scroll != scroll_content_last)
    {
        scroll_content_last_left = scroll;
        setTimeout("ScrollLeftLoop(" + to + ", '" + content + "', '" + bar + "', '" + ball + "');", 10);
    }
    else
        scroll_content_loop_left = false;
}

function SwitchLanguage(lang) {
    if (GetCurrentPage() != "default.aspx") {
        var url = "" + window.location;
        if (url.indexOf('?') > 0)
            url += "&lang=" + lang;
        else
            url += "?lang=" + lang;
        window.location = url;
        return;
    }
    
    var as = document.getElementsByTagName("A");

    for (var i = 0; i < as.length; i++) {
        as[i].href = as[i].href.replace("lang=" + lang_cur, "lang=" + lang);
    }

    lang_cur = lang;

    var flag = document.getElementById("eng");
    if (lang == 1) {
        document.getElementById("a_about").innerHTML = "About Us";
        document.getElementById("a_contact").innerHTML = "Contact Us";
        document.getElementById("a_login").innerHTML = "Login";
    }
    else if (lang == 2) {
        flag = document.getElementById("chs");
        document.getElementById("a_about").innerHTML = "关于我们";
        document.getElementById("a_contact").innerHTML = "联系我们";
        document.getElementById("a_login").innerHTML = "会员登陆";
    }
    else if (lang == 3) {
        flag = document.getElementById("cht");
        document.getElementById("a_about").innerHTML = "關于我們";
        document.getElementById("a_contact").innerHTML = "聯係我們";
        document.getElementById("a_login").innerHTML = "會員登陸";
    }

    RepositionWindow();
}

function RepositionWindow() {
    GetViewport();
    var body = document.getElementById("body");
    if (viewportheight < 650)
        body.style.overflow = "scroll";
    else
        body.style.overflow = "hidden";
    if (viewportwidth < 950)
        body.style.overflowX = "scroll";
    else
        body.style.overflowX = "hidden";

    if (document.getElementById("eng") != undefined) {
        document.getElementById("eng").className = "";
        document.getElementById("chs").className = "";
        document.getElementById("cht").className = "";

        if (lang_cur == 2)
            document.getElementById("chs").className = "lang_sel";
        else if (lang_cur == 3)
            document.getElementById("cht").className = "lang_sel";
        else
            document.getElementById("eng").className = "lang_sel";
    }

    var ele = document.getElementById("content_txt");
    if (ele != undefined && document.getElementById("content_scroll") != undefined) {
        if (ele.scrollHeight > ele.offsetHeight) {
            if (IsIE())
                document.getElementById("content_scroll").style.display = "";
            else
                document.getElementById("content_scroll").style.display = "inherit";
        }
        else
            document.getElementById("content_scroll").style.display = "none";

        if (ele.scrollTop > ele.scrollHeight - ele.offsetHeight) {
            ele.scrollTop = ele.scrollHeight - ele.offsetHeight;
            PositionScrollBar(ele, document.getElementById("content_scroll"), document.getElementById("img_scroll"));
        }
    }
    else if (ele != undefined)
    {
        if(ele.scrollHeight <= ele.offsetHeight)
            ele.style.overflowY = "hidden";
        else
            ele.style.overflowY = "scroll";
    }

    ele = document.getElementById("people_txt");
    if (ele != undefined) {
        if (ele.scrollHeight > ele.offsetHeight) {
            if (IsIE())
                document.getElementById("people_scroll").style.display = "";
            else
                document.getElementById("people_scroll").style.display = "inherit";
        }
        else
            document.getElementById("people_scroll").style.display = "none";

        if (ele.scrollTop > ele.scrollHeight - ele.offsetHeight) {
            ele.scrollTop = ele.scrollHeight - ele.offsetHeight;
            PositionScrollBar(ele, document.getElementById("people_scroll"), document.getElementById("people_scroll_img"));
        }
    }

    ele = document.getElementById("sub_menu_links");
    if (ele != undefined && document.getElementById("submenu_scroll") != undefined) {
        if (ele.scrollHeight > ele.offsetHeight) {
            if (IsIE())
                document.getElementById("submenu_scroll").style.display = "";
            else
                document.getElementById("submenu_scroll").style.display = "inherit";
        }
        else
            document.getElementById("submenu_scroll").style.display = "none";

        if (ele.scrollTop > ele.scrollHeight - ele.offsetHeight) {
            ele.scrollTop = ele.scrollHeight - ele.offsetHeight;
            PositionScrollBar(ele, document.getElementById("submenu_scroll"), document.getElementById("submenu_scroll_img"));
        }
    }

    if (IsIE6()) {
        var page = document.getElementById("img_bg");
        var footer = document.getElementById("menu_down_bar");
        var parent = null;

        footer.style.top = (page.offsetHeight - footer.offsetHeight) + "px";

        ele = document.getElementById("div_featured_border");
        ele.style.height = (footer.offsetTop - ele.offsetTop - 20) + "px";

        ele = document.getElementById("div_featured_box");
        ele.style.height = (footer.offsetTop - ele.offsetTop - 17) + "px";

        ele = document.getElementById("div_featured_links");
        ele.style.height = (footer.offsetTop - ele.offsetTop - 17) + "px";

        ele = document.getElementById("sub_menu_border");
        ele.style.height = (footer.offsetTop - ele.offsetTop - 20) + "px";

        ele = document.getElementById("sub_menu_box");
        ele.style.height = (footer.offsetTop - ele.offsetTop - 17) + "px";

        ele = document.getElementById("menu_down_links");
        ele.style.top = (page.offsetHeight - ele.offsetHeight) + "px";

        ele = document.getElementById("content_border");
        ele.style.height = (footer.offsetTop - ele.offsetTop - 20) + "px";
        ele.style.width = (footer.offsetWidth - ele.offsetLeft - document.getElementById("div_featured_border").offsetWidth - 20) + "px";

        ele = document.getElementById("content_box");
        ele.style.height = (footer.offsetTop - ele.offsetTop - 17) + "px";
        ele.style.width = (footer.offsetWidth - ele.offsetLeft - document.getElementById("div_featured_border").offsetWidth - 17) + "px";

        ele = document.getElementById("content_txt");
        ele.style.height = (footer.offsetTop - ele.offsetTop - 40) + "px";

        parent = ele;
        ele = document.getElementById("content_scroll");
        ele.style.height = (parent.offsetHeight - ele.offsetTop - 40) + "px";
    }

    if (document.getElementById("img_publication_preview_main"))
        ResizePublicationPreview();

    if (document.getElementById("canvas_scroll_bars") != undefined)
        document.getElementById("canvas_scroll_bars").width = document.getElementById("searchresult").offsetWidth;
}

function GetCurrentPage() {
    var page = "" + window.location;
    var index = page.indexOf('/');
    while (index >= 0) {
        page = page.substr(index + 1);
        index = page.indexOf('/');
    }
    page = page.toLowerCase();

    var index = page.indexOf('?');
    if (index > 0)
        page = page.substr(0, index);

    return page;
}

window.onresize = function(e) {
    RepositionWindow();

    var page = GetCurrentPage().toLowerCase();

    if (document.getElementById("p_add_blog_entry_intro") != undefined) {
        ResizeBlogMessage();
    }
    else if (page == "hpi.aspx") {
        if (!graph_moving) {
            graph_moving = true;
            var w = document.getElementById("content_txt").offsetWidth;
            document.getElementById("canvas").width = w - 20;
            document.getElementById("canvas2").width = w - 20;

            graph_show_location_names = true;
            setTimeout("DrawFullGraph(false);", 1);
        }
    }
    else if (page == "data_landscape_country.aspx" || page == "data_landscape_city.aspx") {
        ResizeCanvas();
    }
    else if (page == "search_property.aspx") {
        //PositionResults(0);
    }
    else if (page == "gallery.aspx")
        PositionPhotos();
    else if (page == "partner_firm_guide_1.aspx" || page == "partner_firm_guide_2.aspx" || page == "partner_firm_guide_3.aspx" || page == "partner_firm_guide_4.aspx" || page == "partner_firm_guide_5.aspx")
        FitAllImages("content_txt", "content_txt");
    else if (document.getElementById("div_rare_opps_results") != undefined) {
        PositionRareOpps();
        GoToRareOpportunity();
    }
}

function ScrollContent() {
    if (scroll_content == 0)
        return;
        
    var ele = undefined;
    var box = undefined;
    var bar = undefined;
    var img = undefined;

    ele = document.getElementById("content_txt");
    if (ele != undefined) {
        if (left >= ele.offsetLeft && left <= ele.offsetLeft + ele.offsetWidth) {
            if (mouse_pos_y >= ele.offsetTop && mouse_pos_y <= ele.offsetTop + ele.offsetHeight) {
                page_content_auto_scroll_pause = true;
            }
            else
                page_content_auto_scroll_pause = false;
        }
        else
            page_content_auto_scroll_pause = false;
    }
    
    if (scroll_content == 1) {
        ele = document.getElementById("content_txt");
        box = document.getElementById("content_box");
        bar = document.getElementById("content_scroll");
        img = document.getElementById("img_scroll");
    }
    else if (scroll_content == 2) {
        ele = document.getElementById("div_featured_links");
        box = document.getElementById("div_featured_box");
        bar = document.getElementById("div_featured_scroll");
        img = document.getElementById("img_scroll_featured");
    }
    else if (scroll_content == 3) {
        ele = document.getElementById("people_txt");
        box = document.getElementById("people_box");
        bar = document.getElementById("people_scroll");
        img = document.getElementById("people_scroll_img");
    }
    else if (scroll_content == 4) {
        ele = document.getElementById("sub_menu_links");
        box = document.getElementById("sub_menu_box");
        bar = document.getElementById("submenu_scroll");
        img = document.getElementById("submenu_scroll_img");
    }
    else if (scroll_content == 5) {
        ele = document.getElementById("info_txt");
        box = document.getElementById("info_box");
        bar = document.getElementById("info_scroll");
        img = document.getElementById("info_scroll_img");
    }
    else if (scroll_content == 6) {
        ele = document.getElementById("info_pics");
        box = document.getElementById("info_pics");
        bar = document.getElementById("scroll_photos");
        img = document.getElementById("scroll_photos_img");
    }
    else if (scroll_content == 7) {
        ele = document.getElementById("searchresult");
        box = document.getElementById("searchresult");
        bar = document.getElementById("scroll_photos");
        img = document.getElementById("scroll_photos_img");
    }
    else if (scroll_content == 8) {
        if (document.getElementById("div_rare_opps_results") != undefined) {
            ele = document.getElementById("div_slideshow_small" + rare_opp_index);
            box = document.getElementById("div_slideshow_small" + rare_opp_index);
            bar = document.getElementById("slideshow_scroll" + rare_opp_index);
            img = document.getElementById("slideshow_scroll_img" + rare_opp_index);
        }
        else {
            ele = document.getElementById("div_slideshow_small");
            box = document.getElementById("div_slideshow_small");
            bar = document.getElementById("slideshow_scroll");
            img = document.getElementById("slideshow_scroll_img");
        }
    }
    else if (scroll_content == 9) {
        ele = document.getElementById("div_content_tmp");
        box = document.getElementById("div_content_box_tmp");
        bar = document.getElementById("tmp_scroll");
        img = document.getElementById("tmp_scroll_img");

        if (ele == undefined) {
            ele = document.getElementById("div_content_tmp" + rare_opp_index);
            box = document.getElementById("div_content_box_tmp" + rare_opp_index);
            bar = document.getElementById("tmp_scroll" + rare_opp_index);
            img = document.getElementById("tmp_scroll_img" + rare_opp_index);
        }
    }

    if (scroll_content != 6 && scroll_content != 7) {   //vertical scroll
        var y = mouse_pos_y - box.offsetTop - 20;
        if (document.getElementById("div_rare_opps_results") != undefined)
            y -= document.getElementById("div_rare_opps_results").offsetTop;
        if (scroll_content == 8) //slideshow
        {
            if (document.getElementById("div_rare_opps_results") != undefined)
                y -= document.getElementById("div_property_desc" + rare_opp_index).offsetTop + 40;
            else
                y -= document.getElementById("div_property_desc").offsetTop + 40;
        }
        else if (scroll_content == 9)
            y -= document.getElementById("div_property_desc" + rare_opp_index).offsetTop + 90;
        
        if (y < 0)
            y = 0;
        else if (y > bar.offsetHeight - 10)
            y = bar.offsetHeight - 10;
        
        var scroll = parseInt(y / (bar.offsetHeight - 10) * (ele.scrollHeight - ele.offsetHeight));
        ele.scrollTop = scroll;

        PositionScrollBar(ele, bar, img);
    }
    else { //horizontal scroll
        var x = left - bar.offsetLeft;
        if (x < 0)
            x = 0;
        else if (x > bar.offsetWidth - 10)
            x = bar.offsetWidth - 10;

        var scroll = parseInt(x / (bar.offsetWidth - 10) * (ele.scrollWidth - ele.offsetWidth));
        ele.scrollLeft = scroll;
        
        img.style.left = x + "px";

        if (scroll_content == 7) {
            var ele2 = document.getElementById("scroll_photos_count");
            var img = document.getElementById("canvas_scroll");
            if (img == undefined)
                img = document.getElementById("scroll_photos_img");
                
            if (ele2 != undefined) {
                
                ShowScrollValue(ele2, img, document.getElementById("searchresult"));
            }

            PositionScrollBar(ele, document.getElementById("scroll_photos"), img);
        }
    }
}

function PositionScrollBar(ele, bar, ball) {
    if (bar == undefined || ball == undefined)
        return;
    
    if (ele.id != "info_pics" && ele.id != "searchresult") {    //vertical
        var y = ele.scrollTop / (ele.scrollHeight - ele.offsetHeight) * bar.offsetHeight;

        ball.style.top = y + "px";

        y = ele.scrollTop + 20;
        bar.style.top = y + "px";
        bar.style.bottom = (20 - ele.scrollTop) + "px";
    }
    else {  //horizontal
        var x = ele.scrollLeft / (ele.scrollWidth - ele.offsetWidth) * bar.offsetWidth;

        if (ele.offsetWidth < ele.scrollWidth) {
            if (IsIE()) {
                bar.style.display = "";
                ball.style.display = "";
            }
            else {
                bar.style.display = "inherit";
                ball.style.display = "inherit";
            }
            
            var canvas = document.getElementById("canvas_scroll");
            if (canvas != undefined) {
                try {
                    var ctx = canvas.getContext("2d");
                } catch (e) { return; }

                var rot = 0;
                if (x < canvas.offsetLeft) {
                    rot = (canvas.offsetLeft + 2 - x) * -4.3;
                }
                else {
                    rot = (x - canvas.offsetLeft) * 4;
                }
                canvas.style.left = x + "px";
                ctx.clearRect(0, 0, canvas.width, canvas.height);
                ctx.translate(8, 8);
                ctx.rotate(rot * Math.PI / 180);
                ctx.translate(-8, -8);
                ctx.drawImage(document.getElementById("img_scroll"), 0, 0);



                DrawScrollBarBars(x, "canvas_scroll_bars", rot);
            }
            else {
                ball.style.left = x + "px";
                ball.style.imageOrientation = "90deg";

                x = ele.scrollLeft;
            }
        }
        else {
            bar.style.display = "none";
            ball.style.display = "none";
        }
    }
}

function DrawScrollBarBars(x, bars, rot) {
    var bars = document.getElementById(bars);
    var ctx2 = bars.getContext("2d");
    ctx2.clearRect(0, 0, bars.width, bars.height);

    var cx = x - 200;
    var cx2 = x + 200;
    
    ctx2.beginPath();
    for (var i = 0; i < bars.width; i += 10) {
        if (i >= cx && i <= cx2) {
            if (i < x)
                ctx2.moveTo(i, 8 + (x - i) / 50);
            else if (i > x)
                ctx2.moveTo(i, 8 + (i - x) / 50);
            else
                ctx2.moveTo(i, 10);
            ctx2.lineTo(i, 16);
        }
    }

    try{
    gradient = ctx2.createLinearGradient(cx, 0, cx2, 0);
    gradient.addColorStop(0, 'rgba(200, 200, 200, 0.1)');
    gradient.addColorStop(0.5, 'rgba(255, 255, 255, 0.9)');
    gradient.addColorStop(1, 'rgba(200, 200, 200, 0.1)');
    ctx2.strokeStyle = gradient;
    }
    catch(e)
    {
        return;
    }
    
    ctx2.linewidth = 1;
    ctx2.stroke();


    gradient = ctx2.createLinearGradient(cx, 0, cx2, 0);
    gradient.addColorStop(0, 'rgba(200, 200, 200, 0.3)');
    gradient.addColorStop(0.5, 'rgba(255, 255, 255, 0.9)');
    gradient.addColorStop(1, 'rgba(200, 200, 200, 0.3)');
    ctx2.strokeStyle = gradient;
    ctx2.beginPath();
    ctx2.moveTo(0, 16);
    ctx2.lineTo(bars.width, 16);
    ctx2.stroke();
}

function DrawScrollBarBall(ball) {
    var ele = document.getElementById("scroll_photos");
    var canvas = document.getElementById("canvas_scroll");
    if (canvas == undefined)
        return;
    var bars = document.getElementById("canvas_scroll_bars");
    try {
        var ctx = canvas.getContext("2d");
    }
    catch (e) { return; }

    bars.width = ele.offsetWidth;
    bars.height = ele.offsetHeight;
    canvas.style.left = "0px";
    ctx.clearRect(0, 0, canvas.width, canvas.height);
    ctx.drawImage(document.getElementById("img_scroll"), 0, 0);

    DrawScrollBarBars(0, "canvas_scroll_bars");
}


document.onmouseup = function(e) {
    scroll_content = 0;
}

function WindowMouseWheel(e) {
    e = window.event || e;
    var delta = e.detail ? e.detail * (-120) : e.wheelDelta;
    var mouse_pos_y2 = mouse_pos_y;
    var left2 = left;

    if (document.getElementById("div_rare_opps_results") != undefined) {
        var ele = document.getElementById("div_slideshow_small" + rare_opp_index);
        if (ele != undefined) {
            var ele2 = document.getElementById("div_property_desc" + rare_opp_index);
            var ele3 = document.getElementById("property_desc_side_popup" + rare_opp_index);
            left2 = left + document.getElementById("div_rare_opps_results").scrollLeft;
            if (left2 >= ele.offsetLeft + ele2.offsetLeft + ele3.offsetLeft && left2 <= ele.offsetLeft + ele.offsetWidth + ele2.offsetLeft + ele3.offsetLeft) {
                mouse_pos_y2 -= document.getElementById("div_rare_opps_results").offsetTop;
                if (mouse_pos_y2 >= ele.offsetTop + ele2.offsetTop + ele3.offsetTop && mouse_pos_y2 <= ele.offsetTop + ele.offsetHeight + ele2.offsetTop + ele3.offsetTop) {

                    if (delta < 0) {
                        ele.scrollTop += 10;
                    }
                    else {
                        ele.scrollTop -= 10;
                    }
                    PositionScrollBar(ele, document.getElementById("slideshow_scroll" + rare_opp_index), document.getElementById("slideshow_scroll_img" + rare_opp_index));
                    return false;
                }
            }
        }
    }
    else if (document.getElementById("div_slideshow_small") != undefined) {
        var ele = document.getElementById("div_slideshow_small");
        if (ele != undefined) {
            var ele2 = document.getElementById("div_property_desc");
            var ele3 = document.getElementById("property_desc_side_popup");
            if (left >= ele.offsetLeft + ele2.offsetLeft + ele3.offsetLeft && left <= ele.offsetLeft + ele.offsetWidth + ele2.offsetLeft + ele3.offsetLeft) {
                if (mouse_pos_y >= ele.offsetTop + ele2.offsetTop + ele3.offsetTop && mouse_pos_y <= ele.offsetTop + ele.offsetHeight + ele2.offsetTop + ele3.offsetTop) {

                    if (delta < 0) {
                        ele.scrollTop += 10;
                    }
                    else {
                        ele.scrollTop -= 10;
                    }
                    PositionScrollBar(ele, document.getElementById("slideshow_scroll"), document.getElementById("slideshow_scroll_img"));
                    return false;
                }
            }
        }
    }

    ele = document.getElementById("div_content_tmp");
    if (ele != undefined || document.getElementById("div_rare_opps_results") != undefined) {
        var ele2 = undefined;
        var ele3 = undefined;
        var ext = "";
        var left2 = left;
        
        if (ele != undefined) {
            ele2 = document.getElementById("div_property_desc");
            ele3 = document.getElementById("searchimg");
            mouse_pos_y2 = mouse_pos_y;
            left2 = left;
        }
        else {
            ele = document.getElementById("div_content_tmp" + rare_opp_index);
            ele2 = document.getElementById("div_property_desc" + rare_opp_index);
            ele3 = document.getElementById("searchimg" + rare_opp_index);
            ext = "" + rare_opp_index;
            mouse_pos_y2 = mouse_pos_y - document.getElementById("div_rare_opps_results").offsetTop;
            left2 = left + document.getElementById("div_rare_opps_results").scrollLeft;
        }

        if (left2 >= ele.offsetLeft + ele2.offsetLeft + ele3.offsetWidth + 10 && left2 <= ele.offsetLeft + ele.offsetWidth + ele2.offsetLeft + ele3.offsetWidth + 10) {
            if (mouse_pos_y2 >= ele.offsetTop + ele2.offsetTop && mouse_pos_y2 <= ele.offsetTop + ele.offsetHeight + ele2.offsetTop) {
                if (delta < 0) {
                    ele.scrollTop += 10;
                }
                else {
                    ele.scrollTop -= 10;
                }
                PositionScrollBar(ele, document.getElementById("tmp_scroll" + ext), document.getElementById("tmp_scroll_img" + ext));
                return false;
            }
        }
    }
    
    ele = document.getElementById("content_txt");
    if (ele != undefined) {
        if (document.getElementById("content_scroll") != undefined) {
            if (left >= ele.offsetLeft && left <= ele.offsetLeft + ele.offsetWidth) {
                if (mouse_pos_y >= ele.offsetTop && mouse_pos_y <= ele.offsetTop + ele.offsetHeight) {
                    if (delta < 0) {
                        ele.scrollTop += 20;
                    }
                    else {
                        ele.scrollTop -= 20;
                    }
                    PositionScrollBar(ele, document.getElementById("content_scroll"), document.getElementById("img_scroll"));
                    return false;
                }
            }
        }
    }

    ele = document.getElementById("div_featured_links");
    if (ele != undefined) {
        if (left >= ele.offsetLeft && left <= ele.offsetLeft + ele.offsetWidth) {
            if (mouse_pos_y >= ele.offsetTop && mouse_pos_y <= ele.offsetTop + ele.offsetHeight) {
                if (delta < 0) {
                    ele.scrollTop += 10;
                }
                else {
                    ele.scrollTop -= 10;
                }
                PositionScrollBar(ele, document.getElementById("div_featured_scroll"), document.getElementById("img_scroll_featured"));
                return false;
            }
        }
    }
    
    ele = document.getElementById("people_txt");
    if (ele != undefined) {
        if (left >= ele.offsetLeft && left <= ele.offsetLeft + ele.offsetWidth) {
            if (mouse_pos_y >= ele.offsetTop && mouse_pos_y <= ele.offsetTop + ele.offsetHeight) {
                if (delta < 0) {
                    ele.scrollTop += 10;
                }
                else {
                    ele.scrollTop -= 10;
                }
                PositionScrollBar(ele, document.getElementById("people_scroll"), document.getElementById("people_scroll_img"));
                return false;
            }
        }
    }
    
    ele = document.getElementById("sub_menu_links");
    if (ele != undefined) {
        if (left >= ele.offsetLeft && left <= ele.offsetLeft + ele.offsetWidth) {
            if (mouse_pos_y >= ele.offsetTop && mouse_pos_y <= ele.offsetTop + ele.offsetHeight) {
                
                if (delta < 0) {
                    ele.scrollTop += 10;
                }
                else {
                    ele.scrollTop -= 10;
                }
                PositionScrollBar(ele, document.getElementById("submenu_scroll"), document.getElementById("submenu_scroll_img"));
                return false;
            }
        }
    }

    ele = document.getElementById("info_txt");
    if (ele != undefined) {
        if (left >= ele.offsetLeft && left <= ele.offsetLeft + ele.offsetWidth) {
            if (mouse_pos_y >= ele.offsetTop && mouse_pos_y <= ele.offsetTop + ele.offsetHeight) {
                if (delta < 0) {
                    ele.scrollTop += 10;
                }
                else {
                    ele.scrollTop -= 10;
                }
                PositionScrollBar(ele, document.getElementById("info_scroll"), document.getElementById("info_scroll_img"));
                return false;
            }
        }
    }
}

if (window.addEventListener)
    window.addEventListener('DOMMouseScroll', WindowMouseWheel, false);
window.onmousewheel = document.onmousewheel = WindowMouseWheel;


var left = 0;
var header_scroll;
var countrypop = false;
var countrypopfade = 0;
var countrypopalpha = 0.0;
var moving_all = false;
var moving_all_speed = 0;
var dev_edit_content_cache = "";
var dev_edit_content_cache_add = "";
var dev_edit_content_id = "";
var dev_edit_ck = undefined;
var dev_edit_cur = false;
var dev_edit_on = false;
var showing_font = false;
var viewportwidth = 0;
var viewportheight = 0;
var u = "" + window.location;
u = u.substring(7);
u = u.substring(0, u.indexOf('/') + 1);
if (u == "localhost/")
    u += "acnww/";

u = "http://" + u;  //+ "acnww/";

var top = 0;
document.onmousemove = function(e) {
    e = e || window.event;
    left = parseInt(mouseX(e));
    mouseY(e);
    top = mouse_pos_y;

    if (document.getElementById("header") != undefined) {
        if (document.getElementById("header").className != "invisible") {
            top -= 260;
            left -= 50;
        }
    }
}

function ClearForm(form_name, button_id) {
    if (confirm("Are you sure you want to clear the " + form_name + " Form?")) {
 
        document.forms[0].reset();
        if (button_id != "")
            document.getElementById(button_id).disabled = true;
    }
}
function DoNothing() {
}

function GetScrollY() {
    var s_y = 0;
    if (self.pageYOffset) // all except Explorer
    {
        s_y = self.pageYOffset;
    }
    else if (document.documentElement && document.documentElement.scrollTop)
    // Explorer 6 Strict
    {
        s_y = document.documentElement.scrollTop;
    }
    else if (document.body) // all other Explorers
    {
        s_y = document.body.clientHeight;
    }

    if (s_y == document.body.offsetHeight)
        s_y = 0;
    return s_y;
}

function GetScrollX() {
    var s_x = 0;
    if (self.pageXOffset) // all except Explorer
    {
        s_x = self.pageXOffset;
    }
    else if (document.documentElement && document.documentElement.scrollLeft)
    // Explorer 6 Strict
    {
        s_x = document.documentElement.scrollLeft;
    }
    else if (document.body) // all other Explorers
    {
        s_x = document.body.clientWidth;
    }

    if (s_x == document.body.clientWidth)
        s_x = 0;
    return s_x;
}

function IE6Alpha(ele) {
    if (IsIE6()) {
        if (ele.src.indexOf("t.gif") == -1) {
            ele.style.filter = 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' + ele.src + '", sizingMethod="image")';
            ele.style.backgroundImage = 'none';
            ele.src = 't.gif';
        }
    }
}

function IsChrome() {
    return navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
}

function IsFirefox() {
    return navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
}

function IsIE9() {
    var browser = navigator.appName;
    var b_version = navigator.appVersion;
    var version = parseFloat(b_version);
    if (b_version.indexOf("MSIE 9") > 0)
        return true;
    return false;
}

function IsIE6() {
    var browser = navigator.appName;
    var b_version = navigator.appVersion;
    var version = parseFloat(b_version);
    if (b_version.indexOf("MSIE 6") > 0)
        return true;
    return false;
}

function IsIE() {
    var browser = navigator.appName;
    var b_version = navigator.appVersion;
    var version = parseFloat(b_version);
    if (b_version.indexOf("MSIE") > 0)
        return true;
    return false;
}

function IsSafari() {
    if (navigator.userAgent.indexOf("Safari") > 0)
        return true;
    return false;
}

function IsOpera() {
    if (navigator.userAgent.indexOf("Opera") >= 0)
        return true;
    return false;
}

function IsWindowOpened(name) 
{
    try
    {
         if(eval("window." + name + ".document"))
            return true;
    }
    catch(e)
    {
        return false;
    }
}

function KeepConnection() {
    var url = "./Property.aspx";
    GetAJAX(url, DoNothing);
}

function KeepConnection2() {
    var url = "./Property.aspx?action=";
    GetAJAX(url, KeepConnection3);
}

function KeepConnection3(html) {
    setTimeout("KeepConnection2();", 12000);
}

function mouseX(evt) {
    if (evt.pageX)
        return evt.pageX;
    else if (evt.clientX)
        return evt.clientX;
    else
        return 0;
}

function mouseY(evt) {
    if (evt.pageY) {
        mouse_pos_y = evt.pageY;
        return evt.pageY;
    }
    else if (evt.clientY) {
        mouse_pos_y = evt.clientY;
        return evt.clientY;
    }
    else {
        mouse_pos_y = 0;
        return 0;
    }
}

function Order(item, issue) {
    var url = "./Order.aspx?item=" + item;
    if (issue != "")
        url += "&issue=" + issue;
    
    window.open(url, "acnww_window_order_form", "width=800, height=600");
    
    return false;
}

function ShowDivover(id, pid) {
    if (IsIE6()) {
        var inputs = document.getElementById("content").getElementsByTagName("select");
        for (var i = 0; i < inputs.length; i++)
            inputs[i].style.display = "none";
    }
    if(header_scroll != null)
        header_scroll.Pause();
    
    if (document.getElementById("bgblack") != undefined) {

        document.getElementById("bgblack").className = "";
        var content = document.getElementById("content");
        document.getElementById("bgblack").style.height = content.offsetHeight + "px";

    }

    disable_key = true;
    var ele = document.getElementById("frmcontact");

    if (id != "map" && id != "photos" && id != "vmap" && id != "login" && id != "business_card" && id != "frmlocal" && id != "refine_search") {
        if (document.getElementById("divfrmcontact") != undefined)
            document.getElementById("divfrmcontact").className = "";
    }
    if (id == "frmcontact") {
        ele.src = "Form-Contact.aspx?id=" + pid;
        ele.style.width = "605px";
        ele.style.height = "405px";
        ele = document.getElementById("divfrmcontact");
        ele.style.top = (GetScrollY() + 100) + "px";
    }
    else if (id == "bio_qrcode") {
        GetViewport();
        ele = document.getElementById("qr_code_bio");
        ele.style.left = parseInt(GetScrollX() + (viewportwidth / 2) - (ele.offsetWidth / 2)) + "px";
        ele.style.top = parseInt(GetScrollY() + (viewportheight / 2) - (ele.offsetHeight / 2)) + "px";
        ele.style.visibility = "visible";
    }
    else if (id == "gallery") {
        ele = document.getElementById("gallery_popup");
        var img = document.getElementById("gallery_popup_img");
        img.src = pid;
        GetViewport();
        ele.style.left = parseInt(GetScrollX() + (viewportwidth / 2) - (600 / 2)) + "px";
        ele.style.top = parseInt(GetScrollY() + (viewportheight / 2) - (480 / 2)) + "px";
        ele.style.visibility = "visible";
    }
    else if (id == "div_map") {
        GetViewport();
        ele = document.getElementById("div_map");
        ele.className = "";
        ele.style.left = parseInt(GetScrollX() + (viewportwidth / 2) - (ele.offsetWidth / 2)) + "px";
        ele.style.top = parseInt(GetScrollY() + (viewportheight / 2) - (ele.offsetHeight / 2)) + "px";
    }
    else if (id == "map") {
        ele = document.getElementById("imgmap");
        if (ele != undefined) {
            ele.className = "centerscreen";
            ele.src = pid;
        }
    }
    else if (id == "all_cities") {
        ele = document.getElementById("all_cities");
        if (ele != undefined) {
            ele.className = "";
        }
    }
    else if (id == "business_card") {
        ele = document.getElementById("img_card");
        if (ele != undefined) {
            ele.className = "centerscreen";
        }
    }
    else if (id == "news") {
        ele = document.getElementById("news_popup");
        ele.innerHTML = pid;
        ele.style.top = (GetScrollY() + 100) + "px";
        ele.className = "";
    }
    else if (id == "countrypanel") {
        ele = document.getElementById("divfrmcontact");
        if (ele != undefined)
            ele.className = "invisible";
        ele = document.getElementById("countrypanel");
        if (ele != undefined)
            ele.className = "";
    }
    else if (id == "refine_search") {
        ele = document.getElementById("refine");

        ele.className = "";
        ele.style.top = (GetScrollY() + 100) + "px";

        var txt = GetParam("Country");
        if (txt != "Select A Country")
            document.getElementById("lst1").value = txt;
        txt = GetParam("Province");
        if (txt != "Select A Province") {
            document.getElementById("lst2").value = txt;
        }
        txt = GetParam("City");
        if (txt != "Select A City") {
            document.getElementById("lst3").value = txt;
        }

        txt = GetParam("Type");
        if (parseInt(txt) < 0)
            txt = "0";
        document.getElementById("lst4_ref").selectedIndex = parseInt(txt);
        txt = GetParam("Bed");
        if (parseInt(txt) < 0)
            txt = "0";
        document.getElementById("lst5_ref").selectedIndex = parseInt(txt);
        txt = GetParam("sole");
        if (txt == "1")
            document.getElementById("chkref2").checked = true;
        else
            document.getElementById("chkref2").checked = false;

        var min = GetParam("minprice");
        var max = GetParam("maxprice");
        if ((min == "" || min == "Price") && max != "" && max != "Price")
            document.getElementById("lst6_ref").selectedIndex = 1;
        else if (min == "50000")
            document.getElementById("lst6_ref").selectedIndex = 2;
        else if (min == "100000")
            document.getElementById("lst6_ref").selectedIndex = 3;
        else if (min == "300000")
            document.getElementById("lst6_ref").selectedIndex = 4;
        else if (min == "500000")
            document.getElementById("lst6_ref").selectedIndex = 5;
        else if (min == "700000")
            document.getElementById("lst6_ref").selectedIndex = 6;
        else if (min == "1000000" && (max == "" || max == "Price"))
            document.getElementById("lst6_ref").selectedIndex = 7;
    }
    else if (id == "photos") {
        ele = document.getElementById("photos");
        ele.className = "";
        var id_tmp = pid.substr(1);
        if (pid.substr(0, 1) == 'p')
            GetAJAX(host + "Property.aspx?action=Photos&id=" + id_tmp, ShowAlbumPhoto);
        else if (pid.substr(0, 1) == 'f')
            GetAJAX(host + "Property.aspx?action=FloorPlans&id=" + id_tmp, ShowAlbumPhoto);
    }
    else if (id == "vmap") {
        ele = document.getElementById("divvmap");
        if (ele != undefined) {
            ele.className = "";
            ele.style.top = (window.pageYOffset + 50) + "px";
            header_scroll.Pause();
        }
    }
    else if (id == "box_subscribe") {
        ele = document.getElementById("box_subscribe");
        ele.className = "";
        ele.style.top = (GetScrollY() + 100) + "px";
        document.getElementById("sub_ID").value = pid;
    }
    else if (id == "login") {
        if (document.getElementById("flash") != undefined)
            document.getElementById("flash").className = "invisible";

        ele = document.getElementById("asklogin");
        if (ele != undefined) {
            ele.className = "";
            ele.style.top = (GetScrollY() + 100) + "px";
        }
    }
    else if (id == "cpi") {
        ele = document.getElementById("divcpi");
        if (ele != undefined)
            ele.className = "";
    }
    else if (id == "frmlocal") {
        if (document.getElementById("frmlocal") != undefined) {
            document.getElementById("frmlocal").className = "center";
            if (pid[0] == '.')
                document.getElementById("frmlocal").src = pid;
        }
    }
    else {
        ele.src = "Form-Contact.aspx?email=true&id=" + pid;
        ele.style.width = "605px";
        ele.style.height = "405px";
        ele = document.getElementById("divfrmcontact");
        ele.style.top = (GetScrollY() + 100) + "px";
    }
}

function HideDivover() {
    if (IsIE6()) {
        var inputs = document.getElementById("content").getElementsByTagName("select");
        for (var i = 0; i < inputs.length; i++)
            inputs[i].style.display = "block";
    }
    if (document.getElementById("bgblack") != undefined) {
        document.getElementById("bgblack").className = "invisible";
    }
    disable_key = false;
    if (document.getElementById("divfrmcontact") != undefined)
        document.getElementById("divfrmcontact").className = "invisible";
    if (document.getElementById("frmfriend") != undefined)
        document.getElementById("frmfriend").className = "invisible";
    if (document.getElementById("imgmap") != undefined)
        document.getElementById("imgmap").className = "invisible";
    if (document.getElementById("photos") != undefined)
        document.getElementById("photos").className = "invisible";
    if (document.getElementById("divvmap") != undefined)
        document.getElementById("divvmap").className = "invisible";
    if (document.getElementById("asklogin") != undefined)
        document.getElementById("asklogin").className = "invisible";
    if (document.getElementById("flash") != undefined)
        document.getElementById("flash").className = "";
    if (document.getElementById("img_card") != undefined)
        document.getElementById("img_card").className = "invisible";
    if (document.getElementById("frmlocal") != undefined)
        document.getElementById("frmlocal").className = "invisible";
    if (document.getElementById("refine") != undefined)
        document.getElementById("refine").className = "invisible";
    if (document.getElementById("box_subscribe") != undefined)
        document.getElementById("box_subscribe").className = "invisible";
    if (document.getElementById("divcpi") != undefined)
        document.getElementById("divcpi").className = "invisible";
    if (document.getElementById("news_popup") != undefined)
        document.getElementById("news_popup").className = "invisible";
    if (document.getElementById("countrypanel") != undefined)
        document.getElementById("countrypanel").className = "invisible";
    if (document.getElementById("hid") != undefined)
        document.getElementById("hid").style.visibility = "hidden";
    if (document.getElementById("all_cities") != undefined)
        document.getElementById("all_cities").className = "invisible";
    if (document.getElementById("qr_code_bio") != undefined)
        document.getElementById("qr_code_bio").style.visibility = "hidden";
    if (document.getElementById("div_map") != undefined)
        document.getElementById("div_map").className = "invisible";
    if (document.getElementById("gallery_popup") != undefined)
        document.getElementById("gallery_popup").style.visibility = "hidden";

    header_scroll.Resume();
    if (ifade != undefined)
        ifade.Resume();

}

function GetViewport() {
    if (typeof window.innerWidth != 'undefined') {
        viewportwidth = window.innerWidth,
         viewportheight = window.innerHeight
    }
    else if (typeof document.documentElement != 'undefined' && typeof document.documentElement.clientWidth != 'undefined' && document.documentElement.clientWidth != 0) {
        viewportwidth = document.documentElement.clientWidth,
          viewportheight = document.documentElement.clientHeight
    }
    else {
        viewportwidth = document.getElementsByTagName('body')[0].clientWidth,
          viewportheight = document.getElementsByTagName('body')[0].clientHeight
    }
}

function InputOnlyNumbers(ele) {
    ele.onkeydown = function(e) {
        if (!e) var e = window.event;

        var code = e.keyCode;

        if (code >= 48 && code <= 57)
            return true;
        else if (code == 8 || code == 46 || code == 116)
            return true;
        else if (code == 190) {
            var found = false;
            var str = this.valueOf;
            for (var i = 0; i < str.length; i++) {
                if (str.charAt(i) == '.') {
                    if (found)
                        return false;
                    else
                        found = true;
                }
            }
            return true;
        }

        return false;
    }
}

function TrimStr(str, chr) {
    while (str.indexOf(chr) > 0)
        str = str.replace(chr, "");

    return str;
}

function ShowAllInflationCountries() {
    var container = document.getElementById("div_countries");
    var ele = document.getElementById("countries");
    var box = document.getElementById("content_txt");

    if (content_html == "") {
        content_html = box.innerHTML;
        box.innerHTML = "<div id='div_countries_content'><h3 style='padding-left:20px;'>Inflation Variance from Previous Year</h3><div onclick='ShowAllInflationCountries();' class='silent_link' style='padding-left:20px; margin-bottom:-30px;'>Close</div>" + 
                        "<div id=\"content_scroll\"><img id=\"img_scroll\" src=\"./Images/Intro/Test/scroll_ball.png\" onmousedown=\"scroll_content=1; return false;\" onmouseup=\"scroll_content=0;\" /></div>" +
                        container.innerHTML + "</div>";

        var as = box.getElementsByTagName("A");
        as[0].style.display = "none";
        for (var i = 1; i < as.length; i++) {
            as[i].style.float = "left";
            as[i].style.position = "relative";
            as[i].style.left = "";
            as[i].style.top = "";
            as[i].style.opacity = 0.8;
            as[i].style.width = "180px";
            as[i].style.height = "20px";
            as[i].style.display = "inherit";
            as[i].style.paddingLeft = "20px";
        }
    }
    else {
        box.innerHTML = content_html;
        content_html = "";
    }

    RepositionWindow();
}

function FitAllImages(id, frame) {
    var ele = document.getElementById(id);
    if (ele == undefined)
        return;
    var ele2 = document.getElementById(frame);

    GetViewport();
    var w = ele.offsetWidth;

    if (w + ele2.offsetLeft > viewportwidth - 50) {
        w = viewportwidth - ele2.offsetLeft * 2;
    }

    var imgs = ele.getElementsByTagName("img");
    for (var i = 0; i < imgs.length; i++) {
        if (w > 0)
            imgs[i].style.maxWidth = (w - imgs[i].offsetLeft) + "px";
        else
            imgs[i].style.maxWidth = "";
    }
}

function FilterNumber(str) {
    while (str.indexOf(',') > 0)
        str = str.replace(",", "");

    var index = str.indexOf('.');
    if (index < 0)
        index = str.length;
    for (var i = index - 3; i > 0; i -= 3)
        str = str.substr(0, i) + "," + str.substr(i);

    return str
}

