권한에 따라 에디터와 일반 글쓰기 동시 사용하기
게시판 설정에서 html사용권한 이라는 부분이 있습니다
이름 그대로 설정 권한 이상이여야만 html태그를 쓸 수 있게 하는 기능이죠.
이 기능을 이용하면 일반 글쓰기폼과 cheditor 글쓰기폼 둘 다 사용할 수 있습니다만
기본 cheditor스킨에서는 이건 무시하고 무조건 cheditor를 돌리도록 되어있죠.
스킨을 수정하면 간단합니다.
05년 7월 30일자로 다운받을 수 있는 그누4 최신버젼에 들어있는 기본 cheditor 스킨을 예로 설명합니다.
수정해야될 파일은 write.skin.php 입니다
맨 위
include_once("$g4[path]/lib/cheditor.lib.php");
if ($w == 'r') $content = '';
부분을
if ($is_html) {
include_once("$g4[path]/lib/cheditor.lib.php");
if ($w == 'r') $content = '';
}
로 수정
--------------------------------------------------------------------------------------------------
<script src="<?=$g4[editor_path]?>/cheditor.js"></script>
<?=cheditor1('wr_content', $write[wr_content]);?>
부분을
<? if ($is_html) { ?>
<script src="<?=$g4[editor_path]?>/cheditor.js"></script>
<?=cheditor1('wr_content', $write[wr_content]);?>
<? } ?>
로 수정
--------------------------------------------------------------------------------------------------
<?/* if ($is_html) { ?><INPUT onclick="html_auto_br(this);" type=checkbox value="<?=$html_value?>" name="html" <?=$html_checked?>><span class=w_title>HTML</span> <? } */?>
<input type='hidden' name='html' value='html1'>
부분을
<? if (!$is_html) { ?><INPUT onclick="html_auto_br(this);" type=checkbox value="<?=$html_value?>" name="html" <?=$html_checked?>><span class=w_title>HTML</span> <? } else { ?>
<input type='hidden' name='html' value='html1'>
<? } ?>
로 수정
--------------------------------------------------------------------------------------------------
<tr>
<td style='padding-left:20px; height:30px;'>· 제목</td>
<td><input class=ed style="width:100%;" name=wr_subject itemname="제목" required value="<?=$subject?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
부분 바로 아래 다음을 추가
<? if(!$is_html) { ?>
<tr>
<td style='padding-left:20px; height:30px;'></td>
<td>
<table border=0 cellpadding=0 cellspacing=0 width=95%>
<tr>
<td><span style="cursor: pointer;" onclick="textarea_decrease('wr_content', 10);"><img src="<?=$board_skin_path?>/img/up.gif"></span>
<span style="cursor: pointer;" onclick="textarea_original('wr_content', 10);"><img src="<?=$board_skin_path?>/img/start.gif"></span>
<span style="cursor: pointer;" onclick="textarea_increase('wr_content', 10);"><img src="<?=$board_skin_path?>/img/down.gif"></span></td>
<td align=right><? if ($write_min || $write_max) { ?><span id=char_count></span>글자<?}?></td>
</tr>
</table>
</td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
--------------------------------------------------------------------------------------------------
<?=cheditor2('fwrite', 'wr_content', '100%', '350');?>
부분을
<? if($is_html) { ?>
<?=cheditor2('fwrite', 'wr_content', '100%', '350');?>
<? } else { ?>
<textarea id=wr_content name=wr_content class='tx' style='word-break:break-all;width:95%' rows=20 itemname="내용" required
<? if ($write_min || $write_max) { ?>onkeyup="check_byte('wr_content', 'char_count');"<?}?>><?=$content?></textarea>
<? if ($write_min || $write_max) { ?><script language="javascript"> check_byte('wr_content', 'char_count'); </script><? } ?>
<? } ?>
로 수정
--------------------------------------------------------------------------------------------------
if (char_min > 0 || char_max > 0)
{
var cnt = parseInt(document.getElementById('char_count').innerHTML);
if (char_min > 0 && char_min > cnt)
{
alert("내용은 "+char_min+"글자 이상 쓰셔야 합니다.");
return;
} else if (char_max > 0 && char_max < cnt)
{
alert("내용은 "+char_max+"글자 이하로 쓰셔야 합니다.");
return;
}
}
부분을
<? if(!$is_html) { ?>
if (char_min > 0 || char_max > 0)
{
var cnt = parseInt(document.getElementById('char_count').innerHTML);
if (char_min > 0 && char_min > cnt)
{
alert("내용은 "+char_min+"글자 이상 쓰셔야 합니다.");
return;
} else if (char_max > 0 && char_max < cnt)
{
alert("내용은 "+char_max+"글자 이하로 쓰셔야 합니다.");
return;
}
}
<? } ?>
로 수정
--------------------------------------------------------------------------------------------------
<?=cheditor3('wr_content');?>
부분을
<? if ($is_html) echo cheditor3('wr_content'); ?>
로 수정
--------------------------------------------------------------------------------------------------
원리는 간단합니다.
두 글쓰기폼을 동시에 두고 html사용권한에 따라 두 부분중 선택 적용 하는것이죠.
이렇게 바꿀 경우 예를들어 html권한을 2로 하면 비회원은 일반글쓰기폼
회원은 cheditor 글쓰기폼을 사용할 수 있습니다
기존처럼 모두에게 에디터를 쓰게 한다면 html권한 1로 놓으면 되겠고
관리자를 제한 모두에게 텍스트모드만 쓰게 한다면 html권한 10으로 하면 되겠죠?
*위 내용대로 수정된 파일 첨부합니다.
이름 그대로 설정 권한 이상이여야만 html태그를 쓸 수 있게 하는 기능이죠.
이 기능을 이용하면 일반 글쓰기폼과 cheditor 글쓰기폼 둘 다 사용할 수 있습니다만
기본 cheditor스킨에서는 이건 무시하고 무조건 cheditor를 돌리도록 되어있죠.
스킨을 수정하면 간단합니다.
05년 7월 30일자로 다운받을 수 있는 그누4 최신버젼에 들어있는 기본 cheditor 스킨을 예로 설명합니다.
수정해야될 파일은 write.skin.php 입니다
맨 위
include_once("$g4[path]/lib/cheditor.lib.php");
if ($w == 'r') $content = '';
부분을
if ($is_html) {
include_once("$g4[path]/lib/cheditor.lib.php");
if ($w == 'r') $content = '';
}
로 수정
--------------------------------------------------------------------------------------------------
<script src="<?=$g4[editor_path]?>/cheditor.js"></script>
<?=cheditor1('wr_content', $write[wr_content]);?>
부분을
<? if ($is_html) { ?>
<script src="<?=$g4[editor_path]?>/cheditor.js"></script>
<?=cheditor1('wr_content', $write[wr_content]);?>
<? } ?>
로 수정
--------------------------------------------------------------------------------------------------
<?/* if ($is_html) { ?><INPUT onclick="html_auto_br(this);" type=checkbox value="<?=$html_value?>" name="html" <?=$html_checked?>><span class=w_title>HTML</span> <? } */?>
<input type='hidden' name='html' value='html1'>
부분을
<? if (!$is_html) { ?><INPUT onclick="html_auto_br(this);" type=checkbox value="<?=$html_value?>" name="html" <?=$html_checked?>><span class=w_title>HTML</span> <? } else { ?>
<input type='hidden' name='html' value='html1'>
<? } ?>
로 수정
--------------------------------------------------------------------------------------------------
<tr>
<td style='padding-left:20px; height:30px;'>· 제목</td>
<td><input class=ed style="width:100%;" name=wr_subject itemname="제목" required value="<?=$subject?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
부분 바로 아래 다음을 추가
<? if(!$is_html) { ?>
<tr>
<td style='padding-left:20px; height:30px;'></td>
<td>
<table border=0 cellpadding=0 cellspacing=0 width=95%>
<tr>
<td><span style="cursor: pointer;" onclick="textarea_decrease('wr_content', 10);"><img src="<?=$board_skin_path?>/img/up.gif"></span>
<span style="cursor: pointer;" onclick="textarea_original('wr_content', 10);"><img src="<?=$board_skin_path?>/img/start.gif"></span>
<span style="cursor: pointer;" onclick="textarea_increase('wr_content', 10);"><img src="<?=$board_skin_path?>/img/down.gif"></span></td>
<td align=right><? if ($write_min || $write_max) { ?><span id=char_count></span>글자<?}?></td>
</tr>
</table>
</td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
--------------------------------------------------------------------------------------------------
<?=cheditor2('fwrite', 'wr_content', '100%', '350');?>
부분을
<? if($is_html) { ?>
<?=cheditor2('fwrite', 'wr_content', '100%', '350');?>
<? } else { ?>
<textarea id=wr_content name=wr_content class='tx' style='word-break:break-all;width:95%' rows=20 itemname="내용" required
<? if ($write_min || $write_max) { ?>onkeyup="check_byte('wr_content', 'char_count');"<?}?>><?=$content?></textarea>
<? if ($write_min || $write_max) { ?><script language="javascript"> check_byte('wr_content', 'char_count'); </script><? } ?>
<? } ?>
로 수정
--------------------------------------------------------------------------------------------------
if (char_min > 0 || char_max > 0)
{
var cnt = parseInt(document.getElementById('char_count').innerHTML);
if (char_min > 0 && char_min > cnt)
{
alert("내용은 "+char_min+"글자 이상 쓰셔야 합니다.");
return;
} else if (char_max > 0 && char_max < cnt)
{
alert("내용은 "+char_max+"글자 이하로 쓰셔야 합니다.");
return;
}
}
부분을
<? if(!$is_html) { ?>
if (char_min > 0 || char_max > 0)
{
var cnt = parseInt(document.getElementById('char_count').innerHTML);
if (char_min > 0 && char_min > cnt)
{
alert("내용은 "+char_min+"글자 이상 쓰셔야 합니다.");
return;
} else if (char_max > 0 && char_max < cnt)
{
alert("내용은 "+char_max+"글자 이하로 쓰셔야 합니다.");
return;
}
}
<? } ?>
로 수정
--------------------------------------------------------------------------------------------------
<?=cheditor3('wr_content');?>
부분을
<? if ($is_html) echo cheditor3('wr_content'); ?>
로 수정
--------------------------------------------------------------------------------------------------
원리는 간단합니다.
두 글쓰기폼을 동시에 두고 html사용권한에 따라 두 부분중 선택 적용 하는것이죠.
이렇게 바꿀 경우 예를들어 html권한을 2로 하면 비회원은 일반글쓰기폼
회원은 cheditor 글쓰기폼을 사용할 수 있습니다
기존처럼 모두에게 에디터를 쓰게 한다면 html권한 1로 놓으면 되겠고
관리자를 제한 모두에게 텍스트모드만 쓰게 한다면 html권한 10으로 하면 되겠죠?
*위 내용대로 수정된 파일 첨부합니다.
댓글 9개
알려드립니다
20년 전
test
teset
teset
20년 전
이거 저는 처음에 흥분해서 팁을 바로 적용했다가 제가 원하는 것이 아니라는 것을 알고 뒤늦게 실망했지요. 제가 원하는 것은 회원등급에 따라 에디터와 일반 글쓰기가 나누어지는 것이 아니라 누구나 에디터든 일반 글쓰기든지 선택할 수 있는 자유선택권을 갖는 겁니다.
20년 전
'고냉이'님께서 서두에 밝히셨는데, 읽어보지 않으셨던가요?
> 게시판 설정에서 html사용권한 이라는 부분이 있습니다
> 이름 그대로 설정 권한 이상이여야만 html태그를 쓸 수 있게 하는 기능이죠.
> 이 기능을 이용하면 일반 글쓰기폼과 cheditor 글쓰기폼 둘 다 사용할 수 있습니다만
> 기본 cheditor스킨에서는 이건 무시하고 무조건 cheditor를 돌리도록 되어있죠
즉, 권한(회원레벨에 의해 제어되는)에 따른 선택적 입력폼을 사용하는 팁입니다.
> 이거 저는 처음에 흥분해서 팁을 바로 적용했다가 제가 원하는 것이 아니라는 것을 알고 뒤늦게 실망했지요. 제가 > 원하는 것은 회원등급에 따라 에디터와 일반 글쓰기가 나누어지는 것이 아니라 누구나 에디터든 일반 글쓰기든지 > 선택할 수 있는 자유선택권을 갖는 겁니다. 이거 저는 처음에 흥분해서 팁을 바로 적용했다가 제가 원하는 것이 아> 니라는 것을 알고 뒤늦게 실망했지요. 제가 원하는 것은 회원등급에 따라 에디터와 일반 글쓰기가 나누어지는 것> 이 아니라 누구나 에디터든 일반 글쓰기든지 선택할 수 있는 자유선택권을 갖는 겁니다.
이 부분과는 전혀 의미가 다른 내용이군요.
'고냉이'님 게시물에는 그 어떤 부분에도 직전에 상기한 바와 같은 내용은
언급되지 않았습니다.
> 제가 원하는 것은 회원등급에 따라 에디터와 일반 글쓰기가 나누어지는 것이 아니라 누구나 에디터든 일반 글쓰기> 든지 선택할 수 있는 자유선택권을 갖는 겁니다.
>> 기존 gnu3.xx 버전에서 이미 배포된 스킨이 있습니다.
>> 찾아보시고 그런 말씀을 하시기 바랍니다.
>> 혹시라도 찾아보셨는데, 그런 자료를 'g4로 컨버팅 할 수 없겠는가?!'라는 질문내용이
>> 원하는 내용에 좀 더 직접적으로 접근할 수 있는 부분이라고 보여집니다만...
> 게시판 설정에서 html사용권한 이라는 부분이 있습니다
> 이름 그대로 설정 권한 이상이여야만 html태그를 쓸 수 있게 하는 기능이죠.
> 이 기능을 이용하면 일반 글쓰기폼과 cheditor 글쓰기폼 둘 다 사용할 수 있습니다만
> 기본 cheditor스킨에서는 이건 무시하고 무조건 cheditor를 돌리도록 되어있죠
즉, 권한(회원레벨에 의해 제어되는)에 따른 선택적 입력폼을 사용하는 팁입니다.
> 이거 저는 처음에 흥분해서 팁을 바로 적용했다가 제가 원하는 것이 아니라는 것을 알고 뒤늦게 실망했지요. 제가 > 원하는 것은 회원등급에 따라 에디터와 일반 글쓰기가 나누어지는 것이 아니라 누구나 에디터든 일반 글쓰기든지 > 선택할 수 있는 자유선택권을 갖는 겁니다. 이거 저는 처음에 흥분해서 팁을 바로 적용했다가 제가 원하는 것이 아> 니라는 것을 알고 뒤늦게 실망했지요. 제가 원하는 것은 회원등급에 따라 에디터와 일반 글쓰기가 나누어지는 것> 이 아니라 누구나 에디터든 일반 글쓰기든지 선택할 수 있는 자유선택권을 갖는 겁니다.
이 부분과는 전혀 의미가 다른 내용이군요.
'고냉이'님 게시물에는 그 어떤 부분에도 직전에 상기한 바와 같은 내용은
언급되지 않았습니다.
> 제가 원하는 것은 회원등급에 따라 에디터와 일반 글쓰기가 나누어지는 것이 아니라 누구나 에디터든 일반 글쓰기> 든지 선택할 수 있는 자유선택권을 갖는 겁니다.
>> 기존 gnu3.xx 버전에서 이미 배포된 스킨이 있습니다.
>> 찾아보시고 그런 말씀을 하시기 바랍니다.
>> 혹시라도 찾아보셨는데, 그런 자료를 'g4로 컨버팅 할 수 없겠는가?!'라는 질문내용이
>> 원하는 내용에 좀 더 직접적으로 접근할 수 있는 부분이라고 보여집니다만...
20년 전
나스카님께서 부연설명을 잘 해주셨네요
두 폼을 선택적으로 쓰려면 글쓰기 버튼 하나 더 맹글고 버튼에서 변수 하나를 맹글어 넘겨 주면 간단하게 될것같으니 그다지 어렵지는 않습니다.
내일쯤 팁 올려 드릴게요(친절한 고냉씨 ? ㅎㅎ)
두 폼을 선택적으로 쓰려면 글쓰기 버튼 하나 더 맹글고 버튼에서 변수 하나를 맹글어 넘겨 주면 간단하게 될것같으니 그다지 어렵지는 않습니다.
내일쯤 팁 올려 드릴게요(친절한 고냉씨 ? ㅎㅎ)
ObㅈL洙
20년 전
팁
20년 전
권한에 따라 에디터와 일반 글쓰기 동시 사용하기
20년 전
고맙습니다 ^^
16년 전
ㄳㄳ
zpi20
10년 전
감사합니다 ^^
게시판 목록
그누4 팁자료실
그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.
나누면 즐거움이 커집니다.
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 3309 | 3년 전 | 1799 | ||
| 3308 | 11년 전 | 2088 | ||
| 3307 |
uPAmJ903
|
6년 전 | 4743 | |
| 3306 |
바른사나이
|
6년 전 | 3270 | |
| 3305 | 6년 전 | 12298 | ||
| 3304 | 7년 전 | 3700 | ||
| 3303 | 7년 전 | 3739 | ||
| 3302 |
지리산초보
|
7년 전 | 13590 | |
| 3301 |
sozet
|
8년 전 | 4898 | |
| 3300 |
sozet
|
8년 전 | 5964 | |
| 3299 |
sozet
|
8년 전 | 10857 | |
| 3298 | 8년 전 | 4009 | ||
| 3297 |
또치하우스
|
8년 전 | 4435 | |
| 3296 | 8년 전 | 11962 | ||
| 3295 |
또치하우스
|
8년 전 | 14979 | |
| 3294 | 8년 전 | 6017 | ||
| 3293 | 8년 전 | 5584 | ||
| 3292 |
|
9년 전 | 5310 | |
| 3291 | 9년 전 | 13674 | ||
| 3290 | 9년 전 | 5044 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기