12-Feb-2012: version 1.1.0
- 0000006: [Task] Pluggable text filters (pageer) - resolved.
- 0000031: [Improvement] Add "about me" sidebar plugin (pageer) - resolved.
- 0000035: [Task] Allow non-blog main page (pageer) - resolved.
- 0000036: [Defect] Calendar double display on month change (pageer) - resolved.
- 0000038: [Improvement] Add date to drafts (pageer) - resolved.
- 0000037: [Improvement] Port AJAX to jQuery (pageer) - resolved.
- 0000039: [Improvement] Busy indicator for AJAX preview (pageer) - resolved.
- 0000041: [Improvement] Ability to schedule publication (pageer) - resolved.
- 0000042: [Task] Use HTML5 (pageer) - resolved.

21-Jun-2011: version 1.0.0
- 0000017: [Improvement] Add an "insert link" button for uploads (pageer) - resolved.
- 0000021: [Defect] Breadcrumb plugin double entry name when on entry page (pageer) - resolved.
- 0000010: [Defect] Wrapper scripts should not rely on include_path (pageer) - resolved.
- 0000011: [Defect] Too many wrapper scripts (pageer) - resolved.
- 0000019: [Defect] Recent entries sidebar link broken when short tags is off (pageer) - resolved.
- 0000004: [Defect] Don't notify on friendly pingbacks (pageer) - resolved.
- 0000001: [Task] Dynamic file upload fields (pageer) - resolved.
- 0000018: [Defect] Article sidebar custom links edit link broken (pageer) - resolved.
- 0000013: [Vulnerability] Directory traversal vulnerability (pageer) - resolved.
- 0000009: [Defect] New blog PHP wrappers aren't created (pageer) - resolved.
- 0000008: [Defect] Warnings on fs setup (pageer) - resolved.

06-Nov-2007:
- Lots of fixes for things that broke in the process of refactoring.
- Changed "url" field in comment form, as it made the new entry display script thing that
the comment was an incoming pingback.  How long has THAT been broken?
- Added search path for userdata directory.  The blogconfig.php script will now look for userdata
in the LnBlog folder, or userdata, users, or profiles in the same directory as LnBlog.

09-Jul-2007:
- Lots of refactoring and added unit tests.
- Added data typing to the XML storage routines.

07-May-2007:
- Add separate template for entry permalinks.
- Allow only summary/abstract on blog front page.
- Added caching framework for output plugins.

16-Apr-2007:
- Made creating a blog on the document root work properly (as opposed to mostly working).
- Allow multiple files on in fileupload.php.

31-Mar-2007: version 0.9.0
- Fixed bad account detection in System::getUserList().

17-Mar-2007:
- Added PHP wrapping to solve cross-domain JavaScript problems.

13-Mar-2007:
- Fixed TrackbackValidator plugin to block trackbacks that have a non-URL in the
URL field.
- Fixed TrackBack receiving improperly showing a full page.

09-Mar-2007:
- Fixed Pingback errors by adding pingback() method to Trackback URI class.
- Fixed bad mass delete code.
- Added hybrid URI class as a work-around for JavaScript Single Origin Policy
problems on entry edit plugins.

26-Feb-2007:
- Added wrapper upgrade check to loginops sidebar plugin.
- Comments, trackbacks, pingbacks, and user files are now XML.
- Added a "manage replies" feature to delete (and, in the future, do other 
things to) comments and other replies.  This applies to blogs, 
entries/articles, and all levels of archives.
- Added sane URL support for comments, trackbacks, and pingbacks,
as well as adding inheritance support to the BlogEntry URI class.

22-Feb-2007:
- Lots of file consolidation.  Moved many of the small page files into just a
few "wrapper wrappers".
- Added sane URL calculation for Blog and BlogEntry objects.

09-Feb-2007:
- Added support for draft entries.
- Added some i18n documentation.
- Changes to file writing setup page.

29-Jan-2007:
- Many, many changes since last time.  
- Added file permissions settings for file writing classes.
- Added support for subdomains.
- Fixed Blogger and MetaWeblog API implementations.
- Added pingback.extensions.getPingbacks method for pingback syndication.
- Consolidated all the XML-RPC stuff in a single xmlrpc.php file.
- Added CHECK_DOCUMENT_ROOT option to be set in userconfig.cfg.  Setting this
to false will bypass the document root check in blogconfig.php.  Note that this 
check can sometimes fail due to permissions on the doucment root or it's 
parent directory, and so it might be useful to turn it off.

21-Dec-2006: version 0.8.2
- Fixed Javascript confirmation with ipban plugin.
- Added entry editor option to turn off inserting links on upload box change.
- Added ability for administrators to edit user accounts.

14-Dec-2006:  
- Fixed unconverted theme style sheets.
- Made bad DOCUMENT_ROOT error not kill the script and added output line
noting the path to the blogconfig.php file.

28-Nov-2006:
- Fixed bug in detecting entry path for Pingback and TrackBack
viewing pages.

10-Nov-2006: 
- Fixed bug in sending pingbacks.
- Fixed URLs and JavaScript for deleting single TrackBack or Pingback.
- Changed default format for blog entry files to XML.  To revert to old format,
set USE_OLD_ENTRY_FORMAT = true in userconfig.cfg.
- Fixed links, validation errors, and miscellaneous XMl breakage when putting
ampersands in tags.

02-Nov-2006:
- Fixed entry preview bug when register_globals is enabled.

29-Oct-2006:
- Fixed blog getDay() and getDayCount() methods.
- Made sidebar calendar not suck so much.
- Changed calendar prev/next month navigation to use AJAX instead of query
strings with page reloads.

12-Oct-2006:
- Added JavaScript to add link/image code to text area when changing/adding a
file upload.
- Added excerpt extraction to Pingback server.
- Made entries with identical titles in same month not overwrite eachother's 
pretty permalinks.

06-Oct-2006:
- Make BlogEntry::calcPrettyPermalink() actually conform to the character 
limitations in the URI specification (RFC3986).
- Changed BlogEntry::getReplyArray() to retrun an empty array on failure 
rather than false.
- Added link to enclosure file when displaying blog entries.

05-Oct-2006:
- Fixed wrong version number AGAIN.  Why do I always forget that?
- Fixed Page::refresh() method.
- Made entry add/edit pages display error and refresh to entry page when the
entry update succeeds, but an upload or pingback fails.
- Added system.ini option to display all replies in a single list for the entry,
page rather than a separate section for each.

01-Oct-2006:
- Added mass-deletion of replies for entires.  You can now delete all or many of
the comments/TrackBacks/Pingbacks for an entry with a single page request.
- Added check on DOCUMENT_ROOT in blogconfig.php.  If the DOCUMENT_ROOT is 
defined, but does not exist, print an error and die.

14-Sep-2006:
- Changed blog pingback setting so to allow sending pings for all entries, only 
new entries, or never.

12-Sep-2006:
- Cleaned up and consolidated stylesheets, changing references in page files.

03-Sep-2006: version 0.8.1
- Added BotBlock plugin for comment spam.

31-Aug-2006:
- Added accept-charset attribute to entry and comment forms.
- Changed htmlentities() to htmlspecialchars() when populating entry edit form.
This keeps unicode characters from getting garbled in the edit area.
- Changed pretty-permalink calculation to strip unicode characters as well.  
Apparently they don't work in URLs.
- Fixed image button for LBCode editor.
- Added color button and image align combo to LBCode editor.  Also removed the 
seldom-used quote and blockquote buttons to make room.
- For entries with an enclosure, add a link element for it in the page head.

27-Aug-2006:
- Fixed newline not translating in LBCode.
- Fixed invalid HTML in comment form template.
- Added an LBCode color tag.
- Fixed bad permalink on entries with no subject.

23-Aug-2006: version 0.8.0 "No Need for TrackBack"
- Added some events and documentation to FileUpload class.
- Hacked file editing to make podcasts work when uploading file with post.
- Added a BUGS file listing known problems.

22-Aug-2006:
- Fixed *more* Pingback and TrackBack bugs.  Everything finally seems to be 
working now.
- Fixed error on updating un-sticky articles.
- Fixed up some broken templates.
- Fixed displaying empty subjects in recentcomments plugin.

20-Aug-2006:
- Alphabetize topics in entry editor.
- Added system.ini option to put the entry editor below the textarea.  Default 
is now to put it on top.
- Fixed problems sending pingback to non-absolute local URLs in LBCode.
- Consolidated sitemap.php into editfile.php.
- Fixed bad topic links.

17-Aug-2006:
- Fixed incorrect Pingback URI recording.
- Fixed bad redirects after moving file edit page.
- Added option to send pingbacks when posting entry.

03-Aug02006:
- More code cleanup, including fixing up the URL generation code in many places.
- Added option to show months and years in the archive page.

22-Jul-2006:
- Major cleanup of the entry edit template and editor, including lots of new 
unobtrusive JavaScript code.
- Added a plugin to validate TrackBack pings.  Works like Pingback, checking that
the pinging page actually links to the pinged page.  Note that this is not 
mentioned in the TrackBack specification, but is not incompatible with it.

14-Jul-2006:
- Finally made sending trackbacks without CURL work.  That only took way, way,
WAY too long.
- Finally added Pingback support.
- Consolidated e-mail notification into a single ReplyNotifier plugin.
- Made RSS plugins create comment feed when entry is first created.
- Changed default sidebar to display variations on the new "standard" RSS icon.
- Various code cleanup.

09-Jul-2006:
- Moved all those stripslashes calls out of the code and encapsulated them in 
the POST(), GET(), GETPOST(), and COOKIE() functions in utils.php.
- Fixed homepage not showing in profiles.
- Added default profile.ini with a contacturl property.
- Don't show e-mail address is profile if there is a contacturl specified.
- Changed new/edit redirects to point to the entry/article, not the blog.
- Added option to use stylesheet in RSS2 feeds.

05-Jul-2006:
- Added support for setting enclosure in entries.
- Added option to IPBan plugin to ban and delete at same time.
- Made IP ban not display link if IP is already banned.
- Made blog upgrade return a list of failed files, rather than a meaningless 
error code.

30-Jun-2006:
- Added URL sanitizing to redirect and refresh methods of Page class.

24-Jun-2006: version 0.7.3
- Fixed errors when deleted templates are still in load-first list.
- Fixed HTML validation errors in some templates.
- Fixed sidebar list styles for recentcomments plugin.

22-Jun-2006:
- Fixed error with System->canAddTo() checking non-existing blog parent.
- Fixed wrong redirect in edituser.php.
- Made redirects from the login page smarter.
- Added per-category RSS feeds to RSS generator plugins, topic list plugin, and
the MetaWeblog API.

12-Jun-2006: version 0.7.2
- Added checkbox to set sticky state when editing articles.
- Fixed redirects on changing the installation path in blogpaths.php.

11-Jun-2006:
- Fixed sitemap editing page.
- Fixed plugin configuration not showing in PHP5.
- Added delete link for articles.

06-Jun-2006: verison 0.7.1
- Added a command-line Python utility to make MetaWeblog API calls.  This is a
simple client program for testing and automation.
- Added links to admin page for editing system.ini and groups.ini.
- Fixed incorrect return values in the Blogger and MetaWeblog API 
implementations.  In particular, the newPost methods were returning a URI, not
the unique ID that needed to be passed in the API calls.

31-May-2006:
- Extended MetaWeblog API to allow uploading to a particular entry with the
newMediaObject method.

29-May-2006:
- Implemented MetaWeblog API.
- Started on support for Pingbacks.
- Changed entry input mode selection to select box.
- Added file upload boxes to the entry/article add/edit pages.

20-May-2006: version 0.7.0
- More authentication fixes.
- Fixed receiving trackback excerpts.
- Fixed e-mail notification for trackbacks.

19-May-2006:
- Added option to sitemap plugin to auto-generate the sitemap from the
registered blog list.
- Fixed up the authentication code in various files.
- Removed the BLOG_ROOT_URL constant, which was almost certainly a stupid idea
in the first place.  Maybe something like it can come back in a different
incarnation, if it's even needed.

18-May-2006:
- Fixes to login, logout, and blog registration.
- Removed more deprecated methods from blog object.

16-May-2006:
- Allow the user to create an initial account with any name and automatically
add it to the administrators group.

15-May-2006:
- Users now have option of displaying their e-mail address in comments.
- Added stripslashes() calls to TrackBack receiving.

12-May-2006:
- Fixed small bug in trackback_notify plugin.
- Made sending trackbacks not suck.
- Improved the admin page.

11-May-2006:
- Full Blogger 1.0 API support is now working.  However, the getTemplate and
setTemplate methods are not implemented, as they are not relevant to LnBlog.
- Revamped trackback pinging to not suck so much.
- Changed default character encoding to UTF-8.

10-May-2006:
- Fixed pretty permalinks for entries.
- Lots of code cleanup and consolidation.
- Finally made the newPost and editPost methods of the Blogger API 1.0 work.

05-May-2006:
- Added some events and template variables to the comment form template.
- Consolidation of entry and article pages.

03-May-2006: 
- Massive changes since last entry, including lots of clean-up to back-end code.
- Added a "clean" theme that attempts to be a cleaned-up, more readable version
of the standard default theme.
- Can now install plugins in LnBlog/userdata/plugins.
- Moved lots of the "intelligence" out of back-end classes.  The blog class, in 
particular, was turning into a god class.

14-Apr-2006:
- Updated the old sidebar archives plugin.
- Added ability to put themes in LnBlog/userdata/themes.
- Fixed up  messy include_path.

12-Apr-2006:
- Added setInlineStylesheet() method to page class.
- Added plugin for using FCKeditor as WYSIWYG post editor.
- Added support for URI absolutizing to raw HTML markup mode.
- Added support for putting plugins in LnBlog/userdata/plugins.

11-Apr-2006:
- Moved to global page object.
- Added setDisplayObject() and addInlineScript() methods to page class.
- Changed getlink() back to passing unfound files on verbatim, rather than 
returning an empty string.
- Added a plugin to support using TinyMCE as a rich text area for post and 
article editing.

06-Apr-2006:
- Fixed missing </a> tag in showarchive.php.

04-Apr-2006: 0.6.5
- Fixed blogpath.php link showing up when creating blogs.
- Added option to show only global ban link in ipban plugin.
- Added working contentban plugin based on ipban.
- Added NaturalDocs documentaiton to some plugins, as well as converting
older ones to use the addOption method.

31-Mar-2006:
- When saving blog data, run the values through htmlentities() first in order
to prevent invalid characters from getting into the title or description.  
This breaks the RSS feeds and XHTML compliance (reported by Ben Schorr).

30-Mar-2006:
- Reworked include mechanism AGAIN so that blogconfig and pathconfig will work.
- Added a privateblog plugin.  This allows you to deny access to a blog to 
all but a certain list of usernames.

27-Mar-2006: 
- Reworked blogconfig.php to work with pathconfig.php.
- Added documentation on pathconfig.php.
- Moved LBCode documentation to NaturalDocs.

27-Mar-2006: 
- Moved install and blog paths and URLs out of the individual config.php 
scripts in each directory.  Now, the config.php files calculate the blog root
based on how many levels deep the directory is under the blog.  The install
root and install and blog URLs are then included from a new pathconfig.php
file in the blog root.
- Cleaned up newblog.php, updateblog.php, and blog_modify_tpl.php to remove all
those unneeded variables.
- Added blogpaths.php and blog_path_tpl.php to update the install root and the
install root URL and blog root URL.

22-Mar-2006:
- Fixed getlink() and page header template to not link in stylesheets or
scripts that are not found.
- Added timed comment/trackback close to DisableComments plugin.

21-Mar-2006: version 0.6.4
- Fixed missing password check when cookie-only login is enabled.
- Adjusted the LBCode regexes for lists to fix the trailing newline bug.
- Changed LBCode URI conversion so that img and url tags auto-convert URIs 
with no /, :, or @ characters into absolute URIs relative to the current 
path, while ones with / but no : or @ are relative to the blog root.

20-Mar-2006:
- Fixes broken "back to plugin list" link.
- Removed broken default banner when plugin is disabled.
- Added warning about setting the blog path to the install path when creating
a new blog.

17-Mar-2006: version 0.6.3
- Made the plugin loading configuration page not suck.
- Added uri() function to trackback and blogcomment classes.
- Made LOCALPATH_TO_URI_MATCH_RE more general, so that it can now account
for all variations on /home/user/whatever as the LnBlog doucment root.

12-Mar-2006:
- Fixed wrong file name in sitemap.php.
- Sort IP addresses when saving sitemap.

10-Mar-2006: version 0.6.2
- Fixed entry deletion when history is disabled.  The rmdir() and rmdir_rec()
functions for the FS classes were trying to delete a directory that was still
in use.  Also, we apparently can't delete the directory the script is being
run from, so the entry delete.php wrappers can't be used.  Instead, adjusted
deletion links to use the pages/delentry.php directly.  This required 
adjustments to current_file() and current_uri() to maintain query strings
and addition of a couple of methods to blogentry class.

08-Mar-2006: 
- Fixed conditional inversion error in rmdir_rec() in nativefs.  This caused 
calls to the function to completely fail.
- Adjusted pretty-permalink regex to remove extraneous underscores.
- Fixed incorrect variables in terminal theme.

07-Mar-2006:
- Fixed unset DOCUMENT_ROOT errors on initial setup.
- Fixed user object caching that broke PHP5 support.

22-Feb-2006: version 0.6.1
- Fixed bad profile links in comments.
- Fixed comments not being added when posting from pretty permalink page.
- Fixed "post a comment" link not showing up in tuxice theme.
- Finally made the comment "remember me" function actually work right.

17-Feb-2006: version 0.6.0 "No need for passwd.php"
- Fixed string length error in setting blog ID.
- Fixed JavaScript but in post editor.
- Added some padding to entry paragraphs in the smooth theme.

16-Feb-2006:
- Made fileupload.php and editfile.php understand user profile directories.
- Added links to profile edit page to upload file and edit profile.htm.
- Fixed blogid property of blog object to be semi-intelligent.

15-Feb-2006:
- Added support for actually adding and displaying comments on articles.
- Changed templates to use user profile page as user name link target.

14-Feb-2006:
- Added separate setting for allowing trackbacks per-entry.
- Added per-blog setting for default markup mode for new entries.
- Fixed comment link problem with tuxice theme.
- Removed ill-considered filename truncation check form upload class.
This was preventing uploading of files without dots in the filename.
- Fixed redirection bug in bloglogin.php on initial login.
- Turn off trackbacks by default for articles (although the article templates
currently have no trackback interface elements anyway).
- Make article sidebar "show all" link text configurable.

13-Feb-2006:
- Added JavaScript to set article path from subject.
- Fixes to new blogdata.ini reading and writing.
- Fixed misdetection of old passwd.php on initial page load.

08-Feb-2006:
- Converted blogdata.txt file to INI format.  Reading from old version 
is still supported.
- Fixed JavaScript editor so that highlighting some text and clicking a 
button will have the same effect as entering that text in the popup window.
Also added configuration constants to turn off edit boxes (now hidden by
default) and the math symbols.

07-Feb-2006:
- Added custom fields for user profiles, with descriptions stored in
the userdata/profile.ini file.

31-Jan-2006:
- Added collapsable sections to Javascript editor as well as special HTML
entities for mathematical symbols.
- Fixed article sidebar plugin to include edit link when there are no
articles for the entry.

26-Jan-2006:
- Fixed undefined variable problem in get_blog_path() in blogconfig.php.
Started improvements to JavaScript post editor.

25-Jan-2006:
- Fixed stray character in comment_form_tpl.php that broke validation.
- Added a simple native search plugin.

24-Jan-2006:
- Moved user profiles over to personal user directories.  Maintained 
compatibility for old passwd.php file.
- Fixed JS bug in login_create_tpl.php

18-Jan-2006:
- Wrapped object data in htmlentities() calls when previewing or editing
articles or entries.  Otherwise, we can end up injecting invalid HTML into
the edit fields and messing up the page.
- Added uri() method to blog class in preparation for shift to allowing
query strings and/or .htaccess URLs.

18-Jan-2006: version 0.5.4 "No Need for Testing"
- Fixed crashing bug for systems without gettext.

14-Jan-2006: version 0.5.3 "No Need for Spam"
- Fixed redirect used after posting a comment.
- Fixed default value for comment disabling plugin.
- Removed extraneous images for tuxice theme.
- Made the .htaccess plugin disabled by default, as it can cause problems
on some configurations (like Ubuntu Breezy default).

13-Jan-2006:
- Fixed "allow comment" checkbox to also refer to trackbacks.
- Added a "global ban" link to ipbanning plugin when the administrator is
logged in.

12-Jan-2006:
- Added option to allow comments only from logged-in users.
- Added recent entry option to customize number of entries shown.
- Added missing LBCode and standard plugin documentation.
- Fixed "remember me" function for comments (again).

11-Jan-2006:
- Fixed sitemap edit page to respect the plugin setting.
- Added setting (now default) to turn off saving of deleted comments.
- Added a Javascript prompt for confirming comment deletion.
- Added redirect after comment post to prevent duplicates on refresh.

10-Jan-2006:
- Fixed missing security check in editfile.php.
- Consolidated the sitemap template and file editing template.
- Added option to sidebar articles plugin to append a list of custom links to
the end of the article list.
- Fixed blog settings detection from query string.
- Fixed path problem in sitemap config.

09-Jan-2006:
- Added property and template logic to turn off trackbacks.  Made the setting
synchronous with the analogous comment setting.
- Added plugins to disable trackbacks or comments on an entire blog.
- Fixed tags not being shown after a preview.
- Fixed problem with incorrect base link for relative URLs in entries.

08-Jan-2006:
- Fixed IP banning plugin.  Now uses regular expressions to allow banning
of entire subnets.

06-Jan-2006:
- Added plugins events for trackbacks.
- Added e-mail notificaiton for trackbacks.
- Added trackbacks to the IP banning plugin.

04-Jan-2006:
- Added IP banning plugin for comment spam.

30-Dec-2005:
- Improved plugin configuration listing.
- Created arbitrary file editing page.
- Added pretty links for entries.
- Fixed broken calculate_document_root() function.
- Made the BlogEntry object determine URIs for its all links.

24-Dec-2005:
- Started removing legacy support for PHP < 4.1.

23-Dec-2005: version 0.5.2
- Fixed bugs in smooth theme.
- Moved news feed names from constants to plugin variables.
- Fixed incorrect saving of plugin config value when it is explicitly
set TO the current default.
- Added configuration options to most plugins, including options to set
the caption on the sidebar panel and suppress it if empty.
- Fixed problem with comment deletion.
- Fixed warning for adding entries with no tag.

20-Dec-2005:
- Added plugin loading configuration page.
- Made the smooth theme look presentable.

14-Dec-2005:
- Added search page and blog methods for dealing with tags.
- Added plugin for navigating tags.
- Fixed bug with unset control for plugin not defaulting correctly.

12-Dec-2005:
- Added support for tags.

05-Dec-2005: version 0.5.1
- Fixed ~user URLs for admin pages.
- Added NaturalDocs documentation to utils.php.
- Fixed bug in comment notifier.
- Fixed non-admin per-blog plugin config bug.
- Fixed non-existent file bug in INI parser.

30-Nov-2005:
- Added Javascript to hide FTP part of fs_setup form when nativefs is 
selected.

29-Nov-2005:
- Fixed problem in event register with static class methods.
- Made plugin configuration page actually work.
- Added user preference support to many plugins.

28-Nov-2005:
- Separated login ops in to two plugins.
- Added option to make login link into an inline form.

25-Nov-2005:
- Fixed error in LBCode Javascript editor.

22-Nov-2005: version 0.5.0
- Fixed bad e-mail link in blogentry template.
- Fixed i18n loading before PACKAGE_NAME defined, which caused errors 
when gettext is enabled.
- Changed setcookie() calls in user class to include a time and a path of "/"
so that you don't have to log back in when switching blogs.
- Added configuration constant for above cookie expiration.
- Fixed magic_quotes problem in docroot and ftproot test pages.
- Fixed broken referer redirect in login page.
- Changed powered-by image.
- Fixed missing http:// in user homepages.

21-Nov-2005:
- Fixed calendar and month archive for non-existent months.
- Fixed untranslated strings in blogconfig.php.
- Added "go back" links to archives.

20-Nov-2005:
- Made calendar actually work right.
- Fixed some typos in populating templates.

18-Nov-2005:
- Fixed various template bugs.
- Cut way down on verbiage in FS setup.
- Added FTP root autodetection to fs_setup.php.
- Fixed error with Windows paths in FTP DOCUMENT_ROOT setup.
- Started moving old readme file into Natural Docs.

17-Nov-2005:
- Made sidebar calendar slightly prettier.
- Removed extra unneeded templates.
- Fixed comment form not showing right name after post (reported by WGM).
- Fixed error in updating articles in blog.php.

16-Nov-2005:
- Added a calendar plugin for the sidebar.
- Fixed issue with character encoding coming from strftime().  The fix
depends on setting the SYSTEM_CHARSET constant and the iconv extension
being loaded. (Reported by WGM.)

15-Nov-2005:
- Made localpath_to_uri not fail when path does not exist.
- Finished adding gettext support to templates.
- Added documentation on internationalization.
- Added a simplified file format to set configuration constants.

07-Nov-2005:
- Fixed case-sensitive path problem on Windows.

04-Nov-2005:
- Added support for GNU gettext extension along with a simple fallback
mechanism for when gettext is not available.

01-Nov-2005:
- Added some query string detection to facilitate not using wrapper scripts.
- Added a config.php to the pages directory to make above work.
- Added more support for internationalization.

31-Oct-2005:
- Changed docroot and ftproot test pages to use templates.
- Changed htaccess_generator plugin to include lines from .htaccess file in
INSTALL_ROOT if it exists.
- More NaturalDocs documentation.

28-Oct-2005:
- Made default MIME type and charset configurable.
- Changed UNICODE_ESCAPE_HACK default back to true.

27-Oct-2005:
- Added a NaturalDocs project for auto-generate documentation.

23-Oct-2005: version 0.4.0
- Added permission checks to sidebar administration plugin.
- Moved the "powered by" link whoring to a plugin so people can get rid of it.

22-Oct-2005:
- Fixed bug in javascript LBCode editor.
- Fixed redirect bug in login page.

20-Oct-2005:
- Added better handling of expected errors in blog insert and fs_setup.
- Added input filtering for trackbacks.

18-Oct-2005:
- Fixed up documentation a little.
- Moved sidebar after content in default templates.  This makes things nicer
for people with screen-readers or browsers that don't do CSS.
- Added a crappy black and white theme.

17-Oct-2005:
- Removed stripslashes() mangling of blog home_path.  (Reported by WGM.)
- Fixed login redirect when referer gets set to same URL.
- Added (unused) rmdir and rmdir_rec filesystem functions.

16-Oct-2005:
- Fixed regular expressions in .htaccess plugin.
- Fixed bug in comment deletion.

14-Oct-2005:
- Added error handling to the blog creation code so that failure to create
or write to the blog directory will result in a semi-useful error message
instead of a long string of warning and error messages.
- Fixed incorrect return codes for blog functions to modify entries.
- Added a plugin to generate Apache .htaccess files for weblogs.  These files
include mod_rewrite rules to redirect requests for the blog's raw data files.

13-Oct-2005:
- Fixed problem in fs_setup.php with magic quotes mangling Windows paths.
(Reported by WGM.)
- Fixed missing include in nativefs.php.  (Reported by WGM.)
- Fixed multiple stripslashes() calls when magic_quotes_gpc is turned on.

12-Oct-2005:
- Separate RSS1 and RSS2 plugins.
- Add option to make e-mail address visible only when comments are 
viewed by logged-in users.
- Fixed bug where e-mail addresses in comments were never visible.

10-Oct-2005:
- Added ad hoc fix for a bug in Unicode text rendered in LBCode or 
auto-markup modes. (Reported by WGM.)
- Fixed path bugs in setup scripts.

07-Oct-2005:
- Moved RSS feed stuff to a plugin.
- Added a Page class to handle things like page link elements.

05-Oct-2005:
- Moved e-mail notification for comments to a plugin.
- Converted sidebar, menubar, and banner to plugins.

28-Sep-2005:
- New event-driven plugin system.
- Added referer redirect to login page.

07-Sep-2005:
- Increased encapsulation by removing direct references to paths from 
page scripts.  References to, e.g. getcwd(), are now implicit and handled in
class constructors.

10-Aug-2005:
- Wrapped all class creation with functions (for plugin-type mechanism).
- Moved passwd.php inclusion inside User class.

04-Aug-2005:
- Made the sidebar modular.

13-Jul-2005: Version 0.3.4
- Code cleanup and error checking in fs_setup.php.

11-Jul-2005:
- Added [h] LBCode tag for headers.
- Changed refreshes to redirects.
- Added redirect for sitemap editing.

10-Jul-2005:
- Fixed cosmetic problems in new blog screen.
- Added link to current URL in file upload page.

08-Jul-2005:
- Changed MIME type of RSS 1.0 feed to application/xml, as per the spec.
- Cleaned up CSS.
- Updated long-neglected skepticats theme.

07-Jul-2005:
- Fixed bug in article edit form JS editor.
- Fixed edit, upload, etc. links on entries to respect permissions.
- Moved absolutizing of LBCode URLs into the markup() method and made it 
use the internal data and permalink of the object.
- Added virtual permalink() method to Entry class.

05-Jul-2005: Version 0.3.3
- Fixed bug in URL conversion for comments.
- fixed localpath_to_uri() to account for non-standard server ports.
- Added optional citation for LBCode for short and block quotations.
- Added editor buttons for code and block quote LBCode tags.
- Moved print media style sheets into the regular CSS files.
- Updated blog methods that add/modify content to return UPDATE_SUCCESS when
there is no explicit error set.  While the FTP file writing functions worked
without this, the native ones did not.
- Fixed fs_setup.php page so that you can actually set LnBlog to use native
file writing.  I guess I got too focused on FTP.

03-Jul-2005:
- Fixed up user edit page and added link to it in sidebar.
- Small improvements to the style sheets.

01-Jul-2005:
- Added some explicit version tags to the ChangeLog. ;)
- Added img-left and img-right LBCode tags for flowing text around images.
- Added some basic documentation on the theme system.

29-Jun-2005: Version 0.3.2
- Added non-admin error message to admin page login.
- Made the new blog path relative to DOCUMENT_ROOT, not current directory.
- Updated install and readme files.
- Fixed missing personal info in e-mail notifications for comments by 
logged-in users.

28-Jun-2005:
- Fixed mangling of double-quotes in comments.
- Moved list of HTML document root directories to blogconfig.php and added
a DOCUMENT_ROOT stored in fsconfig.php, which, if set, will be returned by
find_document_root() in lieu of doing the actual search.
- Made the username box read-only when creating the administrator account.
- Added test pages for determining the HTML doc root and the FTP root.
- Fixed FTP support to allow non-standard ports.

25-Jun-2005: Version 0.3.1
- Fixed bug with putting colons in entry metadata.
- Fixed bug where ownership was not correctly set on inserted articles.
- Fixed crashing bug in article preview.
- Fixed article add and display pages.
- Added username to logout link.
- This is version 0.3.1.

24-Jun-2005:
- Added keyboard navigation to the entry editor and comment form.

19-Jun-2005: Version 0.3.0
- Fixed bugs in sitemap creation, deleting entries, and deleting comments.
This will be version 0.3.0.

17-Jun-2005:
- Put link contents of sitemap in user-editable file rather than template.
- Added a page to display user info (not yet in interface).
- Added new features to the documentation.

06-Jun-2005:
- Added a getlink() function to calculate URLs for linking images and style
sheets from different themes.  Converted style sheets, templates, and pages
to use this, so it is now possible to share style sheets and images between
themes without having multiple copies of the file.
- Added code to showtrackback.php to accept a trackback ping.  It doesn't 
seem to work, though.  Maybe the server doesn't like posts to directories?
- Fixed themes to not show things like "view comments" links when they are
not relevant (e.g. no comments, commenting disabled).

30-May-2005:
- Fixed up new tuxice theme.

26-May-2005:
- Added a display page for trackbacks, much like the comments page.

24-May-2005:
- Added e-mail notification for comment posting.  Note that this assumes that
PHP's mail server information is correctly configured.
- Added TrackBack support.

23-May-2005:
- Extensive changes to user authentication.  Added support for multiple user
accounts with information (e-mail, real name, etc.) for the user.
- Added a permissions mechanism to the Blog class.  New articles and entries
are now added and modified by methods of the Blog class.  Permission is 
determined based on an administrator account, the Blog owner, a "writers" 
list for the blog, and the owner of an existing entry or article.
- Tweaks to display templates to make partial user/reader information show
up in a nicer format.
- Added a more colorful theme with a different layout.
- Added recognition of logged-in users to comment class.

22-Apr-2005: Version 0.2.2
- Added Javascript editor.
- Added "show all entries" page for archives.
- This will be release 0.2.2.

19-Apr-2005:
- Fixed version number constant, which hadn't been changed since 0.1.0.
- Fixed preview bugs in new/edit article and post pages.
- Fixed get() method of decendants of Entry class to NOT modify the data 
property, but still set the template variables appropriately.
- Changed blog entry display templates to show link to comments 
all the time, not just when there are comments.

16-Apr-2005: Version 0.2.1
- Fixed bone-head bug in stipping HTML entities.
- Added rel links for RSS to page headers.  Use blog RSS for main page, use 
comment RSS for entry, article, and comment pages.
- This is release 0.2.1.

14-Apr-2005:
- Added preview function for posting or editing entries and articles.
- Added RSS feeds for comments on articles and entries.

08-Apr-2005:
- Fixed error where the original post date was not tracked in the entry 
metadata.  Post date and current version date are now separate in both the
metadata and the template variables.
- Fixed (hopefully) a bug in the LBCode regexps for lists that required a new
line at the end and beginning of a list.
- Added destination name to successful file upload message.
- Fixed missing license section in Readme.html file.  Oops!

06-Apr-2005: Version 0.2.0
- Fixed bugs and removed debugging code that showed up when attempting to
post an entry and upload the files for the 0.2.0 release. ;)
- Fixed missing template variable errors in new blog page.
- Fixed error where comment delete was not picking up the comments directory
when showing entry and comments and ended up linking to entry delete.
- Fixed error updating articles caused by inherited update() method calling
getPath(), which was changed in BlogEntry, but not article.
- OK, let's make THIS release 0.2.0.

04-Apr-2005
- Fixed several templates so that the HTML actually validates now.
- Added some styles to make forms slightly nicer.
- Added ordered and unordered lists to LBCode.
- Added a "sticky" file for articles that gives a quick and easy way
to determine if they are to be displayed in the sidebar.
- Added delete() function to FS plugin interface to work with the
sticky files for articles.
- We'll call this release 0.2.0.  It's finally worth using!  Yay!

01-Apr-2005:
- Fixed pages for adding and editing articles and entries to preserve the
form data if there is an error.
- Added a field to new article page that allows setting the branch name, i.e.
the directory component of the path under the content directory.
- On second thought, maybe home directories should be easy to configure.  
Moved the regular expression in localpath_to_uri() to a constant in the
blogconfig.php file.
- Fixed bugs in showmonth.php, include_sidebar.php.
- Added config option for number of entries to put in RSS feeds.

31-Mar-2005:
- Fixed localpath_to_uri() for home directories yet again.  This time, it 
uses a regular expression to match /home/.+/www, like I use on my system.
This is a dirty, dirty hack, but I can't see it coming up too often.
- Various LBCode (LnBlog BBCode) tags have been added and documented.
- Changed FTP file writing to use binary in stead of ASCII mode.  This fixes
a CrLf conversion problem I was having.
- Added code to autoconvert relative paths in LBCode [url] and [img] tags to
absolute URIs.  This should help make the RSS feeds validate.

21-Mar-2005:
- Fixed blog creation bug (realpath() doesn't work on non-existent 
ARTICLE_POST_URL files).
- Fixed localpath_to_uri() to work with user home directories, i.e. ~/www.

18-Mar-2005:
- Integrated FTP file writing into code.  Can select between writing files
and directories using native filesystem functions or FTP functions using 
"pluggable" filesystem classes.

13-Mar-2005:
- File upload support added.

03-Mar-2005:
- Changed name from Basic Blog, which was too common and kind of sucked, to
LnBlog, seems to be fairly uncommon and sucks slightly less.

02-Mar-2005: Version 0.1.0
- Initial public release.
