﻿function getID(str){return document.getElementById(str);}
function isIE(){
    var nrw = (navigator.appName + "").toLowerCase();
    return (nrw.indexOf("microsoft")!=-1);
}

function BrowserSize(){
    var moz = !isIE();
    var cur_x = parseInt(document.body.scrollLeft);
    var cur_y = parseInt(document.body.scrollTop);
    var scr_w = parseInt(document.body.scrollWidth);
    var scr_h = parseInt(document.body.scrollHeight);
    var brw_w = parseInt(document.body.offsetWidth);
    var brw_h = parseInt(document.body.offsetHeight);

    if (moz){
        brw_w = parseInt(window.innerWidth);
        brw_h = parseInt(window.innerHeight);
    }

    //return cur_w + "," + cur_h + "," + brw_w + "," + brw_h + "," + scr_w + "," + scr_h;
    this.getScrollX = function getScrollX(){return cur_x;}
    this.getScrollY = function getScrollY(){return cur_y;}
    this.getScrollWidth  = function getScrollWidth(){return scr_w;}
    this.getScrollHeight = function getScrollHeight(){return scr_h;}
    this.getViewWidth  = function getViewWidth(){return brw_w;}
    this.getViewHeight = function getViewHeight(){return brw_h;}
}

function createDynamicPopup(is_moz, obj_bak, obj_main, x, y, main_w, main_h, scr_w, scr_h, view_w, view_h){
    with (obj_bak){
        style.backgroundColor = "#333333";
        style.position   = "absolute";
        style.display    = "inline";
        style.visibility = "visible";
        style.zIndex     = 1000;
        style.width      = ((scr_w > view_w) ? scr_w : view_w) + "px";
        style.height     = ((scr_h > view_h) ? scr_h : view_h) + "px";
        if (is_moz){
            style.left = 0 + "px";
            style.top  = 0 + "px";
            style.opacity = 0.7;
        }else {
            style.posLeft = 0;
            style.posTop  = 0;
            style.filter  = "alpha(opacity=70)";
        }
    }
    
    with (obj_main){
        style.position   = "absolute";
        style.display    = "inline";
        style.visibility = "visible";
        style.zIndex     = 2000;
        style.width      = main_w + "px";
        style.height     = main_h + "px";
        if (is_moz){
            style.left = x + "px";
            style.top  = y + "px";
        }else {
            style.posLeft = x;
            style.posTop  = y;
        }
    }
}

function HTTPResponseClass(){
    this.XML_Object = getXMLHTTPObject();
    this.getHTTPReponse = function getHTTPResponse(page_str, target_str, value, rsp_method) {
        this.getHTTPReponse(page_str, target_str, value, rsp_method, null);
    }

    this.getHTTPReponse = function getHTTPResponse(page_str, target_str, value, rsp_method, u_url) {
        var xml_obj = getXMLHTTPObject(); //this.XML_Object;
        var url = "?page_name=" + page_str + "&target_name=" + target_str;
        var prm = "value=" + escape(encodeURI(value));
        if (u_url != [] && u_url != null && u_url.length > 0) url = u_url + url; else url = "ajaxValidate.aspx" + url;

        xml_obj.onreadystatechange = function onreadystatechange(){
            //receiveHTTPResponse(xml_obj, value, rsp_method);
            if (xml_obj != null) {
                if (xml_obj.readyState == 4) {
                    if (xml_obj.status == 200) {
                        var _rsp = xml_obj.responseText;
                        if (rsp_method) rsp_method(value, _rsp); else responseOnContent(value, _rsp);
                    }
                }
            }
        };

        xml_obj.open('POST', url, true);
        xml_obj.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        xml_obj.setRequestHeader("Content-length", prm.length);
        xml_obj.setRequestHeader("Connection", "close");
        xml_obj.send(prm);
    }

    /*this.receiveHTTPResponse = function receiveHTTPResponse(xml_obj, value, rsp_method) {
        alert(xml_obj.readyState);
        if (xml_obj != null) {
            if (xml_obj.readyState == 4) {
                if (xml_obj.status == 200) {
                    var _rsp = xml_obj.responseText;
                    if (rsp_method) rsp_method(value, _rsp); else responseOnContent(value, _rsp);
                }
            }
        }
    }*/
    
    this.responseOnContent = function responseOnContent(value, str){alert("ori: " + str);};
}

function getXMLHTTPObject(){
    var obj = null;
    try {
        if (window.XMLHttpRequest){
            obj = new XMLHttpRequest();
        }else if (window.ActiveXObject){
            try {
                obj = new ActiveXObject("Msxml2.XMLHTTP");
            }catch (x){
                obj = new ActiveXObject("Microsoft.XMLHTTP");
            }
        }
    }catch (err){
    }

    return obj;
}