From 0ffcafc1305de5ec242f3f0835064682d408c3d0 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 1 Jul 2008 17:54:23 -0400 Subject: attachment doc updates --- doc/todo/attachments.mdwn | 20 ++++++++++++++++++++ doc/todo/attachments_plugin.mdwn | 1 - doc/todo/fileupload.mdwn | 2 +- 3 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 doc/todo/attachments.mdwn delete mode 100644 doc/todo/attachments_plugin.mdwn (limited to 'doc/todo') diff --git a/doc/todo/attachments.mdwn b/doc/todo/attachments.mdwn new file mode 100644 index 000000000..de7d81400 --- /dev/null +++ b/doc/todo/attachments.mdwn @@ -0,0 +1,20 @@ +Stuff the [[plugins/attachment]] plugin is currently missing, that might be +nice to add: + +* `user()` pagespecs, to limit what individual users can do. (See examples + in [[fileupload]]. +* `mimetype()` pagespecs. (Using a mime type sniffer.)a +* Virus scanning. +* Make the attachments part of the Edit page hidden unless something is + clicked on to display it. To avoid clutter. +* Add a progress bar for attachment uploads (needs AJAX stuff..) +* Maybe optimise the "Insert Links" button with javascript, so, if + javascript is available, the link is inserted at the current cursor + position in the page edit form, without actually reposting the form. + (Falling back to the current reposting of the form if javascript is not + available of course.) +* Set `$CGI::POST_MAX` to some sane value (ie, larger than the largest + configured `maxsize()` in the pagespec, or if none is configured, + something reasonable. Just as a belt-and-suspenders DOS prevention. +* Only allow attachments to be added to a given list of pages. + Maybe a pagespec like `parent(patches/*)` diff --git a/doc/todo/attachments_plugin.mdwn b/doc/todo/attachments_plugin.mdwn deleted file mode 100644 index 3b050b43e..000000000 --- a/doc/todo/attachments_plugin.mdwn +++ /dev/null @@ -1 +0,0 @@ -First pass at an attachments plugin. See [[plugins/contrib/attach]] for details/docs. Here's the [diff](http://pastebin.com/f4d889b65), and here's some [technical notes](http://pastebin.com/f584b9d9d). There are still various things I want to fix and tweak, but it works reasonably for me as is. \ No newline at end of file diff --git a/doc/todo/fileupload.mdwn b/doc/todo/fileupload.mdwn index 1962d6b40..9a9106229 100644 --- a/doc/todo/fileupload.mdwn +++ b/doc/todo/fileupload.mdwn @@ -60,4 +60,4 @@ pagespec lock like the above prevents an edit or upload from happening, ikiwiki could display a reasonable message to the user, indicating what they've done wrong.) -[[tag soc]] +[[tag soc done]] -- cgit v1.2.3 From 895faed6428f3523871d29ed82b0ab3326453b75 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 2 Jul 2008 16:02:01 -0400 Subject: toggle: Add support for toggles that are open by default. Also fix to work in preview mode. --- IkiWiki/Plugin/toggle.pm | 15 +++++---------- debian/changelog | 2 ++ doc/plugins/toggle.mdwn | 3 +++ doc/todo/toggle_initial_state.mdwn | 2 ++ 4 files changed, 12 insertions(+), 10 deletions(-) (limited to 'doc/todo') diff --git a/IkiWiki/Plugin/toggle.pm b/IkiWiki/Plugin/toggle.pm index 54c9a0d9a..f969d7686 100644 --- a/IkiWiki/Plugin/toggle.pm +++ b/IkiWiki/Plugin/toggle.pm @@ -81,17 +81,11 @@ sub preprocess_toggle (@) { #{{{ my %params=(id => "default", text => "more", @_); my $id=genid($params{page}, $params{id}); - if (! $params{preview}) { - return "$params{text}"; - } - else { - return "$params{text} ". - gettext("(not toggleable in preview mode)"); - } + return "$params{text}"; } # }}} sub preprocess_toggleable (@) { #{{{ - my %params=(id => "default", text => "", @_); + my %params=(id => "default", text => "", open => "no", @_); # Preprocess the text to expand any preprocessor directives # embedded inside it. @@ -99,19 +93,20 @@ sub preprocess_toggleable (@) { #{{{ IkiWiki::filter($params{page}, $params{destpage}, $params{text})); my $id=genid($params{page}, $params{id}); + my $class=(lc($params{open}) ne "yes") ? "toggleable" : "toggleable-open"; # Should really be a postprocessor directive, oh well. Work around # markdown's dislike of markdown inside a
with various funky # whitespace. my ($indent)=$params{text}=~/( +)$/; $indent="" unless defined $indent; - return "
\n\n$params{text}\n$indent
"; + return "
\n\n$params{text}\n$indent
"; } # }}} sub format (@) { #{{{ my %params=@_; - if ($params{content}=~s!(
)
!$1!g) { + if ($params{content}=~s!(
)
!$1!g) { $params{content}=~s/
//g; if (! ($params{content}=~s!^<\/body>!$javascript!m)) { # no tag, probably in preview mode diff --git a/debian/changelog b/debian/changelog index 152689948..314415788 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,6 +4,8 @@ ikiwiki (2.52) UNRELEASED; urgency=low (Sponsored by The TOVA Company.) * If attachments are not enabled, configure CGI.pm to disable file uploads by default. (An anti-DOS measure.) + * toggle: Add support for toggles that are open by default. + * toggle: Fix to work in preview mode. -- Joey Hess Mon, 30 Jun 2008 19:56:28 -0400 diff --git a/doc/plugins/toggle.mdwn b/doc/plugins/toggle.mdwn index cb76d0b7b..b33575824 100644 --- a/doc/plugins/toggle.mdwn +++ b/doc/plugins/toggle.mdwn @@ -28,3 +28,6 @@ each other, but can be located anywhere on the page. There can also be mutiple toggles that all toggle a single togglable. The id has a default value of "default", so can be omitted in simple cases. + +If you'd like a toggleable to be displayed by default, and toggle to +hidden, then pass a parameter "open=true" when setting up the toggleable. diff --git a/doc/todo/toggle_initial_state.mdwn b/doc/todo/toggle_initial_state.mdwn index f54d33c04..cbbf7e6fd 100644 --- a/doc/todo/toggle_initial_state.mdwn +++ b/doc/todo/toggle_initial_state.mdwn @@ -2,3 +2,5 @@ It would be nice if one could set the initial state of the toggleable area. --[[[rdennis]] [[tag plugins/toggle]] + +[[done]] -- cgit v1.2.3 From aaca4902dd29e7ba7769daedcc2f7ee86d1e058a Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 2 Jul 2008 16:37:17 -0400 Subject: update --- doc/todo/attachments.mdwn | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'doc/todo') diff --git a/doc/todo/attachments.mdwn b/doc/todo/attachments.mdwn index de7d81400..08052f368 100644 --- a/doc/todo/attachments.mdwn +++ b/doc/todo/attachments.mdwn @@ -1,12 +1,8 @@ Stuff the [[plugins/attachment]] plugin is currently missing, that might be nice to add: -* `user()` pagespecs, to limit what individual users can do. (See examples - in [[fileupload]]. -* `mimetype()` pagespecs. (Using a mime type sniffer.)a +* `mimetype()` pagespecs. (Using a mime type sniffer.) * Virus scanning. -* Make the attachments part of the Edit page hidden unless something is - clicked on to display it. To avoid clutter. * Add a progress bar for attachment uploads (needs AJAX stuff..) * Maybe optimise the "Insert Links" button with javascript, so, if javascript is available, the link is inserted at the current cursor -- cgit v1.2.3