// general
function getE(v) {
    return document.getElementById(v);
}
// Add to Favorites
function CreateBookmarkLink() {
    title = document.title;
    url = location.href;

    if (window.sidebar) { // Mozilla Firefox Bookmark
        window.sidebar.addPanel(title, url, "");
    } else if (window.external) { // IE Favorite
        window.external.AddFavorite(url, title);
    }
    else if (window.opera && window.print) { // Opera Hotlist
        return true;
    }
}
//for IE png files
function fixPNG(element) {
    if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent)) {
        var src;

        if (element.tagName == 'IMG') {
            if (/\.png$/.test(element.src)) {
                src = element.src;
                element.src = "userfiles/image/default/spacer.gif";
            }
        }
        else {
            src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i)
            if (src) {
                src = src[1];
                element.runtimeStyle.backgroundImage = "none";
            }
        }
        if (src) element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='image')";
    }
}


var current_i = 0;
function switchAdvertisementBanner() {
    var adv_count = getE('ctl00_TopControl1_AdvertisementCountHiddenField');
    if (current_i >= (adv_count.value)) {
        current_i = 0;
    } else {
        current_i++;
    }
    var adv_text = getE('Advertisement' + current_i);
    if (adv_text)
    if (FlashDetect.installed) {
            getE('AdvertisementText').innerHTML = adv_text.innerHTML;
    }
    else {
        var value = getflashvalue('Advertisement' + current_i);
        getE('AdvertisementText').innerHTML = "<a href='" + getfalshURL(value) + "'><img height='120' width='630' style='border-width:0px;border:none;' src='userfiles/image/" + value + ".jpg' alt='' /></a>"; ;
    }
}
//function switchAdvertismentImgBanner() {
//    var adv_count = getE('ctl00_TopControl1_AdvertisementCountHiddenField');
//    if (current_i >= (adv_count.value)) {
//        current_i = 0;
//    } else {
//        current_i++;
//    }
//    var adv_text = getE('Advertisement' + current_i);

//    if (adv_text) {
//        var value = getflashvalue('Advertisement' + current_i);
//        getE('AdvertisementText').innerHTML = "<img height='120' width='630' src='userfiles/image/" + value + ".jpg' alt='' />"; ;
//    }
//}
function checkflash() {
    if (!FlashDetect.installed) {
        var value1 = getflashvalue('AdvertisementText');
        var value2 = getflashvalue('oursuggestion_div');
        var value3 = getflashvalue('productflashmenu_div');
        var value4 = getflashvalue('announcemt_div');
        getE('AdvertisementText').innerHTML = "<a href='"+getfalshURL(value1)+"'><img height='120' width='630' style='border-width:0px;border:none;' src='userfiles/image/" + value1 + ".jpg' alt='' /></a>";
        if (getE('oursuggestion_div') != null)
            getE('oursuggestion_div').innerHTML = "";
        if (getE('productflashmenu_div')!= null)
            getE('productflashmenu_div').innerHTML = "";
        if (getE('announcemt_div') != null)
            getE('announcemt_div').innerHTML = "";
        $('.page').find('p').find('object').remove();
        $('.page').find('p').find('embed').remove();
    } 
    initAdvertisementSwitcher();
}
function getflashvalue(flash_div) {
    if (getE(flash_div) != null) {
        var adv_flashtext = getE(flash_div).innerHTML;
        //getE('AdvertisementText').innerHTML = adv_text.innerHTML;
        var firstindex = adv_flashtext.indexOf("userfiles/flash/", 0);
        var secondindex = adv_flashtext.indexOf(".swf", 0);
        var value = adv_flashtext.substring(firstindex + 16, secondindex);
        return value;
    }
}
function getfalshURL(value) {
    var retvalue="#";
    switch (value) {
        case "ameria_banner 630x120 arm(3)": retvalue = "http://bit.ly/uj3Ynm";
            break;
        case "ameria_banner 630x120 rus(3)": retvalue = "http://bit.ly/ubuOrX";
            break;
        case "ameria_banner 630x120 eng(3)": retvalue = "http://bit.ly/tD7lZz";
            break;
        case "2arm(1)": retvalue = "http://bit.ly/uME6Cd";
            break;
        case "arm": retvalue = "http://bit.ly/uME6Cd";
            break;
        case "2rus(1)": retvalue = "http://bit.ly/sVOET7";
            break;
        case "rus": retvalue = "http://bit.ly/sVOET7";
            break;
        case "2eng(2)": retvalue = "http://bit.ly/ufJkMK";
            break;
        case "eng": retvalue = "http://bit.ly/ufJkMK";
            break;
        case "ameria_eng(1)": retvalue = "http://www.ameriabank.am/content.aspx?id=investment+loan&page=99&itm=retail+1.8.1&lang=28";
            break;
        case "ameria_arm(1)": retvalue = "http://www.ameriabank.am/content.aspx?id=investment+loan&page=99&itm=retail+1.8.1&lang=33";
            break;
        case "ameria_rus(1)": retvalue = "http://www.ameriabank.am/content.aspx?id=investment+loan&page=99&itm=retail+1.8.1&lang=4";
            break;
        case "620x130_rus(2)": retvalue = "http://www.ameriabank.am/content.aspx?id=brocerige+%28retail%29&page=100&itm=ib+4.2&lang=4";
            break;
        case "620x130_arm(3)": retvalue = "http://www.ameriabank.am/content.aspx?id=brocerige+%28retail%29&page=100&itm=ib+4.2&lang=4";
            break;
        case "620x130_arm(3)": retvalue = "http://www.ameriabank.am/content.aspx?id=brocerige+%28retail%29&page=100&itm=ib+4.2&lang=33";
            break;
        case "620x130_eng(3)": retvalue = "http://www.ameriabank.am/content.aspx?id=brocerige+%28retail%29&page=100&itm=ib+4.2&lang=28";
            break;
    }
    return retvalue;
}
function initAdvertisementSwitcher() {
    current_i = 1;
    window.setInterval("switchAdvertisementBanner()", 19000);
}

function SetProductList(pltype) {
    $(document).ready(function () {
        if ("#" + pltype + "ToggleButton") {
            $("#" + pltype + "ToggleButton").click(function (e) {
                $("#" + pltype + '_body').slideToggle("fast", plSlideToogleCallBack);
                return false;
            });
        }
        if (getCookie(pltype + "_max") == "false") {
            $("#" + pltype + '_body').attr("style", "display:none");
            plMin(pltype);
        }
    });
    function plSlideToogleCallBack() {
        var css = $("#" + pltype + '_title').attr("class");
        if (css == "pltitle") {
            plMin(pltype);
        } else {
            plMax(pltype);
        }
    }
}
function plMax(pltype) {
    $("#" + pltype + '_title').attr("class", "pltitle");
    $("#" + pltype + "ToggleButton").attr("src", "userfiles/image/product/t1.jpg");
    setCookie(pltype + "_max", "true");
}
function plMin(pltype) {
    $("#" + pltype + '_title').attr("class", "plmintitle");
    $("#" + pltype + "ToggleButton").attr("src", "userfiles/image/product/t2.jpg");
    setCookie(pltype + "_max", "false");
}
//   ajax js
/************************************************************************************************************
Ajax dynamic content
Copyright (C) 2006  DTHMLGoodies.com, Alf Magne Kalleland

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA

Dhtmlgoodies.com., hereby disclaims all copyright interest in this script
written by Alf Magne Kalleland.

Alf Magne Kalleland, 2006
Owner of DHTMLgoodies.com


************************************************************************************************************/

var enableCache = true;
var jsCache = new Array();

var dynamicContent_ajaxObjects = new Array();

function ajax_showContent(divId, ajaxIndex, url, callbackOnComplete) {
    var targetObj = document.getElementById(divId);
    targetObj.innerHTML = dynamicContent_ajaxObjects[ajaxIndex].response;
    if (enableCache) {
        jsCache[url] = dynamicContent_ajaxObjects[ajaxIndex].response;
    }
    dynamicContent_ajaxObjects[ajaxIndex] = false;

    ajax_parseJs(targetObj);

    if (callbackOnComplete) {
        executeCallback(callbackOnComplete);
    }
}

function executeCallback(callbackString) {
    if (callbackString.indexOf('(') == -1) {
        callbackString = callbackString + '()';
    }
    try {
        eval(callbackString);
    } catch (e) {

    }


}

function ajax_loadContent(divId, url, callbackOnComplete) {
    if (enableCache && jsCache[url]) {
        document.getElementById(divId).innerHTML = jsCache[url];
        ajax_parseJs(document.getElementById(divId))
        evaluateCss(document.getElementById(divId))
        if (callbackOnComplete) {
            executeCallback(callbackOnComplete);
        }
        return;
    }

    var ajaxIndex = dynamicContent_ajaxObjects.length;
    document.getElementById(divId).innerHTML = 'Loading content - please wait';
    dynamicContent_ajaxObjects[ajaxIndex] = new sack();

    if (url.indexOf('?') >= 0) {
        dynamicContent_ajaxObjects[ajaxIndex].method = 'GET';
        var string = url.substring(url.indexOf('?'));
        url = url.replace(string, '');
        string = string.replace('?', '');
        var items = string.split(/&/g);
        for (var no = 0; no < items.length; no++) {
            var tokens = items[no].split('=');
            if (tokens.length == 2) {
                dynamicContent_ajaxObjects[ajaxIndex].setVar(tokens[0], tokens[1]);
            }
        }
        url = url.replace(string, '');
    }


    dynamicContent_ajaxObjects[ajaxIndex].requestFile = url; // Specifying which file to get
    dynamicContent_ajaxObjects[ajaxIndex].onCompletion = function () { ajax_showContent(divId, ajaxIndex, url, callbackOnComplete); }; // Specify function that will be executed after file has been found
    dynamicContent_ajaxObjects[ajaxIndex].runAJAX(); 	// Execute AJAX function	


}

function ajax_parseJs(obj) {
    var scriptTags = obj.getElementsByTagName('SCRIPT');
    var string = '';
    var jsCode = '';
    for (var no = 0; no < scriptTags.length; no++) {
        if (scriptTags[no].src) {
            var head = document.getElementsByTagName("head")[0];
            var scriptObj = document.createElement("script");

            scriptObj.setAttribute("type", "text/javascript");
            scriptObj.setAttribute("src", scriptTags[no].src);
        } else {
            if (navigator.userAgent.toLowerCase().indexOf('opera') >= 0) {
                jsCode = jsCode + scriptTags[no].text + '\n';
            }
            else
                jsCode = jsCode + scriptTags[no].innerHTML;
        }

    }

    if (jsCode) ajax_installScript(jsCode);
}


function ajax_installScript(script) {
    if (!script)
        return;
    if (window.execScript) {
        window.execScript(script)
    } else if (window.jQuery && jQuery.browser.safari) { // safari detection in jQuery
        window.setTimeout(script, 0);
    } else {
        window.setTimeout(script, 0);
    }
}


function evaluateCss(obj) {
    var cssTags = obj.getElementsByTagName('STYLE');
    var head = document.getElementsByTagName('HEAD')[0];
    for (var no = 0; no < cssTags.length; no++) {
        head.appendChild(cssTags[no]);
    }
}

/************************************************************************************************************
@fileoverview
Ajax tooltip
Copyright (C) 2006  Alf Magne Kalleland(post@dhtmlgoodies.com)
	
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
	
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.
	
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
	
	
www.dhtmlgoodies.com 
Alf Magne Kalleland

************************************************************************************************************/

/* Custom variables */

/* Offset position of tooltip */
var x_offset_tooltip = 5;
var y_offset_tooltip = 0;

/* Don't change anything below here */


var ajax_tooltipObj = false;
var ajax_tooltipObj_iframe = false;

var ajax_tooltip_MSIE = false;
if (navigator.userAgent.indexOf('MSIE') >= 0) ajax_tooltip_MSIE = true;

var currentTooltipObject = false;

function ajax_showAccordionTooltip(e, itemId, level, inputObj) {
    var itemTooltipContentDivId = itemId + 'DescriptionLev' + level;
    ajax_showTooltip(e, itemTooltipContentDivId, inputObj);
}

function ajax_showTooltip(e, itemTooltipContentDivId, inputObj) {
    ajax_showTooltipWithSpecialCssClass(e, itemTooltipContentDivId, inputObj, 'ajax_tooltip');
}

function ajax_showTooltipWithSpecialCssClass(e, itemTooltipContentDivId, inputObj, css_class) {
    currentTooltipObject = inputObj;
    //window.onresize = function(e) { ajax_positionTooltip(e); } ;
    if (document.all) e = event;
    if (!ajax_tooltipObj)	/* Tooltip div not created yet ? */
    {
        ajax_tooltipObj = document.createElement('DIV');
        ajax_tooltipObj.style.position = 'absolute';
        ajax_tooltipObj.id = 'ajax_tooltipObj';

        document.body.appendChild(ajax_tooltipObj);

        var leftDiv = document.createElement('DIV'); /* Create arrow div */
        leftDiv.className = css_class + '_arrow';
        leftDiv.id = 'ajax_tooltip_arrow';
        ajax_tooltipObj.appendChild(leftDiv);

        var contentDiv = document.createElement('DIV'); /* Create tooltip content div */
        contentDiv.className = css_class;
        ajax_tooltipObj.appendChild(contentDiv);
        contentDiv.id = 'ajax_tooltip_content';
        contentDiv.style.marginBottom = '15px';

        var itemTooltipPanel = document.getElementById(itemTooltipContentDivId);
        if (itemTooltipPanel) {
            contentDiv.innerHTML = itemTooltipPanel.innerHTML;
        }
    }
    ajax_tooltipObj.style.display = 'block';
    ajax_positionTooltip(e, inputObj);
}

function ajax_positionTooltip(e, inputObj) {
    if (!inputObj) inputObj = currentTooltipObject;
    if (inputObj) {
        var leftPos = (ajaxTooltip_getLeftPos(inputObj) + inputObj.offsetWidth);
        var topPos = ajaxTooltip_getTopPos(inputObj);
    } else {
        var leftPos = e.clientX;
        var topPos = e.clientY;
    }
    var tooltipWidth = document.getElementById('ajax_tooltip_content').offsetWidth + document.getElementById('ajax_tooltip_arrow').offsetWidth;
    ajax_tooltipObj.style.left = leftPos + 'px';
    ajax_tooltipObj.style.top = topPos + 'px';
}

function ajax_hideTooltip() {
    if (ajax_tooltipObj) {
        ajax_tooltipObj.style.display = 'none';
        ajax_tooltipObj = null;
    }
}

function ajaxTooltip_getTopPos(inputObj) {
    var returnValue = inputObj.offsetTop;
    while ((inputObj = inputObj.offsetParent) != null) {
        if (inputObj.tagName != 'HTML') returnValue += inputObj.offsetTop;
    }
    return returnValue;
}

function ajaxTooltip_getLeftPos(inputObj) {
    var returnValue = inputObj.offsetLeft;
    while ((inputObj = inputObj.offsetParent) != null) {
        if (inputObj.tagName != 'HTML') returnValue += inputObj.offsetLeft;
    }
    return returnValue;
}

// functions of the tooltip displayed from the right side
function ajax_showRightTooltip(e, itemTooltipContentDivId, inputObj) {
    currentTooltipObject = inputObj;
    //window.onresize = function(e) { ajax_positionTooltip(e); } ;
    if (document.all) e = event;
    if (!ajax_tooltipObj)	/* Tooltip div not created yet ? */
    {
        ajax_tooltipObj = document.createElement('DIV');
        ajax_tooltipObj.style.position = 'absolute';
        ajax_tooltipObj.id = 'ajax_tooltipObj';

        document.body.appendChild(ajax_tooltipObj);

        var contentDiv = document.createElement('DIV'); /* Create tooltip content div */
        contentDiv.className = 'ajax_tooltip_right';
        ajax_tooltipObj.appendChild(contentDiv);
        contentDiv.id = 'ajax_tooltip_content';
        contentDiv.style.marginTop = '3px';

        var rightDiv = document.createElement('DIV'); /* Create arrow div */
        rightDiv.className = 'ajax_tooltip_arrow_right';
        rightDiv.id = 'ajax_tooltip_arrow';
        ajax_tooltipObj.appendChild(rightDiv);

        var itemTooltipPanel = document.getElementById(itemTooltipContentDivId);
        if (itemTooltipPanel) {
            contentDiv.innerHTML = itemTooltipPanel.innerHTML;
        }
    }
    ajax_tooltipObj.style.display = 'block';
    ajax_positionRightTooltip(e, inputObj);
}

function ajax_positionRightTooltip(e, inputObj) {
    if (!inputObj) inputObj = currentTooltipObject;
    if (inputObj) {
        var leftPos = (ajaxTooltip_getLeftPos(inputObj) + inputObj.offsetWidth);
        var topPos = ajaxTooltip_getTopPos(inputObj);
    } else {
        var leftPos = e.clientX;
        var topPos = e.clientY;
    }
    var tooltipWidth = 226;
    ajax_tooltipObj.style.left = (leftPos - tooltipWidth) + 'px';
    ajax_tooltipObj.style.top = topPos + 'px';
}

/* Simple AJAX Code-Kit (SACK) v1.6.1 */
/* ©2005 Gregory Wild-Smith */
/* www.twilightuniverse.com */
/* Software licenced under a modified X11 licence,
see documentation or authors website for more details */

function sack(file) {
    this.xmlhttp = null;

    this.resetData = function () {
        this.method = "POST";
        this.queryStringSeparator = "?";
        this.argumentSeparator = "&";
        this.URLString = "";
        this.encodeURIString = true;
        this.execute = false;
        this.element = null;
        this.elementObj = null;
        this.requestFile = file;
        this.vars = new Object();
        this.responseStatus = new Array(2);
    };

    this.resetFunctions = function () {
        this.onLoading = function () { };
        this.onLoaded = function () { };
        this.onInteractive = function () { };
        this.onCompletion = function () { };
        this.onError = function () { };
        this.onFail = function () { };
    };

    this.reset = function () {
        this.resetFunctions();
        this.resetData();
    };

    this.createAJAX = function () {
        try {
            this.xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e1) {
            try {
                this.xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e2) {
                this.xmlhttp = null;
            }
        }

        if (!this.xmlhttp) {
            if (typeof XMLHttpRequest != "undefined") {
                this.xmlhttp = new XMLHttpRequest();
            } else {
                this.failed = true;
            }
        }
    };

    this.setVar = function (name, value) {
        this.vars[name] = Array(value, false);
    };

    this.encVar = function (name, value, returnvars) {
        if (true == returnvars) {
            return Array(encodeURIComponent(name), encodeURIComponent(value));
        } else {
            this.vars[encodeURIComponent(name)] = Array(encodeURIComponent(value), true);
        }
    }

    this.processURLString = function (string, encode) {
        encoded = encodeURIComponent(this.argumentSeparator);
        regexp = new RegExp(this.argumentSeparator + "|" + encoded);
        varArray = string.split(regexp);
        for (i = 0; i < varArray.length; i++) {
            urlVars = varArray[i].split("=");
            if (true == encode) {
                this.encVar(urlVars[0], urlVars[1]);
            } else {
                this.setVar(urlVars[0], urlVars[1]);
            }
        }
    }

    this.createURLString = function (urlstring) {
        if (this.encodeURIString && this.URLString.length) {
            this.processURLString(this.URLString, true);
        }

        if (urlstring) {
            if (this.URLString.length) {
                this.URLString += this.argumentSeparator + urlstring;
            } else {
                this.URLString = urlstring;
            }
        }

        // prevents caching of URLString
        this.setVar("rndval", new Date().getTime());

        urlstringtemp = new Array();
        for (key in this.vars) {
            if (false == this.vars[key][1] && true == this.encodeURIString) {
                encoded = this.encVar(key, this.vars[key][0], true);
                delete this.vars[key];
                this.vars[encoded[0]] = Array(encoded[1], true);
                key = encoded[0];
            }

            urlstringtemp[urlstringtemp.length] = key + "=" + this.vars[key][0];
        }
        if (urlstring) {
            this.URLString += this.argumentSeparator + urlstringtemp.join(this.argumentSeparator);
        } else {
            this.URLString += urlstringtemp.join(this.argumentSeparator);
        }
    }

    this.runResponse = function () {
        eval(this.response);
    }

    this.runAJAX = function (urlstring) {
        if (this.failed) {
            this.onFail();
        } else {
            this.createURLString(urlstring);
            if (this.element) {
                this.elementObj = document.getElementById(this.element);
            }
            if (this.xmlhttp) {
                var self = this;
                if (this.method == "GET") {
                    totalurlstring = this.requestFile + this.queryStringSeparator + this.URLString;
                    this.xmlhttp.open(this.method, totalurlstring, true);
                } else {
                    this.xmlhttp.open(this.method, this.requestFile, true);
                    try {
                        this.xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
                    } catch (e) { }
                }

                this.xmlhttp.onreadystatechange = function () {
                    switch (self.xmlhttp.readyState) {
                        case 1:
                            self.onLoading();
                            break;
                        case 2:
                            self.onLoaded();
                            break;
                        case 3:
                            self.onInteractive();
                            break;
                        case 4:
                            self.response = self.xmlhttp.responseText;
                            self.responseXML = self.xmlhttp.responseXML;
                            self.responseStatus[0] = self.xmlhttp.status;
                            self.responseStatus[1] = self.xmlhttp.statusText;

                            if (self.execute) {
                                self.runResponse();
                            }

                            if (self.elementObj) {
                                elemNodeName = self.elementObj.nodeName;
                                elemNodeName = elemNodeName.toLowerCase();
                                if (elemNodeName == "input"
								|| elemNodeName == "select"
								|| elemNodeName == "option"
								|| elemNodeName == "textarea") {
                                    self.elementObj.value = self.response;
                                } else {
                                    self.elementObj.innerHTML = self.response;
                                }
                            }
                            if (self.responseStatus[0] == "200") {
                                self.onCompletion();
                            } else {
                                self.onError();
                            }

                            self.URLString = "";
                            /* These lines were added by Alf Magne Kalleland ref. info on the sack home page. It prevents memory leakage in IE */

                            delete self.xmlhttp['onreadystatechange'];
                            self.xmlhttp = null;
                            self.responseStatus = null;
                            self.response = null;
                            self.responseXML = null;

                            break;
                    }
                };

                this.xmlhttp.send(this.URLString);
            }
        }
    };

    this.reset();
    this.createAJAX();
}

// gadget_script js
//function used cookies
function getCookie(name) {
    var prefix = name + "="
    var cookieStartIndex = document.cookie.indexOf(prefix)
    if (cookieStartIndex == -1)
        return null
    var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length)
    if (cookieEndIndex == -1)
        cookieEndIndex = document.cookie.length
    return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex))
}

function setCookie(name, value) {
    document.cookie = name + "=" + escape(value) + ";"
}

function gcCheckedChanged(gadget_checkbox) {
    var gadget_name = gadget_checkbox.id.replace('ctl00_GadgetSettingsControl1_', '')
    if (gadget_checkbox.className.indexOf('_un') != -1) {
        CheckedGadgetCheckBox(gadget_checkbox);
        gadgetShow(gadget_name);
    }
    else {
        UnCheckedGadgetCheckBox(gadget_checkbox);
        gadgetHide(gadget_name);
    }
}

function CheckedGadgetCheckBox(gadget_checkbox) {
    gadget_checkbox.className = 'gc_Checked';
}

function UnCheckedGadgetCheckBox(gadget_checkbox) {
    gadget_checkbox.className = 'gc_unChecked';
}

function SetGagdetData(gadgetName) {
    $(document).ready(function () {
        if ("#" + gadgetName + "gadgetToggleButton") {
            $("#" + gadgetName + "gadgetToggleButton").click(function (e) {
                $("#" + gadgetName + "gadget_body").slideToggle("fast", gadgetSlideToogleCallBack);
                return false;
            });
        }
        $("#" + gadgetName + "gadgetCloseButton").click(function (e) {
            $("#" + gadgetName + "gadget").hide("fast", gadgetCloseCallBack);
            return false;
        });
        if ("#" + gadgetName + "gadgetExtendedPanelToggleButton") {
            $("#" + gadgetName + "gadgetExtendedPanelToggleButton").click(function (e) {
                $("#" + gadgetName + "gadget_extended_panel").slideToggle("fast", gadgetExtendedPanelSlideToogleCallBack);

                if (!isGadgetWithBody(gadgetName)) {
                    setCookie(gadgetName + "_maximized", "true");
                }

                return false;
            });
        }
        $("#" + gadgetName + "gadgetOpenedExtendedPanelToggleButton").click(function (e) {
            $("#" + gadgetName + "gadget_extended_panel").hide("fast", gadgetExtendedPanelCloseCallBack);

            if (!isGadgetWithBody(gadgetName)) {
                gadgetMin(gadgetName);
                setCookie(gadgetName + "_maximized", "false");
            }

            return false;
        });
        $("#" + gadgetName + "gadgetExtendedPanelCloseButton").click(function (e) {
            $("#" + gadgetName + "gadget").hide("fast", gadgetCloseCallBack);
            return false;
        });
    });
    function gadgetSlideToogleCallBack() {
        var css = $("#" + gadgetName + "gadget").attr("class");
        if (css == "gadget_opened") {
            gadgetMin(gadgetName);
            setCookie(gadgetName + "_maximized", "false");
        } else {
            gadgetMax(gadgetName);
            setCookie(gadgetName + "_maximized", "true");
        }
    }
    function gadgetCloseCallBack() {
        setCookie(gadgetName, 'false');
        var gadget_checkbox =
       document.getElementById('ctl00_GadgetSettingsControl1_' + gadgetName);
        if (gadget_checkbox) {
            UnCheckedGadgetCheckBox(gadget_checkbox);
        }
    }
    function gadgetExtendedPanelSlideToogleCallBack() {
    }
    function gadgetExtendedPanelCloseCallBack() {
    }
}

function gadgetMax(gadgetName) {
    $("#" + gadgetName + "gadget").attr("class", "gadget_opened");
    $("#" + gadgetName + "gadget_header").attr("class", "gadget_header_opened");
    $("#" + gadgetName + "gadget_body").attr("class", "gadget_body_opened");
    $("#" + gadgetName + "gadgetToggleButton").attr("src", "userfiles/image/Gadgets/maximize.gif");

    if (!isGadgetWithBody(gadgetName)) {
        document.getElementById(gadgetName + "gadget_extended_panel").style.display = '';
        //setCookie(gadgetName + "_maximized", "true");
    }
}

function gadgetMin(gadgetName) {
    $("#" + gadgetName + "gadget").attr("class", "gadget_closed");
    $("#" + gadgetName + "gadget_header").attr("class", "gadget_header_closed");
    $("#" + gadgetName + "gadget_body").attr("class", "gadget_body_closed");
    $("#" + gadgetName + "gadgetToggleButton").attr("src", "userfiles/image/Gadgets/minimize.gif");
}

function isGadgetWithBody(gadgetName) {
    var body = document.getElementById(gadgetName + "gadget_body");
    if (body) {
        if (trim(body.innerHTML) != '') {
            return true;
        }
    }
    return false;
}

function gadgetHide(gadgetName) {
    $("#" + gadgetName + "gadget").hide("fast", gadgetCloseCallBack);
    function gadgetCloseCallBack() {
        setCookie(gadgetName, 'false');
    }
}

function gadgetShow(gadgetName) {
    $("#" + gadgetName + "gadget").slideToggle("fast", gadgetSlideToogleCallBack);
    function gadgetSlideToogleCallBack() {
        setCookie(gadgetName, 'true');
    }
}

function gadgetSetVisible(gadgetName) {
    $("#" + gadgetName + "gadget").attr("style", "display:block;");
}

function gadgetSetInVisible(gadgetName) {
    $("#" + gadgetName + "gadget").attr("style", "display:none;");
}

function CloseExpendedPanel(gadgetName) {
    $("#" + gadgetName + "gadget_extended_panel").hide("fast", gadgetExtendedPanelCloseCallBack);
    return false;
    function gadgetExtendedPanelCloseCallBack() {
    }
}

//  gadget_special_credit_calculator.js
function ShowHideCreditCalculatorControl(control_name, display_mode) {
    var control = getE(control_name);
    if (control) {
        control.style.display = display_mode;
    }
}

function SetCreditControlValue(control_id, control_value) {
    var control = getE(control_id);
    if (control) {
        control.value = control_value;
    }
}

function SetCreditInnerHtmlValue(control_id, control_value) {
    var control = getE(control_id);
    if (control) {
        control.innerHTML = control_value;
    }
}

function GetCreditControlValue(control_id) {
    var control = getE(control_id);
    if (control) {
        return control.value;
    }
}

function DropDownCreditControlList(drop_down_name) {
    SwitchDropDownCreditControlList(drop_down_name + 'List');
}

function SwitchDropDownCreditControlList(drop_down_list_name) {
    var control = getE(drop_down_list_name);
    if (control) {
        if (control.style.display == 'none') {
            control.style.display = '';
        }
        else {
            control.style.display = 'none';
        }
    }
}

var v_credit_type_id = "";
var v_credit_sub_type_id = "";
var v_credit_monetary_unit_id = "";
var v_credit_period_id = "";
var v_credit_rate = "";

var v_lcc_credit_type_id = "";
var v_lcc_credit_sub_type_id = "";

function ChangeCreditType(credit_type) {
    SetCreditControlValue('CreditTypeTextBox', credit_type.innerHTML);
    v_credit_type_id = credit_type.id.replace("credit_type_", "");
    ShowHideCreditCalculatorControl('CreditTypesList', 'none');
    InitCreditInitialPaymentDropDownList(v_credit_type_id);
    ResetCreditData_OnCreditTypeChanging();
}

function ResetCreditData_OnCreditTypeChanging() {
    SetCreditInnerHtmlValue('CreditPeriodsList', "&nbsp;");
    v_credit_period_id = "";
    v_credit_sub_type_id = "";
    v_credit_rate = "";
    SetCreditControlValue("Credit_Interest_Rate", "");
    credit_sub_level_N = 0;
    InitCreditSubCreditTypesList();
}

function ChangeSubCreditType(credit_type, sub_level, credit_id, credit_rate) {
    SetCreditControlValue('CreditTypeTextBox' + sub_level, credit_type.innerHTML);
    ShowHideCreditCalculatorControl('CreditTypes' + sub_level + 'List', 'none');

    if (credit_rate != 0) {
        v_credit_sub_type_id = credit_id;
        v_credit_rate = credit_rate;
    }
    else {
        v_credit_rate = "";
        v_credit_sub_type_id = credit_id;
        credit_sub_level_N = sub_level + 1;
        InitCreditSubCreditTypesList();
    }
    SetCreditControlValue("Credit_Interest_Rate", v_credit_rate);
}

function ChangeCreditMonetaryUnit(monetary_unit) {
    SetCreditControlValue('MonitaryUnitTextBox', monetary_unit.innerHTML);
    v_credit_monetary_unit_id = monetary_unit.id.replace('credit_monetary_unit_', '');
    ShowHideCreditCalculatorControl('CreditMonetaryUnitList', 'none');
    ResetCreditData_OnCreditMonetaryUnitChanging();
}

function ChangeLCCCreditMonetaryUnit(monetary_unit) {
    SetCreditControlValue('LCCMonitaryUnitTextBox', monetary_unit.innerHTML);
    v_credit_monetary_unit_id = monetary_unit.id.replace('lcc_credit_monetary_unit_', '');
    ShowHideCreditCalculatorControl('LCCCreditMonetaryUnitList', 'none');
}

function ResetCreditData_OnCreditMonetaryUnitChanging() {
    credit_sub_level_N = 1;
    InitCreditSubCreditTypesList();
    v_credit_rate = "";
    SetCreditControlValue("Credit_Interest_Rate", "");
}

function ChangeCreditIPayment(i_payment) {
    SetCreditControlValue('CreditInitialPaymentTextBox', i_payment.innerHTML);
    ShowHideCreditCalculatorControl('CreditInitialPaymentList', 'none');
    var payment_id = i_payment.id.replace("credit_payment_", "");
    InitCreditPeriodsDropDownList(payment_id);
    ResetCreditData_OnCreditIPaymentChanging();
}

function ResetCreditData_OnCreditIPaymentChanging() {
    v_credit_period_id = "";
    credit_sub_level_N = 1;
    v_credit_sub_type_id = "";
    v_credit_rate = "";
    SetCreditControlValue("Credit_Interest_Rate", "");
    credit_sub_level_N = 0;
    InitCreditSubCreditTypesList();
}

function ChangeCreditPeriod(period_item) {
    SetCreditControlValue('CreditPeriodTextBox', period_item.innerHTML);
    v_credit_period_id = period_item.id.replace("credit_period_", "");
    ShowHideCreditCalculatorControl('CreditPeriodsList', 'none');
    ResetCreditData_OnCreditPeriodChanging();
}

function ResetCreditData_OnCreditPeriodChanging() {
    v_credit_sub_type_id = "";
    v_credit_rate = "";
    SetCreditControlValue("Credit_Interest_Rate", "");
    credit_sub_level_N = 1;
    InitCreditSubCreditTypesList();
}


function InitCreditInitialPaymentDropDownList(credit_type_id) {
    SetCreditControlValue('CreditInitialPaymentTextBox', ' ...');
    SetCreditControlValue('CreditPeriodTextBox', ' ...');
    GadgetsWS.GetCreditInitialPaymentsList(credit_type_id, SetCreditInitialPaymentList);
}

function SetCreditInitialPaymentList(result) {
    if (!result.error) {
        SetCreditInnerHtmlValue('CreditInitialPaymentList', result);
    }
}

function InitCreditPeriodsDropDownList(payment_id) {
    SetCreditControlValue('CreditPeriodTextBox', ' ...');
    GadgetsWS.GetCreditPeriodList(payment_id, SetCreditPeriodList);
}

function SetCreditPeriodList(result) {
    if (!result.error) {
        SetCreditInnerHtmlValue('CreditPeriodsList', result);
    }
}

var credit_sub_level_N = 0;
var lcc_credit_sub_level_N = 1;

function InitCreditSubCreditTypesList() {
    if (credit_sub_level_N == 0) {
        SetCreditDinamicTDHeight(0);
        SetCreditDropDownListTop('CreditInitialPaymentDropDownList', 0,
            v_credit_period_ddl_top);
        SetCreditDropDownListTop('CreditPeriodsDropDownList', 0,
            v_credit_i_payment_dll_top);
        SetCreditInnerHtmlValue('CreditTypesSubDropDownList', '');
        ShowHideCreditCalculatorControl('CreditTypesSubDropDownList', 'none');
    }
    else {
        if (v_credit_monetary_unit_id == "" ||
         v_credit_period_id == "" ||
         v_credit_type_id == "") {
            return;
        }
        var p_credit_id;
        if (credit_sub_level_N == 1) {
            p_credit_id = v_credit_type_id;
        }
        else {
            if (v_credit_sub_type_id == "") {
                return;
            }
            p_credit_id = v_credit_sub_type_id;
        }
        var language_id = GetCreditControlValue("ctl00_CreditCalculatorGadget1_LanguageIdHiddenField");
        if (language_id == "") {
            return;
        }
        ShowHideCreditCalculatorControl('CreditTypesSubDropDownList', '');
        SetCreditDinamicTDHeight(credit_sub_level_N * 34);

        GadgetsWS.GetSubCreditList(p_credit_id, v_credit_type_id, v_credit_monetary_unit_id,
             v_credit_period_id, credit_sub_level_N, language_id, SetSubCreditList);

        SetCreditDropDownListTop('CreditInitialPaymentDropDownList',
            34 * credit_sub_level_N, v_credit_period_ddl_top);
        SetCreditDropDownListTop('CreditPeriodsDropDownList',
            34 * credit_sub_level_N, v_credit_i_payment_dll_top);
    }
}

function SetCreditDinamicTDHeight(height_value) {
    var credit_Dinamic_Data_TD = getE('credit_Dinamic_Data_TD');
    if (credit_Dinamic_Data_TD) {
        credit_Dinamic_Data_TD.style.height = height_value + 'px';
    }
}

var v_credit_period_ddl_top = 152;
var v_credit_i_payment_dll_top = 188;

function SetCreditDropDownListTop(drop_down_list, top_value, init_top_value) {
    var ddl = getE(drop_down_list);
    if (ddl) {
        ddl.style.top = (init_top_value + top_value) + 'px';
    }
}

function SetSubCreditList(result) {
    if (!result.error) {
        if (credit_sub_level_N == 1) {
            if (result.substring(0, 1) == "$") {
                v_credit_rate = result.replace("$", "");
                SetCreditControlValue("Credit_Interest_Rate", v_credit_rate);
                credit_sub_level_N == 0;
                SetCreditDinamicTDHeight(0);
                SetCreditDropDownListTop('CreditInitialPaymentDropDownList', 0,
                   v_credit_period_ddl_top);
                SetCreditDropDownListTop('CreditPeriodsDropDownList', 0, v_credit_i_payment_dll_top);
                SetCreditInnerHtmlValue('CreditTypesSubDropDownList', "");
            }
            else {
                SetCreditInnerHtmlValue('CreditTypesSubDropDownList', result);
            }
        }
        else {
            SetCreditInnerHtmlValue('CreditTypesSubDropDownList' +
             (credit_sub_level_N - 1).toString(), result);
        }
    }
}

function GoToCreditCalculatorResultPage(lang_id) {
    var correct_input = true;

    if (v_credit_type_id == "") {
        correct_input = false;
        DisplayValidator('Credit_CreditTypeId_empty');
    }
    else {
        HideValidator('Credit_CreditTypeId_empty');
    }

    if (v_credit_monetary_unit_id == "") {
        correct_input = false;
        DisplayValidator('Credit_MonetaryUnit_empty');
    }
    else {
        HideValidator('Credit_MonetaryUnit_empty');
    }

    if (!IsDoubleValue('Credit_TotalSum')) {
        correct_input = false;
        DisplayValidator('Credit_TotalSum_empty');
    }
    else {
        HideValidator('Credit_TotalSum_empty');
    }

    if (GetCreditControlValue('CreditInitialPaymentTextBox') == " ...") {
        correct_input = false;
        DisplayValidator('CreditInitialPaymentId_empty');
    }
    else {
        HideValidator('CreditInitialPaymentId_empty');
    }

    if (v_credit_period_id == "") {
        correct_input = false;
        DisplayValidator('Credit_CreditPeriodId_empty');
    }
    else {
        HideValidator('Credit_CreditPeriodId_empty');
    }

    for (var j = 1; j < credit_sub_level_N; j++) {
        HideValidator('Credit_CreditType' + j.toString() + 'Id_empty');
    }
    if (credit_sub_level_N != 0) {
        if (v_credit_rate == "") {
            correct_input = false;
            DisplayValidator('Credit_CreditType' + credit_sub_level_N + 'Id_empty');
        }
        else {
            HideValidator('Credit_CreditType' + (credit_sub_level_N) + 'Id_empty');
        }
    }

    if (!correct_input) {
        return;
    }

    var p_credit_type = HandleCreditTypeQSParameter(v_credit_type_id);
    var p_parent_credit_type = HandleCreditTypeQSParameter(v_credit_type_id);
    if (v_credit_sub_type_id != "") {
        p_credit_type = HandleCreditTypeQSParameter(v_credit_sub_type_id);
    }
    var p_currency = GetValue('MonitaryUnitTextBox');
    var p_sum = parseFloat(GetValue('Credit_TotalSum'));
    var p_first_payment = GetValue('CreditInitialPaymentTextBox');
    var p_time = GetValue('CreditPeriodTextBox');
    var p_credit_rate = v_credit_rate;

    var result_page_url = 'CC.aspx' +
    "?c=" + p_currency +
    "&s=" + p_sum +
    "&f=" + p_first_payment +
    "&t=" + p_time +
    "&r=" + p_credit_rate +
    "&cl=" + GetCreditCalculatorType() +
    "&lang=" + lang_id +
    "&id=" + p_credit_type +
    "&p_id=" + p_parent_credit_type;

    window.open(result_page_url, '_blank')
}

function GoToLCCCreditCalculatorResultPage(lang_id) {
    var correct_input = true;

    if (GetCreditControlValue('LCCMonitaryUnitTextBox') == " ...") {
        correct_input = false;
        DisplayValidator('LCCCredit_MonetaryUnit_empty');
    }
    else {
        HideValidator('LCCCredit_MonetaryUnit_empty');
    }

    if (!IsDoubleValue('LCCCredit_Interest_Rate')) {
        correct_input = false;
        DisplayValidator('LCCCredit_Interest_Rate_empty');
    }
    else {
        HideValidator('LCCCredit_Interest_Rate_empty');
    }

    if (!IsDoubleValue('LCCCredit_TotalSum')) {
        correct_input = false;
        DisplayValidator('LCCCredit_TotalSum_empty');
    }
    else {
        HideValidator('LCCCredit_TotalSum_empty');
    }

    if (!IsDoubleValue('LCCCreditPeriodTextBox')) {
        correct_input = false;
        DisplayValidator('LCCCreditPeriodTextBox_empty');
    }
    else {
        HideValidator('LCCCreditPeriodTextBox_empty');
    }

    var p_addl_time = GetValue('LCCCreditAddlPeriodTextBox');

    if (p_addl_time != '') {
        if (!IsDoubleValue('LCCCreditAddlPeriodTextBox')) {
            correct_input = false;
            DisplayValidator('LCCCreditAddlPeriodTextBox_empty');
        }
        else {
            HideValidator('LCCCreditAddlPeriodTextBox_empty');
        }
    }

    if (!correct_input) {
        return;
    }

    var p_credit_type = HandleCreditTypeQSParameter(GetValue('LCCCreditTypeTextBox'));
    var p_parent_credit_type = HandleCreditTypeQSParameter(v_lcc_credit_type_id);
    if (v_lcc_credit_sub_type_id != "") {
        p_credit_type = HandleCreditTypeQSParameter(v_lcc_credit_sub_type_id);
    }
    var p_currency = GetValue('LCCMonitaryUnitTextBox');
    var p_sum = parseFloat(GetValue('LCCCredit_TotalSum'));
    var p_time = GetValue('LCCCreditPeriodTextBox');
    var p_credit_rate = GetValue('LCCCredit_Interest_Rate');



    var result_page_url = 'LCC.aspx' +
    "?c=" + p_currency +
    "&s=" + p_sum +
    "&t=" + p_time +
    "&r=" + p_credit_rate +
    "&lang=" + lang_id;

    if (p_addl_time != '') {
        result_page_url = result_page_url +
    "&at=" + p_addl_time;
    }

    window.open(result_page_url, '_blank')
}

function HandleCreditTypeQSParameter(credit_type_str) {
    var result_str = credit_type_str.replace("&", "%26");
    result_str = credit_type_str.replace(" ", "+");
    return result_str;
}

function DisplayValidator(validator_id) {
    var validator_control = getE(validator_id);
    if (validator_control) {
        validator_control.style.display = '';
    }
}

function HideValidator(validator_id) {
    var validator_control = getE(validator_id);
    if (validator_control) {
        validator_control.style.display = 'none';
    }
}

function IsDoubleValue(control_id) {
    var control_value = GetCreditControlValue(control_id);
    if (isNaN(parseFloat(control_value))) {
        return false;
    }
    return true;
}

function IsEmpty(control_id) {
    var checking_control = getE(control_id);
    if (checking_control) {
        if (checking_control.value == "") {
            DisplayValidator(control_id + "_empty");
            return true;
        }
    }
    HideValidator(control_id + "_empty");
    return false;
}

function GetValue(control_id) {
    var checking_control = getE(control_id);
    if (checking_control) {
        return checking_control.value;
    }
}

function HideGadgetDropDownLists() {
    ShowHideCreditCalculatorControl('CreditTypesList', 'none');
    ShowHideCreditCalculatorControl('CreditMonetaryUnitList', 'none');
    ShowHideCreditCalculatorControl('CreditPeriodsList', 'none');
    ShowHideCreditCalculatorControl('CreditInitialPaymentList', 'none');
    for (var i = 1; i < credit_sub_level_N + 1; i++) {
        ShowHideCreditCalculatorControl('CreditTypes' + i.toString() + 'List', 'none');
    }
}

function HideLCCGadgetDropDownLists() {
    ShowHideCreditCalculatorControl('LCCCreditMonetaryUnitList', 'none');
    ShowHideCreditCalculatorControl('LCCCreditTypesList', 'none');
    for (var i = 1; i < lcc_credit_sub_level_N + 1; i++) {
        ShowHideCreditCalculatorControl('LCCCreditTypes' + i.toString() + 'List', 'none');
    }
}

function ClearCreditCalculatorInputFields() {
    SetCreditControlValue("CreditTypeTextBox", " ...");
    SetCreditControlValue("MonitaryUnitTextBox", " ...");
    SetCreditControlValue("Credit_Interest_Rate", "");
    SetCreditControlValue("Credit_TotalSum", "");
    SetCreditControlValue("CreditInitialPaymentTextBox", " ...");
    SetCreditControlValue("CreditPeriodTextBox", " ...");
}

function ClearLCCCreditCalculatorInputFields() {
    SetCreditControlValue("LCCMonitaryUnitTextBox", " ...");
    SetCreditControlValue("LCCCredit_TotalSum", "");
    SetCreditControlValue("LCCCreditPeriodTextBox", "");
    SetCreditControlValue("LCCCredit_Interest_Rate", "");
    SetCreditControlValue("LCCCreditAddlPeriodTextBox", "");
}

function ChangeCreditCalculatorType() {
    var standart_type_rb = getE('gadget_credit_calculator_standart_type');
    var annuity_type_rb = getE('gadget_credit_calculator_annuity_type');
    if (standart_type_rb && annuity_type_rb) {
        var rb_css_class = standart_type_rb.className;
        standart_type_rb.className = annuity_type_rb.className;
        annuity_type_rb.className = rb_css_class;
    }
}

function GetCreditCalculatorType() {
    var standart_type_rb = getE('gadget_credit_calculator_standart_type');
    if (standart_type_rb.className == "gadgetCreditCalculatorType_checked") {
        return 0;
    }
    return 1;
}





//  gadget_special_deposit_calculator.js ---------------------------------------
// ----------------------------------------------------------------------




function DropDownDepositControlList(drop_down_name) {
    SwitchDropDownCreditControlList(drop_down_name + 'List');
}

function SwitchDropDownDepositControlList(drop_down_list_name) {
    var control = getE(drop_down_list_name);
    if (control) {
        if (control.style.display == 'none') {
            control.style.display = '';
        }
        else {
            control.style.display = 'none';
        }
    }
}

function ShowHideDepositCalculatorControl(control_name, display_mode) {
    var control = getE(control_name);
    if (control) {
        control.style.display = display_mode;
    }
}

function ChangeDepositType(deposit_type_link, deposit_type_id, deposit_option) {
    var sel = deposit_type_link.innerHTML.replace(/^\s+|\s+$/g, "");

    SetDepositCalculatorData('DepositTypeTextBox', sel);
    SetDepositCalculatorData('Deposit_DepositTypeId', deposit_type_id);
    ShowHideDepositCalculatorControl('DepositTypesList', 'none');
    CalculateDepositRateValue();

    deposit_payment_option = deposit_option;
    //if (deposit_type_id != 11 && deposit_type_id != 12) { //not saving account and terms deposit
        ClearDepositInputData();
    //}
    
    ConfigureDepositInputData();
}

var deposit_payment_option;

function ClearDepositInputData() {
    deposit_cash_indexes = [];
    deposit_cash_indexes[0] = 1;
    deposit_date_count = 1;
    GenerateDepositDataInputTableByType(1, 'Date');
    GenerateDepositDataInputTableByType(1, 'Cash');
}

function ConfigureDepositInputData() {
    switch (deposit_payment_option) {
        case 1:
            ShowHideDepositCalculatorControl('deposit_increase_gadget_add_button', 'none');
            ShowHideDepositCalculatorControl('deposit_downturn_gadget_add_button', 'none');
            break;
        case 2:
            ShowHideDepositCalculatorControl('deposit_increase_gadget_add_button', '');
            ShowHideDepositCalculatorControl('deposit_downturn_gadget_add_button', 'none');
            break;
        case 3:
            ShowHideDepositCalculatorControl('deposit_increase_gadget_add_button', 'none');
            ShowHideDepositCalculatorControl('deposit_downturn_gadget_add_button', '');
            break;
        case 4:
            ShowHideDepositCalculatorControl('deposit_increase_gadget_add_button', '');
            ShowHideDepositCalculatorControl('deposit_downturn_gadget_add_button', '');
            break;
    }
}

function ChangeDepositMonetaryUnit(monetary_unit_link, currency_id) {
    var sel = monetary_unit_link.innerHTML.replace(/^\s+|\s+$/g, "");

    SetDepositCalculatorData('DepositMonitaryUnitTextBox', sel);
    SetDepositCalculatorData('Deposit_CurrencyId', currency_id);
    ShowHideDepositCalculatorControl('DepositMonetaryUnitList', 'none');
    CalculateDepositRateValue();
}

function ChangeDepositPaymentType(payment_type, payment_type_id) {
    var sel = payment_type.innerHTML.replace(/^\s+|\s+$/g,"");

    SetDepositCalculatorData('DepositPaymentTypeTextBox', sel);
    SetDepositCalculatorData('Deposit_PaymentType', payment_type_id);
    ShowHideDepositCalculatorControl('DepositPaymentTypeList', 'none');
    CalculateDepositRateValue();
}

function SetDepositCalculatorData(control_name, data_value) {
    var control = getE(control_name);
    if (control) {
        control.value = data_value;
    }
}

function CalculateDepositCalculatorData() {
    var deposit_type_value = GetDepositCalculatorInputFieldValue('Deposit_DepositTypeId',
      'DepositTypeTextBox_empty', 'string');
    var rate_value = GetValue('DepositInterestRateTextBox');

    var monetary_uint_value = GetValue('DepositMonitaryUnitTextBox');
    if (monetary_uint_value == " ...") {
        ShowHideDepositCalculatorControl("DepositMonitaryUnitTextBox_empty", "");
    }
    else {
        ShowHideDepositCalculatorControl("DepositMonitaryUnitTextBox_empty", "none");
    }

    var calculator_type_value = GetDepositCalculatorInputFieldValue('Deposit_PaymentType',
      'DepositPaymentTypeTextBox_empty', 'string');
    var dates_arr = [];
    var cashes_arr = [];
    var date_value;
    var cash_value;

    for (var i = 1; i <= deposit_date_count; i++) {
        date_value = GetDepositCalculatorInputFieldValue('DepositDateTextBox' +
        i.toString(), 'DepositDateTextBox' + i.toString() + '_empty', 'date');
        cash_value = GetDepositCalculatorInputFieldValue('DepositCashTextBox' +
         i.toString(), 'DepositCashTextBox' + i.toString() + '_empty', 'number');

        if (date_value == "" || cash_value == "") {
            dates_arr = [];
            cashes_arr = [];
        }
        else {
            dates_arr[i - 1] = date_value;
            cashes_arr[i - 1] = deposit_cash_indexes[i - 1] * cash_value;
        }
    }

    var close_date = GetDepositCalculatorInputFieldValue('DepositCloseDateTextBox',
     'DepositCloseDateTextBox_empty', 'date');

    if (close_date != "" && dates_arr.length != 0) {
        dates_arr[dates_arr.length] = close_date;
    }

    if (deposit_type_value == "" || rate_value == "" || rate_value == "- " || monetary_uint_value == "" ||
          calculator_type_value == "" || dates_arr.length == 0 || cashes_arr.length == 0) {
        return;
    }

    var dates_str = "";
    var cashes_str = "";
    for (var i = 0; i < dates_arr.length; i++) {
        dates_str += dates_arr[i] + ";";
    }
    for (var i = 0; i < cashes_arr.length; i++) {
        cashes_str += cashes_arr[i] + ";";
    }

    var lang_id = GetValue('ctl00_DepositCalculatorGadget1_Deposit_LanguageIdHiddenField');

    var result_page_url = 'DC.aspx' +
    "?d=" + dates_str +
    "&c=" + cashes_str +
    "&m=" + monetary_uint_value +
    "&r=" + rate_value +
    "&t=" + deposit_type_value +
    "&ct=" + calculator_type_value +
    "&lang=" + lang_id;

    window.open(result_page_url, '_blank');
}

function SetDepositCalculatorResultRes(result) {

}

// functions calculating deposit rate value
function GetDepositRateValue( deposit_id, currency_id, payment_type, start_date, end_date, amount ) {
    if (deposit_id == 11 && amount >= 1000) {
        SetDepositCalculatorData('DepositInterestRateTextBox', 0.2);
        ShowHideDepositCalculatorControl('DepositRateNullLabel', 'none');
    } else {
        GadgetsWS.GetDepositRateValue(deposit_id, currency_id, payment_type, start_date, end_date,
            SetDepositRateValue);
    }
}

function SetDepositRateValue(result) {
    if (!result.error) {
        if (result == "0") {
            SetDepositCalculatorData('DepositInterestRateTextBox', '- ');
            ShowHideDepositCalculatorControl('DepositRateNullLabel', '');
        }
        else {
            SetDepositCalculatorData('DepositInterestRateTextBox', result);
            ShowHideDepositCalculatorControl('DepositRateNullLabel', 'none');
        }
    }
}

function CalculateDepositRateValue() {
    var deposit_id = GetValue('Deposit_DepositTypeId');
    if (deposit_id == "")
    { return; }
    
    var currenc_id = GetValue('Deposit_CurrencyId');
    if (currenc_id == "")
    { return; }

    var payment_type = GetValue('Deposit_PaymentType');
    if (payment_type == "")
    { return; }

    var start_date = GetValue('DepositDateTextBox1');
    if (start_date == "" || (isDate(start_date, /^([0-9]{1,2})[\/]([0-9]{1,2})[\/]([0-9]{1,4})$/, { d: 1, m: 2, y: 3 }) != 0)) {
        SetDepositCalculatorData('DepositInterestRateTextBox', '');
        return;
    }

    var end_date = GetValue('DepositCloseDateTextBox');
    if (end_date == "" || (isDate(end_date, /^([0-9]{1,2})[\/]([0-9]{1,2})[\/]([0-9]{1,4})$/, { d: 1, m: 2, y: 3 }) != 0)) {
        SetDepositCalculatorData('DepositInterestRateTextBox', '');
        return;
    }

    var amount = 0;
    try {
        amount = parseFloat(GetValue('DepositCashTextBox1'));
    } catch (e) {
    }

    GetDepositRateValue(deposit_id, currenc_id, payment_type, start_date, end_date, amount);
}

// ----------------------------------

function GetDepositCalculatorInputFieldValue(input_filed_name, validator_name,
  input_field_type) {
    var deposit_type = getE(input_filed_name);
    if (deposit_type) {
        deposit_type.value = trim(deposit_type.value);
        if (deposit_type.value == "") {
            DisplayHideValidator(validator_name, '');
            return "";
        }
        if (input_field_type == 'number') {
            if (isNaN(parseFloat(deposit_type.value))) {
                DisplayHideValidator(validator_name, '');
                return "";
            }
        }
        if (input_field_type == 'date') {
            if (isDate(deposit_type.value, /^([0-9]{1,2})[\/]([0-9]{1,2})[\/]([0-9]{1,4})$/, { d: 1, m: 2, y: 3 })) {
                DisplayHideValidator(validator_name, '');
                return "";
            }
        }
        DisplayHideValidator(validator_name, 'none');
        return deposit_type.value;
    }
    return "";
}

isDate = function (y, m, d) { //v1.0
    if (typeof y == "string" && m instanceof RegExp && d) {
        if (!m.test(y)) return 1;
        y = RegExp["$" + d.y], m = RegExp["$" + d.m], d = RegExp["$" + d.d];
    }
    d = Math.abs(d) || 0, m = Math.abs(m) || 0, y = Math.abs(y) || 0;
    return arguments.length != 3 ? 1 : d < 1 || d > 31 ? 2 : m < 1 || m > 12 ? 3 : /4|6|9|11/.test(m) && d == 31 ? 4
        : m == 2 && (d > ((y = !(y % 4) && (y % 1e2) || !(y % 4e2)) ? 29 : 28)) ? 5 + !!y : 0;
};

function ltrim(str) {
    for (var k = 0; k < str.length && isWhitespace(str.charAt(k)); k++);
    return str.substring(k, str.length);
}
function rtrim(str) {
    for (var j = str.length - 1; j >= 0 && isWhitespace(str.charAt(j)); j--);
    return str.substring(0, j + 1);
}
function trim(str) {
    return ltrim(rtrim(str));
}
function isWhitespace(charToCheck) {
    var whitespaceChars = " \t\n\r\f";
    return (whitespaceChars.indexOf(charToCheck) != -1);
}

function DisplayHideValidator(validator_id, display_mode) {
    var validator_control = getE(validator_id);
    if (validator_control) {
        validator_control.style.display = display_mode;
    }
}
function GetValue(control_id) {
    var checking_control = getE(control_id);
    if (checking_control) {
        return checking_control.value;
    }
    return "";
}
function HideDepositGadgetDropDownLists() {
    ShowHideDepositCalculatorControl('DepositTypesList', 'none');
    ShowHideDepositCalculatorControl('DepositPaymentTypeList', 'none');
    ShowHideDepositCalculatorControl('DepositMonetaryUnitList', 'none');
}

// function clearing deposit calculator input data
function ClearDepositCalculatorInputFields() {
    SetDepositCalculatorData('DepositTypeTextBox', ' ...');
    SetDepositCalculatorData('Deposit_DepositTypeId', '');
    SetDepositCalculatorData('DepositMonitaryUnitTextBox', ' ...');
    SetDepositCalculatorData('Deposit_CurrencyId', '');
    SetDepositCalculatorData('DepositPaymentTypeTextBox', ' ...');
    SetDepositCalculatorData('Deposit_PaymentType', '');
    SetDepositCalculatorData('DepositDateTextBox1', '');
    SetDepositCalculatorData('DepositCloseDateTextBox', '');
    SetDepositCalculatorData('DepositInterestRateTextBox', '');
    SetDepositCalculatorData('DepositCashTextBox1', '');
}

// functions generating multiple or single date and sum input fields

var deposit_date_count = 1;
var date_format_label_text = "";
var increase_cash_label = "";
var decrease_cash_label = "";
var increase_date_label = "";
var decrease_date_label = "";
var deposit_cash_indexes = [];

function addDepositDateCashInputControl(add_button_img, option) {
    if (ajax_tooltipObj) {
        ajax_hideTooltip();
    }
    deposit_cash_indexes[deposit_date_count] = option;
    deposit_date_count += 1;
    GenerateDepositDataInputTableByType(deposit_date_count, 'Date');
    GenerateDepositDataInputTableByType(deposit_date_count, 'Cash');
}

function removeDepositDateInputControl(remove_button_img) {
    deposit_date_count -= 1;
    GenerateDepositDataInputTableByType(deposit_date_count, 'Date');
    GenerateDepositDataInputTableByType(deposit_date_count, 'Cash');
}

function ClearDepositDataInputTable(type) {
    var deposit_date_list_div = getE("MultipleDeposit" + type + "InputPanel");
    if (deposit_date_list_div) {
        deposit_date_list_div.innerHTML = '';
    }
}

function GetDepositGadgetControlLabel(label_id) {
    var deposit_label = getE(label_id);
    if (deposit_label) {
        return deposit_label.innerHTML;
    }
}

function GenerateDepositDataInputTableByType(deposit_count, type) {
    var deposit_data_list_div = getE("MultipleDeposit" + type + "InputPanel");

    if (increase_date_label == "") {
        increase_date_label = GetDepositGadgetControlLabel('DepositCalculator_depositIncreaseDateLabel');
    }
    if (decrease_date_label == "") {
        decrease_date_label = GetDepositGadgetControlLabel('DepositCalculator_depositDecreaseDateLabel');
    }
    if (increase_cash_label == "") {
        increase_cash_label = GetDepositGadgetControlLabel('DepositCalculator_depositIncreaseCashLabel');
    }
    if (decrease_cash_label == "") {
        decrease_cash_label = GetDepositGadgetControlLabel('DepositCalculator_depositDecreaseCashLabel');
    }
    if (date_format_label_text == "") {
        date_format_label_text = GetDepositGadgetControlLabel('DepositCalculator_deposit' + type + 'formatLabel');

    }

    var prev_label_text;
    var fromat_label_text = (type == 'Date') ? date_format_label_text : "";

    var input_data_str = [];
    for (j = 1; j <= deposit_count; j++) {
        input_data_str[j - 1] = GetValue("Deposit" + type + "TextBox" + j.toString());
    }

    ClearDepositDataInputTable(type);

    var add_buttons_str = "";
    var add_downturn_button_str = "";
    var input_N = "";
    var input_value = "";

    for (var i = 1; i <= deposit_count; i++) {
        remove_button_str = "";
        add_buttons_str = "";
        input_N = "";
        input_value = "";
        if (deposit_cash_indexes[i - 1] == 1) {
            prev_label_text = (type == 'Date') ? increase_date_label : increase_cash_label;
        }
        else {
            prev_label_text = (type == 'Date') ? decrease_date_label : decrease_cash_label;
        }
        if (input_data_str[i - 1]) {
            input_value = input_data_str[i - 1];
        }

        td_w = "style='width:350px;'";
        if (i == deposit_count && type == 'Date') {
            add_buttons_str = "<td id='add_b'><img src='userfiles/image/Gadgets/add.png' id='deposit_increase_gadget_add_button' onclick='addDepositDateCashInputControl(this, 1);' onmouseover='ajax_showTooltipWithSpecialCssClass(window.event, \"DepositIncreaseDescriptionTooltip\", this, \"ajax_tooltip_sp_gadget_green\")' onmouseout='ajax_hideTooltip()'/><img src='userfiles/image/Gadgets/add.png' id='deposit_downturn_gadget_add_button' onclick='addDepositDateCashInputControl(this, -1);' onmouseover='ajax_showTooltipWithSpecialCssClass(window.event, \"DepositDownturnDescriptionTooltip\", this, \"ajax_tooltip_sp_gadget_green\")' onmouseout='ajax_hideTooltip()'/>" +
             ((deposit_count > 1) ? "<img src='userfiles/image/Gadgets/remove.png' onclick='removeDeposit" + type + "InputControl(this)'/>" : "") + "</td>";
            td_w = "style='width:175px;'";
        }
        if (deposit_count > 1) {
            input_N = i.toString();
        }

        var rate_change_prop = "onkeyup='CalculateDepositRateValue();' onchange='CalculateDepositRateValue();'";

        deposit_data_list_div.innerHTML +=
       "<table cellspacing='0' cellpadding='1' border='0'>" +
       "<tr>" +
       "<td class='label'>" + prev_label_text + input_N + "</td>" +
       "<td " + td_w + "><input " + ((type == 'Date') ? rate_change_prop : '') + " id='Deposit" + type + "TextBox" + i.toString() + "' type='text'" +
       "class='gadgetDepositCalculator_exp_input' value='" + input_value + "' />" +
       fromat_label_text + "<span class='deposit_g_error' id='Deposit" + type + "TextBox" + i.toString() +
       "_empty' style='display: none;padding-left:4px'>*</span></td>" +
        add_buttons_str +
        "</tr></table>";
    }
    ConfigureDepositInputData();
}

// ------------------------------------------------------------------


// gadget_special_exchange.js ---------------------------------------
// ------------------------------------------------------------------

function SelectedCurrencyChanged(radio_button, list_length) {
    if (!IsChecked(radio_button)) {
        var currency_type = GetCurrencyType(radio_button);
        ClearAllSelected(currency_type, list_length);
        SetCurrencyRadioButtonChecked(radio_button);
        SaveCurrencyValue(radio_button, currency_type);
        CalculateCurrencySelected();
    }
}

function ClearAllSelected(currency_type, count) {
    var radio_button;
    for (i = 0; i < count; i++) {
        radio_button = getE(currency_type + i);
        if (radio_button) {
            if (IsChecked(radio_button)) {
                SetCurrencyRadioButtonUnChecked(radio_button);
            }
        }
    }
}

function SetCurrencyRadioButtonChecked(radio_button) {
    radio_button.alt = "checked";
    radio_button.src = "userfiles/image/gadgets/checked.png";
    if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent)) {
        var src = radio_button.src;
        radio_button.src = "userfiles/image/default/spacer.gif";
        if (src) radio_button.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='image')";
    }
}

function SetCurrencyRadioButtonUnChecked(radio_button) {
    radio_button.alt = "unchecked";
    radio_button.src = "userfiles/image/gadgets/unchecked.png";
    if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent)) {
        var src = radio_button.src;
        radio_button.src = "userfiles/image/default/spacer.gif";
        if (src) radio_button.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='image')";
    }
}

function IsChecked(radio_button) {
    if (radio_button.alt) {
        if (radio_button.alt == "unchecked") {
            return false;
        }
        return true;
    }
}

function GetCurrencyType(radio_button) {
    var type = "";
    if (radio_button.id.indexOf('sale') != -1) {
        type = "sale";
    } else {
        type = "purchase";
    }
    if (radio_button.id.indexOf('cash') != -1) {
        return "cash" + type;
    } else {
        return "clearing" + type;
    }
}


function SaveCurrencyValue(radio_button, currency_type) {
    var saved_value = getE(currency_type + 'CurrencyValue');
    if (saved_value) {
        var currency_value = getE(radio_button.id + 'Value');
        if (currency_value) {
            saved_value.value = currency_value.value;
        }
    }
}

function CalculateSale(calculating_value_box) {
    var calculated_value_box = getE('calculatedValue');
    if (calculated_value_box) {
        if (calculating_value_box.value == "") {
            calculated_value_box.value = "";
            return;
        }
        var sale_value;
        var purchase_value;
        if ($("#cash_exchange_ch_b_exp").attr("class") == "gadgetExchange_checked_exchange_type") {
            sale_value = getE('cashsaleCurrencyValue');
            purchase_value = getE('cashpurchaseCurrencyValue');
        } else {
            sale_value = getE('clearingsaleCurrencyValue');
            purchase_value = getE('clearingpurchaseCurrencyValue');
        }

        if (sale_value && purchase_value) {
            sale_value = parseFloat(sale_value.value.replace(',', '.'));
            purchase_value = parseFloat(purchase_value.value.replace(',', '.'));
            var calculating_value = parseFloat(calculating_value_box.value.replace(',', '.'));
            var calculated_value = (sale_value / purchase_value) * calculating_value;
            calculated_value_box.value = calculated_value.toString();
        }
    }
}
function CalculatePurchase(calculating_value_box) {
    var calculated_value_box = getE('sourceValue');
    if (calculated_value_box) {
        if (calculating_value_box.value == "") {
            calculated_value_box.value = "";
            return;
        }
        var sale_value;
        var purchase_value;
        if ($("#cash_exchange_ch_b_exp").attr("class") == "gadgetExchange_checked_exchange_type") {
            sale_value = getE('cashsaleCurrencyValue');
            purchase_value = getE('cashpurchaseCurrencyValue');
        } else {
            sale_value = getE('clearingsaleCurrencyValue');
            purchase_value = getE('clearingpurchaseCurrencyValue');
        }

        if (sale_value && purchase_value) {
            sale_value = parseFloat(sale_value.value.replace(',', '.'));
            purchase_value = parseFloat(purchase_value.value.replace(',', '.'));
            var calculating_value = parseFloat(calculating_value_box.value.replace(',', '.'));
            var calculated_value = (purchase_value / sale_value) * calculating_value;
            calculated_value_box.value = calculated_value.toString();
        }
    }
}

function CalculateCurrencySelected() {
    var calculating_value_box = getE('sourceValue');
    if (calculating_value_box) {
        Calculate(calculating_value_box);
    }
}

function MetalChangeExchangeType( checkbox ) {
    if ( checkbox.className == 'gadgetExchange_checked_exchange_type' ) {
        return;
    }
    var checkbox_id = checkbox.id;
    if ( checkbox_id == "metal_cash_exchange_ch_b" || checkbox_id == "metal_cash_exchange_ch_b_exp" ) {
        $( "#metal_cash_exchange" ).attr( "style", "display:block;" );
        $( "#metal_clearing_exchange" ).attr( "style", "display:none;" );
        $( "#metal_cash_exchange_ch_b" ).attr( "class", "gadgetExchange_checked_exchange_type" );
        $( "#metal_clearing_exchange_ch_b" ).attr( "class", "gadgetExchange_unchecked_exchange_type" );
    }
    else {
        $( "#metal_cash_exchange" ).attr( "style", "display:none;" );
        $( "#metal_clearing_exchange" ).attr( "style", "display:block;" );
        $( "#metal_cash_exchange_ch_b" ).attr( "class", "gadgetExchange_unchecked_exchange_type" );
        $( "#metal_clearing_exchange_ch_b" ).attr( "class", "gadgetExchange_checked_exchange_type" );
    }
    CalculateCurrencySelected();
}

function ChangeExchangeType(checkbox) {
    if (checkbox.className == 'gadgetExchange_checked_exchange_type') {
        return;
    }
    var checkbox_id = checkbox.id;
    if (checkbox_id == "cash_exchange_ch_b" || checkbox_id == "cash_exchange_ch_b_exp") {
        $("#cash_exchange").attr("style", "display:block;");
        $("#clearing_exchange").attr("style", "display:none;");
        $("#cash_exchange_exp").attr("style", "display:block;");
        $("#clearing_exchange_exp").attr("style", "display:none;");
        $("#cash_exchange_exp_crl").attr("style", "display:block;");
        $("#clearing_exchange_exp_crl").attr("style", "display:none;");
        $("#cash_exchange_ch_b").attr("class", "gadgetExchange_checked_exchange_type");
        $("#clearing_exchange_ch_b").attr("class", "gadgetExchange_unchecked_exchange_type");
        $("#cash_exchange_ch_b_exp").attr("class", "gadgetExchange_checked_exchange_type");
        $("#clearing_exchange_ch_b_exp").attr("class", "gadgetExchange_unchecked_exchange_type");
    }
    else {
        $("#cash_exchange").attr("style", "display:none;");
        $("#clearing_exchange").attr("style", "display:block;");
        $("#cash_exchange_exp").attr("style", "display:none;");
        $("#clearing_exchange_exp").attr("style", "display:block;");
        $("#cash_exchange_exp_crl").attr("style", "display:none;");
        $("#clearing_exchange_exp_crl").attr("style", "display:block;");
        $("#cash_exchange_ch_b").attr("class", "gadgetExchange_unchecked_exchange_type");
        $("#clearing_exchange_ch_b").attr("class", "gadgetExchange_checked_exchange_type");
        $("#cash_exchange_ch_b_exp").attr("class", "gadgetExchange_unchecked_exchange_type");
        $("#clearing_exchange_ch_b_exp").attr("class", "gadgetExchange_checked_exchange_type");
    }
    CalculateCurrencySelected();
}

function ClearExchangeInputFields() {
    var sourc_value = getE("sourceValue");
    var calc_value = getE("calculatedValue");
    if (sourc_value && calc_value) {
        sourc_value.value = '';
        calc_value.value = '';
    }
}


// gadget_special_navigator.js ----------------------------------------------------
// ------------------------------------------------------------------------

function ChangeNavigatorType() {
    RadioButton_ChangeSelected();
    SaveNavigatorType();
    HideNavigatorCityList();
    NavigatorDefaultCity_Set();
    NavigatorAddress_DataBind();
}

function ChangeNavigatorCity(city_value) {
    var city_name_text_box = getE('CityTextBox');
    if (city_name_text_box) {
        city_name_text_box.value = city_value.innerHTML;
    }
    SaveNavigatorCityId(city_value);
    HideNavigatorCityList();
    NavigatorAddress_DataBind();
}

function RadioButton_ChangeSelected() {
    var filial_ch_b = getE('FilialCheckBox');
    var ATM_ch_b = getE('ATMCheckBox');

    if (filial_ch_b && ATM_ch_b) {
        var buffer_value;
        buffer_value = filial_ch_b.src;
        filial_ch_b.src = ATM_ch_b.src;
        ATM_ch_b.src = buffer_value;
    }
}

function SaveNavigatorType() {
    var type_hidden = getE('NavigatorTypeValue');
    if (type_hidden) {
        type_hidden.value = (type_hidden.value == "0") ? "1" : "0";
    }
    return type_hidden.value;
}

function SaveNavigatorCityId(city_value) {
    var saved_city_id_hidden = getE('NavigatorCityIdValue');
    if (saved_city_id_hidden) {
        saved_city_id_hidden.value = city_value.id.replace("city_", "");
    }
    return saved_city_id_hidden.value;
}

function DropDownCityList() {
    NavigatorCityList_DataBind();
    var navigator_list = getE('navigatorCityList');
    if (navigator_list) {
        navigator_list.style.display = '';
    }
}

function HideNavigatorCityList() {
    var navigator_list = getE('navigatorCityList');
    if (navigator_list) {
        navigator_list.style.display = 'none';
    }
}

function NavigatorAddress_DataBind() {
    var type_hidden = getE('NavigatorTypeValue');
    var city_hidden = getE('NavigatorCityIdValue');
    var language_id_hidden = getE('ctl00_NavigatorGadget1_NavigatorLangauageIdHiddenField');
    if (type_hidden && city_hidden && language_id_hidden) {
        var type_value = type_hidden.value;
        var city_id = city_hidden.value;
        var language_id = language_id_hidden.value;
        GetNavigatorLocationList(type_value, city_id, language_id);
        ChangeNavigatePrintPageUrl();
    }
}

function NavigatorCityList_DataBind() {
    var type_hidden = getE('NavigatorTypeValue');
    var language_id_hidden = getE('ctl00_NavigatorGadget1_NavigatorLangauageIdHiddenField');
    if (type_hidden && language_id_hidden) {
        GetNavigatorCityList(type_hidden.value, language_id_hidden.value);
    }
}

function NavigatorDefaultCity_Set() {
    var type_hidden = getE('NavigatorTypeValue');
    var language_id_hidden = getE('ctl00_NavigatorGadget1_NavigatorLangauageIdHiddenField');
    if (type_hidden && language_id_hidden) {
        GetNavigatorDefaultCity(type_hidden.value, language_id_hidden.value);
    }
}

function GetNavigatorLocationList(type, city_id, language_id) {
    GadgetsWS.GetNavigatorAddress(type, city_id, language_id, SetResult);
}

function GetNavigatorCityList(type, language_id) {
    GadgetsWS.GetNavigatorCityList(type, language_id, SetCityList);
}

function GetNavigatorDefaultCity(type, language_id) {
    GadgetsWS.GetNavigatorDefaultCity(type, language_id, SetDefaultCity);
}

function SetResult(result) {
    if (!result.error) {
        var location_list_div = getE('NavigatorLocationList');
        if (location_list_div) {
            location_list_div.innerHTML = result;
        }
    }
}

function SetCityList(result) {
    if (!result.error) {
        var city_list_div = getE('navigatorCityList');
        if (city_list_div) {
            city_list_div.innerHTML = result;
        }
    }
}

function SetDefaultCity(result) {
    if (!result.error) {
        var city_data = result.split(",");
        if (city_data[0]) {
            var saved_city_id_hidden = getE('NavigatorCityIdValue');
            if (saved_city_id_hidden) {
                saved_city_id_hidden.value = city_data[0];
            }
        }
        if (city_data[1]) {
            var city_name_text_box = getE('CityTextBox');
            if (city_name_text_box) {
                city_name_text_box.value = city_data[1];
            }
            NavigatorAddress_DataBind();
        }
    }
}

function ChangeNavigatePrintPageUrl() {
    var type_hidden = getE('NavigatorTypeValue');
    var city_hidden = getE('NavigatorCityIdValue');
    var language_id_hidden = getE('ctl00_NavigatorGadget1_NavigatorLangauageIdHiddenField');
    if (type_hidden && city_hidden && language_id_hidden) {
        var type = type_hidden.value;
        var city_id = city_hidden.value;
        var language_id = language_id_hidden.value;

        var print_page_link = getE('NavigatorPrintPageLink');
        if (print_page_link) {
            print_page_link.href = 'NavigatorPrint.aspx?type=' + type.toString() +
               "&city=" + city_id.toString() + "&lang=" + language_id.toString();
        }
    }
}
//http://www.featureblend.com/license.txt
var FlashDetect = new function () {
    var self = this; self.installed = false; self.raw = ""; self.major = -1; self.minor = -1; self.revision = -1; self.revisionStr = ""; var activeXDetectRules = [{ "name": "ShockwaveFlash.ShockwaveFlash.7", "version": function (obj) { return getActiveXVersion(obj); } }, { "name": "ShockwaveFlash.ShockwaveFlash.6", "version": function (obj) {
        var version = "6,0,21"; try { obj.AllowScriptAccess = "always"; version = getActiveXVersion(obj); } catch (err) { }
        return version;
    }
    }, { "name": "ShockwaveFlash.ShockwaveFlash", "version": function (obj) { return getActiveXVersion(obj); } }]; var getActiveXVersion = function (activeXObj) {
        var version = -1; try { version = activeXObj.GetVariable("$version"); } catch (err) { }
        return version;
    }; var getActiveXObject = function (name) {
        var obj = -1; try { obj = new ActiveXObject(name); } catch (err) { obj = { activeXError: true }; }
        return obj;
    }; var parseActiveXVersion = function (str) { var versionArray = str.split(","); return { "raw": str, "major": parseInt(versionArray[0].split(" ")[1], 10), "minor": parseInt(versionArray[1], 10), "revision": parseInt(versionArray[2], 10), "revisionStr": versionArray[2] }; }; var parseStandardVersion = function (str) { var descParts = str.split(/ +/); var majorMinor = descParts[2].split(/\./); var revisionStr = descParts[3]; return { "raw": str, "major": parseInt(majorMinor[0], 10), "minor": parseInt(majorMinor[1], 10), "revisionStr": revisionStr, "revision": parseRevisionStrToInt(revisionStr) }; }; var parseRevisionStrToInt = function (str) { return parseInt(str.replace(/[a-zA-Z]/g, ""), 10) || self.revision; }; self.majorAtLeast = function (version) { return self.major >= version; }; self.minorAtLeast = function (version) { return self.minor >= version; }; self.revisionAtLeast = function (version) { return self.revision >= version; }; self.versionAtLeast = function (major) { var properties = [self.major, self.minor, self.revision]; var len = Math.min(properties.length, arguments.length); for (i = 0; i < len; i++) { if (properties[i] >= arguments[i]) { if (i + 1 < len && properties[i] == arguments[i]) { continue; } else { return true; } } else { return false; } } }; self.FlashDetect = function () { if (navigator.plugins && navigator.plugins.length > 0) { var type = 'application/x-shockwave-flash'; var mimeTypes = navigator.mimeTypes; if (mimeTypes && mimeTypes[type] && mimeTypes[type].enabledPlugin && mimeTypes[type].enabledPlugin.description) { var version = mimeTypes[type].enabledPlugin.description; var versionObj = parseStandardVersion(version); self.raw = versionObj.raw; self.major = versionObj.major; self.minor = versionObj.minor; self.revisionStr = versionObj.revisionStr; self.revision = versionObj.revision; self.installed = true; } } else if (navigator.appVersion.indexOf("Mac") == -1 && window.execScript) { var version = -1; for (var i = 0; i < activeXDetectRules.length && version == -1; i++) { var obj = getActiveXObject(activeXDetectRules[i].name); if (!obj.activeXError) { self.installed = true; version = activeXDetectRules[i].version(obj); if (version != -1) { var versionObj = parseActiveXVersion(version); self.raw = versionObj.raw; self.major = versionObj.major; self.minor = versionObj.minor; self.revision = versionObj.revision; self.revisionStr = versionObj.revisionStr; } } } } } ();
}; FlashDetect.JS_RELEASE = "1.0.4";
