﻿function MM_preloadImages() { //v3.0
    var d = document; if (d.images) {
        if (!d.MM_p) d.MM_p = new Array();
        var i, j = d.MM_p.length, a = MM_preloadImages.arguments; for (i = 0; i < a.length; i++)
            if (a[i].indexOf("#") != 0) { d.MM_p[j] = new Image; d.MM_p[j++].src = a[i]; }
    }
}

function MM_swapImgRestore() { //v3.0
    var i, x, a = document.MM_sr; for (i = 0; a && i < a.length && (x = a[i]) && x.oSrc; i++) x.src = x.oSrc;
}

function MM_findObj(n, d) { //v4.01
    var p, i, x; if (!d) d = document; if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
        d = parent.frames[n.substring(p + 1)].document; n = n.substring(0, p);
    }
    if (!(x = d[n]) && d.all) x = d.all[n]; for (i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
    for (i = 0; !x && d.layers && i < d.layers.length; i++) x = MM_findObj(n, d.layers[i].document);
    if (!x && d.getElementById) x = d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
    var i, j = 0, x, a = MM_swapImage.arguments; document.MM_sr = new Array; for (i = 0; i < (a.length - 2); i += 3)
        if ((x = MM_findObj(a[i])) != null) { document.MM_sr[j++] = x; if (!x.oSrc) x.oSrc = x.src; x.src = a[i + 2]; }
}
/*********************************************************************************************************************************************************
*********************************************************************************************************************************************************/
// 각 페이지 로드시에 Page_Load 함수 호출
function onPage_Load() {
    if (document.readyState == "complete") {
        try {
            Ginfo();
            Page_Load();
        }
        catch (e) { }
    }
    else {
        setTimeout("onPage_Load()", 500);
    }
}
onPage_Load();
/*********************************************************************************************************************************************************
*********************************************************************************************************************************************************/
// iframe resize
function resizing_Frame() {

    if (typeof document.frames["MAIN_CONTENT"] != "undefined") {
        var Frame_Body = document.frames["MAIN_CONTENT"].document.body;

        var Frame_name = document.all["MAIN_CONTENT"];

        Frame_name.style.height
                    = Frame_Body.scrollHeight + (Frame_Body.offsetHeight - Frame_Body.clientHeight);

        var paddingObj = document.getElementById('tblBottomPadding');
        if (paddingObj != null) {
            if (Frame_Body.scrollHeight > 687) {
                paddingObj.height = 150 + (Frame_Body.scrollHeight + 20 - 687);
            }
            else {
                paddingObj.height = 150;
            }
        }
    }
    else {
        var Frame_Body = parent.document.frames["MAIN_CONTENT"].document.body;

        var Frame_name = parent.document.all["MAIN_CONTENT"];

        Frame_name.style.height
                    = Frame_Body.scrollHeight + (Frame_Body.offsetHeight - Frame_Body.clientHeight);

        var paddingObj = parent.document.getElementById('tblBottomPadding');
        if (paddingObj != null) {
            if (Frame_Body.scrollHeight > 687) {
                paddingObj.height = 150 + (Frame_Body.scrollHeight + 20 - 687);
            }
            else {
                paddingObj.height = 150;
            }
        }
    }
}



/*********************************************************************************************************************************************************
**로그인 관련
*********************************************************************************************************************************************************/
function LogInOut() {
    
    var loginImgLocation = document.getElementById('btnLogInOut').src;

    if (loginImgLocation.indexOf('login') > -1) {
        goLogin();
    }
    else {
        //로그아웃

        var ssoLogOff = HHASAjaxServices.LogOut();
        //alert(ssoLogOff.value);
        parent.document.parentWindow.top.navigate(ssoLogOff.value);
        
        setLogoutCookie();
        Ginfo();
        SetLoginInfoView('');
        
        top.location = '/login.aspx';
        //goHome();
    }
}

function LoginInfoView() {
    var rObj = HHASAjaxServices.GetHousingLoginInfo();
    if (rObj.error != null) {
        alert(rObj.error.Message);
        SetLoginInfoView("");
    }
    else {
        SetLoginInfoView(rObj.value);
    }
}
function SetLoginInfoView(userInfo) {
    if (userInfo != "") {
        parent.document.getElementById('btnLogInOut').src = "/Images/Topmn04_logout.gif";
        parent.loginInfoView.innerHTML = userInfo;

        if (_USER_ROLE == "H0" || _USER_ROLE == "Z0") {
            parent.document.getElementById("GoOperate").style.display = 'none';
        }
        else {
            parent.document.getElementById("GoOperate").style.display = 'block';
        }
    }
    else {
        parent.document.getElementById("GoOperate").style.display = 'none';
        parent.document.getElementById('btnLogInOut').src = "/Images/Topmn04_login.gif";
        parent.loginInfoView.innerHTML = "&nbsp;";
    }
}

function GoOperate() {
    if (_USER_ID != "") {
        //document.location = '/deploy/HHAS.Launcher.application?KEY=CB849DD3-48C9-44da-A196-ED5DB101DA37&USERID=' + _USER_ID;
        var loc = 'http://hhas.hhi.co.kr/deploy/HHAS.Launcher.application?KEY=CB849DD3-48C9-44da-A196-ED5DB101DA37&USERID=' + _USER_ID;
        OpenWin(loc, '', 1100, 800);
    }
}
/*********************************************************************************************************************************************************
*********************************************************************************************************************************************************/

/*********************************************************************************************************************************************************
*********************************************************************************************************************************************************/

function setLoginCookie() {
    var dt = (HHASAjaxServices.getLoginInfo()).value;
    setCookie("_USER_ID" + dt.Rows[0].SessionID, dt.Rows[0].USER_ID, 365);
    setCookie("_USER_NAME" + dt.Rows[0].SessionID, dt.Rows[0].USER_NAME, 365);
    setCookie("_ASGN_CD" + dt.Rows[0].SessionID, dt.Rows[0].ASGN_CD, 365);
    setCookie("_DEPT_CD" + dt.Rows[0].SessionID, dt.Rows[0].DEPT_CD, 365);
    setCookie("_USER_ZONE" + dt.Rows[0].SessionID, dt.Rows[0].USER_ZONE, 365);
    setCookie("_USER_GUBUN" + dt.Rows[0].SessionID, dt.Rows[0].USER_GUBUN, 365);
    setCookie("_USER_ROLE" + dt.Rows[0].SessionID, dt.Rows[0].USER_ROLE, 365);
    setCookie("_USER_LOCATION" + dt.Rows[0].SessionID, dt.Rows[0].USER_LOCATION, 365);

    SessionID = dt.Rows[0].SessionID;
}
function setLogoutCookie() {
    SessionID = (HHASAjaxServices.GetSessionID()).value;
    //setCookie("PMS_COOKIE_ISENG", "kor", 365);
    setCookie("_USER_ID" + SessionID, '', 365);
    setCookie("_USER_NAME" + SessionID, '', 365);
    setCookie("_ASGN_CD" + SessionID, '', 365);
    setCookie("_DEPT_CD" + SessionID, '', 365);
    setCookie("_USER_ZONE" + SessionID, '', 365);
    setCookie("_USER_GUBUN" + SessionID, '', 365);
    setCookie("_USER_ROLE" + SessionID, '', 365);
    setCookie("_USER_LOCATION" + SessionID, '', 365);

    SessionID = '';
}

function Ginfo() {
    SessionID = (HHASAjaxServices.GetSessionID()).value;
    //alert(SessionID)
    this._USER_ID = getCookie("_USER_ID" + SessionID);
    this._USER_NAME = getCookie("_USER_NAME" + SessionID);
    this._ASGN_CD = getCookie("_ASGN_CD" + SessionID);
    this._DEPT_CD = getCookie("_DEPT_CD" + SessionID);
    this._USER_ZONE = getCookie("_USER_ZONE" + SessionID);
    this._USER_GUBUN = getCookie("_USER_GUBUN" + SessionID);
    this._USER_ROLE = getCookie("_USER_ROLE" + SessionID);
    this._USER_LOCATION = getCookie("_USER_LOCATION" + SessionID);

/*
    this._USER_ID = (HHASAjaxServices.GetUSER_ID()).value;
    this._USER_NAME = (HHASAjaxServices.GetUSER_NAME()).value;
    this._ASGN_CD = (HHASAjaxServices.GetASGN_CD()).value;
    this._DEPT_CD = (HHASAjaxServices.GetDEPT_CD()).value;
    this._USER_ZONE = (HHASAjaxServices.GetUSER_ZONE()).value;
    this._USER_GUBUN = (HHASAjaxServices.GetUSER_GUBUN()).value;
    this._USER_ROLE = (HHASAjaxServices.GetUSER_ROLE()).value;
    this._USER_LOCATION = (HHASAjaxServices.GetUSER_LOCATION()).value;
    */
}

var _USER_ID = '';
var _USER_NAME = '';
var _ASGN_CD = '';
var _DEPT_CD = '';
var _USER_ZONE = '';
var _USER_GUBUN = '';
var _USER_ROLE = '';
var _USER_LOCATION = '';
/*********************************************************************************************************************************************************
*********************************************************************************************************************************************************/

function setCombo(rObjID, paraname, paravalue, xmlPath, xmlName, textName, valueName, displayOption, displayText) {
    var rObj = HHASAjaxServices.GetQueryInfoByAnony(paraname, paravalue, xmlPath, xmlName);
    var dt = processingForResult(rObj);
    //alert(rObjID+":"+ paraname+":"+ paravalue+":"+ xmlPath+":"+ xmlName+":"+ textName+":"+ valueName+":"+ displayOption+":"+ displayText);
    
    ComboSetting(rObjID, dt, textName, valueName, displayOption, displayText);
}

//공통코드 콤보
function setComboByCommonCd(rObjID, code, displayOption, displayText) {
    var rObj = HHASAjaxServices.GetCommonCdInfo(code);
    var dt = processingForResult(rObj);

    //공통코드 콤보
    setComboByDT(rObjID, dt, displayOption, displayText);
}

//공통코드 콤보(영문)
function setComboByCommonCd_eng(rObjID, code, displayOption, displayText) {
    var rObj = HHASAjaxServices.GetCommonCdInfo_eng(code);
    var dt = processingForResult(rObj);

    //공통코드 콤보
    setComboByDT_eng(rObjID, dt, displayOption, displayText);
}

function setComboByDT(rObjID, dt, displayOption, displayText) {
    ComboSetting(rObjID, dt, 'CODE_NAME', 'CODE', displayOption, displayText);
}
//공통코드 콤보(영문)
function setComboByDT_eng(rObjID, dt, displayOption, displayText) {
    ComboSetting_eng(rObjID, dt, 'CODE_NAME', 'CODE', displayOption, displayText);
}

function ComboSetting(rObjID, dt, textName, valueName, displayOption, displayText) {
    try {
        clearCombo(rObjID);
        //alert(rObjID + ":" + dt + ":" + textName + ":" + valueName + ":" + displayOption + ":" + displayText);

        var ComboObj = document.getElementById(rObjID);

        if (displayOption == 'top') {
            var objOption = document.createElement("option");
            objOption.text = (displayText == null ? ':::전체:::' : displayText);
            objOption.value = '';
            ComboObj.options.add(objOption);
        }

        for (i = 0; i < dt.Rows.length; i++) {
            //alert((eval('dt.Rows[i].' + valueName)));
            var objOption = document.createElement("option");
            //alert(txt);
            objOption.text = eval('dt.Rows[i].' + textName);
            objOption.value = eval('dt.Rows[i].' + valueName);
            ComboObj.options.add(objOption); // IE, FF 둘 다에서 된다.
        }


        if (displayOption == 'bottom') {
            var objOption = document.createElement("option");
            objOption.text = (displayText == null ? ':::전체:::' : displayText);
            objOption.value = '';
            ComboObj.options.add(objOption);
        }
    }
    catch (e) {
        alert(e + ' [setComboData]');
    }
}
// 콤보(영문)
function ComboSetting_eng(rObjID, dt, textName, valueName, displayOption, displayText) {
    try {
        clearCombo(rObjID);

        var ComboObj = document.getElementById(rObjID);

        if (displayOption == 'top') {
            var objOption = document.createElement("option");
            objOption.text = (displayText == null ? ':: All ::' : displayText);
            objOption.value = '';
            ComboObj.options.add(objOption);
        }

        for (i = 0; i < dt.Rows.length; i++) {
            //alert(dt.Rows[i].CODE);
            var objOption = document.createElement("option");
            objOption.text = eval('dt.Rows[i].' + textName);
            objOption.value = eval('dt.Rows[i].' + valueName);
            ComboObj.options.add(objOption); // IE, FF 둘 다에서 된다.
        }

        if (displayOption == 'bottom') {
            var objOption = document.createElement("option");
            objOption.text = (displayText == null ? ':: All ::' : displayText);
            objOption.value = '';
            ComboObj.options.add(objOption);
        }
    }
    catch (e) {
        alert(e + ' [setComboData]');
    }
}

function clearCombo(rObjID) {
    var ComboObj = document.getElementById(rObjID);
    if (ComboObj == null || ComboObj.options == undefined) {
        return;
    }

    while (ComboObj.options.length > 0) {
        ComboObj.options.remove(0);
    }

    ComboObj.selectedIndex = -1;
}

function setcombo_mm(rObjID) {
    clearCombo(rObjID);
    var ComboObj = document.getElementById(rObjID);

    for (i = 1; i <= 12; i++) {
        var objOption = document.createElement("option");
        objOption.text = Lpad(i, 2, '0');
        objOption.value = Lpad(i, 2, '0');
        ComboObj.options.add(objOption); // IE, FF 둘 다에서 된다.
    }
}

function setcombo_dd(rObjID) {
    clearCombo(rObjID);

    var ComboObj = document.getElementById(rObjID);

    for (i = 1; i <= 31; i++) {
        var objOption = document.createElement("option");
        objOption.text = Lpad(i, 2, '0');
        objOption.value = Lpad(i, 2, '0');
        ComboObj.options.add(objOption); // IE, FF 둘 다에서 된다.
    }
}

function setcombo_yy(rObjID) {
    clearCombo(rObjID);

    var ComboObj = document.getElementById(rObjID);

    for (i = 1900; i <= 2020; i++) {
        var objOption = document.createElement("option");
        objOption.text = i;
        objOption.value = i;
        ComboObj.options.add(objOption); // IE, FF 둘 다에서 된다.
    }
}

/*********************************************************************************************************************************************************
*********************************************************************************************************************************************************/
function getValueByAspxDateEditCtrl(rObjID, isViewDash) {
    var rtnVal = '';
    try{
        if (isViewDash != null) {
            if (isViewDash)
                rtnVal = document.getElementById(rObjID).children[0].children[0].children[0].children[0].value.trim();
            else
                rtnVal = replaceFormat(document.getElementById(rObjID).children[0].children[0].children[0].children[0].value.trim(), '-');
        }
        else {
            rtnVal = replaceFormat(document.getElementById(rObjID).children[0].children[0].children[0].children[0].value.trim(), '-');
        }
    }
    catch(e){}

    return rtnVal;
}

function setValueByAspxDateEditCtrl(rObjID, val) {
    document.getElementById(rObjID).children[0].children[0].children[0].children[0].value = val;
}

function AspxDateEditCtrlSetDate(rObjID) {
    setValueByAspxDateEditCtrl(rObjID, getDateByFormat(getValueByAspxDateEditCtrl(rObjID, true), '-'));
}

//날짜 값 비교...
//ASPxDateEdit 컨트롤 사용시..
function ValidateDiffByStEd(sDate, eDate, sName, eName, focusCtrlID) {
    if (sDate == '' || eDate == '')
        return false;

    if (Number(sDate) - Number(eDate) > 0) {
        alert(eName + ' 이(가) ' + sName + ' 보다 작습니다');
        
        document.getElementById(focusCtrlID).children[0].children[0].children[0].children[0].value = '';
        document.getElementById(focusCtrlID).children[0].children[0].children[0].children[0].focus();
        return false;
    }
    
    return true;
}
function ValidateDiffByStEdMsg(sDate, eDate, strMsg, focusCtrlID) {
    if (sDate == '' || eDate == '')
        return false;
        
    if (Number(sDate) - Number(eDate) > 0) {
        alert(strMsg);
        
        document.getElementById(focusCtrlID).children[0].children[0].children[0].children[0].value = '';
        document.getElementById(focusCtrlID).children[0].children[0].children[0].children[0].focus();
        return false;
    }

    return true;
}

function validateNormalCtrl(focusCtrlID, CtrName) {
    if (document.getElementById(focusCtrlID).value.trim() == '') {
        if (CtrName != null && CtrName != '') {
            alert(CtrName + ' 는(은) 필수입력입니다.! ');
        }
        document.getElementById(focusCtrlID).focus();
        return false;
    }

    return true;
}
//영문
function validateNormalCtrl_eng(focusCtrlID, CtrName) {
    if (document.getElementById(focusCtrlID).value.trim() == '') {
        if (CtrName != null && CtrName != '') {
            alert(CtrName + ' This is required field ! ');
        }
        document.getElementById(focusCtrlID).focus();
        return false;
    }

    return true;
}

function validateDateEditCtrl(focusCtrlID, CtrName) {
    if (getValueByAspxDateEditCtrl(focusCtrlID) == '') {
        if (CtrName != null && CtrName != '') {
            alert(CtrName + ' 는(은) 필수입력입니다.! ');
        }
        document.getElementById(focusCtrlID).children[0].children[0].children[0].children[0].focus();
        return false;
    }

    return true;
}
//영문
function validateDateEditCtrl_eng(focusCtrlID, CtrName) {
    if (getValueByAspxDateEditCtrl(focusCtrlID) == '') {
        if (CtrName != null && CtrName != '') {
            alert(CtrName + 'This is required field !');
        }
        document.getElementById(focusCtrlID).children[0].children[0].children[0].children[0].focus();
        return false;
    }

    return true;
}

function Nvl(v, c) {
    return (v == null || v == 'null') ? '' : (v.trim() == null ? (c != null ? c : '') : v.trim());
}

//기숙사 이미지 작은거 클릭시 큰이미지 바꾸기..(기숙사 안내)
function ChangeLargeImg(imgObj) {
    document.getElementById('imgLarge').src = '/Images/Photo/' + getFileName(imgObj.src) + '_L' + '.jpg';
}

//기숙사 편의시설 팝업띄우기..(기숙사 안내)
function ShowDormitoryFacilities() {
    OpenWindow('/2_Dormitory/sub_01_1_info_popup.htm', '', 917, 850, "no", "no", "no", "no", "no", "yes", "yes");
}

//각종 게시판 비밀번호 확인 팝업 띄우기
var user_role = (HHASAjaxServices.GetUSER_ROLE()).value;
var isAdmin = (user_role == "A0" || user_role == "B0" || user_role == "C0" || user_role == "D0" || user_role == "E0" || user_role == "F0") ? true : false;
var confPWDflag = false;

function ShowConfirmPWD(args, para) {
    ShowModalDialogWindow('/Popup/confirmPWD.aspx?pwd=' + para, args, 200, 100, 'yes', 'no', 'no', 'no', 'no', 'no', 'no', 'no');
}

function getFileName(path) {
    var file = path.substring(path.lastIndexOf('/') + 1, path.length);

    var filename;
    if (file.indexOf('.') >= 0) {
        filename = file.substring(0, file.lastIndexOf('.'));
    }
    else {
        filename = file;
    }
    return filename;
}
function getFileExp(path) {
    var file = path.substring(path.lastIndexOf('/') + 1, path.length);

    var exp;
    if (file.indexOf('.') >= 0) {
        exp = file.substring(file.lastIndexOf('.') + 1, file.length);
    }
    else {
        exp = '';
    }

    return exp;
}

//날짜변환
function getDate(oDate) {
    return Nvl(HHASAjaxServices.GetDate(oDate).value);
}




function getCookie(name) {
    var nameOfCookie = name + "=";
    var x = 0;
    while (x <= document.cookie.length) {
        var y = (x + nameOfCookie.length);
        if (document.cookie.substring(x, y) == nameOfCookie) {
            if ((endOfCookie = document.cookie.indexOf(";", y)) == -1)
                endOfCookie = document.cookie.length;
            return unescape(document.cookie.substring(y, endOfCookie));
        }
        x = document.cookie.indexOf(" ", x) + 1;
        if (x == 0)
            break;
    }
    return "";
}


function setCookie(name, value, expiredays) {
    var todayDate = new Date();
    todayDate.setDate(todayDate.getDate() + expiredays);
    document.cookie = name + "=" + escape(value) + "; path=/; expires=" + todayDate.toGMTString() + ";";
}


function goFamilySite() {
    FS = document.getElementById('cboFamilySite').value;
    if (FS == '-- Family Site --')
        return;

    window.open(FS, '');
}
