From bb394fdae8ba488f1031d6f053f1544c689a3628 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Fri, 1 Aug 2008 15:45:57 -0400 Subject: [PATCH] admin prefs move to setup file, stage 1 The locked pages configuration is moving to a locked_pages option in the setup file, and the allowed attachments configuration to allowed_attachments. The admin prefs page can still be used for these, but that's depreacted and will only be shown if there's currently a value. --- IkiWiki/Plugin/attachment.pm | 66 +++++++++---- IkiWiki/Plugin/lockedit.pm | 48 ++++++++-- debian/changelog | 4 + doc/plugins/attachment.mdwn | 6 +- doc/plugins/write.mdwn | 3 +- doc/roadmap.mdwn | 11 +-- po/ikiwiki.pot | 174 ++++++++++++++++++----------------- 7 files changed, 192 insertions(+), 120 deletions(-) diff --git a/IkiWiki/Plugin/attachment.pm b/IkiWiki/Plugin/attachment.pm index 47e165251..b6327f0c5 100644 --- a/IkiWiki/Plugin/attachment.pm +++ b/IkiWiki/Plugin/attachment.pm @@ -21,6 +21,18 @@ sub getsetup () { #{{{ safe => 0, # executed rebuild => 0, }, + allowed_attachments => { + type => "string", + example => "mimetype(image/*) and maxsize(50kb)", + description => "enhanced PageSpec specifying what attachments are allowed", + description_html => htmllink("", "", + "ikiwiki/PageSpec/attachment", + noimageinline => 1, + linktext => "enhanced PageSpec", + )." specifying what attachments are allowed", + safe => 1, + rebuild => 0, + }, } #}}} sub check_canattach ($$;$) { #{{{ @@ -36,19 +48,33 @@ sub check_canattach ($$;$) { #{{{ # Use a special pagespec to test that the attachment is valid. my $allowed=1; - foreach my $admin (@{$config{adminuser}}) { - my $allowed_attachments=IkiWiki::userinfo_get($admin, "allowed_attachments"); - if (defined $allowed_attachments && - length $allowed_attachments) { - $allowed=pagespec_match($dest, - $allowed_attachments, - file => $file, - user => $session->param("name"), - ip => $ENV{REMOTE_ADDR}, - ); - last if $allowed; + if (defined $config{allowed_attachments} && + length $config{allowed_attachments}) { + $allowed=pagespec_match($dest, + $config{allowed_attachments}, + file => $file, + user => $session->param("name"), + ip => $ENV{REMOTE_ADDR}, + ); + } + + # XXX deprecated, should be removed eventually + if ($allowed) { + foreach my $admin (@{$config{adminuser}}) { + my $allowed_attachments=IkiWiki::userinfo_get($admin, "allowed_attachments"); + if (defined $allowed_attachments && + length $allowed_attachments) { + $allowed=pagespec_match($dest, + $allowed_attachments, + file => $file, + user => $session->param("name"), + ip => $ENV{REMOTE_ADDR}, + ); + last if $allowed; + } } } + if (! $allowed) { error(gettext("prohibited by allowed_attachments")." ($allowed)"); } @@ -91,24 +117,26 @@ sub formbuilder_setup (@) { #{{{ } } elsif ($form->title eq "preferences") { + # XXX deprecated, should remove eventually my $session=$params{session}; my $user_name=$session->param("name"); $form->field(name => "allowed_attachments", size => 50, fieldset => "admin", - comment => "(". - htmllink("", "", - "ikiwiki/PageSpec/attachment", - noimageinline => 1, - linktext => "Enhanced PageSpec", - ).")" + comment => "deprecated; please move to allowed_attachments in setup file", ); if (! IkiWiki::is_admin($user_name)) { $form->field(name => "allowed_attachments", type => "hidden"); } if (! $form->submitted) { - $form->field(name => "allowed_attachments", force => 1, - value => IkiWiki::userinfo_get($user_name, "allowed_attachments")); + my $value=IkiWiki::userinfo_get($user_name, "allowed_attachments"); + if (length $value) { + $form->field(name => "allowed_attachments", force => 1, + value => IkiWiki::userinfo_get($user_name, "allowed_attachments")); + } + else { + $form->field(name => "allowed_attachments", type => "hidden"); + } } if ($form->submitted && $form->submitted eq 'Save Preferences') { if (defined $form->field("allowed_attachments")) { diff --git a/IkiWiki/Plugin/lockedit.pm b/IkiWiki/Plugin/lockedit.pm index 5ffb4e6f9..033b38263 100644 --- a/IkiWiki/Plugin/lockedit.pm +++ b/IkiWiki/Plugin/lockedit.pm @@ -6,11 +6,25 @@ use strict; use IkiWiki 2.00; sub import { #{{{ + hook(type => "getsetup", id => "lockedit", call => \&getsetup); hook(type => "canedit", id => "lockedit", call => \&canedit); hook(type => "formbuilder_setup", id => "lockedit", call => \&formbuilder_setup); } # }}} +sub getsetup () { #{{{ + return + locked_pages => { + type => "string", + example => "!*/Discussion", + description => "PageSpec controlling which pages are locked", + description_html => htmllink("", "", "ikiwiki/PageSpec", noimageinline => 1). + " controlling which pages are locked", + safe => 1, + rebuild => 0, + }, +} #}}} + sub canedit ($$) { #{{{ my $page=shift; my $cgi=shift; @@ -19,6 +33,20 @@ sub canedit ($$) { #{{{ my $user=$session->param("name"); return undef if defined $user && IkiWiki::is_admin($user); + if (defined $config{locked_pages} && length $config{locked_pages} && + pagespec_match($page, $config{locked_pages})) { + if (! defined $user || + ! IkiWiki::userinfo_get($session->param("name"), "regdate")) { + return sub { IkiWiki::needsignin($cgi, $session) }; + } + else { + return sprintf(gettext("%s is locked and cannot be edited"), + htmllink("", "", $page, noimageinline => 1)); + + } + } + + # XXX deprecated, should be removed eventually foreach my $admin (@{$config{adminuser}}) { if (pagespec_match($page, IkiWiki::userinfo_get($admin, "locked_pages"))) { if (! defined $user || @@ -26,9 +54,8 @@ sub canedit ($$) { #{{{ return sub { IkiWiki::needsignin($cgi, $session) }; } else { - return sprintf(gettext("%s is locked by %s and cannot be edited"), - htmllink("", "", $page, noimageinline => 1), - IkiWiki::userlink($admin)); + return sprintf(gettext("%s is locked and cannot be edited"), + htmllink("", "", $page, noimageinline => 1)); } } } @@ -38,7 +65,8 @@ sub canedit ($$) { #{{{ sub formbuilder_setup (@) { #{{{ my %params=@_; - + + # XXX deprecated, should be removed eventually my $form=$params{form}; if ($form->title eq "preferences") { my $session=$params{session}; @@ -47,13 +75,19 @@ sub formbuilder_setup (@) { #{{{ $form->field(name => "locked_pages", size => 50, fieldset => "admin", - comment => "(".htmllink("", "", "ikiwiki/PageSpec", noimageinline => 1).")"); + comment => "deprecated; please move to locked_pages in setup file" + ); if (! IkiWiki::is_admin($user_name)) { $form->field(name => "locked_pages", type => "hidden"); } if (! $form->submitted) { - $form->field(name => "locked_pages", force => 1, - value => IkiWiki::userinfo_get($user_name, "locked_pages")); + my $value=IkiWiki::userinfo_get($user_name, "locked_pages"); + if (length $value) { + $form->field(name => "locked_pages", force => 1, value => $value); + } + else { + $form->field(name => "locked_pages", type => "hidden"); + } } if ($form->submitted && $form->submitted eq 'Save Preferences') { if (defined $form->field("locked_pages")) { diff --git a/debian/changelog b/debian/changelog index 440910313..033b9fbc6 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,6 +11,10 @@ ikiwiki (2.60) UNRELEASED; urgency=low * Version control backends promoted to first-class plugins. * ikiwiki-update-wikilist: Add -r switch to remove. Default behavior is now always to add. + * The locked pages configuration is moving to a locked_pages option in the + setup file, and the allowed attachments configuration to + allowed_attachments. The admin prefs page can still be used for these, but + that's depreacted and will only be shown if there's currently a value. -- Joey Hess Mon, 21 Jul 2008 11:35:46 -0400 diff --git a/doc/plugins/attachment.mdwn b/doc/plugins/attachment.mdwn index 524a233fa..b04a04ad2 100644 --- a/doc/plugins/attachment.mdwn +++ b/doc/plugins/attachment.mdwn @@ -20,9 +20,9 @@ Bear in mind that if you let anyone upload a particular kind of file contains html as a web page; including running any malicious javascript embedded in that page. -If you enable this plugin, be sure to lock that down, by entering an -[[enhanced_PageSpec|ikiwiki/pagespec/attachment]] in the "Allowed -Attachments" field of the wiki admin's preferences page. +If you enable this plugin, be sure to lock it down, via the +`allowed_attachments` setup file option. This is a special +[[enhanced_PageSpec|ikiwiki/pagespec/attachment]]. This plugin will use the [[!cpan File::MimeInfo::Magic]] perl module, if available, for mimetype checking. diff --git a/doc/plugins/write.mdwn b/doc/plugins/write.mdwn index 77210d35c..255be4207 100644 --- a/doc/plugins/write.mdwn +++ b/doc/plugins/write.mdwn @@ -396,11 +396,12 @@ describing the option. For example: rebuild => 0, }, -* `type` can be "boolean", "string", "integer", "pagespec", or "internal" +* `type` can be "boolean", "string", "integer", or "internal" (used for values that are not user-visible). The type is the type of the leaf values; the `%config` option may be an array or hash of these. * `example` can be set to an example value. * `description` is a short description of the option. +* `description_html` is an optional short description, that can contain html * `safe` should be false if the option should not be displayed in unsafe configuration methods, such as the web interface. Anything that specifies a command to run, a path on disk, or a regexp should be marked as unsafe. diff --git a/doc/roadmap.mdwn b/doc/roadmap.mdwn index 32752715d..6447e8c52 100644 --- a/doc/roadmap.mdwn +++ b/doc/roadmap.mdwn @@ -39,21 +39,20 @@ backwards compatability. # 3.0 -Still in the early planning stages, version 3.0 will be an opportunity to -make significant transitions. +Version 3.0 will be an opportunity to make significant transitions. * Default to using `prefix_directives`. * Default to using `aggregateinternal`. +* Remove deprecated prefs form settings for `allowed_attachments` and + `locked_pages`. ---- # future goals -* Improved [[todo/html]] stylesheets and templates. - _(status: [[css_market]] exists; it could always provide more stylesheets. No alternate templates yet, though.)_ -* More documentation in the basewiki, including documentation for all enabled plugins. Probably need some solution for [[todo/conditional_underlay_files]], too. +* More documentation in the basewiki, including documentation for all enabled plugins. * Conversion support for existing other wikis. (Being worked on for MoinMoin and TWiki by [[Josh_Triplett|JoshTriplett]] and Jamey Sharp; support for other wikis should fit into the same framework.) -* [[TODO]], [[bugs]], [[soc]], ... +* [[TODO]], [[bugs]], ... diff --git a/po/ikiwiki.pot b/po/ikiwiki.pot index 52ed49d81..cefd4d711 100644 --- a/po/ikiwiki.pot +++ b/po/ikiwiki.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-07-31 19:25-0400\n" +"POT-Creation-Date: 2008-08-01 15:43-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -50,7 +50,7 @@ msgid "%s is not an editable page" msgstr "" #: ../IkiWiki/CGI.pm:437 ../IkiWiki/Plugin/brokenlinks.pm:24 -#: ../IkiWiki/Plugin/inline.pm:261 ../IkiWiki/Plugin/opendiscussion.pm:17 +#: ../IkiWiki/Plugin/inline.pm:306 ../IkiWiki/Plugin/opendiscussion.pm:17 #: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:78 #: ../IkiWiki/Render.pm:148 msgid "discussion" @@ -71,122 +71,122 @@ msgstr "" msgid "You are banned." msgstr "" -#: ../IkiWiki/CGI.pm:758 ../IkiWiki/CGI.pm:759 ../IkiWiki.pm:785 +#: ../IkiWiki/CGI.pm:758 ../IkiWiki/CGI.pm:759 ../IkiWiki.pm:1086 msgid "Error" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:57 +#: ../IkiWiki/Plugin/aggregate.pm:76 msgid "Aggregation triggered via web." msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:66 +#: ../IkiWiki/Plugin/aggregate.pm:85 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:193 +#: ../IkiWiki/Plugin/aggregate.pm:212 #, perl-format msgid "missing %s parameter" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:227 +#: ../IkiWiki/Plugin/aggregate.pm:246 msgid "new feed" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:241 +#: ../IkiWiki/Plugin/aggregate.pm:260 msgid "posts" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:243 +#: ../IkiWiki/Plugin/aggregate.pm:262 msgid "new" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:406 +#: ../IkiWiki/Plugin/aggregate.pm:425 #, perl-format msgid "expiring %s (%s days old)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:413 +#: ../IkiWiki/Plugin/aggregate.pm:432 #, perl-format msgid "expiring %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:440 +#: ../IkiWiki/Plugin/aggregate.pm:459 #, perl-format msgid "processed ok at %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:444 +#: ../IkiWiki/Plugin/aggregate.pm:463 #, perl-format msgid "checking feed %s ..." msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:449 +#: ../IkiWiki/Plugin/aggregate.pm:468 #, perl-format msgid "could not find feed at %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:464 +#: ../IkiWiki/Plugin/aggregate.pm:483 msgid "feed not found" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:475 +#: ../IkiWiki/Plugin/aggregate.pm:494 #, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:481 +#: ../IkiWiki/Plugin/aggregate.pm:500 #, perl-format msgid "(feed entities escaped)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:487 +#: ../IkiWiki/Plugin/aggregate.pm:506 msgid "feed crashed XML::Feed!" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:561 +#: ../IkiWiki/Plugin/aggregate.pm:580 #, perl-format msgid "creating new page %s" msgstr "" -#: ../IkiWiki/Plugin/amazon_s3.pm:30 +#: ../IkiWiki/Plugin/amazon_s3.pm:31 msgid "deleting bucket.." msgstr "" -#: ../IkiWiki/Plugin/amazon_s3.pm:37 ../IkiWiki/Setup.pm:117 +#: ../IkiWiki/Plugin/amazon_s3.pm:38 ../ikiwiki.in:193 msgid "done" msgstr "" -#: ../IkiWiki/Plugin/amazon_s3.pm:46 +#: ../IkiWiki/Plugin/amazon_s3.pm:93 #, perl-format msgid "Must specify %s" msgstr "" -#: ../IkiWiki/Plugin/amazon_s3.pm:85 +#: ../IkiWiki/Plugin/amazon_s3.pm:132 msgid "Failed to create bucket in S3: " msgstr "" -#: ../IkiWiki/Plugin/amazon_s3.pm:170 +#: ../IkiWiki/Plugin/amazon_s3.pm:217 msgid "Failed to save file to S3: " msgstr "" -#: ../IkiWiki/Plugin/amazon_s3.pm:192 +#: ../IkiWiki/Plugin/amazon_s3.pm:239 msgid "Failed to delete file from S3: " msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:22 +#: ../IkiWiki/Plugin/attachment.pm:46 #, perl-format msgid "there is already a page named %s" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:41 +#: ../IkiWiki/Plugin/attachment.pm:79 msgid "prohibited by allowed_attachments" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:144 +#: ../IkiWiki/Plugin/attachment.pm:184 msgid "bad attachment filename" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:186 +#: ../IkiWiki/Plugin/attachment.pm:226 msgid "attachment upload" msgstr "" @@ -203,6 +203,12 @@ msgstr "" msgid "There are no broken links!" msgstr "" +#: ../IkiWiki/Plugin/bzr.pm:12 ../IkiWiki/Plugin/git.pm:15 +#: ../IkiWiki/Plugin/mercurial.pm:12 ../IkiWiki/Plugin/monotone.pm:15 +#: ../IkiWiki/Plugin/svn.pm:11 ../IkiWiki/Plugin/tla.pm:10 +msgid "cannot use multiple rcs plugins" +msgstr "" + #: ../IkiWiki/Plugin/conditional.pm:18 ../IkiWiki/Plugin/cutpaste.pm:22 #: ../IkiWiki/Plugin/cutpaste.pm:37 ../IkiWiki/Plugin/cutpaste.pm:53 #: ../IkiWiki/Plugin/testpagespec.pm:17 @@ -277,33 +283,33 @@ msgstr "" msgid "failed to determine size of image %s" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:47 +#: ../IkiWiki/Plugin/inline.pm:89 msgid "Must specify url to wiki with --url when using --rss or --atom" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:101 +#: ../IkiWiki/Plugin/inline.pm:146 msgid "missing pages parameter" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:149 +#: ../IkiWiki/Plugin/inline.pm:194 #, perl-format msgid "unknown sort type %s" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:220 +#: ../IkiWiki/Plugin/inline.pm:265 msgid "Add a new post titled:" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:236 +#: ../IkiWiki/Plugin/inline.pm:281 #, perl-format msgid "nonexistant template %s" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:269 ../IkiWiki/Render.pm:82 +#: ../IkiWiki/Plugin/inline.pm:314 ../IkiWiki/Render.pm:82 msgid "Discussion" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:506 +#: ../IkiWiki/Plugin/inline.pm:551 msgid "RPC::XML::Client not found, not pinging" msgstr "" @@ -311,16 +317,16 @@ msgstr "" msgid "failed to run dot" msgstr "" -#: ../IkiWiki/Plugin/lockedit.pm:29 +#: ../IkiWiki/Plugin/lockedit.pm:43 ../IkiWiki/Plugin/lockedit.pm:57 #, perl-format -msgid "%s is locked by %s and cannot be edited" +msgid "%s is locked and cannot be edited" msgstr "" -#: ../IkiWiki/Plugin/mdwn.pm:28 +#: ../IkiWiki/Plugin/mdwn.pm:40 msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed" msgstr "" -#: ../IkiWiki/Plugin/mdwn.pm:51 +#: ../IkiWiki/Plugin/mdwn.pm:63 #, perl-format msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)" msgstr "" @@ -337,11 +343,11 @@ msgstr "" msgid "redir cycle is not allowed" msgstr "" -#: ../IkiWiki/Plugin/mirrorlist.pm:23 +#: ../IkiWiki/Plugin/mirrorlist.pm:35 msgid "Mirrors" msgstr "" -#: ../IkiWiki/Plugin/mirrorlist.pm:23 +#: ../IkiWiki/Plugin/mirrorlist.pm:35 msgid "Mirror" msgstr "" @@ -349,11 +355,15 @@ msgstr "" msgid "more" msgstr "" -#: ../IkiWiki/Plugin/openid.pm:45 +#: ../IkiWiki/Plugin/norcs.pm:55 +msgid "getctime not implemented" +msgstr "" + +#: ../IkiWiki/Plugin/openid.pm:57 msgid "Log in with" msgstr "" -#: ../IkiWiki/Plugin/openid.pm:48 +#: ../IkiWiki/Plugin/openid.pm:60 msgid "Get an OpenID" msgstr "" @@ -365,31 +375,31 @@ msgstr "" msgid "bad or missing template" msgstr "" -#: ../IkiWiki/Plugin/passwordauth.pm:223 +#: ../IkiWiki/Plugin/passwordauth.pm:243 msgid "Account creation successful. Now you can Login." msgstr "" -#: ../IkiWiki/Plugin/passwordauth.pm:226 +#: ../IkiWiki/Plugin/passwordauth.pm:246 msgid "Error creating account." msgstr "" -#: ../IkiWiki/Plugin/passwordauth.pm:233 +#: ../IkiWiki/Plugin/passwordauth.pm:253 msgid "No email address, so cannot email password reset instructions." msgstr "" -#: ../IkiWiki/Plugin/passwordauth.pm:265 +#: ../IkiWiki/Plugin/passwordauth.pm:287 msgid "Failed to send mail" msgstr "" -#: ../IkiWiki/Plugin/passwordauth.pm:267 +#: ../IkiWiki/Plugin/passwordauth.pm:289 msgid "You have been mailed password reset instructions." msgstr "" -#: ../IkiWiki/Plugin/passwordauth.pm:302 +#: ../IkiWiki/Plugin/passwordauth.pm:324 msgid "incorrect password reset url" msgstr "" -#: ../IkiWiki/Plugin/passwordauth.pm:305 +#: ../IkiWiki/Plugin/passwordauth.pm:327 msgid "password reset denied" msgstr "" @@ -397,21 +407,21 @@ msgstr "" msgid "Ping received." msgstr "" -#: ../IkiWiki/Plugin/pinger.pm:37 +#: ../IkiWiki/Plugin/pinger.pm:49 msgid "requires 'from' and 'to' parameters" msgstr "" -#: ../IkiWiki/Plugin/pinger.pm:42 +#: ../IkiWiki/Plugin/pinger.pm:54 #, perl-format msgid "Will ping %s" msgstr "" -#: ../IkiWiki/Plugin/pinger.pm:45 +#: ../IkiWiki/Plugin/pinger.pm:57 #, perl-format msgid "Ignoring ping directive for wiki %s (this wiki is %s)" msgstr "" -#: ../IkiWiki/Plugin/pinger.pm:61 +#: ../IkiWiki/Plugin/pinger.pm:73 msgid "LWP not found, not pinging" msgstr "" @@ -491,23 +501,23 @@ msgstr "" msgid "%A night" msgstr "" -#: ../IkiWiki/Plugin/prettydate.pm:78 +#: ../IkiWiki/Plugin/prettydate.pm:96 msgid "at teatime on %A" msgstr "" -#: ../IkiWiki/Plugin/prettydate.pm:82 +#: ../IkiWiki/Plugin/prettydate.pm:100 msgid "at midnight" msgstr "" -#: ../IkiWiki/Plugin/prettydate.pm:85 +#: ../IkiWiki/Plugin/prettydate.pm:103 msgid "at noon on %A" msgstr "" -#: ../IkiWiki/Plugin/recentchanges.pm:76 +#: ../IkiWiki/Plugin/recentchanges.pm:95 msgid "missing page" msgstr "" -#: ../IkiWiki/Plugin/recentchanges.pm:78 +#: ../IkiWiki/Plugin/recentchanges.pm:97 #, perl-format msgid "The page %s does not exist." msgstr "" @@ -591,17 +601,17 @@ msgstr "" msgid "update for rename of %s to %s" msgstr "" -#: ../IkiWiki/Plugin/search.pm:20 +#: ../IkiWiki/Plugin/search.pm:32 #, perl-format msgid "Must specify %s when using the search plugin" msgstr "" -#: ../IkiWiki/Plugin/search.pm:166 +#: ../IkiWiki/Plugin/search.pm:178 #, perl-format msgid "need Digest::SHA1 to index %s" msgstr "" -#: ../IkiWiki/Plugin/search.pm:201 +#: ../IkiWiki/Plugin/search.pm:213 msgid "search" msgstr "" @@ -703,10 +713,6 @@ msgstr "" msgid "failed to generate image from code" msgstr "" -#: ../IkiWiki/Rcs/Stub.pm:96 -msgid "getctime not implemented" -msgstr "" - #: ../IkiWiki/Render.pm:276 ../IkiWiki/Render.pm:297 #, perl-format msgid "skipping bad filename %s" @@ -754,23 +760,11 @@ msgstr "" #. translators: The first parameter is a filename, and the second #. translators: is a (probably not translated) error message. -#: ../IkiWiki/Setup.pm:25 +#: ../IkiWiki/Setup.pm:17 #, perl-format msgid "cannot read %s: %s" msgstr "" -#: ../IkiWiki/Setup.pm:58 -msgid "generating wrappers.." -msgstr "" - -#: ../IkiWiki/Setup.pm:107 -msgid "rebuilding wiki.." -msgstr "" - -#: ../IkiWiki/Setup.pm:110 -msgid "refreshing wiki.." -msgstr "" - #: ../IkiWiki/Wrapper.pm:16 #, perl-format msgid "%s doesn't seem to be executable" @@ -807,19 +801,31 @@ msgstr "" msgid "usage: ikiwiki [options] source dest" msgstr "" -#: ../ikiwiki.in:82 +#: ../ikiwiki.in:79 msgid "usage: --set var=value" msgstr "" -#: ../IkiWiki.pm:126 +#: ../ikiwiki.in:126 +msgid "generating wrappers.." +msgstr "" + +#: ../ikiwiki.in:182 +msgid "rebuilding wiki.." +msgstr "" + +#: ../ikiwiki.in:185 +msgid "refreshing wiki.." +msgstr "" + +#: ../IkiWiki.pm:410 msgid "Must specify url to wiki with --url when using --cgi" msgstr "" -#: ../IkiWiki.pm:768 +#: ../IkiWiki.pm:1069 #, perl-format msgid "preprocessing loop detected on %s at depth %i" msgstr "" -#: ../IkiWiki.pm:1216 +#: ../IkiWiki.pm:1557 msgid "yes" msgstr "" -- 2.44.0