'; rptTail += ''; var _rptContent = rptHeader + rptScript + rptContent + rptReport + rptTail; var agent = navigator.userAgent.toLowerCase(); if ((agent.indexOf("msie") != -1)) //IE브라우저 10이하버전 // 11버전은 else 탐 { printHtml = rptContent + rptReport; var rptWin = window.open("/common/printPop.html", "rpt", "width=" + w + ",height=" + h + ",top=" + ypos + ",left=" + xpos + ",status=yes,scrollbars=yes"); } else { var rptWin = window.open("", "rpt", "width=" + w + ",height=" + h + ",top=" + ypos + ",left=" + xpos + ",status=yes,scrollbars=yes"); rptWin.document.open(); rptWin.document.write(_rptContent); rptWin.document.close(); } } function displayMetaTag() { var metaTag = ''; var arrString = []; var listHtml = ""; if (!isEmpty(metaTag)) { arrString = metaTag.split("|"); for (var i = 0; i < arrString.length; i++) { listHtml += '
  • #' + arrString[i] + '
  • '; } $('#hashList').html(listHtml); } } // ------------------------------------------------ var modArrImg = []; var modBxObj = []; var searchTemp = ''; function fnModSetContentsView(tagNm, tagType, TagKey) { modArrImg.push({"TAG_ID": tagNm, "TAG_LIST": null}); switch (tagType) { case "VIDEO": { modGetVideo(tagNm, TagKey); } break; case "VOD": { modGetVod(tagNm, TagKey); } break; case "NEWSVIDEO": { modGetNewsVideo(tagNm, TagKey); } break; } }; function modGetNewsVideo(tagNm, TagKey) { var tagArr = []; tagArr = TagKey.split("_"); var ncd = tagArr[0]; var mediaSeq = tagArr[1]; var url = application.rootUrlPrefix + '/api/getNewsInfo'; var param = { newsCode: ncd }; postAjax(url, param, function (result, status) { modNewsVideoDisplay(result, tagNm, mediaSeq); }); }; function modNewsVideoDisplay(data, tagNm, mediaSeq) { var listTag = null; var list; if (data && data.data) { list = data.data; } var thumbnailImageUrl = ""; var caption = ""; var srtUrl = ""; var vodCaption = ""; var dutyYN = ""; var vodBlockingYn = ""; var vodTypeArr = []; var vodCheck = false; if (list && list.vods && !isEmpty(list.vods)) { var lowVodUrl = ""; var highVodUrl = ""; for (var i = 0; i < list.vods.length; i++) { var temp = list.vods[i]; if (temp.mediasetSeq == mediaSeq) { vodTypeArr.push(temp.vodType); thumbnailImageUrl = temp.thumbnailImageUrl; caption = temp.caption; srtUrl = temp.subtitleUrl; vodCaption = temp.caption; dutyYN = temp.dutyYn; vodBlockingYn = temp.vodBlockingYn; if (temp.vodType == 'D') lowVodUrl = temp.vodUrl; else if (temp.vodType == 'G') highVodUrl = temp.vodUrl; else if (temp.vodType == 'K') highVodUrl = temp.vodUrl; } } vodTypeArr.sort(); if (lowVodUrl == highVodUrl || highVodUrl == "" || lowVodUrl == "") { vodCheck = true; } } listTag = modGetTagList(tagNm); listTag.TAG_LIST = { 'NEWS_CODE': list && list.newsCode ? list.newsCode : "", 'MEDIASET_SEQ': mediaSeq, 'VOD_TYPE': vodTypeArr, 'IMG_URL': thumbnailImageUrl, 'NEWS_TITLE': list && list.newsTitle ? list.newsTitle : "", 'srtUrl': srtUrl, 'dutyYn': dutyYN, 'vodBlockingYn': vodBlockingYn }; var k = $("#vod_template").clone(); k.removeAttr('id'); k.css('display', 'block'); k.find('.player-wrap .multi_player').attr('id', 'player_' + tagNm); k.find('.player-wrap .multi_player_image').attr('id', 'thumbnail_player_' + tagNm); var playerInitialValue = { newsCode: "8273890", playerId: 'player_' + tagNm, imgUrl: application.rootUrlPrefix + thumbnailImageUrl, lowVodUrl: lowVodUrl, highVodUrl: highVodUrl, caption: caption } $(".view-article #" + tagNm).html(k); var originalWidth = 912; var originalHeight = 513; $('#player_' + tagNm).css("max-height", "0"); // 동영상 관련 하단 설명 $('#player_' + tagNm).closest('.player-wrap').next('.player-caption').text(caption); var $thumbnail = $('#thumbnail_player_' + tagNm); var $img = $thumbnail.find("img"); $img.css("width", originalWidth); $img.css("height", originalHeight); var $playBtn = $thumbnail.find(".play-button"); $img.attr("src", application.rootUrlPrefix + thumbnailImageUrl); $thumbnail.show(); $playBtn.off("click").on("click", function (e) { $thumbnail.hide(); $('#player_' + tagNm).css("max-height", originalHeight); new _KbsPlayer(playerInitialValue); }); }; function modGetTagList(tagNm) { for (var i = 0; i < modArrImg.length; i++) { if (modArrImg[i].TAG_ID == tagNm) { listTag = modArrImg[i]; break; } } return listTag; }; //비디오 function modGetVideo(tagNm, TagKey) { var url = application.rootUrlPrefix + '/api/getNewsInfo'; var param = { newsCode: TagKey, }; postAjax(url, param, function (result, status) { modVideoDisplay(result, tagNm); }); }; function modVideoDisplay(data, tagNm) { var listTag = null; var list = data.data; var length = 0; var imgUrl = ""; if (!isEmpty(list.images)) { imgUrl = list.images[0].imgUrl; } else { imgUrl = application.vodDefaultImage; } var lowVodUrl = ""; var highVodUrl = ""; if (list && list.vods && !isEmpty(list.vods)) { for (var i = 0; i < list.vods.length; i++) { var temp = list.vods[i]; if (temp.vodType == 'D') lowVodUrl = "|N|N|N|" + temp.vodUrl; else if (temp.vodType == 'K') highVodUrl = "|N|N|N|" + temp.vodUrl; } } listTag = modGetTagList(tagNm); listTag.TAG_LIST = { 'NEWS_CODE': list && list.newsCode ? list.newsCode : "", 'LOW_VOD_URL': lowVodUrl, 'HIGH_VOD_URL': highVodUrl, 'IMG_URL': imgUrl, 'NEWS_TITLE': list && list.newsTitle ? list.newsTitle : "" }; var k = $("
    동영상영역 시작
    동영상영역 끝
    동영상설명
    "); k.find(".view").attr('id', "player_" + tagNm); k.find("img").attr('id', "img_" + tagNm); if (isEmpty(imgUrl)) { k.find("img").attr('src', application.vodDefaultImage); } else { k.find("img").attr('src', application.imagePath + imgUrl); } k.find("img").attr('alt', list.newsTitle); k.find("button").attr('onClick', "modPlayVideo( \'" + tagNm + "\' );"); k.find("em").text(list.newsTitle); $("#cont_newstext #" + tagNm).html(k); var l = $("
    "); if (isEmpty(imgUrl)) { l.find("img").attr('src', application.vodDefaultImage); } else { l.find("img").attr('src', application.imagePath + imgUrl); } l.find("img").attr('alt', newsTitle); $("#mailHtmlContents #" + tagNm).html(l); }; function modPlayVideo(tagNm) { var listTag = modGetTagList(tagNm); var list = listTag.TAG_LIST; var vodUrl; var vodQualityType = "" + getCookie("vod_quality_type"); if (vodQualityType == "low") { vodUrl = getKBSHlsVodUrl(list.LOW_VOD_URL); } else { vodUrl = getKBSHlsVodUrl(list.HIGH_VOD_URL); } if (isEmpty(vodUrl)) return; var image = list.IMG_URL; if (list.srtUrl != "" && list.srtUrl != 'undefined' && list.srtUrl != undefined) { var vodParam = { playlist: [{ image: image, file: vodUrl, tracks: [{file: list.srtUrl, "default": "false"}] }], skin: 'kbsvod', autostart: "true", //자동시작 height: 422, width: 750, vodPlayListInfo: [{newscode: list.NEWS_CODE}] }; } else { var vodParam = { playlist: [{ image: image, file: vodUrl }], skin: 'kbsvod', autostart: "true", //자동시작 height: 422, width: 750, vodPlayListInfo: [{newscode: list.NEWS_CODE}] }; } jwPlayerPlayNew(vodParam, 'player_' + tagNm); //동영상 재생 if (list.srtUrl != "" && list.srtUrl != 'undefined' && list.srtUrl != undefined) { setTimeout(function () { $("#player_" + tagNm + " .jw-icon-cc").show(); }, 1000); } }; function modGetVod(tagNm, TagKey) { var listTag = null; var arr_key = TagKey.split("|"); var loopCnt = arr_key.length; if (loopCnt < 3) return false; var vodUrl = ""; var imgUrl = ""; var newsTitle = ""; for (var i = 0; i < loopCnt; i++) { if (i == (loopCnt - 1)) { newsTitle = arr_key[i]; } else if (i == (loopCnt - 2)) { imgUrl = arr_key[i]; } else { if (isEmpty(vodUrl)) { vodUrl = arr_key[i]; } else { vodUrl += "|" + arr_key[i]; } } } if (vodUrl.indexOf('|') == -1) { vodUrl = "|N|N|N|" + vodUrl; } else { vodUrl = "|" + vodUrl; } listTag = modGetTagList(tagNm); listTag.TAG_LIST = {'VOD_URL': vodUrl, 'IMG_URL': imgUrl, 'NEWS_TITLE': newsTitle}; var k = $("
    동영상영역 시작
    동영상영역 끝
    동영상설명
    "); k.find(".view").attr('id', "player_" + tagNm); k.find("img").attr('id', "img_" + tagNm); if (isEmpty(imgUrl)) { k.find("img").attr('src', application.vodDefaultImage); } else { k.find("img").attr('src', application.imagePath + imgUrl); } k.find("img").attr('alt', newsTitle); k.find("button").attr('onClick', "modPlayVod( \'" + tagNm + "\' );"); if (imgUrl.indexOf('/data/fckeditor/vod/') > -1) { k.find("em").text(newsTitle); } else { k.find("em").remove(); } $("#cont_newstext #" + tagNm).html(k); var l = $("
    "); if (isEmpty(imgUrl)) { l.find("img").attr('src', application.vodDefaultImage); } else { l.find("img").attr('src', application.imagePath + imgUrl); } l.find("img").attr('alt', newsTitle); $("#mailHtmlContents #" + tagNm).html(l); }; function modPlayVod(tagNm) { var listTag = modGetTagList(tagNm); var list = listTag.TAG_LIST; var vodUrl = getKBSHlsVodUrl(list.VOD_URL); if (isEmpty(vodUrl)) return; var image = ""; if (isEmpty(list.IMG_URL)) { image = application.vodDefaultImage; } else { image = list.IMG_URL; } var vodParam = { playlist: [{ image: image, file: vodUrl }], skin: 'kbsvod', autostart: "true", //자동시작 height: 422, width: 750 }; jwPlayerPlayNew(vodParam, 'player_' + tagNm); //동영상 재생 }; function modPlayNewsVideo(tagNm) { var listTag = modGetTagList(tagNm); var list = listTag.TAG_LIST; var vodUrl; if (list.dutyYN == 'Y') { popAlert('I', '저작권 관련 서비스 사용이 불가합니다.'); return; } if (list.vodBlockingYn == 'Y') { var blocking = ''; var url = application.rootUrlPrefix + '/api/getIpInfo'; var param = {}; postAjax(url, param, function (result, status) { if (!isEmpty(result.isAbroadIp)) { blocking = data.isAbroadIp; //해외 IP 확인 } }, function (result, status) { blocking = 'N'; }); if ("N" == blocking) { popAlert('I', '저작권 관련 서비스 사용이 불가합니다.'); return; } } var vodQualityType = "" + getCookie("vod_quality_type"); var lowType = list.VOD_TYPE[0]; var highType = list.VOD_TYPE[list.VOD_TYPE.length - 1]; if (vodQualityType == "low") { vodUrl = getNewsVodOneTimeUrl(list.NEWS_CODE, lowType, list.MEDIASET_SEQ); } else { vodUrl = getNewsVodOneTimeUrl(list.NEWS_CODE, highType, list.MEDIASET_SEQ); } if (isEmpty(vodUrl)) return; var image = list.IMG_URL; if (list.srtUrl != "" && list.srtUrl != 'undefined' && list.srtUrl != undefined) { var vodParam = { playlist: [{ image: image, file: vodUrl, tracks: [{file: list.srtUrl, "default": "false"}] }], skin: 'kbsvod', autostart: "true", //자동시작 height: 422, width: 750, vodPlayListInfo: [{newscode: list.NEWS_CODE}] }; } else { var vodParam = { playlist: [{ image: image, file: vodUrl }], skin: 'kbsvod', autostart: "true", //자동시작 height: 422, width: 750, vodPlayListInfo: [{newscode: list.NEWS_CODE}] }; } jwPlayerPlayNew(vodParam, 'player_' + tagNm); //동영상 재생 if (list.srtUrl != "" && list.srtUrl != 'undefined' && list.srtUrl != undefined) { setTimeout(function () { $("#player_" + tagNm + " .jw-icon-cc").show(); }, 1000); } }; function getNewsVodOneTimeUrl(ncd, vodType, mediaseq) { var url = application.rootUrlPrefix + '/api/getNewsVodOneTimeUrl'; var param = { mediasetSeq: mediaseq, newsCode: ncd, vodType: vodType }; postAjax(url, param, function (result, status) { if (result.success) { streamUrl = data.data.streamUrl; } else { streamUrl = null; alert(result.message); } }, function (result, status) { streamUrl = null; popAlert('E', 'VOD Url 정보를 가지고 오는데 실패하였습니다. >> [' + error + ']'); }); return streamUrl; } function setNextNewsVod() { var url = application.rootUrlPrefix + '/api/getPreNextNews'; var param = { newsCode: newsCode, }; postAjax(url, param, function (result, status) { var prevNextNews = result.data; if (prevNextNews == null || prevNextNews.nextNews == null) { return; } var nextNews = prevNextNews.nextNews; $('#preNewsDiv').show(); $('#nextNewsDiv').show(); $('#nextNewsUrl').attr('href', '/news/view.do?ncd=' + nextNews.newsCode); $('#nextNewsImg').attr('src', nextNews.imgUrl); $('#nextNewsTitle').html(nextNews.newsTitle); }); } function setKeyword() { var keyword = '' if (keyword) { var keywordList = keyword.split('|'); for (var i = 0; i < keywordList.length; i++) { var $li = $('.hashtag-links-wrapper ul li').first().clone(); $li.find('a').html("#" + keywordList[i]).attr('href', "/news/pc/search/search.do?query=" + decodeHtmlEntities(keywordList[i])); $('.hashtag-links-wrapper ul').append($li); } $('.hashtag-links-wrapper ul li').first().remove(); } } function decodeHtmlEntities(input) { var doc = new DOMParser().parseFromString(input, "text/html"); return doc.documentElement.textContent; } function newsContentsDecorate() { function anchorProperties(iconName) { return { section_color: "#4664e6", div_color: "#f7fbff", div_background: "rgb(18 18 55 / 4%)", font_color: "#121237", icon_name: iconName, class: "badge", parentsClass: "anchor-text" }; } function reporterProperties(iconName) { return { section_color: "#db9655", div_color: "#fefcfb", div_background: "rgb(0 128 204 / 4%)", font_color: "#0080CC", icon_name: iconName, class: "badge", parentsClass: "report-text" }; } var section_map = { "[앵커]": anchorProperties("앵커"), "<앵커 멘트>": anchorProperties("앵커"), "[질문]": anchorProperties("질문"), "⊙인터뷰:": anchorProperties("인터뷰"), "[기자]": reporterProperties("기자"), "⊙기자:": reporterProperties("기자"), "[리포트]": reporterProperties("리포트"), "<리포트>": reporterProperties("리포트"), "[답변]": reporterProperties("답변") }; // split var list = [{section: "전체", contents: $("#cont_newstext").html()}]; for (var s in section_map) { list = newsContentsSplitByWord(list, s); } // decorate var decorated_html; if (list[0] && list[0].contents) { decorated_html = list[0].contents; } for (var a = 1; a < list.length; a++) { var obj = list[a]; var map = section_map[obj.section]; decorated_html += '
    '; decorated_html += '
    '; decorated_html += '' + map.icon_name + ''; decorated_html += '

    ' + obj.contents.replace(/^\s*
    /, '') + '

    '; decorated_html += '
    '; decorated_html += '
    '; } $("#cont_newstext").html(decorated_html); } function newsContentsSplitByWord(list, word) { var ret = []; for (var a = 0; a < list.length; a++) { var subList = []; if (list[a] && list[a].contents) { subList = list[a].contents.split(word); } for (var b = 0; b < subList.length; b++) { if (b == 0) { ret.push({section: list[a].section, contents: subList[b]}); continue; } ret.push({section: word, contents: subList[b]}); } } return ret; }

    정무 우상호·홍보 이규연·민정 오광수…“국민통합과 소통”

    입력 2025.06.09 (06:04) 수정 2025.06.09 (07:59)

    읽어주기 기능은 크롬기반의
    브라우저에서만 사용하실 수 있습니다.

    [앵커]

    이재명 대통령이 대통령실 정무수석에 우상호 전 의원을, 홍보소통수석에 이규연 전 JTBC 대표를 임명했습니다.

    민정수석엔 특수통 검사출신 오광수 변호사를 발탁했는데, 대통령실은 국민통합과 소통을 위한 인선이라고 밝혔습니다.

    방준원 기자의 보도입니다.

    [리포트]

    이재명 대통령은 새 정부와 국회의 가교 역할을 할 정무수석에 우상호 전 민주당 의원을 임명했습니다.

    4선 중진에 비대위원장과 원내대표 등을 두루 거쳐 의정 경험이 풍부하고 합리적이란 평을 듣습니다.

    [강훈식/대통령실 비서실장 : "소통과 상생에 대한 확고한 철학을 지니신 분입니다. 여야를 초월한 소통은 물론 국민 갈등을 해소하고 통합을 이끌 적임자입니다."]

    홍보소통수석에는 탐사보도를 주로 해 온 언론인 출신 이규연 전 JTBC 대표를 발탁했습니다.

    국민과의 소통을 최우선으로 두겠다는 의지를 반영한 인사라고 대통령실은 설명했습니다.

    검찰과 사법개혁 등을 진두지휘할 민정수석은 '특수통' 검사 출신 오광수 변호사가 맡게 됐습니다.

    추진력과 인품을 두루 갖춰 검찰 안팎에서 신망이 두텁다는 점을 인선 배경으로 꼽았고, 개혁의 적임자라고도 강조했습니다.

    [강훈식/대통령실 비서실장 : "이재명 대통령의 검찰 개혁의 철학을 깊이 이해하고 있는 인사입니다. 대통령의 의지를 뒷받침할 것입니다."]

    검찰 출신 기용으로 개혁의 동력이 떨어질 수 있다는 일각의 우려에 대통령실 관계자는 제도 개선이 중요하다며, "인사는 일종의 매개 역할이지 절대적 수단이라고 하긴 어렵다는 대통령 의지가 담긴 것"이라고 설명했습니다.

    대통령 비서실 구성이 속도를 내는 가운데 장관 인선에는 좀 더 시간이 걸릴 전망입니다.

    다만 공석이 된 대통령 몫 헌법재판관 후보자는 곧 지명할 것으로 보입니다.

    세 명으로 후보자를 압축해 검증 작업 중인데, 이재명 대통령의 공직선거법 위반 사건 등 변호를 맡은 이승엽 변호사도 포함된 거로 확인됐습니다.

    KBS 뉴스 방준원입니다.

    촬영기자:류재현/영상편집:이진이/그래픽:김지훈 안재우

    ■ 제보하기
    ▷ 카카오톡 : 'KBS제보' 검색, 채널 추가
    ▷ 전화 : 02-781-1234, 4444
    ▷ 이메일 : kbs1234@kbs.co.kr
    ▷ 유튜브, 네이버, 카카오에서도 KBS뉴스를 구독해주세요!


    • 정무 우상호·홍보 이규연·민정 오광수…“국민통합과 소통”
      • 입력 2025-06-09 06:04:33
      • 수정2025-06-09 07:59:03
      뉴스광장 1부
    [앵커]

    이재명 대통령이 대통령실 정무수석에 우상호 전 의원을, 홍보소통수석에 이규연 전 JTBC 대표를 임명했습니다.

    민정수석엔 특수통 검사출신 오광수 변호사를 발탁했는데, 대통령실은 국민통합과 소통을 위한 인선이라고 밝혔습니다.

    방준원 기자의 보도입니다.

    [리포트]

    이재명 대통령은 새 정부와 국회의 가교 역할을 할 정무수석에 우상호 전 민주당 의원을 임명했습니다.

    4선 중진에 비대위원장과 원내대표 등을 두루 거쳐 의정 경험이 풍부하고 합리적이란 평을 듣습니다.

    [강훈식/대통령실 비서실장 : "소통과 상생에 대한 확고한 철학을 지니신 분입니다. 여야를 초월한 소통은 물론 국민 갈등을 해소하고 통합을 이끌 적임자입니다."]

    홍보소통수석에는 탐사보도를 주로 해 온 언론인 출신 이규연 전 JTBC 대표를 발탁했습니다.

    국민과의 소통을 최우선으로 두겠다는 의지를 반영한 인사라고 대통령실은 설명했습니다.

    검찰과 사법개혁 등을 진두지휘할 민정수석은 '특수통' 검사 출신 오광수 변호사가 맡게 됐습니다.

    추진력과 인품을 두루 갖춰 검찰 안팎에서 신망이 두텁다는 점을 인선 배경으로 꼽았고, 개혁의 적임자라고도 강조했습니다.

    [강훈식/대통령실 비서실장 : "이재명 대통령의 검찰 개혁의 철학을 깊이 이해하고 있는 인사입니다. 대통령의 의지를 뒷받침할 것입니다."]

    검찰 출신 기용으로 개혁의 동력이 떨어질 수 있다는 일각의 우려에 대통령실 관계자는 제도 개선이 중요하다며, "인사는 일종의 매개 역할이지 절대적 수단이라고 하긴 어렵다는 대통령 의지가 담긴 것"이라고 설명했습니다.

    대통령 비서실 구성이 속도를 내는 가운데 장관 인선에는 좀 더 시간이 걸릴 전망입니다.

    다만 공석이 된 대통령 몫 헌법재판관 후보자는 곧 지명할 것으로 보입니다.

    세 명으로 후보자를 압축해 검증 작업 중인데, 이재명 대통령의 공직선거법 위반 사건 등 변호를 맡은 이승엽 변호사도 포함된 거로 확인됐습니다.

    KBS 뉴스 방준원입니다.

    촬영기자:류재현/영상편집:이진이/그래픽:김지훈 안재우

    이 기사가 좋으셨다면

    오늘의 핫 클릭

    실시간 뜨거운 관심을 받고 있는 뉴스

    이 기사에 대한 의견을 남겨주세요.

    수신료 수신료