[G4] 첨부화일 이미지 클릭/팝업 제어 > 기술자료 | 해피정닷컴

[G4] 첨부화일 이미지 클릭/팝업 제어 > 기술자료

본문 바로가기

사이트 내 전체검색

[G4] 첨부화일 이미지 클릭/팝업 제어 > 기술자료

그누보드 [G4] 첨부화일 이미지 클릭/팝업 제어

페이지 정보


본문

1. 그누보드 자체의 첨부 이미지 클릭 새창 제어하기

1-1. 그누보드 / extend / b4.lib.php 에서 아래 내용 삭제
        // onclick을 했을 때, 원래의 이미지 크기로 popup이 되도록 변경
        if ($board[image_window]) {
            if (isset($img[onclick]) == true)
                $return = preg_replace('/onclick\=(\'|\")?[^\s\'\"]+(\'|\")?/i', 'onClick="image_window3(\'' . $img['src'] . '\',' . (int)$img_width . ',' . (int)$img_height . ')" ', $return);
            else
                $return = preg_replace("/(\<img )([^\>]*)(\>)/i", "\\1 onClick='image_window3(\"" . $img['src'] . "\"," . (int)$img_width . "," . (int)$img_height . ")' \\2 \\3", $return);
        } else {
            if (isset($img[onclick]) == true)
                $return = preg_replace('/onclick\=(\'|\")?[^\s\'\"]+(\'|\")?/i', '', $return);
            else
                $return = preg_replace("/(\<img )([^\>]*)(\>)/i", "\\1 onclick='' \\2 \\3", $return);
        }
    }
    else
    {
        // width를 조정
        if (isset($img['width']) == true)
            $return = preg_replace('/width\=(\'|\")?[^\s\'\"]+(\'|\")?/i', 'width="' . $img_width . '"', $return);
        else
            $return = preg_replace("/(\<img )([^\>]*)(\>)/i", "\\1 width='" . $img_width . "' \\2 \\3", $return);
        // height를 삭제
        $return = preg_replace('/height\=(\'|\")?[^\s\'\"]+(\'|\")?/i', null, $return);
        // 이름도 그누의 javascript resize할 수 있게 수정
        if (isset($img[name]) == true)
            $return = preg_replace('/name\=(\'|\")?[^\s\'\"]+(\'|\")?/i', ' name="target_resize_image[]" ', $return);
        else
            $return = preg_replace("/(\<img )([^\>]*)(\>)/i", "\\1 name='target_resize_image[]' \\2 \\3", $return);
        // $thumb_create가 true이면, 이미지 크기가 $max_img_width보다 작지만, 그래도 thumb를 생성
        if ($thumb_create && $thumb_path) {
            include_once("$g4[path]/lib/thumb.lib.php");
            $thumb_path=thumbnail($thumb_path, $max_img_width,$max_img_height,$is_create,$is_crop,$quality, "", $water_mark, $filter);
            $return = preg_replace('/src\=(\'|\")?[^\s\'\"]+(\'|\")?/i', 'src="' . $thumb_path . '"', $return);
        }
        // onclick을 했을 때, 원래의 이미지 크기로 popup이 되도록 변경
        if ($board[image_window]) {
            if (isset($img[onclick]) == true)
                $return = preg_replace('/onClick\=(\'|\")?[^\s\'\"]+(\'|\")?/i', 'onClick="image_window3(\'' . $img['src'] . '\',' . (int)$img_width . ',' . (int)$img_height . ')" ', $return);
            else
                $return = preg_replace("/(\<img )([^\>]*)(\>)/i", "\\1 onClick='image_window3(\"" . $img['src'] . "\"," . (int)$img_width . "," . (int)$img_height . ")' \\2 \\3", $return);
        } else {
            if (isset($img[onclick]) == true)
                $return = preg_replace('/onClick\=(\'|\")?[^\s\'\"]+(\'|\")?/i', '', $return);
            else
                $return = preg_replace("/(\<img )([^\>]*)(\>)/i", "\\1 onClick='' \\2 \\3", $return);
        }



1-2. 그누보드 / lib / common.lib.php  949줄

[ 원본 ]
        return "<img src='$g4[path]/data/file/$board[bo_table]/".urlencode($file)."' name='target_resize_image[]' onclick='image_window(this);' style='cursor:pointer;' title='$content'>";
[ 수정 ]
        return "<img src='$g4[path]/data/file/$board[bo_table]/".urlencode($file)."' name='target_resize_image[]' style='cursor:pointer;' title='$content'>";



2. editor로 첨부한 이미지 새창뜨기 제어하기

2-1. 그누보드 / bbs / view.php  124줄

[ 원본 ]
$view[content] = preg_replace("/(\<img )([^\>]*)(\>)/i", "\\1 name='target_resize_image[]' onclick='image_window(this)' style='cursor:pointer;' \\2 \\3", $view[content]);
[ 수정 ]
//$view[content] = preg_replace("/(\<img )([^\>]*)(\>)/i", "\\1 name='target_resize_image[]' onclick='image_window(this)' style='cursor:pointer;' \\2 \\3", $view[content]);


자료출처
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=25902 


그누보드5용 : https://www.happyjung.com/lecture/1722

댓글목록

등록된 댓글이 없습니다.


Total 2,641건 1 페이지
  • RSS
기술자료 목록
2641
그누보드   23  2024-11-26 21:14 ~ 2024-11-26 21:22  
2640
그누보드   66  2024-11-22 10:52 ~ 2024-11-22 11:03  
2639
호스팅   101  2024-11-19 14:41 ~ 2024-11-19 21:17  
2638
Linux   83  2024-11-18 15:45 ~ 2024-11-18 15:48  
2637
일반   87  2024-11-15 16:45 ~ 2024-11-15 16:46  
2636
Secure   137  2024-11-06 18:48 ~ 2024-11-06 18:50  
2635
영카트   282  2024-10-21 13:44 ~ 2024-10-21 19:42  
2634
전자결제   544  2024-09-05 09:30  
2633
MySQL   947  2024-03-29 14:14 ~ 2024-03-29 14:14  
2632
그누보드   1166  2024-02-23 18:40 ~ 2024-02-24 06:13  
2631
JavaScript   1269  2024-02-16 18:50 ~ 2024-02-16 20:37  
2630
Java   1221  2024-02-06 16:49  
2629
PHP   1390  2024-02-06 16:42  
2628
호스팅   1234  2024-01-29 12:54  
2627
PHP   1296  2024-01-26 11:04 ~ 2024-01-26 11:13  
2626
MySQL   1499  2024-01-08 17:37 ~ 2024-03-14 16:00  
2625
SQL   1605  2024-01-08 12:36  
2624
영카트   1672  2024-01-04 14:57  
2623
일반   2568  2023-12-15 18:33  
2622
Android   2058  2023-11-30 18:48 ~ 2023-11-30 19:41  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.