history 매크로 문제 해결
- <history(5)> 라는 매크로가 있다면, 본문 내용에 최근 5번의 revision 목록을 출력하는데 (History 를 클릭했을 때와 동일한 출력), 실제로 다섯개의 최근 revision 이 각각의 revision 을 링크하고 있는 것이 아니라 죄다 현재 버전을 링크하고 있다. (Revision 3 을 클릭해도 3번째 수정본이 아닌 마지막 수정본이 출력된다)
- 왼쪽에 있는 radio button 들도, History 를 클릭했을 때와는 다르게 엉뚱한 위치가 디폴트로 지정되어 있다. (디폴트 위치가 문제가 있을 뿐 동작은 제대로 한다)
- MacroHistory 에서 GetHistoryLine 을 부를 때 row parameter 의 값을 수정하여 해결
- 부작용: 알려진 것 없음
- MacroHistory의 내용만 변경했으므로, 부작용이 있더라도 history 매크로를 사용한 곳에서만 발생할 것으로 생각됨
-
sub MacroHistory {
...
$html .= "<table border='0' cellpadding=0 cellspacing=0 width='90%'><tr>";
$html .= &GetHistoryLine($DocID, $Page{'text_default'}, 0, 0);
&OpenKeptRevisions('text_default');
...
next if ($_ eq "");
$html .= &GetHistoryLine($DocID, $KeptRevisions{$_}, 0, $i);
}
$html .= "<tr><td align='center'><input type='submit' value='변경 비교'/> </td><td> </td></table></form>\n";
return $html;
}
위키위키분류