﻿
String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g, '');
}

function ShowHide(controlID, hlExpandCollapseID, expandedImgCss, collapsedImgCss, expandedTooltip, collapsedTooltip, cookieGroup, cookieName) {    
    var control = document.getElementById(controlID);
    var hlExpandCollapse = document.getElementById(hlExpandCollapseID);

    if (control.style.display == 'none') {
        control.style.display = 'block';
        hlExpandCollapse.className = expandedImgCss;
        hlExpandCollapse.setAttribute('title', expandedTooltip);
        SetCookie(cookieGroup, cookieName, 'false', 30);
    }
    else {
        control.style.display = 'none';
        hlExpandCollapse.className = collapsedImgCss;
        hlExpandCollapse.setAttribute('title', collapsedTooltip);
        SetCookie(cookieGroup, cookieName, 'true', 30);
    }    
}

function SetCookie(c_group, c_name, value, expiredays) {
    var values = new String();
    var c_sub_values_arr = Array();

    var c_values = GetCookie(c_group);
    if (c_values.length > 0) {
        var c_values_arr = Array();
        c_values_arr = c_values.split('&');
        for (var i in c_values_arr) {
            var key_value = c_values_arr[i].trim().split('=');
            c_sub_values_arr[key_value[0]] = key_value[1];
        }
    }

    c_sub_values_arr[c_name] = value;

    for (var key in c_sub_values_arr) {
        values += key + '=' + c_sub_values_arr[key] + '&';
    }
    values = values.substr(0, values.length - 1);

    var exdate = new Date();
    exdate.setDate(exdate.getDate() + expiredays);
    document.cookie = c_group + "=" + values + ";expires=" + exdate.toGMTString() + ';path=/';
}

function GetCookie(c_group) {
    if (document.cookie.length > 0) {
        c_start = document.cookie.indexOf(c_group + '=');
        if (c_start != -1) {
            c_start = c_start + c_group.length + 1;
            c_end = document.cookie.indexOf(';', c_start);
            if (c_end == -1) {
                c_end = document.cookie.length;
            }
            return document.cookie.substring(c_start, c_end);
        }
    }
    return '';
}

