editpage: New core plugin factoring out page editing to allow disabling it if desired.
authorJoey Hess <joey@kodama.kitenet.net>
Fri, 5 Sep 2008 17:57:25 +0000 (13:57 -0400)
committerJoey Hess <joey@kodama.kitenet.net>
Fri, 5 Sep 2008 17:57:25 +0000 (13:57 -0400)
19 files changed:
IkiWiki.pm
IkiWiki/CGI.pm
IkiWiki/Plugin/editpage.pm [new file with mode: 0644]
IkiWiki/Plugin/inline.pm
IkiWiki/Render.pm
debian/changelog
doc/plugins/editpage.mdwn [new file with mode: 0644]
doc/todo/page_edit_disable.mdwn
po/bg.po
po/cs.po
po/da.po
po/de.po
po/es.po
po/fr.po
po/gu.po
po/ikiwiki.pot
po/pl.po
po/sv.po
po/vi.po

index 7553ae3db7c67efc3be926270ba6b35aad27dd0b..01798941c173bbcd264cf2ca45151fd076ab536c 100644 (file)
@@ -121,7 +121,7 @@ sub getsetup () { #{{{
                type => "internal",
                default => [qw{mdwn link inline htmlscrubber passwordauth
                                openid signinedit lockedit conditional
-                               recentchanges parentlinks}],
+                               recentchanges parentlinks editpage}],
                description => "plugins to enable by default",
                safe => 0,
                rebuild => 1,
index 6f5d8aee65d2a8b20333be29fba60df15786f569..dac522eea470a544248c9c77406009b27d4d9997 100644 (file)
@@ -50,33 +50,6 @@ sub redirect ($$) { #{{{
        }
 } #}}}
 
-sub check_canedit ($$$;$) { #{{{
-       my $page=shift;
-       my $q=shift;
-       my $session=shift;
-       my $nonfatal=shift;
-       
-       my $canedit;
-       run_hooks(canedit => sub {
-               return if defined $canedit;
-               my $ret=shift->($page, $q, $session);
-               if (defined $ret) {
-                       if ($ret eq "") {
-                               $canedit=1;
-                       }
-                       elsif (ref $ret eq 'CODE') {
-                               $ret->() unless $nonfatal;
-                               $canedit=0;
-                       }
-                       elsif (defined $ret) {
-                               error($ret) unless $nonfatal;
-                               $canedit=0;
-                       }
-               }
-       });
-       return $canedit;
-} #}}}
-
 sub decode_cgi_utf8 ($) { #{{{
        # decode_form_utf8 method is needed for 5.10
        if ($] < 5.01) {
@@ -283,375 +256,6 @@ sub cgi_prefs ($$) { #{{{
        showform($form, $buttons, $session, $q);
 } #}}}
 
-sub cgi_editpage ($$) { #{{{
-       my $q=shift;
-       my $session=shift;
-       
-       decode_cgi_utf8($q);
-
-       my @fields=qw(do rcsinfo subpage from page type editcontent comments);
-       my @buttons=("Save Page", "Preview", "Cancel");
-       eval q{use CGI::FormBuilder};
-       error($@) if $@;
-       my $form = CGI::FormBuilder->new(
-               fields => \@fields,
-               charset => "utf-8",
-               method => 'POST',
-               required => [qw{editcontent}],
-               javascript => 0,
-               params => $q,
-               action => $config{cgiurl},
-               header => 0,
-               table => 0,
-               template => scalar template_params("editpage.tmpl"),
-               wikiname => $config{wikiname},
-       );
-       
-       decode_form_utf8($form);
-       run_hooks(formbuilder_setup => sub {
-               shift->(form => $form, cgi => $q, session => $session,
-                       buttons => \@buttons);
-       });
-       decode_form_utf8($form);
-       
-       # This untaint is safe because we check file_pruned.
-       my $page=$form->field('page');
-       $page=possibly_foolish_untaint($page);
-       my $absolute=($page =~ s#^/+##);
-       if (! defined $page || ! length $page ||
-           file_pruned($page, $config{srcdir})) {
-               error("bad page name");
-       }
-
-       my $baseurl=$config{url}."/".htmlpage($page);
-       
-       my $from;
-       if (defined $form->field('from')) {
-               ($from)=$form->field('from')=~/$config{wiki_file_regexp}/;
-       }
-       
-       my $file;
-       my $type;
-       if (exists $pagesources{$page} && $form->field("do") ne "create") {
-               $file=$pagesources{$page};
-               $type=pagetype($file);
-               if (! defined $type || $type=~/^_/) {
-                       error(sprintf(gettext("%s is not an editable page"), $page));
-               }
-               if (! $form->submitted) {
-                       $form->field(name => "rcsinfo",
-                               value => rcs_prepedit($file), force => 1);
-               }
-               $form->field(name => "editcontent", validate => '/.*/');
-       }
-       else {
-               $type=$form->param('type');
-               if (defined $type && length $type && $hooks{htmlize}{$type}) {
-                       $type=possibly_foolish_untaint($type);
-               }
-               elsif (defined $from && exists $pagesources{$from}) {
-                       # favor the type of linking page
-                       $type=pagetype($pagesources{$from});
-               }
-               $type=$config{default_pageext} unless defined $type;
-               $file=$page.".".$type;
-               if (! $form->submitted) {
-                       $form->field(name => "rcsinfo", value => "", force => 1);
-               }
-               $form->field(name => "editcontent", validate => '/.+/');
-       }
-
-       $form->field(name => "do", type => 'hidden');
-       $form->field(name => "sid", type => "hidden", value => $session->id,
-               force => 1);
-       $form->field(name => "from", type => 'hidden');
-       $form->field(name => "rcsinfo", type => 'hidden');
-       $form->field(name => "subpage", type => 'hidden');
-       $form->field(name => "page", value => $page, force => 1);
-       $form->field(name => "type", value => $type, force => 1);
-       $form->field(name => "comments", type => "text", size => 80);
-       $form->field(name => "editcontent", type => "textarea", rows => 20,
-               cols => 80);
-       $form->tmpl_param("can_commit", $config{rcs});
-       $form->tmpl_param("indexlink", indexlink());
-       $form->tmpl_param("helponformattinglink",
-               htmllink($page, $page, "ikiwiki/formatting",
-                       noimageinline => 1,
-                       linktext => "FormattingHelp"));
-       
-       if ($form->submitted eq "Cancel") {
-               if ($form->field("do") eq "create" && defined $from) {
-                       redirect($q, "$config{url}/".htmlpage($from));
-               }
-               elsif ($form->field("do") eq "create") {
-                       redirect($q, $config{url});
-               }
-               else {
-                       redirect($q, "$config{url}/".htmlpage($page));
-               }
-               return;
-       }
-       elsif ($form->submitted eq "Preview") {
-               my $new=not exists $pagesources{$page};
-               if ($new) {
-                       # temporarily record its type
-                       $pagesources{$page}=$page.".".$type;
-               }
-
-               my $content=$form->field('editcontent');
-
-               run_hooks(editcontent => sub {
-                       $content=shift->(
-                               content => $content,
-                               page => $page,
-                               cgi => $q,
-                               session => $session,
-                       );
-               });
-               my $preview=htmlize($page, $page, $type,
-                       linkify($page, $page,
-                       preprocess($page, $page,
-                       filter($page, $page, $content), 0, 1)));
-               run_hooks(format => sub {
-                       $preview=shift->(
-                               page => $page,
-                               content => $preview,
-                       );
-               });
-               $form->tmpl_param("page_preview", $preview);
-       
-               if ($new) {
-                       delete $pagesources{$page};
-               }
-               # previewing may have created files on disk
-               saveindex();
-       }
-       elsif ($form->submitted eq "Save Page") {
-               $form->tmpl_param("page_preview", "");
-       }
-       
-       if ($form->submitted ne "Save Page" || ! $form->validate) {
-               if ($form->field("do") eq "create") {
-                       my @page_locs;
-                       my $best_loc;
-                       if (! defined $from || ! length $from ||
-                           $from ne $form->field('from') ||
-                           file_pruned($from, $config{srcdir}) ||
-                           $from=~/^\// || 
-                           $absolute ||
-                           $form->submitted eq "Preview") {
-                               @page_locs=$best_loc=$page;
-                       }
-                       else {
-                               my $dir=$from."/";
-                               $dir=~s![^/]+/+$!!;
-                               
-                               if ((defined $form->field('subpage') && length $form->field('subpage')) ||
-                                   $page eq gettext('discussion')) {
-                                       $best_loc="$from/$page";
-                               }
-                               else {
-                                       $best_loc=$dir.$page;
-                               }
-                               
-                               push @page_locs, $dir.$page;
-                               push @page_locs, "$from/$page";
-                               while (length $dir) {
-                                       $dir=~s![^/]+/+$!!;
-                                       push @page_locs, $dir.$page;
-                               }
-                       
-                               push @page_locs, "$config{userdir}/$page"
-                                       if length $config{userdir};
-                       }
-
-                       @page_locs = grep {
-                               ! exists $pagecase{lc $_}
-                       } @page_locs;
-                       if (! @page_locs) {
-                               # hmm, someone else made the page in the
-                               # meantime?
-                               if ($form->submitted eq "Preview") {
-                                       # let them go ahead with the edit
-                                       # and resolve the conflict at save
-                                       # time
-                                       @page_locs=$page;
-                               }
-                               else {
-                                       redirect($q, "$config{url}/".htmlpage($page));
-                                       return;
-                               }
-                       }
-
-                       my @editable_locs = grep {
-                               check_canedit($_, $q, $session, 1)
-                       } @page_locs;
-                       if (! @editable_locs) {
-                               # let it throw an error this time
-                               map { check_canedit($_, $q, $session) } @page_locs;
-                       }
-                       
-                       my @page_types;
-                       if (exists $hooks{htmlize}) {
-                               @page_types=grep { !/^_/ }
-                                       keys %{$hooks{htmlize}};
-                       }
-                       
-                       $form->tmpl_param("page_select", 1);
-                       $form->field(name => "page", type => 'select',
-                               options => [ map { [ $_, pagetitle($_, 1) ] } @editable_locs ],
-                               value => $best_loc);
-                       $form->field(name => "type", type => 'select',
-                               options => \@page_types);
-                       $form->title(sprintf(gettext("creating %s"), pagetitle($page)));
-                       
-               }
-               elsif ($form->field("do") eq "edit") {
-                       check_canedit($page, $q, $session);
-                       if (! defined $form->field('editcontent') || 
-                           ! length $form->field('editcontent')) {
-                               my $content="";
-                               if (exists $pagesources{$page}) {
-                                       $content=readfile(srcfile($pagesources{$page}));
-                                       $content=~s/\n/\r\n/g;
-                               }
-                               $form->field(name => "editcontent", value => $content,
-                                       force => 1);
-                       }
-                       $form->tmpl_param("page_select", 0);
-                       $form->field(name => "page", type => 'hidden');
-                       $form->field(name => "type", type => 'hidden');
-                       $form->title(sprintf(gettext("editing %s"), pagetitle($page)));
-               }
-               
-               showform($form, \@buttons, $session, $q, forcebaseurl => $baseurl);
-       }
-       else {
-               # save page
-               check_canedit($page, $q, $session);
-       
-               # The session id is stored on the form and checked to
-               # guard against CSRF. But only if the user is logged in,
-               # as anonok can allow anonymous edits.
-               if (defined $session->param("name")) {
-                       my $sid=$q->param('sid');
-                       if (! defined $sid || $sid ne $session->id) {
-                               error(gettext("Your login session has expired."));
-                       }
-               }
-
-               my $exists=-e "$config{srcdir}/$file";
-
-               if ($form->field("do") ne "create" && ! $exists &&
-                   ! defined srcfile($file, 1)) {
-                       $form->tmpl_param("message", template("editpagegone.tmpl")->output);
-                       $form->field(name => "do", value => "create", force => 1);
-                       $form->tmpl_param("page_select", 0);
-                       $form->field(name => "page", type => 'hidden');
-                       $form->field(name => "type", type => 'hidden');
-                       $form->title(sprintf(gettext("editing %s"), $page));
-                       showform($form, \@buttons, $session, $q, forcebaseurl => $baseurl);
-                       return;
-               }
-               elsif ($form->field("do") eq "create" && $exists) {
-                       $form->tmpl_param("message", template("editcreationconflict.tmpl")->output);
-                       $form->field(name => "do", value => "edit", force => 1);
-                       $form->tmpl_param("page_select", 0);
-                       $form->field(name => "page", type => 'hidden');
-                       $form->field(name => "type", type => 'hidden');
-                       $form->title(sprintf(gettext("editing %s"), $page));
-                       $form->field("editcontent", 
-                               value => readfile("$config{srcdir}/$file").
-                                        "\n\n\n".$form->field("editcontent"),
-                               force => 1);
-                       showform($form, \@buttons, $session, $q, forcebaseurl => $baseurl);
-                       return;
-               }
-               
-               my $content=$form->field('editcontent');
-               run_hooks(editcontent => sub {
-                       $content=shift->(
-                               content => $content,
-                               page => $page,
-                               cgi => $q,
-                               session => $session,
-                       );
-               });
-               $content=~s/\r\n/\n/g;
-               $content=~s/\r/\n/g;
-               $content.="\n" if $content !~ /\n$/;
-
-               $config{cgi}=0; # avoid cgi error message
-               eval { writefile($file, $config{srcdir}, $content) };
-               $config{cgi}=1;
-               if ($@) {
-                       $form->field(name => "rcsinfo", value => rcs_prepedit($file),
-                               force => 1);
-                       my $mtemplate=template("editfailedsave.tmpl");
-                       $mtemplate->param(error_message => $@);
-                       $form->tmpl_param("message", $mtemplate->output);
-                       $form->field("editcontent", value => $content, force => 1);
-                       $form->tmpl_param("page_select", 0);
-                       $form->field(name => "page", type => 'hidden');
-                       $form->field(name => "type", type => 'hidden');
-                       $form->title(sprintf(gettext("editing %s"), $page));
-                       showform($form, \@buttons, $session, $q,
-                               forcebaseurl => $baseurl);
-                       return;
-               }
-               
-               my $conflict;
-               if ($config{rcs}) {
-                       my $message="";
-                       if (defined $form->field('comments') &&
-                           length $form->field('comments')) {
-                               $message=$form->field('comments');
-                       }
-                       
-                       if (! $exists) {
-                               rcs_add($file);
-                       }
-
-                       # Prevent deadlock with post-commit hook by
-                       # signaling to it that it should not try to
-                       # do anything.
-                       disable_commit_hook();
-                       $conflict=rcs_commit($file, $message,
-                               $form->field("rcsinfo"),
-                               $session->param("name"), $ENV{REMOTE_ADDR});
-                       enable_commit_hook();
-                       rcs_update();
-               }
-               
-               # Refresh even if there was a conflict, since other changes
-               # may have been committed while the post-commit hook was
-               # disabled.
-               require IkiWiki::Render;
-               refresh();
-               saveindex();
-
-               if (defined $conflict) {
-                       $form->field(name => "rcsinfo", value => rcs_prepedit($file),
-                               force => 1);
-                       $form->tmpl_param("message", template("editconflict.tmpl")->output);
-                       $form->field("editcontent", value => $conflict, force => 1);
-                       $form->field("do", "edit", force => 1);
-                       $form->tmpl_param("page_select", 0);
-                       $form->field(name => "page", type => 'hidden');
-                       $form->field(name => "type", type => 'hidden');
-                       $form->title(sprintf(gettext("editing %s"), $page));
-                       showform($form, \@buttons, $session, $q,
-                               forcebaseurl => $baseurl);
-                       return;
-               }
-               else {
-                       # The trailing question mark tries to avoid broken
-                       # caches and get the most recent version of the page.
-                       redirect($q, "$config{url}/".htmlpage($page)."?updated");
-               }
-       }
-} #}}}
-       
 sub check_banned ($$) { #{{{
        my $q=shift;
        my $session=shift;
@@ -765,9 +369,6 @@ sub cgi (;$$) { #{{{
        elsif ($do eq 'prefs') {
                cgi_prefs($q, $session);
        }
-       elsif ($do eq 'create' || $do eq 'edit') {
-               cgi_editpage($q, $session);
-       }
        elsif (defined $session->param("postsignin") || $do eq 'postsignin') {
                cgi_postsignin($q, $session);
        }
diff --git a/IkiWiki/Plugin/editpage.pm b/IkiWiki/Plugin/editpage.pm
new file mode 100644 (file)
index 0000000..bb21ed2
--- /dev/null
@@ -0,0 +1,427 @@
+#!/usr/bin/perl
+package IkiWiki::Plugin::editpage;
+
+use warnings;
+use strict;
+use IkiWiki;
+use open qw{:utf8 :std};
+
+sub import { #{{{
+       hook(type => "getsetup", id => "editpage", call => \&getsetup);
+        hook(type => "sessioncgi", id => "editpage", call => \&IkiWiki::cgi_editpage);
+} # }}}
+
+sub getsetup () { #{{{
+       return
+               plugin => {
+                       safe => 1,
+                       rebuild => 1,
+               },
+} #}}}
+
+# Back to ikiwiki namespace for the rest, this code is very much
+# internal to ikiwiki even though it's separated into a plugin,
+# and other plugins use the functions below.
+package IkiWiki;
+
+sub check_canedit ($$$;$) { #{{{
+       my $page=shift;
+       my $q=shift;
+       my $session=shift;
+       my $nonfatal=shift;
+       
+       my $canedit;
+       run_hooks(canedit => sub {
+               return if defined $canedit;
+               my $ret=shift->($page, $q, $session);
+               if (defined $ret) {
+                       if ($ret eq "") {
+                               $canedit=1;
+                       }
+                       elsif (ref $ret eq 'CODE') {
+                               $ret->() unless $nonfatal;
+                               $canedit=0;
+                       }
+                       elsif (defined $ret) {
+                               error($ret) unless $nonfatal;
+                               $canedit=0;
+                       }
+               }
+       });
+       return $canedit;
+} #}}}
+
+sub cgi_editpage ($$) { #{{{
+       my $q=shift;
+       my $session=shift;
+       
+        my $do=$q->param('do');
+       return unless $do eq 'create' || $do eq 'edit';
+
+       decode_cgi_utf8($q);
+
+       my @fields=qw(do rcsinfo subpage from page type editcontent comments);
+       my @buttons=("Save Page", "Preview", "Cancel");
+       eval q{use CGI::FormBuilder};
+       error($@) if $@;
+       my $form = CGI::FormBuilder->new(
+               fields => \@fields,
+               charset => "utf-8",
+               method => 'POST',
+               required => [qw{editcontent}],
+               javascript => 0,
+               params => $q,
+               action => $config{cgiurl},
+               header => 0,
+               table => 0,
+               template => scalar template_params("editpage.tmpl"),
+               wikiname => $config{wikiname},
+       );
+       
+       decode_form_utf8($form);
+       run_hooks(formbuilder_setup => sub {
+               shift->(form => $form, cgi => $q, session => $session,
+                       buttons => \@buttons);
+       });
+       decode_form_utf8($form);
+       
+       # This untaint is safe because we check file_pruned.
+       my $page=$form->field('page');
+       $page=possibly_foolish_untaint($page);
+       my $absolute=($page =~ s#^/+##);
+       if (! defined $page || ! length $page ||
+           file_pruned($page, $config{srcdir})) {
+               error("bad page name");
+       }
+
+       my $baseurl=$config{url}."/".htmlpage($page);
+       
+       my $from;
+       if (defined $form->field('from')) {
+               ($from)=$form->field('from')=~/$config{wiki_file_regexp}/;
+       }
+       
+       my $file;
+       my $type;
+       if (exists $pagesources{$page} && $form->field("do") ne "create") {
+               $file=$pagesources{$page};
+               $type=pagetype($file);
+               if (! defined $type || $type=~/^_/) {
+                       error(sprintf(gettext("%s is not an editable page"), $page));
+               }
+               if (! $form->submitted) {
+                       $form->field(name => "rcsinfo",
+                               value => rcs_prepedit($file), force => 1);
+               }
+               $form->field(name => "editcontent", validate => '/.*/');
+       }
+       else {
+               $type=$form->param('type');
+               if (defined $type && length $type && $hooks{htmlize}{$type}) {
+                       $type=possibly_foolish_untaint($type);
+               }
+               elsif (defined $from && exists $pagesources{$from}) {
+                       # favor the type of linking page
+                       $type=pagetype($pagesources{$from});
+               }
+               $type=$config{default_pageext} unless defined $type;
+               $file=$page.".".$type;
+               if (! $form->submitted) {
+                       $form->field(name => "rcsinfo", value => "", force => 1);
+               }
+               $form->field(name => "editcontent", validate => '/.+/');
+       }
+
+       $form->field(name => "do", type => 'hidden');
+       $form->field(name => "sid", type => "hidden", value => $session->id,
+               force => 1);
+       $form->field(name => "from", type => 'hidden');
+       $form->field(name => "rcsinfo", type => 'hidden');
+       $form->field(name => "subpage", type => 'hidden');
+       $form->field(name => "page", value => $page, force => 1);
+       $form->field(name => "type", value => $type, force => 1);
+       $form->field(name => "comments", type => "text", size => 80);
+       $form->field(name => "editcontent", type => "textarea", rows => 20,
+               cols => 80);
+       $form->tmpl_param("can_commit", $config{rcs});
+       $form->tmpl_param("indexlink", indexlink());
+       $form->tmpl_param("helponformattinglink",
+               htmllink($page, $page, "ikiwiki/formatting",
+                       noimageinline => 1,
+                       linktext => "FormattingHelp"));
+       
+       if ($form->submitted eq "Cancel") {
+               if ($form->field("do") eq "create" && defined $from) {
+                       redirect($q, "$config{url}/".htmlpage($from));
+               }
+               elsif ($form->field("do") eq "create") {
+                       redirect($q, $config{url});
+               }
+               else {
+                       redirect($q, "$config{url}/".htmlpage($page));
+               }
+               exit;
+       }
+       elsif ($form->submitted eq "Preview") {
+               my $new=not exists $pagesources{$page};
+               if ($new) {
+                       # temporarily record its type
+                       $pagesources{$page}=$page.".".$type;
+               }
+
+               my $content=$form->field('editcontent');
+
+               run_hooks(editcontent => sub {
+                       $content=shift->(
+                               content => $content,
+                               page => $page,
+                               cgi => $q,
+                               session => $session,
+                       );
+               });
+               my $preview=htmlize($page, $page, $type,
+                       linkify($page, $page,
+                       preprocess($page, $page,
+                       filter($page, $page, $content), 0, 1)));
+               run_hooks(format => sub {
+                       $preview=shift->(
+                               page => $page,
+                               content => $preview,
+                       );
+               });
+               $form->tmpl_param("page_preview", $preview);
+       
+               if ($new) {
+                       delete $pagesources{$page};
+               }
+               # previewing may have created files on disk
+               saveindex();
+       }
+       elsif ($form->submitted eq "Save Page") {
+               $form->tmpl_param("page_preview", "");
+       }
+       
+       if ($form->submitted ne "Save Page" || ! $form->validate) {
+               if ($form->field("do") eq "create") {
+                       my @page_locs;
+                       my $best_loc;
+                       if (! defined $from || ! length $from ||
+                           $from ne $form->field('from') ||
+                           file_pruned($from, $config{srcdir}) ||
+                           $from=~/^\// || 
+                           $absolute ||
+                           $form->submitted eq "Preview") {
+                               @page_locs=$best_loc=$page;
+                       }
+                       else {
+                               my $dir=$from."/";
+                               $dir=~s![^/]+/+$!!;
+                               
+                               if ((defined $form->field('subpage') && length $form->field('subpage')) ||
+                                   $page eq gettext('discussion')) {
+                                       $best_loc="$from/$page";
+                               }
+                               else {
+                                       $best_loc=$dir.$page;
+                               }
+                               
+                               push @page_locs, $dir.$page;
+                               push @page_locs, "$from/$page";
+                               while (length $dir) {
+                                       $dir=~s![^/]+/+$!!;
+                                       push @page_locs, $dir.$page;
+                               }
+                       
+                               push @page_locs, "$config{userdir}/$page"
+                                       if length $config{userdir};
+                       }
+
+                       @page_locs = grep {
+                               ! exists $pagecase{lc $_}
+                       } @page_locs;
+                       if (! @page_locs) {
+                               # hmm, someone else made the page in the
+                               # meantime?
+                               if ($form->submitted eq "Preview") {
+                                       # let them go ahead with the edit
+                                       # and resolve the conflict at save
+                                       # time
+                                       @page_locs=$page;
+                               }
+                               else {
+                                       redirect($q, "$config{url}/".htmlpage($page));
+                                       exit;
+                               }
+                       }
+
+                       my @editable_locs = grep {
+                               check_canedit($_, $q, $session, 1)
+                       } @page_locs;
+                       if (! @editable_locs) {
+                               # let it throw an error this time
+                               map { check_canedit($_, $q, $session) } @page_locs;
+                       }
+                       
+                       my @page_types;
+                       if (exists $hooks{htmlize}) {
+                               @page_types=grep { !/^_/ }
+                                       keys %{$hooks{htmlize}};
+                       }
+                       
+                       $form->tmpl_param("page_select", 1);
+                       $form->field(name => "page", type => 'select',
+                               options => [ map { [ $_, pagetitle($_, 1) ] } @editable_locs ],
+                               value => $best_loc);
+                       $form->field(name => "type", type => 'select',
+                               options => \@page_types);
+                       $form->title(sprintf(gettext("creating %s"), pagetitle($page)));
+                       
+               }
+               elsif ($form->field("do") eq "edit") {
+                       check_canedit($page, $q, $session);
+                       if (! defined $form->field('editcontent') || 
+                           ! length $form->field('editcontent')) {
+                               my $content="";
+                               if (exists $pagesources{$page}) {
+                                       $content=readfile(srcfile($pagesources{$page}));
+                                       $content=~s/\n/\r\n/g;
+                               }
+                               $form->field(name => "editcontent", value => $content,
+                                       force => 1);
+                       }
+                       $form->tmpl_param("page_select", 0);
+                       $form->field(name => "page", type => 'hidden');
+                       $form->field(name => "type", type => 'hidden');
+                       $form->title(sprintf(gettext("editing %s"), pagetitle($page)));
+               }
+               
+               showform($form, \@buttons, $session, $q, forcebaseurl => $baseurl);
+       }
+       else {
+               # save page
+               check_canedit($page, $q, $session);
+       
+               # The session id is stored on the form and checked to
+               # guard against CSRF. But only if the user is logged in,
+               # as anonok can allow anonymous edits.
+               if (defined $session->param("name")) {
+                       my $sid=$q->param('sid');
+                       if (! defined $sid || $sid ne $session->id) {
+                               error(gettext("Your login session has expired."));
+                       }
+               }
+
+               my $exists=-e "$config{srcdir}/$file";
+
+               if ($form->field("do") ne "create" && ! $exists &&
+                   ! defined srcfile($file, 1)) {
+                       $form->tmpl_param("message", template("editpagegone.tmpl")->output);
+                       $form->field(name => "do", value => "create", force => 1);
+                       $form->tmpl_param("page_select", 0);
+                       $form->field(name => "page", type => 'hidden');
+                       $form->field(name => "type", type => 'hidden');
+                       $form->title(sprintf(gettext("editing %s"), $page));
+                       showform($form, \@buttons, $session, $q, forcebaseurl => $baseurl);
+                       exit;
+               }
+               elsif ($form->field("do") eq "create" && $exists) {
+                       $form->tmpl_param("message", template("editcreationconflict.tmpl")->output);
+                       $form->field(name => "do", value => "edit", force => 1);
+                       $form->tmpl_param("page_select", 0);
+                       $form->field(name => "page", type => 'hidden');
+                       $form->field(name => "type", type => 'hidden');
+                       $form->title(sprintf(gettext("editing %s"), $page));
+                       $form->field("editcontent", 
+                               value => readfile("$config{srcdir}/$file").
+                                        "\n\n\n".$form->field("editcontent"),
+                               force => 1);
+                       showform($form, \@buttons, $session, $q, forcebaseurl => $baseurl);
+                       exit;
+               }
+               
+               my $content=$form->field('editcontent');
+               run_hooks(editcontent => sub {
+                       $content=shift->(
+                               content => $content,
+                               page => $page,
+                               cgi => $q,
+                               session => $session,
+                       );
+               });
+               $content=~s/\r\n/\n/g;
+               $content=~s/\r/\n/g;
+               $content.="\n" if $content !~ /\n$/;
+
+               $config{cgi}=0; # avoid cgi error message
+               eval { writefile($file, $config{srcdir}, $content) };
+               $config{cgi}=1;
+               if ($@) {
+                       $form->field(name => "rcsinfo", value => rcs_prepedit($file),
+                               force => 1);
+                       my $mtemplate=template("editfailedsave.tmpl");
+                       $mtemplate->param(error_message => $@);
+                       $form->tmpl_param("message", $mtemplate->output);
+                       $form->field("editcontent", value => $content, force => 1);
+                       $form->tmpl_param("page_select", 0);
+                       $form->field(name => "page", type => 'hidden');
+                       $form->field(name => "type", type => 'hidden');
+                       $form->title(sprintf(gettext("editing %s"), $page));
+                       showform($form, \@buttons, $session, $q,
+                               forcebaseurl => $baseurl);
+                       exit;
+               }
+               
+               my $conflict;
+               if ($config{rcs}) {
+                       my $message="";
+                       if (defined $form->field('comments') &&
+                           length $form->field('comments')) {
+                               $message=$form->field('comments');
+                       }
+                       
+                       if (! $exists) {
+                               rcs_add($file);
+                       }
+
+                       # Prevent deadlock with post-commit hook by
+                       # signaling to it that it should not try to
+                       # do anything.
+                       disable_commit_hook();
+                       $conflict=rcs_commit($file, $message,
+                               $form->field("rcsinfo"),
+                               $session->param("name"), $ENV{REMOTE_ADDR});
+                       enable_commit_hook();
+                       rcs_update();
+               }
+               
+               # Refresh even if there was a conflict, since other changes
+               # may have been committed while the post-commit hook was
+               # disabled.
+               require IkiWiki::Render;
+               refresh();
+               saveindex();
+
+               if (defined $conflict) {
+                       $form->field(name => "rcsinfo", value => rcs_prepedit($file),
+                               force => 1);
+                       $form->tmpl_param("message", template("editconflict.tmpl")->output);
+                       $form->field("editcontent", value => $conflict, force => 1);
+                       $form->field("do", "edit", force => 1);
+                       $form->tmpl_param("page_select", 0);
+                       $form->field(name => "page", type => 'hidden');
+                       $form->field(name => "type", type => 'hidden');
+                       $form->title(sprintf(gettext("editing %s"), $page));
+                       showform($form, \@buttons, $session, $q,
+                               forcebaseurl => $baseurl);
+               }
+               else {
+                       # The trailing question mark tries to avoid broken
+                       # caches and get the most recent version of the page.
+                       redirect($q, "$config{url}/".htmlpage($page)."?updated");
+               }
+       }
+
+       exit;
+} #}}}
+
+1
index d2e58328988e1c87b9232b33925afb722724bf51..a6bb5d58f76b645e7ddb4e81f5104db23fd64149 100644 (file)
@@ -131,7 +131,13 @@ sub sessioncgi () { #{{{
                $q->param('page', $page.$add);
                # now go create the page
                $q->param('do', 'create');
-               IkiWiki::cgi_editpage($q, $session);
+               # make sure the editpage plugin in loaded
+               if (IkiWiki->can("cgi_editpage")) {
+                       IkiWiki::cgi_editpage($q, $session);
+               }
+               else {
+                       error(gettext("page editing not allowed"));
+               }
                exit;
        }
 }
@@ -252,7 +258,8 @@ sub preprocess_inline (@) { #{{{
        my $ret="";
 
        if (length $config{cgiurl} && ! $params{preview} && (exists $params{rootpage} ||
-                       (exists $params{postform} && yesno($params{postform})))) {
+           (exists $params{postform} && yesno($params{postform}))) &&
+           IkiWiki->can("cgi_editpage")) {
                # Add a blog post form, with feed buttons.
                my $formtemplate=template("blogpost.tmpl", blind_cache => 1);
                $formtemplate->param(cgiurl => $config{cgiurl});
index cb92d1ade947290edef6afd14636fd4d15c8ca63..752d17643b1a18198481f0fc740f843fcd87925c 100644 (file)
@@ -63,7 +63,8 @@ sub genpage ($$) { #{{{
        my $actions=0;
 
        if (length $config{cgiurl}) {
-               $template->param(editurl => cgiurl(do => "edit", page => $page));
+               $template->param(editurl => cgiurl(do => "edit", page => $page))
+                       if IkiWiki->can("cgi_editpage");
                $template->param(prefsurl => cgiurl(do => "prefs"));
                $actions++;
        }
index 0b775761d65d488d528f774fdea30aa72c33b379..30014d13ecd505eee14fcd40ca8e781b4e4da217 100644 (file)
@@ -16,6 +16,8 @@ ikiwiki (2.63) UNRELEASED; urgency=low
     disable colons from being used in source files (which can cause trouble
     om Windows).
   * po/Makefile: update po files when the pot file has changed. Closes: #497951
+  * editpage: New core plugin factoring out page editing to allow disabling it
+    if desired.
 
  -- Joey Hess <joeyh@debian.org>  Thu, 28 Aug 2008 16:08:18 -0400
 
diff --git a/doc/plugins/editpage.mdwn b/doc/plugins/editpage.mdwn
new file mode 100644 (file)
index 0000000..b830e51
--- /dev/null
@@ -0,0 +1,5 @@
+[[!template id=plugin name=editpage core=1 author="[[Joey]]"]]
+
+This plugin allows editing wiki pages in the web interface. It's enabled by
+default if [[cgi]] is enabled; disable it if you want cgi for other things
+while not allowing page edits.
index 40f7e14e3d9535ae7894d83ddf8f80cebcef239e..3cc6b5f38c2582c61f537d2366a70b309ee08398 100644 (file)
@@ -42,3 +42,5 @@ by Cron. I haven't decided how to do it yet. --[[Paweł|ptecza]]
 > allow page editing. --[[Joey]]
 
 >> I'm glad you agree that it may make sense :) --[[Paweł|ptecza]]
+
+editpage plugin implemented, [[done]] --[[Joey]]
index 6e72c02a5b602fdae76066472f3090da83d88277..240da940b72257c7f0a587b4330055cd5b6e8c72 100644 (file)
--- a/po/bg.po
+++ b/po/bg.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki-bg\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: 2007-01-12 01:19+0200\n"
 "Last-Translator: Damyan Ivanov <dam@modsodtsys.com>\n"
 "Language-Team: Bulgarian <dict@fsa-bg.org>\n"
@@ -16,63 +16,40 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: KBabel 1.11.4\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr "Първо трябва да влезете."
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 #, fuzzy
 msgid "Preferences"
 msgstr "Предпочитанията са запазени."
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr "Предпочитанията са запазени."
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr ""
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr "дискусия"
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr "създаване на %s"
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr "промяна на %s"
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr "Достъпът ви е забранен."
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr "Грешка"
 
@@ -198,6 +175,13 @@ msgstr ""
 msgid "automatic index generation"
 msgstr ""
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr "дискусия"
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -223,6 +207,23 @@ msgstr ""
 msgid "no text was copied in this page with id %s"
 msgstr ""
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr ""
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr "създаване на %s"
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr "промяна на %s"
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 #, fuzzy
 msgid "template not specified"
@@ -293,30 +294,35 @@ msgstr ""
 "Когато се използва „--rss” или „--atom” трябва да се укаже и "
 "местоположението на уикито посредством параметъра „--url”"
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+#, fuzzy
+msgid "page editing not allowed"
+msgstr "шаблонът „%s” не е намерен"
+
+#: ../IkiWiki/Plugin/inline.pm:156
 #, fuzzy
 msgid "missing pages parameter"
 msgstr "липсващ параметър „id” на шаблона"
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr "непознат вид сортиране „%s”"
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr "Дискусия"
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr "модулът „RPC::XML::Client” не е намерен; източникът не е проверен"
 
@@ -783,47 +789,47 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr "пропускане на невалидното име на файл „%s”"
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr "премахване на старата страница „%s”"
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr "сканиране на „%s”"
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr "обновяване на страницата „%s”"
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr "обновяване на страницата „%s”, съдържаща препратки към „%s”"
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr "обновяване на страницата „%s”, зависеща от „%s”"
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr "обновяване на „%s” и осъвременяване на обратните връзки"
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr "премахване на „%s” понеже не се генерира от „%s”"
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr "ikiwiki: неуспех при обновяване на страницата „%s”"
index 86155a755c46aec2457da7e9b36b641ca88c0445..a215240a9bfff00d0436b8368047dc5804145e04 100644 (file)
--- a/po/cs.po
+++ b/po/cs.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: 2007-05-09 21:21+0200\n"
 "Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
 "Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
@@ -15,62 +15,39 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr "Nejprve se musíte přihlásit."
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr "přihlášení selhalo; možná si musíte povolit cookies?"
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr "Přihlášení"
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 msgid "Preferences"
 msgstr "Předvolby"
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr "Správce"
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr "Nastavení uloženo."
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr "%s není editovatelná stránka"
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr "diskuse"
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr "vytvářím %s"
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr "upravuji %s"
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr "Jste vyhoštěni."
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr "Chyba"
 
@@ -195,6 +172,13 @@ msgstr ""
 msgid "automatic index generation"
 msgstr ""
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr "diskuse"
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -220,6 +204,23 @@ msgstr ""
 msgid "no text was copied in this page with id %s"
 msgstr ""
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr "%s není editovatelná stránka"
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr "vytvářím %s"
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr "upravuji %s"
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 #, fuzzy
 msgid "template not specified"
@@ -286,30 +287,35 @@ msgstr "nelze změnit velikost: %s"
 msgid "Must specify url to wiki with --url when using --rss or --atom"
 msgstr "Při používání --rss nebo --atom musíte pomocí --url zadat url k wiki"
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+#, fuzzy
+msgid "page editing not allowed"
+msgstr "zdroj nebyl nalezen"
+
+#: ../IkiWiki/Plugin/inline.pm:156
 #, fuzzy
 msgid "missing pages parameter"
 msgstr "chybí parametr %s"
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr "neznámý typ řazení %s"
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr "Přidat nový příspěvek nazvaný:"
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr "neexistující šablona %s"
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr "Diskuse"
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr "RPC::XML::Client nebyl nalezen, nepinkám"
 
@@ -764,47 +770,47 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr "přeskakuji chybné jméno souboru %s"
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr "odstraňuji starou stránku %s"
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr "prohledávám %s"
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr "zpracovávám %s"
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr "zpracovávám %s, která odkazuje na %s"
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr "zpracovávám %s, která závisí na %s"
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr "zpracovávám %s, aby se aktualizovaly zpětné odkazy"
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr "odstraňuji %s, již není zpracovávána %s"
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr "ikiwiki: nelze zpracovat %s"
index 7418dfc88edce7d7dbd514534a4b331d1fd62c2f..6abf19b328f63052027be4c942ed2137424d8393 100644 (file)
--- a/po/da.po
+++ b/po/da.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: 2008-08-11 01:04+0200\n"
 "Last-Translator: Jonas Smedegaard <dr@jones.dk>\n"
 "Language-Team: None\n"
@@ -19,62 +19,39 @@ msgstr ""
 "X-Poedit-Country: DENMARK\n"
 "X-Poedit-SourceCharset: utf-8\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr "Du skal først logge på."
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr "Pålogning mislykkedes, måske skal du tillade infokager (cookies)?"
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr "Din kørsel (login session) er udløbet"
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr "Pålogning"
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 msgid "Preferences"
 msgstr "Indstillinger"
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr "Admin"
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr "Indstillinger gemt"
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr "%s er ikke en redigérbar side"
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr "diskussion"
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr "opretter %s"
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr "redigerer %s"
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr "Du er banlyst."
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr "Fejl"
 
@@ -197,6 +174,13 @@ msgstr "vedhæftningsoplægning"
 msgid "automatic index generation"
 msgstr "automatisk indeks-dannelse"
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr "diskussion"
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -222,6 +206,23 @@ msgstr "ingen tekst blev kopieret i denne side"
 msgid "no text was copied in this page with id %s"
 msgstr "ingen tekst blev kopieret i denne side med id %s"
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr "%s er ikke en redigérbar side"
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr "opretter %s"
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr "redigerer %s"
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 msgid "template not specified"
 msgstr "skabelon %s ikke angivet"
@@ -284,29 +285,34 @@ msgstr "Vurdering af størrelse på billede mislykkedes: %s"
 msgid "Must specify url to wiki with --url when using --rss or --atom"
 msgstr "Skal angive url til wiki med --url når --rss eller --atom anvendes"
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+#, fuzzy
+msgid "page editing not allowed"
+msgstr "ring af henvisninger er ikke tilladt"
+
+#: ../IkiWiki/Plugin/inline.pm:156
 msgid "missing pages parameter"
 msgstr "mangler pages-parametren"
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr "ukendt sorteringsform %s"
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr "Tilføj nyt indlæg med følgende titel:"
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr "ikke-eksisterende skabelon: %s"
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr "Diskussion"
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr "RPC::XML::Client ikke fundet, pinger ikke"
 
@@ -756,47 +762,47 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr "udelader forkert filnavn %s"
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr "fjerner gammel side %s"
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr "gennemlæser %s"
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr "danner %s"
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr "danner %s, som henviser til %s"
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr "danner %s, som afhænger af %s"
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr "danner %s, for at opdatere dens krydshenvisninger (backlinks)"
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr "fjerner %s, ikke længere dannet af %s"
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr "ikiwiki: kan ikke danne %s"
index 8936e66101fd2f5e739c1da7dfdeaf97a3727a60..07d1e31da35c51c56a25789f7db8c58df6ac5bcd 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki 2.40\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: 2008-03-03 21:22+0100\n"
 "Last-Translator: Kai Wasserbäch <debian@carbon-project.org>\n"
 "Language-Team: German <debian-l10n-german@lists.debian.org>\n"
@@ -14,63 +14,40 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr "Sie müssen sich zuerst anmelden."
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 "Anmeldung fehlgeschlagen, möglicherweise müssen Sie zuvor Cookies aktivieren?"
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr "Anmelden"
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 msgid "Preferences"
 msgstr "Einstellungen"
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr "Administrator"
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr "Einstellungen gespeichert."
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr "%s ist keine bearbeitbare Seite"
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr "Diskussion"
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr "erstelle %s"
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr "bearbeite %s"
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr "Sie sind ausgeschlossen worden."
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr "Fehler"
 
@@ -195,6 +172,13 @@ msgstr ""
 msgid "automatic index generation"
 msgstr ""
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr "Diskussion"
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -220,6 +204,23 @@ msgstr ""
 msgid "no text was copied in this page with id %s"
 msgstr ""
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr "%s ist keine bearbeitbare Seite"
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr "erstelle %s"
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr "bearbeite %s"
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 msgid "template not specified"
 msgstr "Vorlage nicht angegeben"
@@ -285,30 +286,35 @@ msgstr ""
 "Die URL zum Wiki muss mit --url angegeben werden, wenn --rss oder --atom "
 "genutzt wird"
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+#, fuzzy
+msgid "page editing not allowed"
+msgstr "Zyklische Umleitungen sind nicht erlaubt"
+
+#: ../IkiWiki/Plugin/inline.pm:156
 #, fuzzy
 msgid "missing pages parameter"
 msgstr "Parameter %s fehlt"
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr "Unbekannter Sortierungstyp %s"
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr "Füge einen neuen Beitrag hinzu. Titel:"
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr "nicht-vorhandene Vorlage %s"
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr "Diskussion"
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr "RPC::XML::Client nicht gefunden, pinge nicht"
 
@@ -759,47 +765,47 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr "überspringe fehlerhaften Dateinamen %s"
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr "entferne alte Seite %s"
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr "durchsuche %s"
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr "erzeuge %s"
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr "erzeuge %s, was auf %s verweist"
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr "erzeuge %s, das von %s abhängt"
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr "erzeuge %s, um dessen Rücklinks zu aktualisieren"
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr "entferne %s, wird nicht länger von %s erzeugt"
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr "ikiwiki: kann %s nicht erzeugen"
index c53002514fed3d74ee3d59f119310d0393de3b80..182312bada287801a25de60c65119c595fc282f6 100644 (file)
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: es\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: 2008-03-06 11:07+0100\n"
 "Last-Translator: Víctor Moral <victor@taquiones.net>\n"
 "Language-Team: Spanish <es@li.org>\n"
@@ -15,63 +15,40 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr "Antes es necesario identificarse."
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 "registro fallido, ¿ tal vez necesita activar las cookies en el navegador ?"
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr "Identificación"
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 msgid "Preferences"
 msgstr "Preferencias"
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr "Administración"
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr "Las preferencias se han guardado."
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr "la página %s no es modificable"
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr "comentarios"
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr "creando página %s"
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr "modificando página %s"
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr "Ha sido expulsado."
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr "Error"
 
@@ -196,6 +173,13 @@ msgstr ""
 msgid "automatic index generation"
 msgstr ""
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr "comentarios"
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -221,6 +205,23 @@ msgstr ""
 msgid "no text was copied in this page with id %s"
 msgstr ""
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr "la página %s no es modificable"
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr "creando página %s"
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr "modificando página %s"
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 msgid "template not specified"
 msgstr "falta indicar la plantilla (template)"
@@ -287,30 +288,35 @@ msgstr ""
 "Es obligatorio indicar un url al wiki cuando se usan los parámetros --rss ó "
 "--atom"
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+#, fuzzy
+msgid "page editing not allowed"
+msgstr "ciclo de redirección no permitido"
+
+#: ../IkiWiki/Plugin/inline.pm:156
 #, fuzzy
 msgid "missing pages parameter"
 msgstr "falta el parámetro %s"
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr "no conozco este tipo de ordenación %s"
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr "Añadir una entrada nueva titulada:"
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr "la plantilla %s no existe "
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr "Comentarios"
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr "No he encontrado el componente RPC::XML::Client, no envío señal alguna"
 
@@ -761,49 +767,49 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr "ignorando el archivo %s porque su nombre no es correcto"
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr "eliminando la antigua página %s"
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr "explorando %s"
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr "convirtiendo %s"
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr "convirtiendo la página %s, la cual referencia a %s"
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr "convirtiendo la página %s, la cual depende de %s"
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr ""
 "convirtiendo la página %s para actualizar la lista de páginas que hacen "
 "referencia a ella."
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr "eliminando la página %s puesto que ya no se deriva de %s"
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr "ikwiki: no puedo convertir la página %s"
index 6b06137c3ef5c62842dbe9ce4117450780ccea92..a5790aafc9f7e21dc8488c01a0212fcbe93662b9 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: 2008-04-29 17:46+0200\n"
 "Last-Translator: Christian Perrier <bubulle@debian.org>\n"
 "Language-Team: French <debian-l10n-french@lists.debian.org>\n"
@@ -18,63 +18,40 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: KBabel 1.11.4\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr "Vous devez d'abord vous identifier."
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 "Échec de l'identification, vous devriez peut-être autoriser les cookies."
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr "Session d'authentification expirée."
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr "S’identifier"
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 msgid "Preferences"
 msgstr "Préférences"
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr "Administrateur"
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr "Les préférences ont été enregistrées."
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr "%s n'est pas une page éditable"
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr "Discussion"
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr "Création de %s"
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr "Édition de %s"
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr "Vous avez été banni."
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr "Erreur"
 
@@ -199,6 +176,13 @@ msgstr ""
 msgid "automatic index generation"
 msgstr ""
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr "Discussion"
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -224,6 +208,23 @@ msgstr ""
 msgid "no text was copied in this page with id %s"
 msgstr ""
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr "%s n'est pas une page éditable"
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr "Création de %s"
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr "Édition de %s"
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 msgid "template not specified"
 msgstr "modèle (« template ») non indiqué"
@@ -289,30 +290,35 @@ msgstr ""
 "Vous devez indiquer l'URL du wiki par --url lors de l'utilisation de --rss "
 "ou --atom"
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+#, fuzzy
+msgid "page editing not allowed"
+msgstr "Redirection cyclique non autorisée"
+
+#: ../IkiWiki/Plugin/inline.pm:156
 #, fuzzy
 msgid "missing pages parameter"
 msgstr "Paramètre %s manquant"
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr "Type de tri %s inconnu"
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr "Ajouter un nouvel article dont le titre est :"
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr "Le modèle (« template ») %s n'existe pas"
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr "Discussion"
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr "RPC::XML::Client introuvable, pas de réponse au ping"
 
@@ -764,47 +770,47 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr "Omission du fichier au nom incorrect %s"
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr "Suppression de l'ancienne page %s"
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr "Parcours de %s"
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr "Affichage de %s"
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr "Affichage de %s, qui est lié à %s"
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr "Affichage de %s, qui dépend de %s"
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr "Affichage de %s, afin de mettre à jour ses rétroliens"
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr "Suppression de %s, qui n'est plus affiché par %s"
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr "ikiwiki : impossible d'afficher %s"
index 69d77369f13897b0c004a274391eb1ea73e09640..43907b4ffcfda1b97bb8912aaa71bfe39a64bdee 100644 (file)
--- a/po/gu.po
+++ b/po/gu.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki-gu\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: 2007-01-11 16:05+0530\n"
 "Last-Translator: Kartik Mistry <kartik.mistry@gmail.com>\n"
 "Language-Team: Gujarati <team@utkarsh.org>\n"
@@ -15,63 +15,40 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr "તમારે પ્રથમ લોગ ઇન થવું પડશે."
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr "પ્રવેશ નિષ્ફળ, કદાચ તમારી કુકીઓ સક્રિય બનાવવી પડશે?"
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 #, fuzzy
 msgid "Preferences"
 msgstr "પ્રાથમિકતાઓ સંગ્રહાઇ."
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr "પ્રાથમિકતાઓ સંગ્રહાઇ."
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr "%s એ સુધારી શકાય તેવું પાનું નથી"
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr "ચર્ચા"
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr "%s બનાવે છે"
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr "%s સુધારે છે"
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr "તમારા પર પ્રતિબંધ છે."
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr "ક્ષતિ"
 
@@ -196,6 +173,13 @@ msgstr ""
 msgid "automatic index generation"
 msgstr ""
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr "ચર્ચા"
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -221,6 +205,23 @@ msgstr ""
 msgid "no text was copied in this page with id %s"
 msgstr ""
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr "%s એ સુધારી શકાય તેવું પાનું નથી"
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr "%s બનાવે છે"
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr "%s સુધારે છે"
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 #, fuzzy
 msgid "template not specified"
@@ -287,30 +288,35 @@ msgstr "માપ બદલવામાં નિષ્ફળ: %s"
 msgid "Must specify url to wiki with --url when using --rss or --atom"
 msgstr "--rss અથવા --atom ઉપયોગ કરતી વખતે વીકીમાં --url ઉપયોગ કરવું જ પડશે"
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+#, fuzzy
+msgid "page editing not allowed"
+msgstr "ફીડ મળ્યું નહી"
+
+#: ../IkiWiki/Plugin/inline.pm:156
 #, fuzzy
 msgid "missing pages parameter"
 msgstr "ખોવાયેલ %s વિકલ્પ"
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr "અજાણ્યો ગોઠવણી પ્રકાર %s"
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr "આ શિર્ષકથી નવું પોસ્ટ ઉમેરો:"
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr "અસ્તિત્વમાં ન હોય તેવું ટેમ્પલેટ %s"
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr "ચર્ચા"
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr "RPC::XML::Client મળ્યું નહી, પિંગ કરવામાં આવતું નથી"
 
@@ -764,47 +770,47 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr "ખરાબ ફાઇલ નામ છોડી દે છે %s"
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr "જુનાં પાનાં દૂર કરે છે %s"
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr "%s શોધે છે"
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr "રેન્ડર કરે છે %s"
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr "રેન્ડર કરે છે %s, જે %s સાથે જોડાણ ધરાવે છે"
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr "રેન્ડર કરે છે %s, જે %s પર આધારિત છે"
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr "રેન્ડર કરે છે %s, તેનાં પાછળનાં જોડાણો સુધારવા માટે"
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr "દૂર કરે છે %s, હવે %s વડે રેન્ડર કરાતું નથી"
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr "ikiwiki: %s રેન્ડર કરી શકાતું નથી"
index cf19ba4255d71247589f51097491af5be4c39592..fcf1112d9c102c2bd0dcda41b4d7ae8f0d3798e2 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,62 +16,39 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 msgid "Preferences"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr ""
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr ""
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr ""
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr ""
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr ""
 
@@ -194,6 +171,13 @@ msgstr ""
 msgid "automatic index generation"
 msgstr ""
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr ""
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -219,6 +203,23 @@ msgstr ""
 msgid "no text was copied in this page with id %s"
 msgstr ""
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr ""
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr ""
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr ""
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 msgid "template not specified"
 msgstr ""
@@ -281,29 +282,33 @@ msgstr ""
 msgid "Must specify url to wiki with --url when using --rss or --atom"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+msgid "page editing not allowed"
+msgstr ""
+
+#: ../IkiWiki/Plugin/inline.pm:156
 msgid "missing pages parameter"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr ""
 
@@ -748,47 +753,47 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr ""
index eaffb847800a94bc4789439213e9097d62df2897..fdc23c4d7d21fb70624c118cf05868cb289d64ee 100644 (file)
--- a/po/pl.po
+++ b/po/pl.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki 1.51\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: 2007-04-27 22:05+0200\n"
 "Last-Translator: Pawel Tecza <ptecza@net.icm.edu.pl>\n"
 "Language-Team: Debian L10n Polish <debian-l10n-polish@lists.debian.org>\n"
@@ -16,65 +16,42 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr "Proszę najpierw zalogować się."
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 "Nieudane logowanie. Proszę sprawdzić czy w przeglądarce włączone są "
 "ciasteczka (ang. cookies)"
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 #, fuzzy
 msgid "Preferences"
 msgstr "Preferencje zapisane."
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr "Preferencje zapisane."
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr "Strona %s nie może być edytowana"
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr "dyskusja"
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr "tworzenie %s"
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr "edycja %s"
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr "Twój dostęp został zabroniony przez administratora."
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr "Błąd"
 
@@ -200,6 +177,13 @@ msgstr ""
 msgid "automatic index generation"
 msgstr ""
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr "dyskusja"
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -225,6 +209,23 @@ msgstr ""
 msgid "no text was copied in this page with id %s"
 msgstr ""
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr "Strona %s nie może być edytowana"
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr "tworzenie %s"
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr "edycja %s"
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 #, fuzzy
 msgid "template not specified"
@@ -295,30 +296,35 @@ msgstr ""
 "Użycie parametru --rss lub --atom wymaga podania adresu URL do wiki za "
 "pomocą parametru --url"
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+#, fuzzy
+msgid "page editing not allowed"
+msgstr "nieznaleziony kanał RSS"
+
+#: ../IkiWiki/Plugin/inline.pm:156
 #, fuzzy
 msgid "missing pages parameter"
 msgstr "brakujący parametr %s"
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr "nieznany sposób sortowania %s"
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr "Tytuł nowego wpisu"
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr "brakujący szablon %s"
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr "Dyskusja"
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr "Nieznaleziony moduł RPC::XML::Client, brak możliwości pingowania"
 
@@ -789,47 +795,47 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr "pomijanie nieprawidłowej nazwy pliku %s"
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr "usuwanie starej strony %s"
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr "skanowanie %s"
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr "renderowanie %s"
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr "renderowanie %s z odnośnikiem do %s"
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr "renderowanie %s zależącego od %s"
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr "renderowanie %s w celu aktualizacji powrotnych odnośników"
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr "usuwanie %s nie tworzonego już przez %s"
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr "ikiwiki: awaria w trakcie tworzenia %s"
index 0f923a086bda8d54f08b4ab10fd37cc01ba84efc..c97c1936f4e4c54670b7b4da0366894f1735a1ec 100644 (file)
--- a/po/sv.po
+++ b/po/sv.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: 2007-01-10 23:47+0100\n"
 "Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
@@ -15,63 +15,40 @@ msgstr ""
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr "Du måste logga in först."
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 #, fuzzy
 msgid "Preferences"
 msgstr "Inställningar sparades."
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr "Inställningar sparades."
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr ""
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr "diskussion"
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr "skapar %s"
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr "redigerar %s"
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr "Du är bannlyst."
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr "Fel"
 
@@ -197,6 +174,13 @@ msgstr ""
 msgid "automatic index generation"
 msgstr ""
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr "diskussion"
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -222,6 +206,23 @@ msgstr ""
 msgid "no text was copied in this page with id %s"
 msgstr ""
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr ""
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr "skapar %s"
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr "redigerar %s"
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 #, fuzzy
 msgid "template not specified"
@@ -290,30 +291,35 @@ msgstr "misslyckades med att skriva %s: %s"
 msgid "Must specify url to wiki with --url when using --rss or --atom"
 msgstr "Måste ange url till wiki med --url när --rss eller --atom används"
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+#, fuzzy
+msgid "page editing not allowed"
+msgstr "mallen %s hittades inte"
+
+#: ../IkiWiki/Plugin/inline.pm:156
 #, fuzzy
 msgid "missing pages parameter"
 msgstr "mall saknar id-parameter"
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr "okänd sorteringstyp %s"
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr "Diskussion"
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr "RPC::XML::Client hittades inte, pingar inte"
 
@@ -778,47 +784,47 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr "hoppar över felaktigt filnamn %s"
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr "tar bort gammal sida %s"
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr "söker av %s"
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr "ritar upp %s"
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr "ritar upp %s, vilken länkar till %s"
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr "ritar upp %s, vilken är beroende av %s"
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr "ritar upp %s, för att uppdatera dess bakåtlänkar"
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr "tar bort %s, som inte längre ritas upp av %s"
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr "ikiwiki: kan inte rita upp %s"
index a87770987405d7f1cd1b63a44ccc7b74f8c34b7f..6553e4b7f086822f6641cffe59e50be2d3da10d3 100644 (file)
--- a/po/vi.po
+++ b/po/vi.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-09-04 14:10-0400\n"
+"POT-Creation-Date: 2008-09-05 13:41-0400\n"
 "PO-Revision-Date: 2007-01-13 15:31+1030\n"
 "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
 "Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
@@ -16,63 +16,40 @@ msgstr ""
 "Plural-Forms: nplurals=1; plural=0;\n"
 "X-Generator: LocFactoryEditor 1.6fc1\n"
 
-#: ../IkiWiki/CGI.pm:140
+#: ../IkiWiki/CGI.pm:113
 msgid "You need to log in first."
 msgstr "Trước tiên bạn cần phải đăng nhập."
 
-#: ../IkiWiki/CGI.pm:172
+#: ../IkiWiki/CGI.pm:145
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539
+#: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:310
 msgid "Your login session has expired."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:211
+#: ../IkiWiki/CGI.pm:184
 msgid "Login"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:212
+#: ../IkiWiki/CGI.pm:185
 #, fuzzy
 msgid "Preferences"
 msgstr "Tùy thích đã được lưu."
 
-#: ../IkiWiki/CGI.pm:213
+#: ../IkiWiki/CGI.pm:186
 msgid "Admin"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:280
+#: ../IkiWiki/CGI.pm:253
 msgid "Preferences saved."
 msgstr "Tùy thích đã được lưu."
 
-#: ../IkiWiki/CGI.pm:339
-#, perl-format
-msgid "%s is not an editable page"
-msgstr ""
-
-#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33
-#: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26
-#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78
-#: ../IkiWiki/Render.pm:148
-msgid "discussion"
-msgstr "thảo luận"
-
-#: ../IkiWiki/CGI.pm:506
-#, perl-format
-msgid "creating %s"
-msgstr "đang tạo %s"
-
-#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562
-#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642
-#, perl-format
-msgid "editing %s"
-msgstr "đang sửa %s"
-
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:271
 msgid "You are banned."
 msgstr "Bạn bị cấm ra."
 
-#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132
+#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1132
 msgid "Error"
 msgstr "Lỗi"
 
@@ -198,6 +175,13 @@ msgstr ""
 msgid "automatic index generation"
 msgstr ""
 
+#: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:221
+#: ../IkiWiki/Plugin/inline.pm:317 ../IkiWiki/Plugin/opendiscussion.pm:26
+#: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79
+#: ../IkiWiki/Render.pm:149
+msgid "discussion"
+msgstr "thảo luận"
+
 #: ../IkiWiki/Plugin/brokenlinks.pm:49
 #, perl-format
 msgid "%s from %s"
@@ -223,6 +207,23 @@ msgstr ""
 msgid "no text was copied in this page with id %s"
 msgstr ""
 
+#: ../IkiWiki/Plugin/editpage.pm:110
+#, perl-format
+msgid "%s is not an editable page"
+msgstr ""
+
+#: ../IkiWiki/Plugin/editpage.pm:277
+#, perl-format
+msgid "creating %s"
+msgstr "đang tạo %s"
+
+#: ../IkiWiki/Plugin/editpage.pm:295 ../IkiWiki/Plugin/editpage.pm:323
+#: ../IkiWiki/Plugin/editpage.pm:333 ../IkiWiki/Plugin/editpage.pm:368
+#: ../IkiWiki/Plugin/editpage.pm:413
+#, perl-format
+msgid "editing %s"
+msgstr "đang sửa %s"
+
 #: ../IkiWiki/Plugin/edittemplate.pm:51
 #, fuzzy
 msgid "template not specified"
@@ -293,30 +294,35 @@ msgstr ""
 "Cần phải xác định địa chỉ URL tới wiki với « --url » khi dùng « --rss » hay « --"
 "atom »"
 
-#: ../IkiWiki/Plugin/inline.pm:150
+#: ../IkiWiki/Plugin/inline.pm:139
+#, fuzzy
+msgid "page editing not allowed"
+msgstr "không tìm thấy mẫu %s"
+
+#: ../IkiWiki/Plugin/inline.pm:156
 #, fuzzy
 msgid "missing pages parameter"
 msgstr "mẫu thiếu tham số id"
 
-#: ../IkiWiki/Plugin/inline.pm:198
+#: ../IkiWiki/Plugin/inline.pm:204
 #, perl-format
 msgid "unknown sort type %s"
 msgstr "kiểu sắp xếp không rõ %s"
 
-#: ../IkiWiki/Plugin/inline.pm:269
+#: ../IkiWiki/Plugin/inline.pm:276
 msgid "Add a new post titled:"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:285
+#: ../IkiWiki/Plugin/inline.pm:292
 #, perl-format
 msgid "nonexistant template %s"
 msgstr ""
 
-#: ../IkiWiki/Plugin/inline.pm:318 ../IkiWiki/Render.pm:82
+#: ../IkiWiki/Plugin/inline.pm:325 ../IkiWiki/Render.pm:83
 msgid "Discussion"
 msgstr "Thảo luận"
 
-#: ../IkiWiki/Plugin/inline.pm:555
+#: ../IkiWiki/Plugin/inline.pm:562
 msgid "RPC::XML::Client not found, not pinging"
 msgstr "Không tìm thấy RPC::XML::Client nên không gửi gói tin ping"
 
@@ -779,47 +785,47 @@ msgstr ""
 msgid "<p class=\"error\">Error: %s exited nonzero (%s)"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297
+#: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:298
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr "đang bỏ qua tên tập tin sai %s"
 
-#: ../IkiWiki/Render.pm:355
+#: ../IkiWiki/Render.pm:356
 #, perl-format
 msgid "removing old page %s"
 msgstr "đang gỡ bỏ trang cũ %s"
 
-#: ../IkiWiki/Render.pm:395
+#: ../IkiWiki/Render.pm:396
 #, perl-format
 msgid "scanning %s"
 msgstr "đang quét %s"
 
-#: ../IkiWiki/Render.pm:400
+#: ../IkiWiki/Render.pm:401
 #, perl-format
 msgid "rendering %s"
 msgstr "đang vẽ %s"
 
-#: ../IkiWiki/Render.pm:421
+#: ../IkiWiki/Render.pm:422
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr "đang vẽ %s mà liên kết tới %s"
 
-#: ../IkiWiki/Render.pm:442
+#: ../IkiWiki/Render.pm:443
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr "đang vẽ %s mà phụ thuộc vào %s"
 
-#: ../IkiWiki/Render.pm:481
+#: ../IkiWiki/Render.pm:482
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr "đang vẽ %s để cập nhật các liên kết ngược của nó"
 
-#: ../IkiWiki/Render.pm:493
+#: ../IkiWiki/Render.pm:494
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr "đang gỡ bỏ %s, không còn được vẽ lại bởi %s"
 
-#: ../IkiWiki/Render.pm:517
+#: ../IkiWiki/Render.pm:518
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr "ikiwiki: không thể vẽ %s"