Commit Graph

254 Commits (21d6aded47d306fb44a60c1a8ad9331933cac855)

Author SHA1 Message Date
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 21bc9abfcf wording 2007-03-17 23:58:34 +00:00
joey 26213f8ee4 * Detect the case of two people independently creating the same page at the
same time, and let the second person resolve the conflict.
2007-03-17 23:57:03 +00:00
joey ed3ce7e778 really add 2007-03-06 19:18:47 +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 072967e62a * Patch from Ethan to improve behavior if a page is deleted or moved while
someone is editing it.
* Some cleanup of field setting in the failed edit and conflict handling
  code.
2007-02-24 00:39:06 +00:00
joey 8bfcca5b47 * Patch to fix validaton of atom feeds by fixing the category tags. 2007-02-19 04:42:30 +00:00
joey c9d7926df4 * New domain name for ikiwiki: ikiwiki.info. Update your links. 2007-02-18 20:24:40 +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 fa8bbbb0b3 * Fix bogus use of CDATA in atom feeds. Closes: #406898 2007-01-14 22:56:42 +00:00
joey 64a491979c revert trailer, breaks html thanks to markdown 2006-12-28 20:41:00 +00:00
joey c1cd9b6b33 Changes from StefanoZacchiroli:
- Use div for inlinepage actions, not a span
- Add an enclosing "trailer" div

Also, change pageinfo span into a div, since it now can include <p>
2006-12-28 20:32:51 +00:00
joey d83d11e6b8 * Add mirrorlist plugin. 2006-12-23 01:07:11 +00:00
joey 28c31be732 updates 2006-11-21 04:26:53 +00:00
joey 1626831cc8 typos 2006-11-15 20:49:10 +00:00
joey 513368c403 * Work with hyperestraier 1.4.9. 2006-11-13 20:07:55 +00:00
joey 96eb9bb3fa * Work around a strange bug in CGI::FormBuilder 3.0401 that makes
FORM-SUBMIT unusable on customised formbuilder templates. For now,
  hardcode the submit buttons in editpage.tmpl instead of using the
  template variable, which is ok, since the buttons are static.
2006-11-10 07:46:41 +00:00
joey 369cf45ace * Patch from James Westby to support podcasting, photoblogging, vidcasting,
or what have you, by creating enclosures for non-page items that are
  included in feeds.
2006-11-01 06:45:59 +00:00
joey be55f6fd7c * Atom feed support based on a patch by Clint Adams.
* Add feeds=no option to inline preprocessor directive to turn off all types
  of feeds. feeds=rss will still work, and feeds=atom was also added, for
  fine control.
* $IkiWiki::version now holds the program version, and is accessible to
  plugins.
2006-10-08 23:57:37 +00:00
joey fb670513bf fix mime type 2006-09-17 17:46:51 +00:00
joey fa96eab120 * Updated ikiwiki.svgz from Recai, includes an icon and is used to generate
a multi-resolution favicon.ico.
2006-09-16 15:12:01 +00:00
joey 0f25ec8eb6 * pagetemplate hooks are now also called when generating cgi pages.
* Add a favicon plugin, which simply adds a link tag for an icon to each
  page (and cgis).
2006-09-16 00:52:26 +00:00
joey 68c67a5f41 * If an inlined page has a permalink, link the page title to that. 2006-09-10 04:19:46 +00:00
joey dae0f48e91 * Work on firming up the plugin interface:
- Plugins should not need to load IkiWiki::Render to get commonly
    used functions, so moved some functions from there to IkiWiki.
  - Picked out the set of functions and variables that most plugins
    use, documented them, and made IkiWiki export them by default,
    like a proper perl module should.
  - Use the other functions at your own risk.
  - This is not quite complete, I still have to decide whether to
    export some other things.
* Changed all plugins included in ikiwiki to not use "IkiWiki::" when
  referring to stuff now exported by the IkiWiki module.
* Anyone with a third-party ikiwiki plugin is strongly enrouraged
  to make like changes to it and avoid use of non-exported symboles from
  "IkiWiki::".
* Link debian/changelog and debian/news to NEWS and CHANGELOG.
* Support hyperestradier version 1.4.2, which adds a new required phraseform
  setting.
2006-09-09 22:50:27 +00:00
joey 7ba4a844a8 * Include <link rel> tag for RSS feeds, used by some aggregators and
firefox to find the feed.
2006-09-06 21:03:39 +00:00
joey 1f26347379 escaping fix from Emanuele Aina 2006-09-06 20:02:12 +00:00
joey 9926ecf39c close a possible XSS hole 2006-09-04 04:31:41 +00:00
joey b6075d6163 move html escaping 2006-09-04 04:29:18 +00:00
joey 1aeb64e148 * Patch from James Westby to add an actions option to inline; this
adds Edit and Discussion links at the end of blog entries.
2006-08-28 19:43:07 +00:00
joey 2bec3518c2 * Patch from James Westby to add a template for the search form.
* Cache search form for speedup.
2006-08-26 21:57:59 +00:00
joey 38ce4c3cef * Patch from James Westby to allow a description to be set for rss feeds. 2006-08-26 17:36:46 +00:00
joey 56d0ceee2e * Make all pages pull in a local.css style sheet, if present. This won't
be included in ikiwiki, but can be created to make local styling changes
  w/o needing to merge in every new change to the distributed style.css.
2006-08-24 20:45:09 +00:00
joey 43f2ba5def revert broken parentlinks fix, which was broken, explain why
add plugins/contrib page to avoid broken link on this wiki
2006-08-22 17:54:10 +00:00
joey d0295d9dc0 * Clean up behavior with broken parentlinks. 2006-08-21 22:45:17 +00:00
joey cf3021ef3f * Fixed a bug with previews of subpages having broken links to top-level
pages.
* Change how the stylesheet url is determined in the templates: Remove
  STYLEURL and add BASEURL to all templates (some already had it). This
  new more general variable can be used to link to other things (eg, images)
  from the template, as well as stylesheets.
2006-08-21 22:27:02 +00:00
joey cedb48765b * Add a tail fin^W^Wsidebar plugin by Tuomo Valkonen.
* If a page links to itself, mark up the link text in a span with
  class="selflink" so that it can be styled. I don't have a useful style
  defined for that though.
2006-08-18 00:24:22 +00:00
joey a6a61f9e38 use rel=bookmark here too.. 2006-08-04 04:32:53 +00:00
joey e36f6b6a99 oops 2006-08-04 00:59:00 +00:00
joey 819b31d46c * Various CSS and formatting changes. 2006-08-04 00:47:28 +00:00
joey c5919df5f3 * Make aggregator save permalinks and author name to pages as metadata.
* Add permalink and author support to meta plugin, affecting RSS feeds
  and blog pages.
* Change titlepage() to encode utf-8 alnum characters. This is necessary
  to avoid UTF-8 creeping into filenames in urls. (There are still
  some other ways that it can get in.)
2006-08-04 00:01:51 +00:00
joey e4ccc4f3b0 fix title metadata on blogs, reorg needed to do it, simplified tag some 2006-07-31 00:34:18 +00:00
joey 908e004b4c * Title metadata of inlined pages now shows up in blogs, although not yet
in their rss feeds.
2006-07-30 23:51:48 +00:00
joey 8883001615 * Change meta tags to use html entity-escaped text for values, so that
quotes and such can be represented in title tags.
* Depend and build-depend on HTML::Parser for HTML::Entities which is used
  for the above.
* Make --rebuild also cause --aggregate to re-download and write aggregated
  pages.
* Avoid outputting duplicate meta info.
* Include title metadata on aggregated posts for capitalised and un-munged
  titles.
2006-07-30 22:58:48 +00:00
joey 61ac8f2f51 improce 2006-07-30 07:59:04 +00:00
joey c5b02885e9 fixes, and make dir optional 2006-07-30 05:14:35 +00:00
joey e49ff966a3 * ikiwiki can now download and aggregate feeds with its new aggregate
plugin, so it's possible to implement a Planet using ikiwiki!
* --setup --refresh no longer rebuilds wrappers. Use --setup --refresh
  --wrappers to do that.
* Add %IkiWiki::forcerebuild to provide a way for plugins like aggregate
  to update pages that haven't changed on disk.
2006-07-30 04:31:08 +00:00
joey 267f98e2e1 * Put categories in rss feeds for tagged items. 2006-07-29 07:25:17 +00:00
joey 8fd9c9accb Hope encrico doesn't mind, but I changed the location and layout of the
tags on the templates. This way seems to fit better with the links. Also
some css cleanup, avoid hardcoded <i> etc.
2006-07-28 00:21:13 +00:00
joey 20eacc2c1f - Adds a tag plugin that allows more easily tagging pages.
The meta plugin can also still be used for that, but the tag plugin
    also lists a page's tags at the bottom of the page.
  - Allows preprocessor directives to have parameters with no specified
    value.
  - Fixes preprocessor directive parameter parsing so that
    foo=bar baz now means "foo=bar" and a "baz" with no value.
* Run pagetemplate hooks when inlining pages so that inlines pages also
  list their tags.
* Make all plugins with pagetemplate hooks check that variables exist
  on the template before setting them.
2006-07-27 23:08:03 +00:00
joey b187641376 * Patch from Recai to allow selection of page type when creating a new page.
Default page type is inherited from the link clicked on to create the new
  page.
2006-07-26 21:23:06 +00:00
joey 723ebda476 some stylesheet improvements for the table, also add a bit more border
between items to avoid them running together in some cases
2006-07-06 19:50:32 +00:00
joey 4aa5d301ae remove most of the black lines 2006-07-04 16:19:29 +00:00
joey 6ab0659a9d fix 2006-07-04 07:25:56 +00:00
joey 0ff488e380 add a commit type column 2006-07-04 07:21:51 +00:00
joey e059c9eff9 * Make RecentChanges use a table and some CSS, should be much more readable.
No code changes involved.
* Encode & in diffurl in examples, to conform to pedantic rules.
2006-07-04 06:07:32 +00:00
joey 1452b3adf3 so make sure to let perl know it should be handled as utf8. Also,
* Improve layout of edit page so formatting help link is always visible w/o
  getting in the way of the preview.
2006-07-02 17:44:43 +00:00
joey d534483b9b * Reorganised the doc wiki's todo/* pages, using a link/tag to flag
* Allow pagetemplate plugins to override *anything* in the template.
* Add a meta plugin, which allows specifying various metadata about pages,
  like license and author. It also allows for inserting html link and meta
  tags into html, overriding the title, and adding hidden WikiLinks, which
  can be useful when using link-based globbing for page categorisation.
* Remove preprocessor directives from inlined pages.
* Allow simple preprocessor directive values to be specified w/o quotes.
2006-06-02 04:49:12 +00:00
joey c20c406631 * Add -refresh option to ikiwiki-mass-rebuild and use that on upgrades that
do not need a full rebuild, in order to update any basewiki pages.
2006-05-27 19:04:46 +00:00
joey 526044e1da better fix for empty actions list issue 2006-05-26 15:18:12 +00:00
joey 282893be81 * Rebuilding on upgrade to this version is recommended.
* Add a html validity check to the test suite, using the wdg-html-validator,
  if available.
* Make the html valid when there is nothing in the actions list by adding an
  empty <li> to the end of it.
* Reordered some function call parameters for consistency.
2006-05-26 08:24:36 +00:00
joey 03c98d3c79 header can appear more than one time, so is a class, not an id 2006-05-26 01:42:00 +00:00
joey 5466a1daf9 * The page name and parent links has switched from using a <h1> to a styled
<span>, so pages can use <h1> internally instead of needing to use <h2>.
* Updated all of ikiwiki's own wiki pages for that.
* Add pagetemplate hook, which can be used by plugins that want to mess
  around with adding new stuff to the page template.
* Remove headercontent; the search plugin now adds the search box to the
  header by registering a pagetemplate hook, and other plugins should do
  similarly.
2006-05-26 01:10:58 +00:00
joey dd7a381471 * Add ikiwiki-mass-rebuild script, ripped out of the postinst.
* Add some new config items to the estseek.conf template, which are needed
  by hyperestraier 1.2.3.
2006-05-05 20:48:20 +00:00
joey b2bd444f31 * Allow discussion links on pages to be turned off with --no-discussion. 2006-05-05 18:20:52 +00:00
joey af9566ff1a rather a lot of changes to make hyperestraier search be a plugin, allowing
for other types of search engine plugins if wanted, and also opening up a
lot of new possibilities for other kinds of plugins later

some notable changes along the way:

- lots of new hook types: cgi, render, delete
- wrapper files fixed to support config strings with newlines in them
- HEADERCONTENT in page template useful for plugins. Probably needs to be
  expanded to more such for other places plugins might want to add content.
- remove unnecessary wrappers field from config info stored in wrappers
2006-05-03 21:50:39 +00:00
joey 819a31ed24 * Rename inlinepage to depends, so that it can be used to refer to more
dependency relationships than just inlining. This will require a rebuild
  on upgrade to this version.
* Move the rss link, put it in the blogpost form if there is one and at the
  top if not. This is both nicer because easier to find, and it cleans up
  the code which had used inlinepage as a flag for adding the link later.
* Allow the depends GlobList to be built up from multiple sources (such as
  plugins) during a page render.
* Which means that more than one blog is now supported to appear on a
  single page. (With some limitations.)
2006-05-01 22:27:37 +00:00
joey 1ba7023746 more 2006-04-25 00:45:10 +00:00
joey 1f66fb8a28 formatting 2006-04-25 00:29:06 +00:00
joey b7f64d884c subscription nearly done 2006-04-25 00:22:41 +00:00
joey 7a5ae22e5a Convert postprocessordirectives into preprocessordirectives, so they are
expanded before markdown. Consequences:

 - No need to worry about markdown messing with parameters of
   preprocessordirectives. (If you had to escape stuff in one before, you'll
   need to undo that escaping now.)
 - No need for ugly </p> hacks before inlined subpages. Instead, subpages
   are wrapped in a <div>, and this prevents markdown from touching them.
   (This can also be used to add style to subpages.)
 - rss generation is less of a hack.
2006-04-04 20:57:46 +00:00
joey c4e0e8c36c - add <base> to cgi output, this is especially useful for output containing
wikilinks since the urls should work now in more situations
- drop --limit from svn log run, since a) it needs a fairly new svn and 
  b) in some cases, it would limit it to too few entries to display the
  requested number of changes
- Use driver:DB_File and not driver:db_file for better compatability with
  old versions of CGI::Session.
- Note that HTML::Template 3.02.02 is needed.
2006-04-02 22:24:08 +00:00
joey 5f1e794045 fixes 2006-03-29 22:36:23 +00:00
joey 0d9539d577 added --hyperestraier switch, which turns on search support
(ok, the way I run estseek.cgi is admittedly pretty nasty, but it works..)
2006-03-29 22:21:23 +00:00
joey 5591d621b9 css support 2006-03-29 07:24:03 +00:00
joey 6b9082c643 missing <p> 2006-03-29 03:30:28 +00:00
joey e41dd1e24e html validation fixes:
- escape & in urls (also clean up cgi url generation)
 - since markdown wraps inlined pages in <p></p>, close and re-open
   the paragraph tags when generating the embedded html
 - added XHTML 1.0 doctypes to templates
 - fixed <hr /> and <br /> in templates
 - add an alt attribute to inline images, based on the WikiLink to the
   image. Allows things like [[my_image|img.png]] to customise alt text.
2006-03-29 03:18:21 +00:00
joey a703ef5bec no need to use h2's here 2006-03-24 21:41:53 +00:00
joey 55ebfd5de7 foo 2006-03-24 06:01:26 +00:00
joey 49524c429e add blog post template 2006-03-24 05:03:16 +00:00
joey 59a692b7e0 switch to h1 for page titles since pages tend to have h2's inside them 2006-03-24 03:56:32 +00:00
joey 5951c1dc82 add archive pages and fix some bugs 2006-03-24 01:49:42 +00:00
joey 7b4600df3f hold onto your hats, full-fledged blogging has arrived in ikiwiki! 2006-03-24 01:16:32 +00:00
joey 801a6d61b9 improve description field for rss 2006-03-23 21:17:57 +00:00
joey ca366fc902 add support for generating per-page rss feeds 2006-03-23 21:00:51 +00:00
joey 5fe80a6371 prefs page implemented 2006-03-21 02:38:17 +00:00
joey 773731743d add --diffurl, if set RecentChanges has links to svn diffs 2006-03-21 01:18:01 +00:00
joey b7c86dda2f added last changed timestamp for pages 2006-03-20 19:56:37 +00:00
joey 1d82816082 link to helponformatting from the edit page 2006-03-19 21:31:11 +00:00
joey 6b6fd778c7 conflict detection, merging, etc should be done now, I think 2006-03-19 20:34:59 +00:00
joey 3c239b14bc first cut at svn merge and conflict 2006-03-19 19:09:57 +00:00
joey 685475ba8c add a header to page preview section 2006-03-16 21:47:48 +00:00
joey 44eefb7f22 dd page preview 2006-03-16 21:39:45 +00:00
joey 9b22ea6664 nbsp hack to separate out the buttons a bit.
should really use css for this..
2006-03-13 00:54:33 +00:00
joey 2d4bf757fb - Add Discussion links to the button bar, these will automatically create
/Discussion subpages.
- Fix linking to DNE pages in some edge cases.
- Fix --rebuild (oops)
- Fix propigation of "from" field trru the login process when creating a
  new page.a
- Ideas for change notification.
2006-03-13 00:52:57 +00:00
joey 6afb396354 templatize commit types, so it could use icons, or whatever 2006-03-12 20:24:10 +00:00
joey 60631f58b8 - finish user registration and password request email
- make sure a user is in the userdb before assuming they're logged on based
  on session info (allows deleting uerdb item and invalidating all
  sessions)
2006-03-12 20:10:42 +00:00
joey 64de5c0ebf fix 2006-03-12 16:38:54 +00:00
joey 798c48a1a6 - use templates for signin form, error messages
- use FormBuilder for edit page forms (also use template)
- print debug to stderr in cgi mode to avoid breaking http headers
- fix links to page in parentlinks if $url is unset
- reorganise how wikilink is used in templates
- only make recentchanes link if svn is enabled
- change session id cookie to something we control
- add support for logging committer name for web commits from signed in
  users (untested)
- probably more changes I forgot
2006-03-12 16:37:26 +00:00
joey 8ddbcbf184 improve message 2006-03-12 03:48:50 +00:00
joey 5eccec1553 add rev as comment to shut up html::template 2006-03-12 03:37:20 +00:00
joey c2f9e5f5c7 doh 2006-03-12 03:35:35 +00:00
joey bbabbca9d1 template for recentchanges 2006-03-12 03:29:09 +00:00
joey 94eab28a86 use template for page rendering 2006-03-12 03:11:30 +00:00