$(document).ready(function() { jQuery.historyInit(actionHandler); $("a[rel='history_stdguide']").live("click", function() { dvf_historyHandler(this.href); return false; }); $("#nat_etc_item") .live("mouseover", function() { $("#nat_etc_list").removeClass("hidden"); }) .live("mouseout", function() { if (!$("#nat_etc_list").hasClass("hidden")) { $("#nat_etc_list").addClass("hidden"); } }); $("#nat_etc_list > li") .live("mouseover", function() { $(this).css("background-color", "#999999"); }) .live("mouseout", function() { $(this).css("background-color", "#ffffff"); }) .live("click", function() { dvf_historyHandler("#CHNAT_" + this.value); $("#nat_etc_list").addClass("hidden"); }); $("#news_more_lnk").click(function() { location.href = this.href + "?mth=" + $("#search_method").val() + "&natCd=" + $("#natCd").val(); return false; }); if (0 > location.href.indexOf("#")) { read_guide_type_list($("#menu_type").val(), $("#natCd").val()); // Url에 Hash 값이 없으면 asp request로 넘겨받은 조건에 따라 조회 //read_guide_list($("#hgcseq").val()); } }); function actionHandler(p_hash) { var arrToken; if(p_hash) { arrToken = p_hash.split("_"); } else { arrToken = $("#init_param").val().split("_"); } if (0 < arrToken.length) { switch(arrToken[0]) { case "CHNAT": // Hash format: CHNAT_국가코드 if (arrToken[1] != $("#natCd").val()) { // 현재 선택된 국가가 아닌 경우 메뉴 재구성 $("#natCd").val(arrToken[1]); $("#hgcseq").val(""); $("#hgdseq").val(""); changeNation(arrToken[1]); read_news_list(arrToken[1]); } break; case "CHCTYPE": // Hash format: CHCTYPE_국가코드_대분류코드(hgc_seq) if (arrToken[1] != $("#natCd").val()) { // 현재 선택된 국가가 아닌 경우 메뉴 재구성 $("#natCd").val(arrToken[1]); $("#hgcseq").val(arrToken[2]); $("#hgdseq").val(""); changeNation(arrToken[1]); read_news_list(arrToken[1]); } else if (arrToken[2] != $("#hgcseq").val()) { // 현재 선택된 대분류가 아닌 경우 소분류 메뉴 재구성 $("#hgcseq").val(arrToken[2]); $("#hgdseq").val(""); changeHGCat(arrToken[2]); } break; case "CHDTL": // Hash format: CHDTL_국가코드_대분류코드(hgc_seq)_상세분류코드(hgd_seq) if (arrToken[1] != $("#natCd").val()) { // 현재 선택된 국가가 아닌 경우 메뉴 재구성 $("#natCd").val(arrToken[1]); $("#hgcseq").val(arrToken[2]); $("#hgdseq").val(arrToken[3]); changeNation(arrToken[1]); read_news_list(arrToken[1]); } else if (arrToken[2] != $("#hgcseq").val()) { // 현재 선택된 대분류가 아닌 경우 소분류 메뉴 재구성 $("#hgcseq").val(arrToken[2]); $("#hgdseq").val(arrToken[3]); changeHGCat(arrToken[2]); } else if (arrToken[3] != $("#hgdseq").val()) { // 현재 선택된 상세분류를 클릭한 경우 skip $("#hgdseq").val(arrToken[3]); changeHGDtl(arrToken[3]); } break; } } } // 국가변경 처리 function changeNation(p_natCd) { clearCatTypelist(); $("#img_loading").show(); var natIdEnd = p_natCd; // 기타국가에 속한 국가는 국가코드가 Tab 메뉴의 li tag id값에 포함되어있지 않으므로 // li id 형태로 찾으면 일치하는 개체가 없다. // 기타국가 li의 id 뒷부분에 해당하는 "etc"로 바꿔준다. if (0 >= $("#nat_tab_" + natIdEnd).length) natIdEnd = "etc"; if (("#nat_tab_" + natIdEnd) != $("#nat_tab > li.on").attr("id")) { $("#nat_tab > li.on").removeClass("on"); $("#nat_tab_" + natIdEnd).addClass("on"); if ("etc" == natIdEnd) { etcNats = $("#nat_etc_list > li"); for (var idx = 0; idx < etcNats.length; idx++) { if (etcNats[idx].value == p_natCd) { $("#nat_etc_item > strong").text("기타국가(" + $(etcNats[idx]).text() + ")"); break; } } } } read_guide_type_list($("#menu_type").val(), p_natCd); } // 연수가이드 대분류 read function read_guide_type_list(p_menuType, p_natCd) { var param = "menu_type=" + p_menuType + "&natCd=" + p_natCd; $.ajax({ url: '/service/study_info/svc_guide_cattype_list.asp', type: 'POST', data: param, dataType: 'json', //timeout: 3000, error: function() { alert("Error loading Guide Details Menu"); }, success: function(p_data) { if (p_data.catTypeList) { if ("" == $("#hgcseq").val()) $("#hgcseq").val(p_data.catTypeList[0].hgc_seq); var guideTypeList = $("#hg_cat_list"); $(p_data.catTypeList).each(function(i) { var liObj = $("
  • " + f_recievedDataToServiceByDecode(this.type_name) + "
  • "); guideTypeList.append(liObj); if (this.hgc_seq == $("#hgcseq").val()) { liObj.find("a").addClass("on"); read_guide_list($("#hgcseq").val()); } }); guideTypeList.show(); } } }); } // HG Category 변경 function changeHGCat(p_hgcSeq) { clearCatList(); $("#img_loading").show(); $("#hg_cat_list > li > a.on").removeClass("on"); $("#hg_cat_" + p_hgcSeq).addClass("on"); read_guide_list(p_hgcSeq); } //컨텐츠 타이틀 function read_guide_list(p_hgcSeq) { var param = 'details_cd='+ p_hgcSeq; $.ajax({ url: '/service/study_info/svc_stdguide_cat_list.asp', type: 'POST', data: param, dataType: 'json', //timeout: 3000, error: function() { alert("Error loading Guide Details Menu"); }, success: function(p_data) { show_guide_list(p_data, "#guide_cat"); } }); } //컨텐츠 타이틀 배치 및 function show_guide_list(p_data, p_gCatSelector) { var natCd = $("#natCd").val(); var hgcSeq = $("#hgcseq").val(); var defHgdSeq = $("#hgdseq"); var catList = $(p_gCatSelector + " > #hg_dtl_list"); if (p_data.detailsMenuList != undefined){ if ("" == defHgdSeq.val()) defHgdSeq.val(p_data.detailsMenuList[0].hgd_seq); $(p_data.detailsMenuList).each(function(i) { var liObj = $("
  • " + f_recievedDataToServiceByDecode(this.title) + "
  • "); catList.append(liObj); if (defHgdSeq.val() == this.hgd_seq) { liObj.find("a").addClass("on"); read_guide_contents(defHgdSeq.val()); } }); catList.show(); }else{ //dataClear(); } } // HG Detail 변경 function changeHGDtl(p_hgdSeq) { clearGuideContents(); $("#img_loading").show(); $("#hg_dtl_list > li > a.on").removeClass("on"); $("#hg_dtl_" + p_hgdSeq).addClass("on"); read_guide_contents($("#hgdseq").val()); } function read_guide_contents(p_hgdSeq) { var param = 'detail_cd='+ p_hgdSeq; $.ajax({ url: '/service/study_info/svc_stdguide_content.asp', type: 'POST', data: param, dataType: 'json', //timeout: 3000, error: function() { alert("Error loading Guide Content"); }, success: function(p_data) { var tDiv = $("#guide_desc"); if (p_data != undefined){ var title = f_recievedDataToServiceByDecode(p_data.hgd_title); var hgdText = f_recievedDataToServiceByDecode(p_data.hgd_text); var htmlYN = p_data.hgd_html_yn; $("#guide_title").html(title); if(htmlYN == 'y'){ tDiv.html(hgdText); }else{ tDiv.html(hgdText.replace(/\r\n/ig, "
    ")); } } $("#guide_title").show(); tDiv.show(); $("#img_loading").hide(); } }); } function f_recievedDataToServiceByDecode(str){ str = unescape(str); return str.replace(/+/ig, "+"); } function clearCatTypelist() { $("#hg_cat_list").empty().hide(); clearCatList(); } function clearCatList() { $("#hg_dtl_list").empty().hide(); clearGuideContents(); } function clearGuideContents() { $("#guide_title").empty().hide(); $("#guide_desc").empty().hide(); } function read_news_list(p_natCd) { var param = {ntype: $("#news_type").val(), natCd: p_natCd, page_no: "1", page_size:"8"}; $.ajax({ url: "/service/news/svc_news_list.asp", type: 'POST', data: param, dataType: 'json', async: true, //timeout: 3000, error: function(p_req, p_status, p_err) { //alert('ERR1'); alert("학교뉴스를 읽는 중 오류가 발생하였습니다. 잠시 후 이용바랍니다."); }, success: function(p_data) { var newsList = $("#sidebar_b div.correspondent_cont"); newsList.empty(); if (p_data.newsCnt <= 0) { newsList.append("
  • 등록된 뉴스가 없습니다.
  • "); } else { var fstCssClass = " class=\"first\""; $("#news_nat_name").text(p_data.nat_gb_name); for (var idx = 0; idx < p_data.newsList.length; idx++) { var datarec = p_data.newsList[idx]; newsList.append("" + "
    [" + datarec.nat_name + "] " + dvf_html2entity(dvf_ellipsisStr(unescape(datarec.title),38)) + "
    " + "
    " + dvf_html2entity(dvf_ellipsisStr(unescape(datarec.summary),80)) + "
    " + ""); fstCssClass = ""; } } } }); }