묻고답하기
송동우님 해결되었습니다.. 그리고 질문 두가지만 더 드려요
2011.07.27 21:06
질문드리려는것은
한줄 텍스트 필드의 가로 폭 길이 조정 방법과
한줄 텍스트 필드와 textarea 필드에 기본값을 입력하고 해당 입력값을 관리자 외에는 변경하지 못하게 하려고 합니다..
요 두가지만 더 질문드려요..
댓글 3
-
송동우
2011.07.27 21:32
-
무비클립
2011.07.27 21:38
네 값을 미리 넣고 필드는 출력을하되 관리자 외에는 편집못하게요 -
송동우
2011.07.27 22:26
일단 앞전에 올렸던 소스에 치명적 결함이 있었네요......
테스트를 해보니.... 기존의 변수에 값이 들어가 있는 상태에서 관리자가 아닌 글쓴이가 글을 수정하면
기존의 변수값이 날아가 버리네요.......
최종확인을 하지 않았더니 그런 오류를 뒤늦게 발견해서 다시 수정했습니다.......
일단 소스 적용했던것 원위치 시키고 아래 내용을 다시 적용하시기 바랍니다.
board 1.3 / xe_official 게시판 스킨을 적용했을 때
xe - modules - board - skins - xe_official - write_form.html 열고
<tr>
<th scope="row">{$val->name} <!--@ if($val->is_required=='Y')--><em>*</em><!--@ end--></th>
<td>{$val->getFormHTML()}</td>
</tr>이 부분을 찾아서
td 태그속의 붉은색
{$val->getFormHTML()}
이것 대신에<!--@ if($logged_info->is_admin == "Y" || ($logged_info->is_admin != "Y" && $val->eid != "reser_result") || !$document_srl)-->
{$val->getFormHTML()}
<!--@ else-->
{$val->value}
<input type="hidden" name="{$val->eid}" value="{$val->value}" />
<!--@ end-->이것으로 변경
===============================
bodex 사용때
xe - modules - bodex - skins - ex_default - write_form.html 열고line 176 쯤에
<!--@ else-->
<td>{$val->getFormHTML()}</td>
<!--@ endif-->
여기에서 붉은 색
{$val->getFormHTML()}
이것 대신에<!--@ if($logged_info->is_admin == "Y" || ($logged_info->is_admin != "Y" && $val->eid != "reser_result") || !$document_srl)-->
{$val->getFormHTML()}
<!--@ else-->
{$val->value}
<input type="hidden" name="{$val->eid}" value="{$val->value}" />
<!--@ end-->
이것 삽입
최종확인을 했으니까 이상이 없을 겁니다.....
번거롭게 해서 죄송합니다........
참고: 관리자는 모두 수정을 할 수 있고 ......글쓴이는 수정을 누르면 지정한 확장변수는 input 박스가 아니라 그냥 값이 텍스트로 나타나기 때문에 수정을 할 수 없게 했습니다......... -
송동우
2011.07.27 23:01
확장변수 textarea에 기본값 넣기......
이건 확장변수 설정할 때 옵션에 있는 것 아닌가요?
대충 테스트 해보니 안되는 것 같아서 소스를 손댔습니다....
확장변수 설정하는 곳에서 기능이 있다면 그걸 사용하시면 됩니다.
아니면
xe - classes - extravar - extravar.class.php 열고line 210 쯤에
case 'textarea' :
$buff .= '<textarea name="'.$column_name.'" class="textarea">'.$value.'</textarea>';
break;이 부분을
case 'textarea' :
$pre_value = "test";
if( $pre_value == substr($value,0,strlen($pre_value)) ) $pre_value = "";
$buff .= '<textarea name="'.$column_name.'" class="textarea">'.$pre_value.$value.'</textarea>';
break;
이렇게 바꿔보세요
붉은 색 test는 기본적으로 들어갈 문구 입력......
xe - classes - extravar - extravar.class.php 열고
line 304 쯤에
$buff .=' <input type="text" name="'.$column_name.'" value="'.$value.'" class="text" style="width:100px;" />';
붉은색 글자를 추가했습니다.......숫자 100은 원하는 대로 수정.....
두번째 질문은 정확하게 이해를 못하겠습니다........값을 미리 넣겠다는 것인지....나중에 넣겠다는 것인지......