var cache = { }; $(document).ready(function() { cache["loadimg"] = $("").attr("src", "http://image.eduhouse.net/2009_iae/image/loadinfo_s.gif"); jQuery.historyInit(actionHandler); $("a[rel='history_arts']").live("click", function() { $("#rept_cont").empty().append(cache["loadimg"]); return dvf_historyHandler(this.href); }); }); function actionHandler(p_hash) { // hash doesn't contain the first # character. //trace("hash=" + p_hash); var arrHashToken; if(p_hash) { arrHashToken = p_hash.split("_"); } else { arrHashToken = $("#init_param").val().split("_"); } if (arrHashToken.length > 0) { $("#natCd").val(arrHashToken[0]); if (arrHashToken.length > 1) $("#page_no").val(arrHashToken[1]); if (arrHashToken.length > 2) $("#sort_field").val(arrHashToken[2]); if (arrHashToken.length > 3) $("#sort_order").val(arrHashToken[3]); if (arrHashToken.length > 4) $("#search_field").val(arrHashToken[4]); if (arrHashToken.length > 5) $("#search_word").val(arrHashToken[5]); // 최소 국가코드는 지정되어야 뉴스를 읽어옴. 기간 및 페이지번호는 default 값 사용. read_reporter_article_list(); } } function f_changeHash(objs, p_pos, p_val) { var arrHashToken, newHash; if( objs.length > 0 ){ for(var j = 0; j < objs.length; j++){ newHash = "#"; arrHashToken = objs.eq(j).attr("href").split("_"); if (arrHashToken.length >= p_pos) { for(var i = 0; i < arrHashToken.length; i++ ) newHash += ( i == p_pos ) ? p_val +"_" : arrHashToken[i] +"_"; objs.eq(j).attr("href", newHash.substr(0, newHash.length - 1)); } } }else{ newHash = "#"; arrHashToken = objs.attr("href").split("_"); if (arrHashToken.length >= p_pos) { for(var i = 0; i < arrHashToken.length; i++ ) newHash += ( i == p_pos ) ? p_val +"_" : arrHashToken[i] +"_"; objs.attr("href", newHash.substr(0, newHash.length - 1)); } } } function read_reporter_article_list() { var param = {natCd: $("#natCd").val(), page_no: $("#page_no").val(), page_size: $("#page_size").val(), sort_field: $("#sort_field").val(), sort_order: $("#sort_order").val(), search_field: $("#search_field").val(), search_word: $("#search_word").val(), summary_len: 80 }; $.ajax({ url: "/service/reporter/svc_article_list.asp", type: 'POST', data: param, dataType: 'json', async: true, //timeout: 3000, error: function(p_e, p_req, p_status, p_err) { //alert('Reporter Article list'); alert("현지통신원소식을 읽는 중 오류가 발생하였습니다. 잠시 후 이용바랍니다."); }, success: function(p_data) { var natIdEnd = $("#natCd").val(); // 기타국가의 li tag id값이 "nat_tab_etc" 이므로 코드값이 "0,1,2.." 형태(컴마가 있음)이면 "etc"로 바꿔준다. if (natIdEnd.indexOf(",") >= 0) natIdEnd = "etc"; // 국가 tab이 바뀐 경우에는 현재 국가 Tab 및 조회 기간의 href 값 변경 if (("#nat_tab_" + natIdEnd) != $("#nat_tab > li.on").attr("id")) { $("#nat_tab > li.on").removeClass("on"); var srcTarget = $("#nat_tab_" + natIdEnd); srcTarget.addClass("on"); //$("#rept_cont > div.tit > h3").text(srcTarget.find("a").text() + " 학교소식"); } //Sorting 국가변경해야함 f_changeHash($("#repSortPannel li").find("a[rel='history_arts']"), 0, $("#natCd").val()); var repArtList = $("#rept_cont"); repArtList.empty(); if (p_data.totalCnt <= 0) { repArtList.append("등록된 글이 없습니다."); } else { var user_name, datarec, viewPageUrl, picSrc; for (var idx = 0; idx < p_data.dataList.length; idx++) { datarec = p_data.dataList[idx]; viewPageUrl = "/reporter/reporter_article_view.asp" + "?mth=" + $("#search_method").val() + "&natCd=" + datarec.nation_code + "&pageNo=" + $("#page_no").val() + "&sortField=" + $("#sort_field").val() + "&sortOrder=" + $("#sort_order").val() + "&searchField=" + $("#search_field").val() + "&searchWord=" + $("#search_word").val() + "&repArtCd=" + datarec.report_article_code + "&rnum=" + datarec.rnum + "&seq=" + datarec.seq; if( datarec.user_pic_name != "" ) picSrc = "http://image.eduhouse.net/reporter_img/"+ unescape(datarec.user_pic_name); else picSrc = "http://image.eduhouse.net/reporter_img/men.jpg"; if( natIdEnd == "etc" ) user_name = unescape(datarec.user_name_kor) + " (" + unescape(datarec.nation_name) +")"; else user_name = unescape(datarec.user_name_kor); repArtList.append("
"+ " "+ "
"+ "
"+ " "+ " "+ "
"+ "
"+ "
"); } } // paging 다시 그리기 viewPaging(parseInt($("#page_no").val(),10), parseInt($("#page_size").val(),10), p_data.totalCnt, parseInt($("#view_paging_no").val(),10), "div.page_index"); } }); } function viewPaging(p_pageNo, p_pageSize, p_dataCnt, p_viewPagingNo, p_containerSelector) { var totPageCnt = Math.floor((p_dataCnt - 1) / p_pageSize) + 1; var stPageno = p_pageNo - ((p_pageNo - 1) % p_viewPagingNo); var endPageno = stPageno + p_viewPagingNo - 1; if (endPageno > totPageCnt) endPageno = totPageCnt; //trace("stPageno:" + stPageno + ", endPageno:" + endPageno + ", totPage:" + totPageCnt + ", viewPaing:" + p_viewPagingNo); var natCd = $("#natCd").val(); var pagingTxt = 1 < p_pageNo ? "첫 페이지" : "첫 페이지"; pagingTxt += p_viewPagingNo < stPageno ? "이전" : "이전"; for (var idx = stPageno; idx <= endPageno; idx++) { pagingTxt += "" + idx + ""; } pagingTxt += totPageCnt > endPageno ? "다음" : "다음"; pagingTxt += totPageCnt > p_pageNo ? "끝 페이지" : "끝 페이지"; $("div.page_index").html(pagingTxt); } //검색 function reporterSearch(p_searchField, p_searchWord) { p_searchWord = (p_searchWord != "") ? encodeURIComponent(p_searchWord) : ""; var newHash = $("#natCd").val() +"_1___"+ p_searchField +"_"+ p_searchWord; return dvf_historyHandler(newHash); // $("#hidSearchField").val(""); // $("#hidSearchWord").val(""); // if(p_natCd == "" | p_natCd == "0") { // if(p_searchField == ""){ // hidClear(); // $("#hidNatCd").val("1"); // read_reporter_article_list(); // }else{ // if(p_searchWord == "" ){ // //골라보기 // if(p_searchField == "best3month"){ // hidClear(); // $("#hidNatCd").val($.natCd); // $("#hidSearchField").val(p_searchField); // $("#hidSearchWord").val(""); // read_reporter_article_list(); // } // }else{ // //검색 // hidClear(); // $("#hidNatCd").val($.natCd); // $("#hidSearchField").val(p_searchField); // $("#hidSearchWord").val(p_searchWord); // read_reporter_article_list(); //현국가 결과내 검색임. 확인!! // } // } // }else{ // if(p_searchField == ""){ // hidClear(); // $("#hidNatCd").val(p_natCd); // read_reporter_article_list(); // }else{ // if(p_searchWord == "" ){ // //국가별 통신원 조회 // location.href="./reporter_profile_list.asp?natCd="+ p_natCd; // }else{ // //검색 // $.natCd = p_natCd; // hidClear(); // $("#hidNatCd").val(p_natCd); // $("#hidSearchField").val(p_searchField); // $("#hidSearchWord").val(p_searchWord); // read_reporter_article_list(); //특정국가 검색 // } // } // } }