From 5749a9d2cc502cee4451b8b01898649d1bad8444 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Thu, 14 Oct 2010 13:38:46 +0200 Subject: Sync with ikiwiki 3.20100926. --- ikiwiki/pagespec/attachment.mdwn | 38 ++++++++++++++++++++++++++++++++++++++ ikiwiki/pagespec/po.mdwn | 23 +++++++++++++++++++++++ ikiwiki/pagespec/sorting.mdwn | 26 ++++++++++++++++++++++++++ 3 files changed, 87 insertions(+) create mode 100644 ikiwiki/pagespec/attachment.mdwn create mode 100644 ikiwiki/pagespec/po.mdwn create mode 100644 ikiwiki/pagespec/sorting.mdwn (limited to 'ikiwiki/pagespec') diff --git a/ikiwiki/pagespec/attachment.mdwn b/ikiwiki/pagespec/attachment.mdwn new file mode 100644 index 0000000..fa2bc58 --- /dev/null +++ b/ikiwiki/pagespec/attachment.mdwn @@ -0,0 +1,38 @@ +[[!meta robots="noindex, follow"]] +[[!if test="enabled(attachment)" + then="This wiki has attachments **enabled**." + else="This wiki has attachments **disabled**."]] + +If attachments are enabled, the wiki admin can control what types of +attachments will be accepted, via the `allowed_attachments` +configuration setting. + +For example, to limit most users to uploading small images, and nothing else, +while allowing larger mp3 files to be uploaded by joey into a specific +directory, and check all attachments for viruses, something like this could be +used: + + virusfree() and ((user(joey) and podcast/*.mp3 and mimetype(audio/mpeg) and maxsize(15mb)) or (mimetype(image/*) and maxsize(50kb))) + +The regular [[ikiwiki/PageSpec]] syntax is expanded with the following +additional tests: + +* "`maxsize(size)`" - tests whether the attachment is no larger than the + specified size. The size defaults to being in bytes, but "kb", "mb", "gb" + etc can be used to specify the units. + +* "`minsize(size)`" - tests whether the attachment is no smaller than the + specified size. + +* "`ispage()`" - tests whether the attachment will be treated by ikiwiki as a + wiki page. (Ie, if it has an extension of ".mdwn", or of any other enabled + page format). + + So, if you don't want to allow wiki pages to be uploaded as attachments, + use `!ispage()` ; if you only want to allow wiki pages to be uploaded + as attachments, use `ispage()`. + +* "`mimetype(foo/bar)`" - checks the MIME type of the attachment. You can + include a glob in the type, for example `mimetype(image/*)`. + +* "`virusfree()`" - checks the attachment with an antiviral program. diff --git a/ikiwiki/pagespec/po.mdwn b/ikiwiki/pagespec/po.mdwn new file mode 100644 index 0000000..f995640 --- /dev/null +++ b/ikiwiki/pagespec/po.mdwn @@ -0,0 +1,23 @@ +[[!if test="enabled(po)" + then="This wiki has po support **enabled**." + else="This wiki has po support **disabled**."]] + +If the [[!iki plugins/po desc=po]] plugin is enabled, the regular +[[ikiwiki/PageSpec]] syntax is expanded with the following additional +tests that can be used to improve user navigation in a multi-lingual +wiki: + +* "`lang(LL)`" - tests whether a page is written in the language + specified as a ISO639-1 (two-letter) language code. +* "`currentlang()`" - tests whether a page is written in the same + language as the current page. +* "`needstranslation()`" - tests whether a page needs translation + work. Only slave pages match this PageSpec. A minimum target + translation percentage can optionally be passed as an integer + parameter: "`needstranslation(50)`" matches only pages less than 50% + translated. + +Note that every non-po page is considered to be written in +`po_master_language`, as specified in `ikiwiki.setup`. + +[[!meta robots="noindex, follow"]] diff --git a/ikiwiki/pagespec/sorting.mdwn b/ikiwiki/pagespec/sorting.mdwn new file mode 100644 index 0000000..ccd7f7e --- /dev/null +++ b/ikiwiki/pagespec/sorting.mdwn @@ -0,0 +1,26 @@ +Some [[directives|ikiwiki/directive]] that use +[[PageSpecs|ikiwiki/pagespec]] allow +specifying the order that matching pages are shown in. The following sort +orders can be specified. + +* `age` - List pages from the most recently created to the oldest. + +* `mtime` - List pages with the most recently modified first. + +* `title` - Order by title (page name). +[[!if test="enabled(sortnaturally)" then=""" +* `title_natural` - Orders by title, but numbers in the title are treated + as such, ("1 2 9 10 20" instead of "1 10 2 20 9") +"""]] +[[!if test="enabled(meta)" then=""" +* `meta(title)` - Order according to the `\[[!meta title="foo" sortas="bar"]]` + or `\[[!meta title="foo"]]` [[ikiwiki/directive]], or the page name if no + full title was set. `meta(author)`, `meta(date)`, `meta(updated)`, etc. + also work. +"""]] + +In addition, you can combine several sort orders and/or reverse the order of +sorting, with a string like `age -title` (which would sort by age, then by +title in reverse order if two pages have the same age). + +[[!meta robots="noindex, follow"]] -- cgit v1.2.3