묻고답하기
mmx900님의 작품 ''팝업창 출력'' newest_popup을...
2009.04.11 13:50
mmx900님의 작품 '팝업창 출력' newest_popup을 고쳐 주세요.
아야어디가님께서 현재 버전에 맞춰 쓸 수 있도록 올려 주셨는데
몇 가지 미흡한 점이 있어서 테스트해 보았지만,
결국 저는 실력 부족으로 포기했습니다.
팝업창을 띄우는 것은 가능해졌지만,
1. 팝업창에 게시판 제목이 제목으로 반영되지 못하고 있고,
2. 원래는 팝업창이 1개 이상도 띄우는 것이 가능했는데 지금은 오로지 1개 밖에 띄우지 못합니다.
3. 팝업창 소스 내에서 Map 안에서 onClick이 1개 이상 있을 경우, 1개 뿐이 동작을 하지 않습니다.
제로보드에서 향상버전을 만드는 것은 좋지만,
기존 위젯에 추가되어 있던 잘 작동되는 것을 사용되지 않도록 하면 업그레이드 하기가 고민될 수 밖에 없겠습니다.
위젯 내에 있는 또 다른 팝업이 있기는 하지만
그것은 쓸만한 것이 아니라고 판단 됩니다.
팝업 소스를 누가 좀 고쳐서 저 뿐만 아니라 다른 사람들도 함께 잘 사용할 수 있도록 수정해 주시면 대단히 고맙겠습니다.
참고 :
주소창에 위 주소를 입력하고 접속하면 팝업창이 나타나지 않는 문제가 있습니다.
반드시 메인에서 로고를 눌러 주어야만 팝업창이 나타납니다.
이거 누가 좀 고쳐 주세요.
아래 소스의 스크립트는
function closeWin(url)
{
opener.location.href = url;
window.close();
}
/www/xe/modules/board/tpl/js/board.js
내에 추가되어 있습니다.
아래 소스는 팝업창 소스입니다.
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=euc-kr">
<title></title>
<meta name="generator" content="Namo WebEditor">
<Script language="JavaScript">
<!--
function closeWin(url)
{
opener.location.href = url;
window.close();
}
//-->
</Script>
</head>
<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red" leftmargin="0" topmargin="0">
<table cellspacing="1" cellpadding="2" width="500" bgcolor="#cccccc" border="0">
<tbody>
<tr>
<td valign="top" align="middle" width="100%" bgcolor="white">
<img src="http://www.ksha.co.kr/images/data/2009/04/07/20090407-01.jpg" width="500" height="551" border="0" alt="자세히 보기 클릭!!!" usemap="#Map">
<map name="Map">
<area shape="rect" coords="435, 411, 490, 440" href="#" onClick="closeWin('http://www.ksha.co.kr/xe/9300');">
<area shape="rect" coords="432, 510, 487, 539" href="#" onClick="closeWin('http://www.ksha.co.kr/xe/9246);">
</map>
</td>
</tr>
</tbody>
</table>
</body>
</html>
이것은 mmx900님의 원래 소스입니다.
xe_board_for_popup_0.2.zip
newest_popup_원본.zip
이것은 아야어디가님께서 수정한 소스입니다.
xe_default_for_popup.zip
newest_popup.zip
board.admin.controller.zip
위 board.admin.controller.zip
이것은 /module/board/board.admin.controller.php 의 소스입니다.
소스 내부에는 아래 분홍색 소스가 추가되어 있습니다.
mmx900님께서만든 원래 소스에서는
아래 추가된 부분을 board.admin.controller.php 사용하지는 않았습니다.
이렇게 소스를 추가하게 되면 일시적으로는 팝업하는 것이 가능할 수는 있겠으나
앞으로 board.admin.controller.php 소스가 업데이트 되면
아래 소스 부분은 없으지게 되므로 팝업창 사용이 또 불가능하게 될 수 있다고 생각 됩니다.
이 기능을 잘 사용할 수 있도록 제로님, 그리고 고수님 도와 주세요.
// module_srl의 값에 따라 insert/update
if(!$args->module_srl) {
$output = $oModuleController->insertModule($args);
/*여기서부터 수정된 부분
*$args->mid가 popup_manager인 경우 필요한 확장변수 값을 입력해줌.
*/
if($args->mid == "popup_manager") {
$oDocumentController = &getController('document');
$oModuleModel = &getModel('module'+ ');
// var_idx가 지정되어 있지 않으면 최고 값을 지정
if(!$var_idx) {
$obj->module_srl = $output->get(module_srl);
}
$extra_0 = $obj->module_srl;
$extra_1 = array("1","2","3","4","5","6","7","8");
$extra_2 = array("활성화","너비","길이","x위치","y위치","보이지않음","시작일","종료일");
$extra_3 = array("select","text","text","text","text","text","date","date");
$extra_4 = array("Y","Y","Y","","","","","");
$extra_5 = array("N","N","N","N","N","N","N","N");
$extra_6 = array("Y,N","500","500","100","100","7","","");
$extra_7 = array("Y활성화 N비활성화","가로길이","세로길이","가로위치","세로위치","일단위로 입력 없을시 해당옵션배제","","");
$extra_8 = array("activation","p_width","p_height","p_x","p_y","hide_term","open_date","close_date");
for($i=0;$i<8;$i++){
$output1 = $oDocumentController->insertDocumentExtraKey($extra_0, $extra_1[$i], $extra_2[$i], $extra_3[$i], $extra_4[$i], $extra_5[$i], $extra_6[$i], $extra_7[$i], $extra_8[$i]);
}
if(!$output1->toBool()) return $output1;
}
/* 여기까지 수정된 부분*/
$msg_code = 'success_registed';
} else {