[첫화면으로]UseModWiki소스수정/MyInterest매크로

마지막으로 [b]

MyInterest 매크로

wiki.pl 수정

sub MacroSubst {
    ...
### <MyInterest(username)>
    $txt =~ s/(\&__LT__;myinterest(\(([^\n]+)\))?\&__GT__;)/&MacroMyInterest($1, $3)/gei;
###
###############
    return $txt;
}

다음 함수를 통채로 추가
### MyInterest
sub MacroMyInterest {
    my ($itself, $username) = (@_);
    my ($data, $status, @pages);
    my (%tempUserData, %tempUserInterest);
    my $txt = "";

    if ($username eq "") {
        if (&GetParam('username') eq "") {
            return "";
        } else {
            $username = &GetParam('username');
        }
    }

    %tempUserData = ();
    ($status, $data) = &ReadFile(&UserDataFilename($username));
    if (!$status) {
        return "";
    }
    %tempUserData = split(/$FS1/, $data, -1);  # -1 keeps trailing null fields
    %tempUserInterest = split(/$FS2/, $tempUserData{'interest'}, -1);

    @pages = sort (keys (%tempUserInterest));

    foreach (@pages) {
        $txt .= ".... "  if ($_ =~ m|/|);
        $txt .= &GetPageOrEditLink($_)."<br>";
    }

    return $txt;
}

Notes

Raymundo 페이지에 테스트 삼아서 넣긴 했지만... 제 홈페이지에 있는 페이지들이야 전부 제 관심 페이지일테니... 제가 만들었지만 저는 전혀 쓸 일이 없는 매크로로군요. 게다가 막상 남의 홈페이지에서 사용하려고 해도 괜히 페이지들 차별하는 느낌이 들어서.. ^^; NoSmoke 같은 공공 홈페이지쯤 되면 사용하기 좋을 것 같은데 그런 곳 중에 이곳의 소스를 사용해서 운영하는 곳이 있으려나요? :-)
-- Raymundo 2003-3-29 10:15 am

        if ($username eq "") {
                if (&GetParam('username') eq "") {
                        return "";
                } else {
                        $username = &GetParam('username');
                }
## 추가
        } else {
                $username = &FreeToNormal($username);
        }
## 추가
누군가를 위해서 저걸 추가해주는게 좋을거 같습니다.
-- Bab2 2003-3-31 12:22 am

누구가 누군데요? 일리가 있고, 생각을 안 한 것도 아닙니다만... /사용자아이디 패치를 적용하지 않은 경우에는 들어맞지 않지요. 굳이 패치들간에 불필요한 의존성을 걸 필요가 없다고 생각해서 일부러 넣지 않았습니다. 뭐 이 원칙이 잘 지켜지고 있지도 않습니다만 :-)
-- Raymundo 2003-3-31 1:03 am
그렇군요.. 'o'a 누군가는... 저희 아이들(?) 얘기 였습니다. ^^;
-- Bab2 2003-3-31 2:12 am


ext1.50b - 관심있는 페이지로 등록한 페이지가 삭제되었을 경우, 여전히 평범하게 링크가 나오던 것을 일반적인 경우처럼 "없는 페이지 링크" (뒤에 물음표 또는 굵은 첫글자) 로 표시하게 고쳤습니다. 관심 페이지의 수가 좀 많을 경우 속도 저하가 있겠습니다만, 그것을 체감할 정도로 관심 페이지를 많이 등록하지는 않겠죠.
-- Raymundo 2003-9-29 6:48 pm


위키위키분류

마지막 편집일: 2007-1-8 12:19 pm (변경사항 [d])
933 hits | Permalink | 변경내역 보기 [h] | 페이지 소스 보기