diff -ur orig/plugin/admin/Login.pm ./plugin/admin/Login.pm --- orig/plugin/admin/Login.pm 2004-06-06 21:12:00.000000000 +0900 +++ ./plugin/admin/Login.pm 2004-07-08 16:08:28.804928000 +0900 @@ -42,8 +42,19 @@ $session->param("wiki_type",$login->{type}); $session->param("wiki_path",$login->{path}); $session->flush(); + my $pagename = $cgi->param("page"); + my $isEdit = $cgi->param("isEdit"); + if($pagename ne "") { + $cgi->param("page",&Util::url_decode($pagename)); + if($isEdit ne "") { + return $wiki->call_handler('EDIT'); + } else { + return $wiki->call_handler(''); + } + } else { $wiki->redirectURL($wiki->config('script_name')."?action=LOGIN"); return $self->admin_form($wiki,$login); + } } else { return $wiki->error("IDもしくはパスワードが違います。"); } @@ -118,6 +129,11 @@ sub default { my $self = shift; my $wiki = shift; + my $cgi = $wiki->get_CGI; + my $pagename = $cgi->param("page"); + my $isEdit = $cgi->param("isEdit"); + my $content = $cgi->param("content"); + return "

IDとパスワードを入力してください

\n". "
config('script_name')."\" method=\"POST\">". " \n". @@ -126,6 +142,9 @@ "

\n". " \n". " \n". + " \n". + " \n". + " \n". "
\n"; } diff -ur orig/plugin/core/EditPage.pm ./plugin/core/EditPage.pm --- orig/plugin/core/EditPage.pm 2004-07-08 16:23:15.109371200 +0900 +++ ./plugin/core/EditPage.pm 2004-07-08 16:00:05.801644800 +0900 @@ -45,7 +45,9 @@ return $wiki->error("ページ名にコロンを含めることはできません。"); } if(!$wiki->can_modify_page($pagename)){ - return $wiki->error("ページの編集は許可されていません。"); + $cgi->param("isEdit", "true"); + return $wiki->error("ページの編集は許可されていません。")."\n". + $wiki->call_handler('LOGIN'); } #-------------------------------------------------------------------------- @@ -108,7 +110,9 @@ } elsif($wiki->page_exists($pagename)) { #ページが存在する場合 - if($artno eq ""){ + if($content ne "") { #すでにエディット状態にあって、ログインした + $content = &Util::url_decode($content); + } elsif($artno eq ""){ $content = $wiki->get_page($pagename); } else { $content = &read_by_part($wiki->get_page($pagename),$artno); diff -ur orig/plugin/core/ShowPage.pm ./plugin/core/ShowPage.pm --- orig/plugin/core/ShowPage.pm 2004-07-08 16:22:17.256182400 +0900 +++ ./plugin/core/ShowPage.pm 2004-07-08 16:19:14.803828800 +0900 @@ -37,7 +37,8 @@ # 参照権限のチェック if(!$wiki->can_show($pagename)){ $wiki->set_title("参照権限がありません"); - return $wiki->error("参照権限がありません。"); + return $wiki->error("参照権限がありません。")."\n". + $wiki->call_handler('LOGIN'); } $wiki->set_title($pagename);