<mysign> 매크로 도입
- WikiX에 있는 기능이 너무 맘에 들어서 흉내를 내보았다. ^^;
- 사용법 : <mysign>
- 게시판 등의 페이지에서 글을 쓴 후에, 끝에 <mysign> 이라고 적고 "저장" 버튼을 누르면 <mysign(편집자ID,편집시각)>으로 치환되어 저장된다. 로그인하지 않았을 경우는 편집자id 대신에 IP 주소가 저장된다.
- 이렇게 저장된 매크로는 다시 페이지 열람시에 적절하게 변환된다.
- 이때 <mysign> 뒤에는 공백을 비롯한 다른 문자가 오면 안 된다. 반드시 바로 엔터를 쳐서 줄을 바꾸어야 동작한다.
- 다음 함수를 적당한 위치에 추가하고, 위에서 언급한 ProcessPostMacro() 함수내에서 호출하도록 한다.
sub PostMacroMySign {
my ($string) = @_;
my ($timestamp) = &TimeToText($Now);
my ($author) = &GetParam('username');
if ($author ne "") {
$author = "[[$author]]";
} else {
$author = &GetRemoteHost(0);
}
$string =~ s/<mysign>([\r\f]*\n)/<mysign($author,$timestamp)>$1/gim;
return $string;
}
Notes
소스를 약간 고쳤습니다. 로그인하지 않았을 경우 IP 주소를 출력했는데, GetRemoteHost 함수를 사용하여 호스트이름을 출력 - 호스트이름이 없으면 그냥 IP 주소를 출력 - 하게 고쳤습니다. 굳이 반영하지 않아도 상관없는 수정인 듯 합니다.
ext1.48c - 소스 수정되었습니다. 매크로 뒤에 다른 문자가 있으면 안 된다는 제한 추가
위키위키분류