1
0

Also support "last X" REST interface

This commit is contained in:
Garvin Hicking
2006-08-02 10:07:34 +00:00
commit 80e14346a5
1775 changed files with 195589 additions and 0 deletions

248
docs/CHANGED_FILES Normal file
View File

@ -0,0 +1,248 @@
This documents the change of filestructure between version 0.7 and 0.8:
Where functions from serendipity_config.inc.php went to:
------------------------------------------------------------------------
./include/functions_comments.inc.php
* serendipity_rememberComment() {
* serendipity_rememberCommentDetails()
* serendipity_forgetCommentDetails()
* serendipity_displayCommentForm()
* serendipity_fetchComments()
* serendipity_generateCommentList()
* serendipity_printComments()
* serendipity_deleteComment()
* serendipity_allowCommentsToggle()
* serendipity_approveComment()
* serendipity_saveComment()
* serendipity_mailSubscribers()
* serendipity_cancelSubscription()
* serendipity_sendComment()
./include/functions_trackbacks.inc.php
* serendipity_fetchTrackbacks()
* serendipity_printTrackbacks()
* serendipity_trackback_is_success()
* serendipity_pingback_autodiscover()
* _serendipity_send()
* serendipity_trackback_autodiscover()
* serendipity_reference_autodiscover()
* add_trackback()
* add_pingback()
* serendipity_trackback_excerpt()
* report_trackback_success()
* report_trackback_failure()
* report_pingback_success()
* report_pingback_failure()
* serendipity_handle_references()
./include/functions_smarty.inc.php
* serendipity_smarty_fetch()
* serendipity_emptyPrefix()
* serendipity_smarty_hookPlugin()
* serendipity_smarty_printSidebar()
* serendipity_smarty_getFile()
* serendipity_smarty_formatTime()
* serendipity_smarty_printComments()
* serendipity_smarty_printTrackbacks()
./include/functions_entries.inc.php
* serendipity_fetchCategoryRange()
* serendipity_fetchCategoryInfo()
* serendipity_fetchEntryCategories()
* serendipity_fetchEntries()
* serendipity_fetchEntry()
* serendipity_fetchEntryProperties()
* serendipity_fetchCategories()
* serendipity_rebuildCategoryTree()
* serendipity_searchEntries()
* serendipity_printEntryFooter()
* serendipity_getTotalEntries()
* serendipity_printEntries()
* serendipity_printEntries_rss()
* serendipity_purgeEntry()
* serendipity_updertEntry()
* serendipity_deleteEntry()
* serendipity_generateCategoryList()
* serendipity_printEntryForm()
* serendipity_emit_htmlarea_code()
* serendipity_updateEntryCategories()
* serendipity_printArchives()
./include/functions.inc.php (remaining)
* serendipity_truncateString()
* serendipity_formatTime()
* serendipity_logout()
* serendipity_login()
* serendipity_userLoggedIn()
* serendipity_fetchTemplates()
* serendipity_fetchTemplateInfo()
* serendipity_setCookie()
* serendipity_deleteCookie()
* serendipity_fetchUsers()
* serendipity_makeFilename()
* serendipity_fetchReferences()
* serendipity_utf8_encode()
* serendipity_rss_getguid()
* xhtml_cleanup()
* serendipity_rewriteURL()
* serendipity_archiveURL()
* serendipity_archiveDateUrl()
* serendipity_maxfileuploadsize()
* serendipity_fetchAuthor()
* serendipity_parseFileName()
* serendipity_authenticate_author()
* serendipity_track_referrer()
* serendipity_track_referrer_gc()
* serendipity_track_url()
* serendipity_displayTopReferrers()
* serendipity_displayTopExits()
* serendipity_displayTopUrlList()
* serendipity_discover_rss()
* serendipity_isResponseClean()
* serendipity_printLogin()
Moved functions:
------------------------------------------------------------------------
serendipity_saveTemplateSelection()
-> OBSOLETE
serendipity_importWP()
-> ./include/admin/rss_exchange.inc.php
serendipity_importMT()
-> ./include/admin/rss_exchange.inc.php
serendipity_load_configuration()
-> ./include/functions_config.inc.php
Removed files:
------------------------------------------------------------------------
./serendipity.inc.php
./serendipity_layout.inc.php
./serendipity_layout_table.inc.php
Moved/Renamed files:
------------------------------------------------------------------------
./serendipity_entries_overview.inc.php
-> ./include/admin/entries_overview.inc.php
./serendipity_rss_exchange.inc.php
-> ./include/admin/rss_exchange.inc.php
./serendipity_admin_category.inc.php
-> ./include/admin/category.inc.php
./serendipity_admin_comments.inc.php
-> ./include/admin/comments.inc.php
./serendipity_admin_entries.inc.php
-> ./include/admin/entries.inc.php
./serendipity_admin_images.inc.php
-> ./include/admin/images.inc.php
./serendipity_admin_installer.inc.php
-> ./include/admin/installer.inc.php
./serendipity_admin_interop.inc.php
-> ./include/admin/interop.inc.php
./serendipity_admin_overview.inc.php
-> ./include/admin/overview.inc.php
./serendipity_admin_plugins.inc.php
-> ./include/admin/plugins.inc.php
./serendipity_admin_templates.inc.php
-> ./include/admin/templates.inc.php
./serendipity_admin_upgrader.inc.php
-> ./include/admin/upgrader.inc.php
./serendipity_admin_users.inc.php
-> ./include/admin/users.inc.php
./compat.php
-> ./include/compat.inc.php
./serendipity_functions_config.inc.php
-> ./include/functions_config.inc.php
./serendipity_functions_images.inc.php
-> ./include/functions_images.inc.php
./serendipity_functions_installer.inc.php
-> ./include/functions_installer.inc.php
./serendipity_genpage.inc.php
-> ./include/genpage.inc.php
./serendipity_lang.inc.php
-> ./include/lang.inc.php
./serendipity_plugin_api.php
-> ./include/plugin_api.inc.php
./serendipity_sidebar_items.php
-> ./include/plugin_internal.inc.php
./serendipity_db.inc.php
-> ./include/db/db.inc.php
./serendipity_db_mysql.inc.php
-> ./include/db/mysql.inc.php
./serendipity_db_mysqli.inc.php
-> ./include/db/mysqli.inc.php
./serendipity_db_postgres.inc.php
-> ./include/db/postgres.inc.php
./serendipity_db_sqlite.inc.php
-> ./include/db/sqlite.inc.php
./htaccess.cgi.errordocs.tpl
-> ./include/tpl/htaccess_cgi_errordocs.tpl
./htaccess.cgi.normal.tpl
-> ./include/tpl/htaccess_cgi_normal.tpl
./htaccess.cgi.rewrite.tpl
-> ./include/tpl/htaccess_cgi_rewrite.tpl
./htaccess.errordocs.tpl
-> ./include/tpl/htaccess_errordocs.tpl
./htaccess.normal.tpl
-> ./include/tpl/htaccess_normal.tpl
./htaccess.rewrite.tpl
-> ./include/tpl/htaccess_rewrite.tpl
./serendipity_config_local.tpl
-> ./include/tpl/config_local.tpl
./serendipity_config_user.tpl
-> ./include/tpl/config_user.tpl
./INSTALL
-> ./docs/INSTALL
./LICENSE
-> ./docs/LICENSE
./NEWS
-> ./docs/NEWS
./README
-> ./docs/README
./TODO
-> ./docs/TODO
./upgrade.sh
-> ./docs/upgrade.sh

5
docs/INSTALL Normal file
View File

@ -0,0 +1,5 @@
###########################
# INSTALLING SERENDIPITY #
###########################
Please go to http://www.s9y.org/36.html to view a Step-By-Step Installation guide.

6
docs/INSTALL_EMBEDED Normal file
View File

@ -0,0 +1,6 @@
###########################
# INSTALLING SERENDIPITY #
###########################
Please go to http://www.s9y.org/55.html to view instructions for the embedded installation.

5
docs/INSTALL_SHARED Normal file
View File

@ -0,0 +1,5 @@
###########################
# INSTALLING SERENDIPITY #
###########################
Please go to http://www.s9y.org/41.html to view the installation guide for Shared Installations.

24
docs/LICENSE Normal file
View File

@ -0,0 +1,24 @@
Copyright (c) 2003-2005, Jannis Hermanns (on behalf the Serendipity Developer Team)
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the serendipity developer group nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

2439
docs/NEWS Normal file

File diff suppressed because it is too large Load Diff

523
docs/NEWS_OLD Normal file
View File

@ -0,0 +1,523 @@
# $Id$
(The latest changes are documented in the NEWS-file)
Version 0.5-pl1 (February, 14th 2004)
------------------------------------------------------------------------
* Fixed XHTML-invalid anchor name (garvinhicking)
* Fixed installation problems [file_get_contents, htacces
copy&paste] for PHP < 4.3.0 (garvinhicking)
* Fix leaking draft entries by directly entering URL or using
quicksearch (garvinhicking)
* Fixed output of an empty external stylesheet on admin panel
(garvinhicking)
* Do not output comment-type ("NORMAL") on entry view
(garvinhicking)
* Fixed RSS 0.91 feed (was not printing any entries) (garvinhicking)
Version 0.5 (February 6th, 2004)
------------------------------------------------------------------------
* Fixed bug not showing comment or entry admin-tools on apparently
static pages (garvinhicking, tomsommer)
* RSS 1.0 feed supported (garvinhicking)
* Redirection after a comment has been added to prevent users
refreshing a page and double-submitting. (garvinhicking)
* Fixed RSS feed to only show comments when they are associated with
an entry_id (garvinhicking)
* Fixed page counter to count pages depending on the entries per
page, and not hardcoded 15 entries (garvinhicking)
* Atom 0.3 feed supported (with xml-stylesheet display)
(garvinhicking)
* Fixed format of mail to not send invalid mails (garvinhicking)
* Added Yahoo! blog ping (garvinhicking)
* Format trackbacks with link to the originating blog in comments
plugin (garvinhicking)
* The items of the comment-RSS feeds now have their GUID per
comment, not per entry. This allows feedreaders to properly
display updated to that feed. (garvinhicking)
* Do not output our own trackbacks inside the comments plugin. Use
anchors on the title-link to each comment. (garvinhicking)
* Moved languages to its own folder and added available languages as
a dropdown in the installer (tomsommer)
* Added spanish translation (Luis Cervantes)
* Added input box to admin entry panel where you can provide an
entry id to be directly edited. (garvinhicking)
* Edit an entry directly from your frontend (link beside trackbacks)
(garvinhicking)
* Made pinging blogs configurable/changeable per-entry. Added
"blogg.de" to RPC-ping list (garvinhicking)
* Fixed referrer and exit tracking on PostgreSQL (jtate)
* Added support for pinging weblogs.com, blo.gs, blogrolling.com and
technorati.com to announce new entries. (jimwinstead &
sebastianbergmann)
* Added mod_rewrite rules to .htaccess templates (garvinhicking)
* Changed installer to allow selection of desired rewrite rule, if
any. (tomsommer)
* Used patch from Craig O'Shannessy (modified and expanded to all
occurences) to allow usage of s9y without mod_rewrite/
ErrorDocument Handlers. (garvinhicking)
* Created a clickable label for the autologin, german translation
(garvinhicking)
* Allow Autologin, saving login information in a cookie (tomsommer
& jtate)
* HTML-Nugget can now be configured to preserve textformatting.
Default is 'apply textformatting' to stay backwards-compatible.
(garvinhicking)
Version 0.4 (December 12th, 2003)
------------------------------------------------------------------------
* Fixed bug #841972 - Remove reference to leer.png (tomsommer)
* RSS2.0-feed now contains wfw:comments link for per-entry comments.
Is interpreted by SharpReader i.e. (garvinhicking)
* XHTML1 compatibility fixes, missing <tr> from the calendar fixed.
Thanks to casper/jedijab79 from the forums (garvinhicking)
* Reworked Syndication plugin to allow future embedding of new RSS-
fields depending with individual content.
First example is the pubDate-field for the 'channel'-context, as
suggested by Justin Alcorn (garvinhicking)
* Added ability to close (and re-open) comments for certain entries
[needs DB update!] (garvinhicking)
* Fixes for comments-plugin (for 0 comments, dateformat) (tomsommer)
* Fixes for mt-XMLRPC API (gschlossnagle)
* Fixed embed-check for more strict type comparison (garvinhicking)
* Relative links inside the RSS-feed will get converted to absolute
ones (garvinhicking)
* Fixed trackbacks sending HTML tags and registering unslashed text
in excerpt (tomsommer)
* Fix bug #816499 - Serendipity should search for `convert` binary
in /usr/bin (tomsommer)
* Corrected path to entries printed in the comment plugin
(tomsommer)
Version 0.3 (October 7th, 2003)
------------------------------------------------------------------------
* Fixed evaluation of the 'embed' variable and added a small 'HowTo'
to the INSTALL file (garvinhicking)
* Fixed problem with escaping single quotes during installation
(tomsommer)
* Fixed problem with dual-trailing slashes in paths during
installation (tomsommer)
* Configuration/installation will now save the current s9y version
to the config file... Thereby allowing upgrades at a later point
(tomsommer)
* Include <slash:comments> in RSS-Feed. Shows amount of comments
available
* Differentiate subscription mails between regular comment and
trackback and adjust the mail's content corresponding to this
(garvinhicking)
* Added verbose output for DB creation on installation, PostgreSQL
DB-setup fixes (jtate)
* Made XHTML-compatibility fix to radio buttons of the installer
(garvinhicking)
* Allow for browseing of categories (on multiple pages) and have
per-category RSS-feed (garvinhicking & sbergmann)
* Fixed display of category in full article (garvinhicking)
* Expand all config categories in installer when s9y is first
installed (garvinhicking)
* Added select-dropdown configuration directive for the plugins
(garvinhicking)
* Prepended language defines with a '@' to suppress error messages
for fallback-language (garvinhicking)
* Fixed search results not displaying all content (garvinhicking)
* Fixed some undefined indexes/constants (garvinhicking)
* Support manual editing of the publish date on articles, can be
disallowed via $serendipity['allowDateManipulation'] (
garvinhicking)
* Added SQL upgrade files from 0.2 to 0.3 (troutgirl)
* Fixed a number of bugs with language detection and display during
installation (tomsommer)
* Fixed bug for fetching entries on a certain date. Now s9y dies
with an error message if MySQL errors occur (garvinhicking)
* Display link to trackbacks on single-article view (garvinhicking)
* Enable preview to include extended body (garvinhicking)
* Display author in previewed entry (tomsommer)
* Resize images based on original image proportions, not by fixed
width & height (tomsommer)
* Added option to preview entries (jhermanns)
* Added ability to save drafts of entries (jhermanns)
* Fixed some links not being formatted for exit-tracking, if the
link appeared more than once in an entry (tomsommer)
* Added radio-button and "spacer" configuration directives for the
plugins (garvinhicking)
* RSS-feeds and fields can now be customized within the plugin
configuration (garvinhicking
* Send X-Powered-By and X-Engine mail-headers with each mail
Serendipity sends, for easier debugging (tomsommer)
* Added Powered-By META tag to identify Serendipity Blogs even if
the admin has disabled the power-by plugin (tomsommer)
* Allow for descriptions of each configuration-category (tomsommer)
* Timestamps in comments are now shown in 24-hour format (tomsommer)
* Send X-Powered-By and X-Engine mail-headers with each mail
Serendipity sends, for easier debugging (tomsommer)
* Trackback pings where only accepted on a POST method. Moveable
Type uses GET, so we now accept both. (garvinhicking)
* Fixed issue where trackbackpings were only sent to links in
extended entry, if one existed, discarding the standard body
(garvinhicking)
* Fixed issue where two users sharing same username & password would
not be able to log in correctly, causing errors on the admin pages
(tomsommer)
* Fixed issue where installation would execute SQL instructions even
if a table already existed, creating "ghost"-authors (tomsommer)
* Allow unsubscription of already subscribed entries (tomsommer)
* Allow subscription of blog-visitors to receive comments for an
entry (tomsommer)
* Restrict calendar to only browse between the dates you have
comments available for (garvinhicking)
* Added external plugin to display the latest comments on a sidebar
(experimental, garvinhicking)
* Add Link to extended entry in RSS-feed, if existing
(garvinhicking)
* Unified and optimized admin login functionality (tomsommer)
* Fixed trackback functionality (tomsommer)
* Send User-Agent "Serendipity/v" when trackbacking (tomsommer)
* New default theme (tomsommer)
* New config section ('Appearance') and new option to block certain
hosts from being put into the referer table (garvinhicking)
* Installer/configuration categories can now be folded in DHTML-
compatible browsers (garvinhicking, tomsommer)
* Conserve linebreaks in RSS comments. (garvinhicking)
* Allow deleting categories (moving articles to another category)
(garvinhicking)
* Autodetect language on installation (garvinhicking)
* RSS feeds properly utf8encoded, added <webMaster>,
<managingEditor>,<comments>,<category> and <generator> tag
(garvinhicking)
* RSS feed now contains <image> link to pixel/rss_banner.png (if
existing), otherwise use pixel/s9y_banner_tiny.png (garvinhicking)
* External Plugin for hotword/acronym replacements, as well as any
other content-rewriting plugin (garvinhicking)
* Show updated values after submit, remove config entries when a
plugin is removed (garvinhicking)
* Added an RSS-feed for comments to entries only (garvinhicking)
* Fixed archives to not properly show entries from the first/last
day of a month (garvinhicking)
* Fixed the database by separating primary key from {AUTOINCREMENT}
(jtate)
* Rewrote installer (tomsommer)
* Added support for postgres (jtate)
* Fixed replacement of {TEMPLATE_PATH} to be relative (tomsommer)
* Major codestyle, HTML and XHTML cleanup (garvinhicking)
* Removed lots of static non-translated text (garvinhicking)
* Remove config entries when a plugin is removed (garvinhicking)
* After plugin update, show the new values for the plugin instead
the old ones (garvinhicking)
* After submitting a comment, redirect back to the actual previous
page (tomsommer)
* Fixed inclusion of templates vs. database-CSS (tomsommer)
* Fixed CSS not being showed during installation (tomsommer)
* Cleaned up the comment-form (tomsommer)
* Fixes a bug that the last day of a month was not taken into
account of the archives (garvinhicking)
* Allow embeding of serendipity in your custom homepage (wrapFile
directive - see http://blog.supergarv.de/ for example)
(garvinhicking)
* Added a new file serendipity_define.js.php which can be pre-
included to a Java-script to set some variables (garvinhicking)
* alt tag with '' instead of "" (garvinhicking)
* Added CVS ID tags to file-headers (garvinhicking)
* Added 'Force XHTML11' config option [not used yet] (garvinhicking)
* Made direct links to each comment, actually point to the right URI
(tomsommer)
* Inserted htmlentities() for comments output. Was vulnerable to
cross-site scripting attacks (garvinhicking)
* Fixed the "categories listing" so that if there were no
categories, it didn't display garbage (jtate)
* XML header should be utf-8, not ISO-8859-1. This should fix the
encoding problems (sterling)
* Use ISO-8859-1 Charset to display pages (tomsommer)
* serendipity_date is now an H3, serendipity_title is now an H4
(troutgirl)
* Import stylesheets using @import (troutgirl)
* Made "H" in 'Posted by X in Y at H' a link, like in movabletype
(tomsommer)
* The line trailing each entry is now adapted to the "common format"
'Posted by xx in xx at xx | comments (n) | trackbacks (n)'
(jhermanns)
* Fixed minor problem with case in generated filenames (jhermanns)
* Removed all short tags '<?=' (jtate)
* Shortened the search field a little (jhermanns)
* Updated INSTALL instructions (troutgirl)
* Solved linebreak problem in "posted by..." via CSS (mueslix)
* Changed CSS class of "View Extended Entry" and "Posted by..." to
serendipity_entryFooter (mueslix)
* Default template is now set in the DB during installation
(jhermanns)
* Moved includes out of the templates (jhermanns)
* Fixed some problems with CSS not loading a first try (tomsommer)
* Saved lots of SQL queries when fetching config variables from the
database (tomsommer)
* Added new template system (tomsommer)
* Enhanced the insertion of emoticons (jhermanns)
* Removed static text and made some RSS regexps case-insensitive
(jhermanns)
* Added link to entry in emails, sent when comments or trackbacks
are made (tomsommer)
* Escape potential HTML characters in <title> in RSS feeds (Joyce P
& gschlossnagle)
* HTML is no longer allowed in comments, all HTML is formatted to
plain-text (tomsommer)
* Added direct link, to an entry, in the trackback dialog
(tomsommer)
* Top Referrers and Exits are now click-able (tomsommer)
* Admin area now uses the same styles as the rest of the blog
(tomsommer)
* New layout in the installer/configuration section (tomsommer)
* Fixed bug not showing the 6th row in the calendar, if the first
day of the month was a Sunday (tomsommer)
* Both emails and URLs, submitted with comments, are now shown.
E-mails are spam-secured, and URLs are checked for validity
(tomsommer)
* Avoid removing static files if pregenerate is not set (Joyce P &
tomsommer)
* Beautified the archives (jhermanns)
* RSS 2.0 is now default type of feed (sterling)
* Submitted mails in comments are now click-able (tomsommer)
* Added support for using *.gif in Image Manager, even if PHP is
compiled with read-only gif (tomsommer)
* Fixing bug #720632 (exit-links in html_nuggets plugin aren't
counted) (tomsommer)
* We now send different notification emails if the comment is a
trackback. (tomsommer)
* Stripped mail from HTML tags (tomsommer)
* When viewing a single entry, page <title> becomes entry's title.
(jhermanns)
* Links to entries are now called /archives/id_title_of_entry.html
(used to be /archives/e_id.html) (jhermanns)
* Time-ranges are now accessed like this: /archives/200203.html
(used to be /archives/d_200203.html) (jhermanns)
* Better non-WYSIWYG editor for Mozilla and IE users (tomsommer)
* Added validation to trackback-detection (tomsommer)
* You can now delete comments and trackbacks if you are logged in
(tomsommer)
* New logo in "Powered By" plugin (jhermanns & tomsommer)
* Sorting Comments & trackbacks by ID (tomsommer)
* We now remember comment details in cookies if requested, and
delete them if wanted (tomsommer)
* Added link back to main page (tomsommer)
* Added support for deletion in blogger and metaweblog APIs
(gschlossnagle)
* Added lots of error-handling to image manager (tomsommer)
* We now show trackbacks in a separate window, and count them
separately (jhermanns)
* Superuser-login initially sends you to authoring suit now
(jhermanns)
* Beautified mails (tomsommer)
* In Admin-module 'Edit entries' is now called 'Authoring Suite'
(tomsommer)
* Improved imagick thumbnail generation (jhermanns)
* You can now delete images in image manager (tomsommer)
* Fixed lots of missing translations (jhermanns)
* Added notice if search-string is smaller than 4 chars (tomsommer)
* Link to the archives is now /archive (jhermanns)
* Disallow empty comments (tomsommer)
* Fixed broken auto-trackback discovery (gschlossnagle)
* Fixed problem with echoing of .htaccess and paths, if installation
fails (tomsommer)
* Added CSS to installation-screen (tomsommer)
* Fixed bug when displaying individual days by clicking on the
calendar (tomsommer)
* Fixed bug #719016 - (entry-title does not escape correctly)
(tomsommer)
* Allow the showing of *complete* archived months (tomsommer)
* Fixed typo in serendipity_getCSS_avail() mysql-query (tomsommer)
* Prevent the Admin interface to be logged as referrer when using
the 'Back to Blog' link (bergmann)
* Added full language support - English, German (jhermanns)
* Keep track of which blog entry was linked from or referred to
(bergmann)
* Regenerate the .htaccess file, if installation fails (sterling &
muesli)
Version 0.2 (April 4th, 2003)
------------------------------------------------------------------------

6
docs/README Normal file
View File

@ -0,0 +1,6 @@
########################################################################
# README #
########################################################################
For the most up-to-date information on documentation, creating styles,
plugins and so on, please visit our Wiki on http://www.s9y.org/!

5
docs/UPGRADE Normal file
View File

@ -0,0 +1,5 @@
########################################################################
# UPDATING #
########################################################################
FOR UP TO DATE INFORMATION PLEASE REFER TO http://www.s9y.org

188
docs/upgrade.sh Executable file
View File

@ -0,0 +1,188 @@
#!/bin/sh
# File: serendipity_safe_upgrade.sh
# Author: Jez Hancock
#
# Description:
# This shell script performs a backup of the serendipity MySQL database and
# files prior to upgrading from one version to another.
echo "This bash file is out of date and does not respect the new directory structure, templates and compiled templates. It needs to be fixed, so if you don't know how to do bash scripting, please don't use this file. Use the web-based installer instead. If you DO want to make this file work, make sure you sure know how to do it. :-)";
exit;
########################################################################
# Configuration options start
########################################################################
# Change this to the IP address from which you will be updgrading the blog from
# in a browser. This IP address will be used in a .htaccess file to restrict
# access during the upgrade process:
ip=192.168.0.1
# Change this to the directory containing the current serendipity web files:
blog_dir=/usr/local/www/htdocs/serendipity
# Change this to the directory containing the new serendipity web files:
# This should be the directory containing the cvs version of s9y or the s9y
# tarball contents:
import_dir=/home/username/serendipity
# Change this to the directory you wish your weblog files and database to be
# backed up to. A subdirectory 's9y.YYYYMMDD' will be created under here into
# which a tarball will be created containing the backed up webfiles and
# database.
# For example if your backup_dir is set to '/home/user/backup', a directory
# called '/home/user/backup/serendipity.20040406' will be created to contain
# the backup tarball 'serendipity_backup.tar.gz' and the backup database file
# 'serendipity_backup.sql'.
# Note if the backup directory already contains a backup from the current day,
# the script will exit without doing anything.
backup_dir=/home/username/backup
# Change this to match your database user/name. Note you will be prompted for
# your password on the commandline.
db_name="serendipity"
db_user="serendipity"
########################################################################
# Configuration options end
# You should not need to modify anything below here!
########################################################################
ok() {
echo "[OK]" ; echo ""
}
nl() {
echo ""
}
# the date ... ymd=20040331 etc ... used in backup
ymd=`date "+%Y%m%d"`
# Our backup directory:
backup_dir=$backup_dir/serendipity.$ymd
# if the backup dir exists already, exit gracefully:
if [ -d $backup_dir ];then
echo "$backup_dir already exists - exiting."
exit
fi
# make backup dir:
echo "Creating backup directory:"
nl
echo "$backup_dir"
mkdir $backup_dir && ok || \
echo "Could not create $backup_dir - exiting."
# backup current weblog to a tarball in the backup dir:
echo "Backing up weblog files from:"
nl
echo "$blog_dir"
nl
echo "to the tarball:"
nl
echo "$backup_dir/serendipity_backup.tar.gz"
set `echo "$blog_dir" | sed -e 's,\(.*\)/\(.*\),\1 \2,'`
tar zcf $backup_dir/serendipity_backup.tar.gz -C $1 $2 && ok
echo "Backing up database $db_name to file:"
nl
echo "$backup_dir/serendipity_backup.sql"
nl
echo -n "MySQL user $db_user - "
mysqldump -u$db_user -p $db_name > $backup_dir/serendipity_backup.sql \
&& ok
# make backup dir safe:
echo "Changing perms on $backup_dir to 700"
chmod 700 $backup_dir && ok
# move current blogdir out of way:
echo "Moving:"
nl
echo "$blog_dir"
nl
echo "to:"
nl
echo "$blog_dir.$ymd"
mv $blog_dir $blog_dir.$ymd && ok
# now copy in the new files:
echo "Copying files from:"
nl
echo "$import_dir"
nl
echo "to:"
nl
echo "$blog_dir"
cp -R $import_dir $blog_dir && ok
# check if a .htaccess file exists in old blog dir - if so copy over:
if [ -f "$blog_dir.$ymd/.htaccess" ]; then
cp $blog_dir.$ymd/.htaccess $blog_dir
fi
# allow only our ip during upgrade - remember to remove these lines
# after you've finished updating!:
echo "Adding .htaccess directives to restrict browser access to blog to $ip"
echo "during upgrade process"
exec >> $blog_dir/.htaccess
echo "deny from all"
echo "allow from $ip"
echo 'ErrorDocument 403 "Upgrading, please check back soon!!!'
exec > /dev/tty
ok
# copy old uploads folder over:
if [ -d $blog_dir.$ymd/uploads ];then
echo "Copying old uploads folder from:"
nl
echo "$blog_dir.$ymd/uploads"
nl
echo "to:"
nl
echo "$blog_dir/uploads"
cp -R $blog_dir.$ymd/uploads $blog_dir/uploads && ok
fi
# most importantly don't forget the local config file - this is checked
# to see whether or not your current config setup needs upgrading or
# not:
echo "Copying $blog_dir.$ymd/serendipity_config_local.inc.php to $blog_dir"
cp $blog_dir.$ymd/serendipity_config_local.inc.php $blog_dir \
&& ok
echo "########################################################################"
echo "Important!"
echo "########################################################################"
echo "Backup is now complete. Continue to upgrade your serendipity"
echo "installation by browsing to it in a web browser - you will be prompted"
echo "with instructions from there."
nl
echo "After completing the upgrade via a browser, remember to remove the lines"
echo "starting:"
nl
echo "deny from all"
echo "allow from $ip"
echo "ErrorDocument 403 ..."
nl
echo "from the .htaccess file:"
nl
echo "$blog_dir/.htaccess"
nl
nl
echo "A copy of the original serendipity web folder can be found here:"
nl
echo "$blog_dir.$ymd"
nl
echo "After confirming the upgrade was successful, you can safely remove"
echo "this directory."
# This is the place to do any custom backup stuff - for example I have various
# directory structures that I copy from my blog base directory, a few custom
# plugins I copy, etc etc.
# ...
# Uncomment/modify the following line if you run the server:
#chown -R www:www $blog_dir && chmod 600 $blog_dir/serendipity_config_local.inc.php