Commit Graph

260 Commits (b609ae76edf4d18f87643dde3cb6940f8b4f33f1)

Author SHA1 Message Date
joey c5ad5c8276 * Various minor fixes and stylistic improvements suggested by Perl::Critic. 2007-08-15 08:08:32 +00:00
joey 69065b8e79 * Fix bug in deletion/move during edit code introduced in 1.44. Need to take
the underlaydir into account.
2007-08-14 19:44:59 +00:00
joey b4dafe467b * Change yet again how unhandled and escaped preprocessor directives are
re-output onto the page. Hopefully I finally got it right..
2007-08-13 17:35:14 +00:00
joey 506bcbac04 * Fix --libdir to work at the command line.
* Plugins can now be written as standalone external programs, which can
  be written in any language that can do XML::RPC.
2007-08-13 03:07:31 +00:00
joey 46a80d9cbe * Move blog form code out of CGI.pm and into the inline plugin. 2007-08-05 22:07:32 +00:00
joey 09b0a3b73f * Add rel=tag attribute to tag links, supporting that microformat, as well
as allowing them to be styled specially. Thanks, NicolasLimare.
2007-08-05 20:48:13 +00:00
joey 6a1e462cdd releasing version 2.5 2007-07-27 02:03:14 +00:00
joey 72c95e8434 * Fix re-rendering of pages when a linked to page goes away. This was broken
in version 1.50 with the addition of %destsources. Thanks, Ethan
  Glasser-Camp.
2007-07-26 19:41:04 +00:00
joey 8b3b200017 make it an infobox instead 2007-07-25 05:04:47 +00:00
joey 4de235a385 * Make the map plugin notice when pages in the map are deleted and update
it.
2007-07-25 01:04:56 +00:00
joey c92ab9cddd * Wrap the editpage template in the standard misctemplate, this allows the
pagetemplate hook to work for that page.
* Above change fixes the favicon plugin to work on edit pages.
2007-07-16 05:24:31 +00:00
joey 40261f2f9d releasing version 2.4 2007-07-15 23:43:16 +00:00
joey eabe03fb5b * Fix links to stylesheets when usedirs is enabled. 2007-07-13 20:19:34 +00:00
joey a8fa52080d * Allow simple alphanumeric style attribute values in the htmlscrubber. This
should be safe from javascript attacks.
2007-07-11 16:50:59 +00:00
joey e0da57358c get confused. So it's best for ikiwiki to follow the compatability
* Support building on systems that lack asprintf.
* mercurial getctime is currently broken, apparently by some change in
  mercurial version 0.9.4. Turn the failing test case into a TODO test case.
2007-07-09 00:39:55 +00:00
joey 9f7b327390 releasing version 2.3 2007-06-30 00:50:46 +00:00
joey afcf0dc79e * Patch fixing various additional problems with test suite. Closes: #425891
once more.
2007-06-26 22:11:59 +00:00
joey 3bfa109971 * Allow svnpath config option to contain additional extra slashes anywhere
w/o confusing ikiwiki.
* Rcs modules are now imported, so other modules that need similar
  normalisation of configs etc can do so.
2007-06-23 12:12:59 +00:00
joey e00a8931a0 add freebsd port 2007-06-18 20:26:47 +00:00
joey aadb214220 * Fix wrapper generator and untaint code's handling of strings contining
newlines.
2007-06-03 16:24:22 +00:00
joey 78323806ee * Explode some of the more insane regexps. 2007-06-01 23:40:43 +00:00
joey 66cb6baf4e * Apply a patch from Carl Worth adding support for using globs in link()
in a PageSpec.
2007-05-30 19:54:08 +00:00
joey 8c2c8c6bea * Deal better with rebuilds that involve moving files; track and clean up the
old files.
* Change where the img plugin puts scaled images. It's better to make the
  scaled images subpages of the page that embeds them, rather than putting
  them alongside the original image, since if two pages scale the same image
  the same way, this prevents complications in dealing with two pages
  creating the same file. The move will be handled transparently, though you
  might want to rebuild your wiki to make it occur in one step.
2007-05-24 19:56:08 +00:00
joey 82ac63d798 * Change the aggregate plugin's locking strategy. Now it defers loading state
until the wiki is building and already locked, unless it's aggregating.
  When aggregating, it does not wait for the lock if it cannot get it, and
  instead exits, to prevent aggregating processes from piling up.
2007-05-21 02:52:51 +00:00
joey d3d528b5c4 * Add a test ensuring that the basewiki is self-contained and has no broken
links.
2007-05-20 01:00:21 +00:00
joey 190202dd4e * Make all templates have a footer div to ease themeing. Required template
and style sheet updates, and unless you're using customised versions,
  you'll want to rebuild wikis on upgrade to this version to avoid
  inconsistencies.
* Allow WIKINAME to to used in footers, as an example of something to put
  there.
2007-05-11 20:09:58 +00:00
joey f23ebaad2e * Apply patch from Pawel to avoid using -L in Makefile as it's not available
in older finds.
2007-05-10 18:59:02 +00:00
joey 72c53650ad * Add the needsbuild hook. Plugins can use this to manipulate which files
ikiwiki builds when refreshing the wiki.
2007-05-09 00:48:09 +00:00
joey 10038268ad releasing version 2.00 2007-04-30 04:51:57 +00:00
joshtriplett fafaa119cf Revert passwordauth fieldset and doc to avoid 2.0 regressions; need to re-evaluate after 2.0. 2007-04-30 04:08:06 +00:00
joshtriplett 40365e1aee * Group passwordauth fields with a fieldset as well. Add a new
passwordauth page to the basewiki describing password
  authentication; like openid, it uses conditional to check which
  forms of authentication the wiki allows.  Add conditional cross-
  links between the openid and passwordauth pages, to help the user
  understand how they can log in.
2007-04-30 02:26:50 +00:00
joey e7d4a00bf0 fix 2007-04-29 22:58:27 +00:00
joey 93c6d2c340 * Use fieldsets in the preferences form to group related options together.
Especially cleans up the ordering of the admin's preferences form.
2007-04-29 21:57:25 +00:00
joey 3340087f66 releasing version 1.51 2007-04-29 04:57:39 +00:00
joey a1d9abab8c * Updated Spanish translation from Victor Moral. 2007-04-29 02:16:13 +00:00
joey 8fa8bd0adb the kind of perl code that can only be written at 4:30 am
(Get a good message when a PageSpec fails due to a negated success by
creating success objects with a reason string, which morph into failure
objects when negated.)
2007-04-27 08:34:09 +00:00
joey f8a7fb227b * Make pagespec_match on failure return a value that is false, but in a
scalar context, evaluates to a reason why the match failed.
* Add testpagespec plugin, which might be useful to see why a pagespec isn't
  matching something.
2007-04-27 07:55:40 +00:00
joey ee1ad53c4c * pagespec_match() has changed to take named parameters, to better allow
for extended pagespecs. The old calling convention will still work for
  back-compat for now.
* The calling convention for functions in the IkiWiki::PageSpec namespace
  has changed so they are passed named parameters.
* Plugin interface version increased to 2.00 since I don't anticipate any
  more interface changes before 2.0.
2007-04-27 02:55:52 +00:00
joey b14ac07025 * Add user(name) to the PageSpec for commit subscriptions. 2007-04-27 00:30:49 +00:00
joey 7ea3bfdb70 improve message 2007-04-23 19:32:21 +00:00
joey 7b01c6c07a tyo 2007-04-22 21:06:22 +00:00
joey a98a8feaec releasing version 1.50 2007-04-15 20:10:35 +00:00
joey e855e30d01 * Add feedshow parameter to inline, which can be useful for eg, removing
old posts from feeds when permalinks change.
2007-04-14 20:58:02 +00:00
joey 9b145798c7 * Patch from Tuomov to link to the directory in feeds when usedirs is in
effect. Note that this changes permalinks, so if you are already using
  usedirs you'll have to deal with that on upgrade to this version.
2007-04-14 20:46:41 +00:00
joey 01b058a285 * Add postformtext parameter to inline. 2007-04-12 04:13:55 +00:00
joey 13c7a51f1f * Optimise displaytime, trimming maybe 6% off the build time. 2007-04-10 01:49:16 +00:00
joey 06b955b84a * Add a new %destsources hash, which maps between a destination file and
the source page used to create it, ie it's the reverse of %renderedfiles.
* Use %destsources in htmllink and urlto for 20-50% speedup.
2007-04-10 01:18:03 +00:00
joey 88ffeae6ee * Add support for PROFILE=1 to the Makefile, this turns on profiling of the
wiki build using Devel::Profiler (Dprof can't handle ikiwiki).
2007-04-10 00:26:15 +00:00
joshtriplett 54a4151306 * Add a graphviz plugin.
* Suggests: graphviz
2007-04-09 09:09:02 +00:00
joey c36f5afce8 releasing version 1.49 2007-04-08 20:24:18 +00:00
joey 072d097be1 magic 0 2007-04-07 16:55:16 +00:00
joey 4de163b997 * Fix display of escaped wikilinks containing anchors. 2007-04-06 21:20:14 +00:00
joey 8fa477fa28 * Fix smiley plugin to scan smileys.mdwn after it's updated, which fixes
a bug caused by committing changes to smilies.mdwn.
2007-04-06 20:36:29 +00:00
joey ff1044375c update 2007-04-06 17:52:37 +00:00
joey d25e91e127 * Fix tags to page names that contain special characters. 2007-04-04 21:08:01 +00:00
joey aee4621bae * Fix a bug in the img plugin that caused thumbnailed files to not be
* Make the OpenID library a reccommendation of the Debian package, rather
  than just a suggests, since OpenID is enabled by default.
2007-04-04 00:40:57 +00:00
joey bf9e8bc900 * Fix a big in the img plugin that caused thumbnailed files to not be
tracked properly.
2007-04-01 20:53:03 +00:00
joey 7910c2c7f6 use urlto; htmlpage is no longer appropriate here 2007-04-01 20:21:35 +00:00
joey a2cfdaaec5 * Hide excess backlinks and expand using CSS trick; control quantiy via
the numbacklinks setting.
2007-03-31 08:48:10 +00:00
joey d73eb7d9b2 * Add a templates page to the basewiki. It will automatically list all
available templates. Rename the old templates page to wikitemplates.
* Include the note template in the basewiki.
* Add a popup template in the basewiki. CSS based on some by Martin Krafft.
* Make the note, popup, and plugin templates detect missing variables and be
  self-documenting, listing the available variables.
2007-03-31 06:55:12 +00:00
joey e0cff15163 releasing version 1.48 2007-03-28 17:52:19 +00:00
joey bbb0b3e72f * Finally fixed the longstanding inline removal bug.
* Renamed %oldpagemtime to a more accurately named %pagemtime and fix it to
  actually store pages' mtimes.
* Add "mtime" sort parameter to inline plugin.
2007-03-24 15:10:58 +00:00
joey 2a0d91af2f * Fix link() PageSpecs to not just look at the raw link text, but at where
that given link points based on the page doing the linking. Note that this
  could make such PageSpecs match different things than before, if you
  relied on the old behavior of them only matching the raw link text.
* This required changing the match_* interface, adding a third parameter.
* Allow link() PageSpecs to match relative, as is allowed with globs.a
* Add postform option to inline plugin.
* Add an bug tracker to the softwaresite example.
2007-03-21 23:11:09 +00:00
joey 1ecd251ffa releasing version 1.47 2007-03-21 19:16:18 +00:00
joey c8b4ba354f * Fix a security hole that allowed insertion of unsafe content via the meta
plugins's support for inserting html link and meta tags. Now such content
  is passed through the htmlscrubber like everything else.
* Unfortunatly, that means that some valid uses of those tags are no longer
  usable, and special case methods needed to be added for including
  stylesheets, and for doing openid delegation. If you use either of these
  in your wiki, it will need to be modified. See the meta plugin docs
  for details.
2007-03-21 18:52:56 +00:00
joey 72ed9e455c the real bug turned out to be in the meta plugin 2007-03-21 06:46:06 +00:00
joey 03e5438155 oh, this is confusing, it needs escaping in <title>, but not when it's used
inline, already escaped there
2007-03-21 06:22:06 +00:00
joey 1c65ca4922 * Fix a few bugs around page titles containing html. The worst of these
is an actual security hole as it allows insertion of html into the title
  element of a page, which is not processed by the htmlscrubber.
2007-03-21 06:05:21 +00:00
joey 44820713d3 updates 2007-03-17 23:32:36 +00:00
joey ec1dc5b00f releasing version 1.45 2007-03-11 02:29:15 +00:00
joey 66a65b5ddd * Correct a deadlock that could occur in post-commit if the aggregate plugin
was enabled and tried to lock the already locked wiki.
2007-03-08 11:04:59 +00:00
joey 1465676082 need to use uri_escape_utf8 2007-03-08 06:25:20 +00:00
joey c1b698e418 * The underscore escaping support exposed a bug in edit links: Such links
were titlepage escaped in the urls, and then doubly escaped by the CGI
  when editing. To fix this, I removed the titlepage escaping in the edit
  urls.
* That means that *every edit link* on the wiki is potentially changed.
  Rebuilding wikis on upgrade to this version therefore necessary; enabled
  that in postinst.
2007-03-08 06:03:59 +00:00
joey 4d8b2d84d5 more i18n improvements 2007-03-07 12:04:45 +00:00
joey 5d57a8436f * Add a table plugin, derived from the one written by Victor Moral. 2007-03-07 11:40:22 +00:00
joey b365d864c5 My fix to support encoded underscores in page titles broke links to pages
with underscores in their filenames, since the link code also used
titlepage. Create a new linkpage function and have the link code use that
instead.
2007-03-07 09:48:59 +00:00
joey 4cbb1095d6 support previewing of sparklines: embed in data uris for preview 2007-03-07 07:41:07 +00:00
joey 7ae2deacdf improve l10n 2007-03-07 06:27:27 +00:00
joey 4a770de3ac deal with new preview parameter 2007-03-07 05:53:47 +00:00
joey d4d535f17c * Add a sparline plugin. 2007-03-07 05:33:45 +00:00
joey 1202b4fd7b * Add preview parameter to preprocesser calls, use this rather than the
previous ugly hack used to avoid writing rss feeds in previews.
* Fix the img plugin to avoid overwriting images in previews. Instead it
  does all the work to make sure the resizing works, and dummys up a resized
  image using width and height attributes.
* Also fixes img preview display, the links were wrong in preview before.
2007-03-06 22:37:05 +00:00
joey b9f7a57f94 * Add titlepage template for inline plugin. 2007-03-06 19:16:46 +00:00
joey 10b8557946 * Add "template" option to inline plugin to allow for use of customised
templates.
2007-03-02 04:00:42 +00:00
joey 1dbaf7a91c releasing version 1.44 2007-02-25 01:20:53 +00:00
joey c60477228c * Since the CGI had to drop the wiki lock to avoid deadlocking the
commit hook, it was possible for one CGI to race another one and "win"
  the commit of both their files. This race has been fixed by adding a new
  commitlock, which when locked by the CGI, disables the commit hook
  (except for commit mails). The CGI then takes care of the updates the
  commit hook would have done.
2007-02-21 08:55:28 +00:00
joey 92e5781212 * Elegant patch from Ethan to clean up the display of page names in the
dropdown when creating a new page.
2007-02-21 00:17:50 +00:00
joey d0804acdc2 * Smarter detection of no-op changes to po files. 2007-02-20 23:13:49 +00:00
joey 8b3a840a74 * Detect old versions of xgettext and avoid using them. 2007-02-20 04:10:31 +00:00
joey 2725887734 * Make img plugin not fail immediately if Image::Magick is not available.
This lets ikiwiki not build depend on perlmagic.
2007-02-20 03:59:35 +00:00
joey fa52a730ff * Changed calling convention for httmllink slightly. The first three
parameters remain the same, but additional options are now passed in using
  named parameters.
* Change plugin interface version to 1.02 to reflect this change.
* Add a new anchor option to htmllink. Thanks Ben for the idea.
* Support anchors in wikilinks.
* Add a "more" plugin based on one contributed by Ben to allow implementing
  those dreaded "Read more" links in blogs.
2007-02-20 03:05:47 +00:00
joey d9e4a3718e add day of week to prettydate, and i18n 2007-02-15 20:06:14 +00:00
joey 0cfc607314 * Add a prettydate plugin that formats dates in a more readable fashion.
(I had to get a pretty date somehow today..)
2007-02-15 07:53:04 +00:00
joey f850acc6ad * Patch from Ethan to allow using meta tags to set creation dates of pages. 2007-02-15 05:48:40 +00:00
joey cf2aabd6c8 foo 2007-02-15 05:39:49 +00:00
joey d4c61b7281 * Many changes to make ikiwiki very resistant to write failures
including out of disk space situations. ikiwiki should never leave
  truncated files, and if the error occurs during a web-based file edit,
  the user will be given an opportunity to retry.
  Inspired by the many ways Moin Moin destroys itself when out of disk. :-)
* Fix syslogging of errors.
2007-02-15 02:22:08 +00:00
joey 96125d8da5 * Allow multiple tag settings to appear in a single page. 2007-02-14 04:05:08 +00:00
joey 6fc66f83de * Fix the template, toggle, and conditional plugins to filter text before
preprocessing it.
* Fix smiley plugin to support smileys at the very beginning or end of
  the content.
2007-02-14 00:11:19 +00:00
joey bf64868b79 clean up orphans list 2007-02-12 03:03:43 +00:00
joey 479c7a1ea6 * Allow plugins to add new types of tests that can be used in PageSpecs.
* Add a "conditional" plugin, which allows displaying text if a condition
  is true. It is enabled by default so conditional can be used in the
  basewiki.
* Use conditionals in the template for plugins, so that plugin pages
  say if they're currently enabled or not, and in various other places
  in the wiki.
2007-02-12 02:44:47 +00:00
joey 29e6ff03b0 * Fix a security hole that allowed a web user to edit images and other
non-page format files in the wiki. To exploit this, the file already had
  to exist in the wiki, and the web user would need to somehow use the web
  based editor to replace it with malicious content.
  (Sorry Josh, this means you can't edit style.css directly anymore,
  although I do appreciate your fixes, actually..)
2007-02-10 20:37:36 +00:00
joey 1eb59c4760 * Add "reverse" option to inline to invert sort orders. 2007-02-08 19:48:00 +00:00
joey f442856769 improve 2007-02-07 00:49:05 +00:00
joey d472e293cd fixes and more tests 2007-02-07 00:45:00 +00:00
joey 58141a0ebc * Patch based on a patch from Ethan to support relative matching in
PageSpecs, by using "./". pagespec_match() has grown a new third parameter
  to support this.
2007-02-06 21:17:25 +00:00
joey 5f162cfd34 * Add canedit hook, allowing arbitrary controls over when a page can be
edited.
* Move code forcing signing before edit to a new "signinedit" plugin, and
  code checking for locked pages into a new "lockedit" plugin. Both are 
  enabled by default.
* Remove the anonok config setting. This is now implemented by a new
  "anonok" plugin. Anyone with a wiki allowing anonymous edits should
  change their configs to enable this new plugin.
* Add an opendiscussion plugin that allows anonymous users to edit
  discussion pages, on a wiki that is otherwise wouldn't allow it.
* Lots of CGI code reorg and cleanup.
2007-02-02 02:33:03 +00:00
joey d67c4817aa * Fix several more missing translations of Discussion. 2007-01-31 07:18:06 +00:00
joey ab71299293 * More gettext fun. 2007-01-28 02:24:43 +00:00
joey 27797a2667 check ikiwiki.pot into svn to avoid problems 2007-01-28 01:19:17 +00:00
joey 5659e9881e need to build to get the pot 2006-12-29 04:55:55 +00:00
joey 912521ef07 * Initial work on internationalization of the program code. po/ikiwiki.pot
is available for translation.
* Export gettext() from IkiWiki module.
2006-12-29 04:38:40 +00:00