1616 lines
61 KiB
Plaintext
1616 lines
61 KiB
Plaintext
* Improve permalink generation performance and enable more unicode
|
||
replacements (thanks to mbirth!)
|
||
|
||
Version 2.4-beta1 (September 12th, 2021)
|
||
------------------------------------------------------------------------
|
||
* Hide more PHP warnings in production mode, to ease the migration
|
||
to PHP 8
|
||
* Fix: Deleting a user was not possible
|
||
* New images added via the ML will set loading="lazy", improving
|
||
site performance for visitors (only if height and width known)
|
||
* Remove multitude of wysiwyg toolbars
|
||
* PHP 8 compatibility for serendipity core
|
||
* Fix: Using the ML filters in the selection popup after uploading
|
||
no longer removes option to insert image into article
|
||
* Drop never fully integrated laminas-db powered database backend
|
||
* Drop legacy mysql database backend (long ago replaced by mysqli)
|
||
* Update Cache/Lite to 1.8.3 for better PHP 7.4 compat
|
||
* Change backend_image_add hook to always contain same structure
|
||
* Split date and time input in editor into two input fields
|
||
* Improve performance of the media library by caching the file list
|
||
|
||
Version 2.4-alpha2 ()
|
||
------------------------------------------------------------------------
|
||
* Adds 'image_id' to event 'backend_image_add' in addData array
|
||
* Move MySQL databases from MyIsam and UTF8 to InnoDB and utf8mb4,
|
||
enabling full unicode input.
|
||
* added type 'media' to configuration types,
|
||
this shows an input text with the button for the media library,
|
||
unified the CSS between this item and the plugin item,
|
||
hide the preview when no image is selected
|
||
* renamed 'multiDelete' in media selection to 'multicheck'
|
||
as suggested in the comments
|
||
* check for empty file input in media_upload
|
||
* stripped the multilingual tags from the preview iframe
|
||
* totally resorted the language files, added a new 'langsorter.php'
|
||
script which automatically sorts and completes the languages,
|
||
strings which doesn't seem in use are now in the 'orphaned' section
|
||
* Make it possible for plugins to let the core skip the check
|
||
whether trackbacks are already sent, with
|
||
$serendipity['skip_trackback_check']
|
||
* Add the original image to the response images srcset when
|
||
the original image is small, to avoid upscaling
|
||
|
||
Version 2.4-alpha1 ()
|
||
------------------------------------------------------------------------
|
||
|
||
* template/bootstrap4/sidebar.tpl: fix usage of wrong template
|
||
variable which prevented the sidebar from being emitted.
|
||
|
||
* templates/2k11/admin/comments.tpl: Stay on the same page after
|
||
approving a comment; truncate comments to the same length (200)
|
||
as given by /include/admin/comments.php
|
||
|
||
* Merge s9y and plugin update notifications in dashboard.
|
||
|
||
* Fix: Simplify count_plugin_upgrades() in event_spartacus.
|
||
|
||
* Fix: Modified sql statement used for htaccess blocking to work in
|
||
MySQL 5.7.
|
||
Thanks to @fasterit!
|
||
|
||
* Switch new installations with MySQL >= 5.6.4 or MariaDB >= 10.0.5
|
||
to the InooDB stoprage engine and utf8mb4 charset. This enables
|
||
proper unicode support plus fulltext indexes, something older
|
||
mysql databases were not capable of
|
||
|
||
* Plugin nl2br: Include figure and figcaption tags (2.21.3)
|
||
Thanks to @stephanbrunker!
|
||
|
||
* Plugin spamblock: Add timeout protection against spambots (1.89).
|
||
Thanks to @stephanbrunker!
|
||
|
||
* #657: functions.config.inc.php:
|
||
eventhooks backend_login and backend_fail in function
|
||
serendipity_login and serendipity_authenticate_author
|
||
now only called with external=true (secondary login)
|
||
|
||
* Fix: added eventhook multilingual_strip_langs in
|
||
categories and permalinks for tagged translation
|
||
Thanks to @stephanbrunker!
|
||
|
||
* Change language names to native languages.
|
||
Thanks to @stephanbrunker!
|
||
|
||
* #650: Multiple fixes and enhancements, mainly to language settings.
|
||
Thanks to @stephanbrunker!
|
||
|
||
* admin/personal.inc.php: removed setting of $_SESSION:
|
||
serendipity_lang (already set in serendipity_config.inc.php
|
||
for all scenarios)
|
||
* admin/plugins.inc.php: fix some lookups from $_GET to
|
||
$serendipity['GET']
|
||
* compat.inc.php: function detectLanguage returns now NULL if
|
||
the detection failed, also doesn't change $serendipity['autolang']
|
||
anymore which remains 'en' as general fallback.
|
||
* functions.config.inc.php:
|
||
* major rework of the functions serendipity_getSessionLanguage
|
||
and serendipity_getPostAuthSessionLanguage. Those two functions
|
||
should now process the user input via GET and POST, store it
|
||
into SESSION and COOKIE, and if no such input is given,
|
||
fallback to browser language negotiation and default language.
|
||
More details in the comments to that functions.
|
||
$serendipity['detected_lang'] is the language found from user
|
||
input or browser negotiation.
|
||
* function serendipity_load_configuration sets the language
|
||
back to 'autolang' (which is 'en') if the language loaded does
|
||
not exist. Also sets the value $serendipity['default_lang']
|
||
to the default language of the blog.
|
||
* removed the Cookie 'userDefLang' which is no longer needed
|
||
* functions.entries.php:
|
||
* function serendipity_printArchives() hooks now
|
||
into hook_event::'frontend_fetchentries' to get multilingual
|
||
data, also doesn't show months and years with zero entries.
|
||
* function fetchEntryCategories, fetchEntryData and
|
||
fetchCategories strips now data of multilingual tags
|
||
* functions.routing.inc.php: fix some lookups from $_GET to
|
||
$serendipity['GET']
|
||
* plugin_api.inc.php: added function find_plugin_id which returns
|
||
an array of the ids of the installed instances of the given plugin
|
||
this is used for checking the configuration of that plugin in other
|
||
plugins
|
||
* created a new event hook 'multilingual_strip_langs' to strip
|
||
tagged translation of elements outside the sidebar (mostly
|
||
categories in entry display).
|
||
|
||
* Add plugin update notifications to the plugin update button and
|
||
to the dashboard.
|
||
|
||
Version 2.3.5 (April 25th, 2020)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fix: CSS: Restrict block display of summary to trackbacks. (#703)
|
||
|
||
* Fix: Don't strip HTML from comments body in serendipity_plugin_comments
|
||
before serendipity_event_unstrip_tags can convert the HTML tags
|
||
(being called via frontend_display hook). (#702)
|
||
|
||
* Fix: [CKE] Don't remove <details> and <summary> elements from
|
||
WYSIWYG editor.
|
||
|
||
* Fix: Don't delete extend properties from the entryproperties
|
||
plugin when publishing from dashboard (or sending
|
||
delayed trackbacks). (#695)
|
||
|
||
* Fix: SQL error in serendipity_plugin_history present since we
|
||
"don't allow requesting an archive page that doesn't exist"
|
||
(2.3.3). (#694)
|
||
|
||
* Fix: Entry title in backend list of entries was double escaped.
|
||
|
||
* Fix: Don't drop upgraded_version from local plugin cache.
|
||
|
||
* Fix: Regular expression in functions_routing.inc.php
|
||
|
||
* Fix: Truncate extension of media items to 5 chars (which ist the
|
||
max length of the corresponding database field). (#609)
|
||
Thanks to @mmitch!
|
||
|
||
Version 2.3.4 (March 25th, 2020)
|
||
------------------------------------------------------------------------
|
||
|
||
* Security: Fix RCE on Windows.
|
||
Thanks to Junyu Zhang <rgdz.eye@gmail.com>!
|
||
|
||
* Fix: ML: Fixed filename generation when renaming and added
|
||
some error messages on rename failures.
|
||
|
||
* Display source of plugins (Spartacus, bundled or locally installed).
|
||
|
||
Version 2.3.3 (March 22nd, 2020)
|
||
------------------------------------------------------------------------
|
||
|
||
* #651: When using checkboxes to insert multiple media files, if only
|
||
one asset has been selected, do not use the gallery mode,
|
||
but instead single-asset view. Also improves to click the title
|
||
of an asset to select its checkbox, and hides the 'Insert all'
|
||
button when no assets are selected. (garvinhicking)
|
||
|
||
* Use the video tag for videos in the Medialibrary, also when
|
||
inserting such a video into an entry
|
||
|
||
* media_choose.tpl: Fixes bad usage of
|
||
{serendipity_hookPlugin eventData=...} to {serendipity_hookPlugin eventData=}
|
||
and allow plugins to skip HTML block insertion to use their own
|
||
markup
|
||
|
||
* Updates mailer event plugin to support force sending mails on
|
||
published blog entries and ability to prepend a mail body.
|
||
Also fixes missing "keep strip tags" configuration option
|
||
|
||
* Fix serendipity_killPath().
|
||
Thanks to @surrim!
|
||
|
||
* Don't allow requesting an archive page that doesn't exist.
|
||
Thanks to @lotharsm!
|
||
|
||
* Fix: Set action to empty in functions_routing.php when serving JS;
|
||
otherwise the default page has been generated at every call.
|
||
|
||
* Fix: Add valid HTTP referrer when trying to delete a
|
||
trackback from the frontend.
|
||
|
||
* Fix: Wordwrap at word boundaries only in bundled plugin
|
||
serendipity_plugin_comments.
|
||
|
||
* Fix: Force empty limit to "" in serendipity_fetchEntries().
|
||
|
||
* Fix: Escape version string in update notifier to avoid XSS.
|
||
|
||
* Fix: Prevent renaming a ML object into an existing file,
|
||
resulting in deletion of both from disk and database.
|
||
|
||
* Fix: Items in Medialibrary that are not images now get
|
||
the correct link
|
||
|
||
* Fix: Remember where you stored images last (#652)
|
||
|
||
* Fix: [bbcode] Get roman numerals working in bbcode plugin.
|
||
Thanks to Fabien Chabreuil!
|
||
|
||
* Fix: Force positive limits for number of entries shown on
|
||
title page and in RSS feed. s9y doesn't work with 0 or
|
||
negative numbers, so force our default (15) in this case,
|
||
(#646)
|
||
|
||
Version 2.3.2 (October 16th, 2019)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fix: Auto-generated mails submitted to qmail as MTA will get
|
||
mangled if encoded to quoted-printable due to qmail
|
||
changing "\r\n" linebreaks to "\r\r\n". Submit just "\n"
|
||
as linebreaks; other MTAs should cope with that.
|
||
|
||
* fix: Rotating an image did not rotate all responsive thumbnails
|
||
|
||
* fix: The wysiwyg editor stripped the figcaption element used
|
||
for image captions
|
||
|
||
* Only populate $serendipity['GET'], $serendipity['POST'] and
|
||
$serendipity['COOKIE'] with references to $_GET['serendipity'],
|
||
$_POST['serendipity'], $_COOKIE['serendipity'] if they are
|
||
transmitted as an array. Else, an empty array is used.
|
||
Prevents PHP warnings (Issue 642) thanks to @hannob
|
||
|
||
* Escape category images to avoid backend XSS.
|
||
Thanks to @hannob!
|
||
|
||
* Only allows .txt and .log files for spamblock logging.
|
||
Thanks to Gary O'Leary-Steele (CVE TBD)
|
||
|
||
* Fixes not properly displaying plugin save errors (validation)
|
||
|
||
* Fix autologin when using MySQL (thanks @Eike Rathke,
|
||
https://github.com/s9y/Serendipity/pull/632)
|
||
|
||
Version 2.3.1 (August 21st, 2019)
|
||
------------------------------------------------------------------------
|
||
|
||
* Enhance i18n of ML multimove.
|
||
|
||
* Fix ML multidelete.
|
||
|
||
* Change footer_info and prev/next links for archive pages for
|
||
"stable archives" sort order.
|
||
|
||
* Fix pagination in core for "stable archives" sort order and fix
|
||
prev/next links for pagination in timeline and bulletproof themes
|
||
when "stable archives" are active.
|
||
|
||
* Add Spartacus links ("more info") to plugin lists.
|
||
|
||
* Fix/Change: Wording of plugin display ("version") and PHP/smarty
|
||
variable names.
|
||
|
||
* Spartacus: Fix caching of plugin lists in getCachedPlugins().
|
||
|
||
Version 2.3.0 (August 10th, 2019)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fix: Don't show "Array" under Update notification if autoupdate
|
||
plugin is not installed
|
||
|
||
* Fix PHP 7.4 issue in PEAR HTTP_Request2
|
||
|
||
Version 2.3-rc1 (August 3rd, 2019)
|
||
------------------------------------------------------------------------
|
||
|
||
* spamblock: Minor code change for PHP 7.4 compatibility (thanks
|
||
@hannob!)
|
||
|
||
* Fix: Make $entry available for templates.
|
||
|
||
* bulletproof theme: Fix preview iframe.
|
||
|
||
Version 2.3-beta1 (April 26th 2019)
|
||
------------------------------------------------------------------------
|
||
* Activate stablearchive option by default for new blogs
|
||
|
||
* Fix: Smarty reference and PHP7.2 compatibility issue in timeline theme.
|
||
|
||
* Fix: PHP7.2 compatibility issue in clean-blog theme.
|
||
|
||
* Security: Fix XSS in Editor Preview by interpreted EXIF tags
|
||
(thanks @hannob!)
|
||
|
||
* Security: Fix XSS in Media Library by interpreted EXIF tags
|
||
(thanks @hannob!)
|
||
|
||
* Allow to receive multiple trackbacks and pingbacks
|
||
(thanks @mitch!)
|
||
|
||
* Fallback for $lang variable when configuration failed to load,
|
||
which evades some unuseful error messages (thanks @HQJaTu!)
|
||
|
||
* Improve nl2br p mode to works with tags like <strike>
|
||
(thanks @stephanbrunker)
|
||
|
||
* Minimal PHP version is now PHP 7.0
|
||
|
||
* Update voku/simple-cache to 4.0.1, fixes opcache warning on
|
||
hosted environments (thanks @voku and @hannob)
|
||
|
||
* Fix bug in nl2br's p mode that ate pre elements (thanks
|
||
@stephanbrunker!)
|
||
|
||
* Add internal cache invalidation when comment is added
|
||
|
||
* Move cache into functions.inc.php, resulting in this API:
|
||
* serendipity_setupCache() (used internally)
|
||
* serendipity_cleanCache()
|
||
* serendipity_cacheItem($key, $item, $ttl = 3600)
|
||
* serendipity_getCacheItem($key)
|
||
|
||
* Drop deprecated serendipity_purgeEntry function
|
||
|
||
* Default settings: Disable entryproperties cache, enable internal
|
||
cache
|
||
|
||
* Update Smarty to 3.1.33
|
||
|
||
* Use voku/simple-cache for internal cache as bundled lib, which
|
||
will allow to cache with memcached and redis instead of just
|
||
on the filesystem
|
||
|
||
* Set responsiveimages as default plugin
|
||
|
||
* Add rewrite to absolute url for srcsets to the feed
|
||
generation
|
||
|
||
* Fix bug with not properly adding trailing "/" when managing
|
||
directories, so that saving different permissions would not
|
||
be properly applied
|
||
|
||
* Re-add missing plugin API event hook backend_media_rename
|
||
from prior pmigration in Serendipity 2.2 (#509)
|
||
|
||
* Re-add missing ACL adjustments after renaming a directory
|
||
(#509)
|
||
|
||
* Fix typo that switched read permissions with write permissions
|
||
when editing a category ACL
|
||
|
||
* Fix mispositioned button in media db directory list.
|
||
|
||
* Use figure/figcaption markup for media db images w/ captions.
|
||
|
||
* Add localization to maintenance mode, add German translation.
|
||
|
||
Version 2.2.1-alpha1 (September 20th, 2018)
|
||
------------------------------------------------------------------------
|
||
|
||
* PHP 7.2 support: New autologin token approach, various code
|
||
changes
|
||
|
||
* Add function to add multiple images to an enty at once,
|
||
creating a gallery
|
||
|
||
* Add maintenance mode, allowing access to the blog only for
|
||
currently logged in user. This is meant to be activated when
|
||
upgrading the blog.
|
||
|
||
* [Security] Improved password hashing by moving to bcrypt
|
||
|
||
* Fix bug that could lead to noindex being activated by accident
|
||
|
||
* Update Smarty to 3.1.32
|
||
|
||
* Update bootstrap 4 design to new bootstrap version
|
||
|
||
* Add option to disable google fonts in several designs
|
||
|
||
* Make it easier to drag plugins to other columns
|
||
|
||
* Improve and fix the p-mode of the nl2br plugin (Stephan Brunker)
|
||
|
||
* Support SVGs in Media Library
|
||
|
||
* Support automatic generation of responsive image thumbnails, and
|
||
using them when inserting images to entries
|
||
|
||
* Rework messy code updating the database and entries when
|
||
renaming or moving items in the media library
|
||
|
||
* Improve internal cache to work with more plugins, by reacting
|
||
to more variables changing the output
|
||
|
||
* Add backend_view_entry hook, that is executed for every entry
|
||
in the backend entry list
|
||
|
||
* Updated entryproperties plugin to support a custom property for
|
||
multiple ownership of an article
|
||
|
||
* Emit and detect rel=trackback element to find trackback
|
||
url, to have a reliable alternative to RDF used so far
|
||
|
||
* Merge and rename the two configuration variables to limit
|
||
displayed entries in the dashboard (#493):
|
||
|
||
$serendipity['dashboardLimit'] and
|
||
$serendipity['dashboardDraftLimit'] are now merged into
|
||
$serendipity['dashboardEntriesLimit'] - please change your
|
||
serendipity_config_local.inc.php accordingly if you used
|
||
the former variables.
|
||
|
||
The dashboard will now show as many future entries as
|
||
configured in "dashboardEntriesLimit"; if there are less
|
||
future entries, it will display drafts until
|
||
"dashboardEntriesLimit" is reached.
|
||
|
||
* Add a "delete" button to the backend entry form (#491, #494)
|
||
|
||
* Change Spartacus default mirror to github (#489)
|
||
|
||
Version 2.1.6 (August 9th, 2019)
|
||
------------------------------------------------------------------------
|
||
* Prevent error in upgrader when $sqlfiles is NULL.
|
||
|
||
* Fix preview iframe in bulletproof, thx pixel32
|
||
|
||
Version 2.1.5 (May 1st, 2019)
|
||
------------------------------------------------------------------------
|
||
* Security: Fix XSS in Editor Preview by interpreted EXIF tags
|
||
(thanks to @hannob!)
|
||
|
||
* Security: Fix XSS in Media Library by interpreted EXIF tags
|
||
(thanks to @hannob!)
|
||
|
||
* Fix mispositioned button in media db directory list.
|
||
|
||
* Change default for comment subscription to full text.
|
||
|
||
* Display errors if comment coulnd't be deleted.
|
||
|
||
* Make it easier to drag plugins to other column.
|
||
|
||
* Add fallback for broken JS in configuration screens.
|
||
|
||
Version 2.1.4 (September 20th, 2018)
|
||
------------------------------------------------------------------------
|
||
|
||
* Security: Fix XSS for pagination, when multi-category selection
|
||
is used. Thanks to Brian Carpenter (geeknik) and Hanno Boeck!
|
||
|
||
* Minor code fixes (proper PHP escaping for 'orderkey' SQL statement
|
||
|
||
* Skeleton, Timeline and Clean Blog templates: Add theme option to
|
||
disable google webfonts
|
||
|
||
* Link to https s9y.org pages
|
||
|
||
Version 2.1.3 (August 16th, 2018)
|
||
------------------------------------------------------------------------
|
||
|
||
* Security: Make sure that the admins configuration for RSS
|
||
and blog entry limit is parsed as integer for SQL queries.
|
||
Thanks to @oreamnos and Hanno Boeck for reporting!
|
||
|
||
* Security: Prevent XSS possibility in "edit entries" panel.
|
||
Thanks to @oreamnos and Hanno Boeck for reporting!
|
||
|
||
* Security: Disallow sending comment notifications and mails to more than one
|
||
mail address. This could be used to approving opt-ins of requests
|
||
that did not belong to the same email that was approved.
|
||
Thanks to Hanno Boeck for reporting!
|
||
|
||
* Security: Remove exit.php open redirect, when not using the trackexits-
|
||
plugin configured with Serendipity exit tracking.
|
||
Thanks to Julio Cesar (from infosec.com.br) and Hanno Boeck for reporting!
|
||
|
||
* Fix SQL compatibility for creating of table "serendipity_groupconfig"
|
||
|
||
* Added new "legal" plugin property bag attribute to indicate
|
||
impact for the GDPR / DSGVO, used in conjunction with the
|
||
serendipity_event_gdpr_dsgvo plugin
|
||
|
||
* Disabled subToMe service by default to prevent issues with GDPR
|
||
|
||
Version 2.1.2 (March 25, 2018)
|
||
------------------------------------------------------------------------
|
||
|
||
* Exclude defunct netmirror spartacus repository
|
||
|
||
* Adapt .htacess default rules to exclude rewriting documentation
|
||
(Issue #521)
|
||
|
||
* Fix a regression in Net/DNSBL regarding
|
||
serendipity_event_spamblock_rbl and
|
||
serendipity_event_spamblock_surbl by adding Net/DNS2 1.4.3 as a
|
||
bundled library to core and patching Net/DNSBL (#497)
|
||
|
||
* Fixed broken Akismet API calls (#507)
|
||
|
||
* Fixed comment preview for logged-in users (#503)
|
||
|
||
* Fixed message display after comment editing/deleting (#526)
|
||
|
||
* Don't show empty plugin groups in list (#496) and fix broken
|
||
plugin display in Firefox.
|
||
|
||
* Add template path as first entry to template_dirs (#524)
|
||
|
||
Version 2.1.1 (April 9th, 2017)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fixed a regression issue where configuration variables could not
|
||
properly be stored when they were set to false.
|
||
|
||
Version 2.1.0 (April 8th, 2017)
|
||
------------------------------------------------------------------------
|
||
|
||
* Some more PHP7 error catching
|
||
|
||
* Fix missing token when updating plugin
|
||
|
||
* Fix missing variable name in regular expression match, Issue #442
|
||
|
||
Version 2.1-rc1 (January 26th, 2017)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fix issue #437 - Remove the hardcoded media filter only_filename
|
||
input field and re-allow the $order_fields['i.name'].
|
||
|
||
* Issue #430, fix proper name of new feedShowMail configuration var
|
||
in rss.php for showing mail addresses
|
||
|
||
* [Security] Enhance CSRF-Tokens for toggling/moderating comments
|
||
|
||
* Allow to set a default category for authors (personal preferences)
|
||
|
||
* Changed how the hidden password element is displayed to prevent
|
||
browsers from autofilling it into the entryproperties plugin
|
||
|
||
* [Security] Enhanced media upload check to also check redirects
|
||
for local files, thanks to Xu Yue (again!)
|
||
|
||
* [Security] Prevent XSS in adding category and directory names,
|
||
thanks to Edric Teo @smarterbitbybit.
|
||
|
||
* [Security] For multi-deletion of entries, secure the HTTP referrer
|
||
output to prevent XSS (Issue #435)
|
||
|
||
* [Security] Reject %0D/%0A in exit tracking and other places
|
||
(Issue #434)
|
||
|
||
* [Security] Redirection of comment.php now checks the referrer
|
||
and only allows the blog's host (thanks to Lee Sheldon Victor)
|
||
|
||
* [Security] Fix missing integer casting for inserting new categories
|
||
(thanks to cdxy)
|
||
|
||
* Disabled Selenium test files unless enabled
|
||
|
||
Version 2.1-beta2 (September 26th, 2016)
|
||
------------------------------------------------------------------------
|
||
* Improved backend accessibility by hiding iconfont icons for
|
||
screenreaders (using aria-hidden).
|
||
|
||
* Replaced the JS-based equal height solution in the backend with
|
||
a modern CSS-only solution based on Flexbox for browsers that
|
||
support it. (Browsers that do not support Flexbox or that only
|
||
support outdated versions of Flexbox get the old JS solution as
|
||
a fallback.)
|
||
|
||
* [Security] Prevent moving files by using their directory name.
|
||
[Security] Possible SQL injection for entry category assignment
|
||
[Security] Possible SQL injection for removing&adding a plugin
|
||
|
||
All issues require a valid backend login.
|
||
Thanks to Hendrik Buchwald for finding this via their
|
||
RIPS source code analyzer (www.ripstech.com)
|
||
|
||
* [Security] Add new configuration option to enable fetching
|
||
local files for the media uploader. By default this is now
|
||
disabled to prevent Server Side Request Forgery (SSRF).
|
||
Thanks to Xu Yue for pointing this out!
|
||
|
||
* Added new API wrapper serendipity_request_url() to request URLs.
|
||
Currently uses HTTP_Request2, might change to curl or others in
|
||
the future, but irrelevant to plugins using this function.
|
||
|
||
* Removed outdated themes blue, carl_contest, kubrick and wp. They
|
||
live on Spartacus now.
|
||
|
||
* Added new theme "Skeleton". Skeleton is a responsive, mobile first
|
||
HTML5/CSS3 theme built on the Skeleton framework.
|
||
|
||
* Fix comaptibility bug preventing Internet Explorer (+Edge) to
|
||
clear the entry editor cache when saving an entry
|
||
|
||
* Remove backend js from preview_iframe.tpls, makeing entry previews
|
||
faster, more accurate and more reliable
|
||
|
||
* Introduce new plugin api function
|
||
$plugin->getFile($filename, $key = 'serendipityPath'). Other
|
||
than parseTemplate($filename) it will not parse the found file
|
||
via smarty, and it allows directories inside $filename. Intended
|
||
use is finding files like images via the fallback chain, giving
|
||
themes the chance to serve custom versions instead.
|
||
|
||
* Give theme authors the option to force using a template file from
|
||
the frontend, {getFile file=... frontend=true}
|
||
|
||
* Fix entry preview by making sure it always uses the correct
|
||
template files to generate preview, replacing internal magic
|
||
with direct parameters
|
||
|
||
* Rewrite and simplification of the file fallback chain in
|
||
serendipity_getTemplateFile. Removes templates/default/ from
|
||
from the chain, as it was replaced by templates/2k11/
|
||
|
||
Version 2.1-beta1 (June 8th, 2016)
|
||
------------------------------------------------------------------------
|
||
|
||
* Added new theme "Timeline". Timeline is a fully responsive,
|
||
mobile first HTML5/CSS3 theme built on the Bootstrap
|
||
framework.
|
||
|
||
* Add new config variable $serendipity['cors'] to allow to set
|
||
Access-Control-Allow-Origin: * headers for sensible places
|
||
(RSS feeds), to i.e. allow JavaScript's XMLHTTPRequest to read
|
||
those feeds.
|
||
|
||
* Introduce a section with modern recommended themes in the
|
||
themes backend menu. Themes can be included there by setting
|
||
Recommended: Yes in their info.txt
|
||
|
||
* Merge sidebar and event upgrade pages in one single page
|
||
button
|
||
|
||
* Add colorpicker as possible plugin option item type, set
|
||
type to 'color' to use it
|
||
|
||
* Comments made via the backend on own articles don't trigger
|
||
the comment notification (thanks to xoxys)
|
||
|
||
* Fix missing perm checks for "standard user" in MediaLibrary
|
||
|
||
* Fix show Dashboard entries by authors entries
|
||
|
||
* Fix show Dashboard comments by authors entries (#385)
|
||
|
||
* Use CDATA encoded body for ATOM feed
|
||
|
||
* Fix: Ajax upload to ML now also works for non-images
|
||
|
||
* Added new theme "Clean-Blog". Clean Blog is a fully responsive,
|
||
mobile first HTML5/CSS3 theme built on the Bootstrap
|
||
framework.
|
||
|
||
* Fixed checkbox entryproperties re-sets (#376)
|
||
|
||
* Fixed media item delete handler (#371)
|
||
|
||
* Rewrote Routing code for index.php to be outsourced into
|
||
include/functions_routing
|
||
|
||
* Removed broken feature for viewing blog entries by multiple
|
||
authors, dropped code from core and plugin_authors.
|
||
|
||
* Optimize scaleImage returns
|
||
|
||
* Fixed media item rename handler (#370)
|
||
|
||
* Fixed and enhanced multiple media redirects and path / name
|
||
related issues, as well as some better umlaut conversions
|
||
|
||
* Allow strict media directory selection by toggle filter
|
||
|
||
* Allow a better auto char conversion to media upload item names
|
||
|
||
* Added Start / End pagination to MediaLibrary and entries list
|
||
|
||
* Added new bulk image move ability to MediaLibrary. This fixes
|
||
several issues with rename AND remove and allows to automatically
|
||
check and set MediaLibrary item entry paths on MOVE.
|
||
Staticpages from v.4.52 are modified to support this too.
|
||
Now supports Quickblog (imageselectorplus) entry path repairs.
|
||
|
||
* Fix MediaLibrary objects not pass through into entryproperties
|
||
CustomFields
|
||
|
||
* Fix fatal error atom 1.0 issue; References #362
|
||
|
||
* Fix eraseEntryEditorCache script in preview_iframe updertHooks
|
||
IFRAME
|
||
|
||
* Fix the Serendipity template and file fallback chaining to work
|
||
more precise
|
||
|
||
* Disable CKEDITOR Source protection for Smarty and WP-Smarty like
|
||
markup, since now being usable w/o setting ACF OFF
|
||
|
||
* Set Serendipity var use_autosave in backend only
|
||
|
||
* Fix entries.inc fetching iframe event returning 1, when true and
|
||
added a new language constant change message for multilanguage
|
||
entry changes, instead of the wrongly used save message
|
||
|
||
* Fix importers to use the new mysqli API extension with PHP 5+
|
||
|
||
* WIP: Added an internal cache to speedup s9y's site generation. Can
|
||
be activated by setting use_internal_cache to true in
|
||
serendipity_config.inc.php. Test feedback needed.
|
||
|
||
* Added <IfModule mod_rewrite.c> checks to .htaccess for URL
|
||
rewriting
|
||
|
||
* Add support for cronjob plugin to spartacus, to notify blog owner
|
||
about possible updates (via e-mail)
|
||
|
||
* Added link to preview spartacus themes on blog.s9y.org
|
||
|
||
* Added two configuration variables that can be set in
|
||
serendipity_config_local.inc.php to influence the dashboard entry
|
||
limit:
|
||
|
||
- $serendipity['dashboardLimit']: How many future entries to fetch
|
||
(default: 5)
|
||
- $serendipity['dashboardDraftLimit']: How many entries in total
|
||
shall be displayed in the dashboard section (default: 5)
|
||
- $serendipity['dashboardCommentsLimit']: How many comments
|
||
(default: 5)
|
||
|
||
(Draft entries will only be fetched if there are less future
|
||
entries than the total entry limit)
|
||
|
||
* Fix: the syndication plugin links subtome correctly to the atom
|
||
feed when he is activated with the rss feed
|
||
|
||
* Issue #238: When creating/renaming media directories, replace
|
||
special characters with the same i18n rules like Permalinks are
|
||
created, renaming umlauts etc.
|
||
|
||
* Add "update all"-button to plugin update page
|
||
|
||
* Issue #234: Granular options to force backend popups for certain
|
||
areas
|
||
|
||
* Introduce serendipity['ajax'] to detect incoming ajax requests
|
||
and react accordingly in core and plugins
|
||
|
||
* Issue #248: Add $serendipity['forceBase64']=true option (can be
|
||
set in serendipity_config_local.inc.php) to make Serendipity
|
||
*not* use 8bit Imap functions for sending mail, for MTAs that
|
||
behave erradically otherwise.
|
||
|
||
* Issue #257: Make sure to check entered admin-user password
|
||
|
||
* Issue #264: Drop $authorid for permissions based on images
|
||
instead of directories, it was not used anymore
|
||
|
||
* Some small enhancements to the error reporting
|
||
|
||
|
||
Version 2.0.3 (January 4th, 2016)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fix XSS in backend comment editing form for logged-in authors,
|
||
thanks to Onur Yilmaz and Robert Abela from Netsparker.com
|
||
|
||
* Fix some backend entry form related event messages
|
||
|
||
|
||
Version 2.0.2 (July 24th, 2015)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fix security issues reported by Tim Coen of Curesec.com:
|
||
|
||
- Forbid uploading files with PHP contents and possible
|
||
PHP execution by authenticated users (critical if
|
||
you have possible untrustworthy authors)
|
||
- Add proper escaping for comment approval tokens to prevent
|
||
SQL injection (authenticated authors only)
|
||
- Add proper escaping of comment's author names in the
|
||
comment reply form to prevent XSS (2k11 template, javascript
|
||
based)
|
||
|
||
* Minor layout fixes for media DB media filters
|
||
|
||
* Backported some Importer db bugfixes
|
||
|
||
* CKEDITOR bugfix releases to 4.4.8 - please read the changelog.
|
||
Includes widget, lineutils, fakeobjects Plugins and S9y added
|
||
cheatsheet and procurator Plugins.
|
||
Changed config.autoParagraph set to false, to prevent wrapping
|
||
p tags around extraAllowedContent tags.
|
||
|
||
* Smarty bugfix upgrades to 3.1.27 - please read the changelog.
|
||
Compilation time was vastly improved.
|
||
New Features in NEW_FEATURES.txt.
|
||
|
||
* It is now possible to switch to a theme's admin theme if it has
|
||
been selected as a frontend theme first
|
||
|
||
* Syndication Plugin Issue #285:
|
||
- Add "none" as possible value for the xml-icon in the
|
||
syndication plugin, to enable plain links
|
||
- Reset subtome full icon path to support
|
||
serendipity_getTemplateFile()
|
||
- Link creation fixes for Bulletproof coloured style (eg blue)
|
||
|
||
* Fix auto include of a User theme /admin/user.css backend file.
|
||
|
||
PLEASE NOTE:
|
||
|
||
2.0.1 brought in an automated include of a themes "user.css"
|
||
file. If you don't want to use such file any more (and you have
|
||
one), you will have to delete or rename it by hand!
|
||
|
||
Also please note, that user stylesheet selectors like
|
||
|
||
.selector {
|
||
background-image: url(img/example.jpg);
|
||
}
|
||
|
||
now need to use the {TEMPLATE_PATH} like
|
||
|
||
.selector {
|
||
background-image: url({TEMPLATE_PATH}img/example.jpg);
|
||
}
|
||
|
||
Content of a user.css will always be put LAST into the combined
|
||
CSS, this means it will override any possible plugin output.
|
||
If a user.css file does not exist in your own template directory,
|
||
but inside the default 2k11 template directory, this will always
|
||
be used (this behaviour is called "default fallback chain").
|
||
|
||
* Use https URLs for Atom feed, if called through HTTPS (hboeck)
|
||
|
||
* Restore the "Show toolbar within media selector popup?" option,
|
||
it was ignored before.
|
||
|
||
* Fix Issue #321, negative offset for LIMIT SQL statements when
|
||
using stable archive sorting and plugins like history.
|
||
|
||
* Templatechooser will not apply theme in backend admin.
|
||
|
||
* Use "secure" flag for (session) cookies sent over SSL, thanks to
|
||
dayton967
|
||
|
||
* Make preview_iframe.tpl template files load the proper frontend
|
||
CSS file, including cache-busting version string when changing
|
||
themes
|
||
|
||
* Implement patch to properly initiate templates_c on installation
|
||
for shared installs (thanks to fugue88)
|
||
|
||
* Allow templatechooser plugin to read a custom "blacklist.txt"
|
||
within its directory, that can blacklist certain themes from
|
||
being selected.
|
||
|
||
* Allow serendipity_setCookie() function to set custom expiry.
|
||
|
||
* Adapt .htaccess profile of "mod_rewrite for 1&1 and problematic
|
||
servers" to not include the "Options -MultiViews" option, since
|
||
this is often blocked
|
||
|
||
* Fix initializing smarty framework in the preview/saving iframe,
|
||
so that a template's config.inc.php is always loaded.
|
||
|
||
* Show debugging .tpl file information with relative directory only
|
||
|
||
* fix wrong upgrade removal of dead files with 2.0.1 update
|
||
|
||
|
||
Version 2.0.1 (March 12th, 2015)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fix missing escaping (possible XSS) of category names in the
|
||
Backend Entry Admin, which would allow editors that create a
|
||
forged category name to attack other editors in the backend
|
||
(privileged access to the backend required). Thanks a lot to Edric
|
||
Teo for reporting this issue.
|
||
|
||
* Improved detection for possible upgrade/plugin/PHP errors. A
|
||
warning will be emitted on the dashboard, when the Serendipity
|
||
JavaScript library could not be loaded.
|
||
|
||
* syndication fix: use absolute urls for subtome
|
||
|
||
* Issue 306: localStorage may be deactivated by setting a config
|
||
option or using security-related extensions at least in some
|
||
browsers, which might (at least in FF) break backend JS
|
||
functionality. Added extra tests to 2k11 backend JS.
|
||
|
||
If you use localStorage, please test if it is actually available
|
||
by testing if localStorage !== null in JS.
|
||
|
||
* Issue 280: Allow every theme to utilize a "user.css" file that
|
||
gets loaded on top of the frontend (or backend, if in admin/
|
||
subdirectory) theme. This file can be used for customized CSS of
|
||
a blog-admin which carries over to future Serendipity updates
|
||
|
||
* Issue 299: Do not display dashboard for users with no permission
|
||
to perform actions in the backend (frontend-users)
|
||
|
||
* Make "rewriteURL" smarty modifier available to do a
|
||
{$CONST.PATH_ARCHIVE|rewriteURL} within a smarty template file.
|
||
|
||
* Add a generic odd/even for backend dashboard widgets to align
|
||
properly. Future dashboard widgets need to get the new extra
|
||
class dashboard widget on the section element they create.
|
||
|
||
* Fix event emoticate plugin to reflect proper call usage of
|
||
serendipity_getTemplateFile(), if a theme uses custom emoticons.
|
||
UPDATE your themes emoticons.inc.php file, if have. See example
|
||
file in plugin dir.
|
||
|
||
* Change 2k11 config.inc.php to reflect proper
|
||
serendipity_getTemplateFile() when frontend files shall be
|
||
referenced within the backend.
|
||
|
||
* Fixed missing file message for deleted media items
|
||
|
||
* Fixed entry editor JS not emitting a 'No tags' msg in taxonomy
|
||
quick view. Improved serendipity.tagsList exit if freetag plugin
|
||
is not installed.
|
||
|
||
* Minor backend UI fixes (taxonomy quick view in entry editor,
|
||
'Done' msg emitted by Bayes plugin)
|
||
|
||
* Clearer language constants for entries in dashboard, labelled
|
||
"In progress"
|
||
|
||
|
||
Version 2.0 (January 23rd, 2015)
|
||
------------------------------------------------------------------------
|
||
|
||
* Smarty fix for purging compiled files
|
||
|
||
* Fix wrong search page ordering when stable archive was active
|
||
|
||
* Prevent entryproperties from saving/displaying a browser-side
|
||
stored password that was actually not set.
|
||
|
||
* Stronger check for existing logger interface to prevent errors
|
||
when it is not actively used.
|
||
|
||
* Fix entryproperties being removed when publishing an article
|
||
from the dashboard and by specific plugins (freetag, trackback)
|
||
that modify entry data.
|
||
|
||
* Fix deleting comments when user is not an admin, but the entry
|
||
belongs to him. Thanks to berberic.
|
||
|
||
* Patch PEAR.php to use "static" isError declaration to prevent
|
||
PHP error messages
|
||
|
||
* Change order of IF-statements in entries.tpl to check for
|
||
comment_moderate/comment_added, to properly emit the message
|
||
whether a comment is being moderated.
|
||
|
||
* Fix searching for entries in the admin panel with database
|
||
types other than "mysql"
|
||
|
||
* Change entry editor's category assignment to toggle between
|
||
a hierarchical and a plain list (good for many categories)
|
||
|
||
* Fix date formatting in entry editor to not use ISO year
|
||
but the calendar year
|
||
|
||
* Fix autoupdate version read and transmit
|
||
|
||
|
||
Version 2.0-rc2 (December 23rd, 2014)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fixes escaping of comments in the new backend pane to prevent
|
||
XSS. Thanks to Steffen R<>emann for reporting!
|
||
|
||
* Fix wrong parameter count in serendipity_entity_decode
|
||
|
||
|
||
Version 2.0-rc1 (includes beta4/5/6) (December 19th, 2014)
|
||
------------------------------------------------------------------------
|
||
|
||
* entryproperties plugin will now automatically disable nl2br
|
||
markup, when the WYSIWYG editor is used to create en entry
|
||
|
||
* PHP Requirement now is at: PHP 5.3+
|
||
|
||
* Fix for syndication subtome onclick handler
|
||
|
||
* Fix problematic preview stylesheet reference
|
||
|
||
* Optimized clearing smarty template files on upgrading
|
||
|
||
* Properly reset the "disable markup" feature of entryproperties
|
||
plugin when none selected
|
||
|
||
* PHP 5.4+ fix to properly call htmlspecialchars() / htmlentities() /
|
||
html_entity_decode() with a charset option, that has been
|
||
set to to default to UTF-8 and will yield empty strings when
|
||
being used in NON-UTF-8 environments. Now we utilize a
|
||
serendipity_specialchars() wrapper call.
|
||
|
||
* Added SQLite3 OO database layer for PHP 5.4+
|
||
|
||
* New personal preference to choose CKEditor toolbar presets.
|
||
Presets can be overwritte through a
|
||
templates/xxx/admin/ckeditor_custom_config.js if needed.
|
||
See htmlarea/ckeditor_s9y_config.js for details.
|
||
|
||
* Proof of concept templates "default-php" and "default-xml" have
|
||
been moved to Siber...Spartacus. They would need adapting to
|
||
Serendipity 2.0 (simple methods like getConfigDir() et al),
|
||
but since those Template APIs have virtually zero usage scenario,
|
||
they remain experimental.
|
||
|
||
* Added new PAT_JS mod_rewrite rule to .htaccess files
|
||
|
||
* Removed experimental support for PHP/SMARTY IN-MEMORY caching
|
||
added in 2.0-beta3, since this could not work.
|
||
|
||
* Smarty 3.1.21 upgrade (see changelog)
|
||
|
||
* Fix ImageMagick new sizing issues while forcing image geometry
|
||
exactly to given sizes with imageselectorplus
|
||
|
||
* Fix issue #220 with pdf directory moving rename() error
|
||
|
||
* Fix bug in entry listing, which showed wrong categories for
|
||
entries (Issue #201)
|
||
|
||
* Improve RegExp for Feed-URL matching, thanks to fugue88
|
||
|
||
* Proper SQLite PDO filenames in shared installations (Issue #214)
|
||
|
||
* ImageMagick now can get parameters to generate thumbnails,
|
||
see serendipity_config.inc.php for example values
|
||
|
||
* Allow to enable/disable the new autosave feature in personal
|
||
preferences (Issue #213)
|
||
|
||
* Re-added installer test for writable serendipity base directory
|
||
|
||
|
||
Version 2.0-beta3 (July 25th, 2014)
|
||
------------------------------------------------------------------------
|
||
|
||
* Move admin/media_showitem.tpl to theme's directory in 2k11. With
|
||
an adaptation in serendipity_admin_image_selector.php, this now is
|
||
a "true" frontend template which uses the styles of the frontend
|
||
theme. Theme authors might want to adapt it to their themes.
|
||
|
||
* Moved general syndication plugin option into the core
|
||
|
||
* Smarty 3.1.19 upgrade (see changelog)
|
||
|
||
* Fixed thumbnail recreation, Issue #134
|
||
|
||
* Merged external JS libraries into a central "plugins.js" of the 2k11
|
||
backend template, can be updated through
|
||
templates/2k11/admin/js/gruntipity.php helper script.
|
||
|
||
* Adapted database table structure change for statistics, shoutbox,
|
||
karma and spamblock plugin (for new field definition of "ip" field)
|
||
Thanks to rohdef!
|
||
|
||
* Added new option "enabledBackendPopups" that allow to specify
|
||
if inline modal dialogs or popups are used in the backend for
|
||
e.g. the category selectory and media library
|
||
|
||
* added experimental support for PHP/SMARTY IN MEMORY caching
|
||
Enabled by default, if classes found loaded.
|
||
Disable with
|
||
$serendipity['disable_apc'] = true;
|
||
and
|
||
$serendipity['disable_memcache'] = true;
|
||
|
||
* Support added in serendipity_db_schema_import for sqlite
|
||
autoincrement
|
||
|
||
* Remove Google Reader button from syndication plugin options
|
||
|
||
* Add subToMe-button to syndication plugin and change its defaults
|
||
|
||
* Use Browsercache to save cache and restore entries
|
||
|
||
* Improved installer to forbid using database table prefixes with
|
||
special characters
|
||
|
||
* Themes using Engines are now able to use the parent's
|
||
configuration
|
||
|
||
* Prevent "new" plugin api to install double instances of plugins
|
||
that are not stackable (issue #45)
|
||
|
||
* Back button in plugin-config
|
||
|
||
* Adapted serendipity_editor.js to provide more global (though
|
||
deprecated) API access methods for plugins like amazonchooser
|
||
and linktrimmer, to perform insertion. Also fixed the
|
||
insertion of text when the ID of the element is not prefixed
|
||
|
||
* Move sort by name to simple filter in ML, replace file extension
|
||
|
||
* Remember selected media library folder
|
||
|
||
* Show upload-success or error with the ajax image uploader
|
||
|
||
* Fix preview entry exception (issue #119)
|
||
|
||
* Add serendipity.toggle_collapsible as a reusable JS function
|
||
for the core backend and backend sections emitted by plugins as
|
||
an easy way to provide show/hide functionality. (yellowled)
|
||
|
||
* Fixed media insert target bug (issued by #143, #145, #121)
|
||
|
||
* Fixed publish drafted-entries via dashboard (issue #160)
|
||
|
||
* All frontend themes that rely on the bundled Core jQuery library
|
||
are currently using the jquery.noConflict-mode for compatibility
|
||
to older plugins.
|
||
This mode is now considered deprecated and will be removed in
|
||
future releases. A new variable:
|
||
$serendipity['capabilities']['jquery-noconflict'] = false;
|
||
in your theme's config.inc.php file can now turn of that
|
||
noConflict-mode.
|
||
|
||
* Due to distinction of backend and frontend themes, each theme
|
||
that provides a custom jquery.js now only does so for the
|
||
frontend. The backend now listens to a:
|
||
|
||
$serendipity['capabilities']['jquery_backend'] = false;
|
||
|
||
variable, and the file needs to be jquery_backend.js that
|
||
a backend theme would reference to.
|
||
|
||
* Changed 2k11's config.inc.php file to provide a more stable
|
||
call of event hooks so that other themes can also hook
|
||
their own events.
|
||
|
||
* Changed JS for category filtering and its reset button to be a
|
||
reusable function, which is now also used in the list of
|
||
installable plugins.
|
||
|
||
* Fixed wrong local documentation URL in plugin configuration
|
||
|
||
* Added new "backend_dashboard" event-hook for plugins to use
|
||
within dashboard.
|
||
|
||
* Backend and Frontend themes can now be set independently from
|
||
each other. New backend themes now need to set:
|
||
|
||
Backend: Yes
|
||
|
||
in their info.txt file. If you adapt a custom admin theme,
|
||
ensure that it is compatible to the new "2k11" backend to
|
||
ensure proper future usage within Serendipity. The bulletproof
|
||
backend will now no longer be recognized as a backend theme
|
||
option, but can be selected as a new frontend theme, while
|
||
using 2k11 (=default) in the backend.
|
||
|
||
* Include klogger, call it as $serendipity['logger']->debug/error.
|
||
The log-level can be set in the general configuration and is
|
||
disabled by default.
|
||
|
||
* Fixed missing s9ymdb ID
|
||
|
||
* Add HTTP_Request2 and dependencies as bundled libraries and
|
||
update PEAR library to version 1.9.4
|
||
|
||
* Implemented AJAX uploadResize option to allow resizing an image
|
||
before upload (onli)
|
||
|
||
* Improved file/directory removal code to (hopefully) fail more
|
||
gracefully
|
||
|
||
* Change "default" admin backend template fallback chain so that
|
||
old admin themes can theoretically be shown with the "old"
|
||
admin interface. This however in many themes breaks the
|
||
Serendipity workflow. In other words, currently old custom backend
|
||
themes are deprecated. We are still working on how to deal
|
||
with this and if we can add some sort of compatibility or port.
|
||
|
||
* Fix bundled jquery's source mapping, upgraded to 1.11.1
|
||
|
||
* Fixed missing media name in resize GET URL
|
||
|
||
* Fix MediaDB overlay display
|
||
|
||
* Re-Added possibility to change filename/target directory for
|
||
media uploads
|
||
|
||
* Update CKEditor to 4.4
|
||
|
||
* Fixed some missing internationalization instances
|
||
|
||
* Minor CSS improvements for upgrader, plugin sequencing widget
|
||
|
||
* RSS importer accepts pubDate in addition to pubdate element.
|
||
|
||
* Upgrader in Dashboard can be disabled, returns error message when
|
||
URL not accessible
|
||
|
||
* Added a category filtering ability for the entry editor
|
||
|
||
* Better check when removing old/dead files to prevent error
|
||
messages
|
||
|
||
* WYSIWYG editor respects image floats
|
||
|
||
* Support html5 multiple file upload
|
||
|
||
* Modernizr, magnificPopup updates
|
||
|
||
* Improvements to equal heights js, button labels
|
||
|
||
* No longer truncate long entry titles
|
||
|
||
* Improve non-WYSIWYG editor tag insertion, url insertion
|
||
|
||
* Improve less DOM firing on certain javascript tasks
|
||
|
||
* Introduce js_backend event hook
|
||
|
||
|
||
Version 2.0-beta1 and followup -beta2 (April 14th, 2014)
|
||
------------------------------------------------------------------------
|
||
|
||
* Upgrade Smarty libs to 3.1.18
|
||
|
||
* Automatic upgrade removal of old Smarty2 files (2.0-alpha2)
|
||
function uses SPL
|
||
|
||
* Implemented patch https://github.com/s9y/Serendipity/pull/15
|
||
|
||
* When switching Themes, both the backend and the frontend
|
||
will remember the timestamp of the last theme change,
|
||
to make sure that the browser will not cache a mismatching CSS.
|
||
|
||
* Fix theme change issues with global template vars in core
|
||
(1559472ca3) see 'temporary added empty $template_config_groups'
|
||
in 1.7-rc2 (eb77dc369a)
|
||
|
||
* Use Smarty for backend display output
|
||
|
||
* "Themes" are now what has previously been mixed as "Design",
|
||
"Theme", "Template" or "Layouts".
|
||
|
||
* WYSIWYG-Spawn-API reworked (2k11/admin/wysiwyg_init.tpl)
|
||
|
||
* All Javascript-functions like SetCookie now reside in a
|
||
serendipity-object, simulating a namespace.
|
||
SetCookie(...)
|
||
became
|
||
serendipity.SetCookie(...)
|
||
|
||
* Renamed JS-Function:
|
||
toggleCategorySelector became toggle_category_selector
|
||
|
||
* The advanced js option (eyecandy) got removed, as such a thing
|
||
like advanced js doesn't exist anymore
|
||
|
||
* dashboard_plugin has an equivalent in the core, replacing the
|
||
frontpage
|
||
|
||
* Constants like S9Y_FRAMEWORK_COMPAT are no longer set
|
||
(include_once is used instead)
|
||
|
||
* New additional option to render smarty-functions:
|
||
serendipity_smarty_show($template, $data)
|
||
|
||
* A number of functions now returns their result instead of echoing
|
||
them (TODO: a bunch of image- and
|
||
trackback-functions still use echo for messages"):
|
||
serendipity_plugin_config
|
||
serendipity_printEntryForm
|
||
serendipity_printEntries
|
||
function serendipity_showMedia
|
||
serendipity_showPropertyForm
|
||
showMediaLibrary
|
||
serendipity_guessInput
|
||
memSnap
|
||
serendipity_displayTopUrlList
|
||
serendipity_displayTopExits
|
||
serendipity_displayTopReferrers
|
||
serendipity_printConfigTemplate
|
||
show_plugins
|
||
|
||
* Functions removed from the core:
|
||
serendipity_printConfigJS
|
||
|
||
* Functions added to the core:
|
||
serendipity_generateImageSelectorParams
|
||
|
||
* All internal plugins got extracted from plugin_internal.inc.php
|
||
and moved to plugins/.
|
||
They are renamed to work there (upgrader task provides migration):
|
||
serendipity_calendar_plugin became serendipity_plugin_calendar
|
||
serendipity_quicksearch_plugin became serendipity_plugin_quicksearch
|
||
serendipity_archives_plugin became serendipity_plugin_archives
|
||
serendipity_categories_plugin became serendipity_plugin_categories
|
||
serendipity_syndication_plugin became serendipity_plugin_syndication
|
||
serendipity_superuser_plugin became serendipity_plugin_superuser
|
||
serendipity_plug_plugin became serendipity_plugin_plug
|
||
|
||
* Add plugin hook "js", generating a virtual serendipity.js
|
||
|
||
* Admin JS is now bundled in serendipity_editor.js.tpl and
|
||
rendered using smarty in the theme config
|
||
|
||
* Admin JS got rewritten using jQuery where applicable
|
||
|
||
* serendipity_define.js.php removed
|
||
|
||
* Removed support for layout.php
|
||
|
||
* The whole PHP-Code now almost never echoes integrated HTML, but
|
||
uses smarty template (TODO: Remove the almost)
|
||
The necessary smarty-templates reside in 2k11/admin/
|
||
Every theme can generate its own backend if it integrates those
|
||
templates under admin/ itself
|
||
|
||
* 2k11 is set as the new default backend, replacing bulletproof.
|
||
default remains the fallback so far.
|
||
|
||
* A number of functions had some arguments removed:
|
||
* function serendipity_displayImageList:
|
||
From
|
||
function serendipity_displayImageList($page = 0, $lineBreak = NULL, $manage = false, $url = NULL, $show_upload = false, $limit_path = NULL, $smarty_display = true)
|
||
to
|
||
function serendipity_displayImageList($page = 0, $lineBreak = NULL, $manage = false, $url = NULL, $show_upload = false, $limit_path = NULL)
|
||
* function serendipity_showMedia
|
||
From
|
||
function serendipity_showMedia(&$file, &$paths, $url = '', $manage = false, $lineBreak = 3, $enclose = true, $smarty_vars = array(), $smarty_display = true)
|
||
to
|
||
function serendipity_showMedia(&$file, &$paths, $url = '', $manage = false, $lineBreak = 3, $enclose = true, $smarty_vars = array())
|
||
* generate_plugins
|
||
From
|
||
static function generate_plugins($side, $tag = '', $negate = false, $class = null, $id = null, $tpl = 'sidebar.tpl')
|
||
to
|
||
static function generate_plugins($side, $negate = false, $class = null, $id = null, $tpl = 'sidebar.tpl')
|
||
|
||
* serendipity_showMedia now no longer returns the used template and
|
||
echoes the generated HTML, but only returns the generated HTML
|
||
|
||
* Themes now have their own configuration page,
|
||
?serendipity[adminModule]=templates&serendipity[adminAction]=editConfiguration
|
||
|
||
* jQuery in the backend no longer runs in noConflict-mode. Use
|
||
$(...) instead of jQuery(...)
|
||
|
||
* The entryproperty-plugin will now always delete its cache on
|
||
uninstall, not only if the cache is activated then
|
||
|
||
* serendipity_is_iframe now really only checks for iframe and
|
||
doesn't also echo it
|
||
|
||
* Added option simpleFilters (meant to indicate to show less
|
||
filters and poweruser-options)
|
||
|
||
* serendipity_admin_image_selector.php no longer used by 2k11,
|
||
instead the media library (with admin/media_choose.tpl,
|
||
admin/media_upload.tpl, media_pane.tpl, media_items.tpl)
|
||
can generat the imageselector on its own. The editor calls
|
||
serendipity_admin.php?serendipity[adminModule]=media instead,
|
||
with serendipity[textarea] indicating the target, and
|
||
serendipity[showMediaToolbar] activating the imageSelector modus
|
||
|
||
* New required PHP-Version: 5.3 or higher (checked in the installer)
|
||
|
||
|
||
Version 1.7.8 (February 9th, 2014)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fixed POST for db entry insert, caused by 1.7.6 security feature
|
||
|
||
|
||
Version 1.7.7 (February 6th, 2014)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fixed PHP parse error in templatechooser plugin. Blame garvin. :(
|
||
|
||
|
||
Version 1.7.6 (February 6th, 2014)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fixed backend security issues, thanks to Stefan Schurtz:
|
||
|
||
- XSS of users realname in "Manage users" section
|
||
(Backend, requires login)
|
||
- XSS when creating an entry with bad id/timestamp values
|
||
(Backend, requires login)
|
||
- SQL-Injection for plugin installation parameter
|
||
(Backend, requires admin login)
|
||
|
||
* Templatechooser plugin uses "default" template as fallback,
|
||
not "bulletproof".
|
||
|
||
|
||
Version 1.7.5 (January 18th, 2014)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fixed textile PHP 5.2 (namespace) compat issue
|
||
|
||
* Added default value to spamblocks required_fields option [name,
|
||
comment]
|
||
|
||
|
||
Version 1.7.4 (January 11th, 2014)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fixed emoticate plugin icon link to check for textile class
|
||
|
||
* Upgrade textile plugin libs - lib3 extends to PHP >= 5.3.
|
||
Please check for new options!
|
||
|
||
* Fixed spamblocks Captcha imagecreate() with PHP > 5.3 versions
|
||
|
||
* Smarty 3.1.16 bugfix release - please read bundled-libs/Smarty/change_log.txt
|
||
about changes to versions 3.1.16 and 3.1.15.
|
||
Please also see special bundled-libs/Smarty/3.1.16_RELEASE_NOTES.txt
|
||
|
||
* Removed blogg.de filter from spamblock plugin, adapted htaccess
|
||
IP block algorithm for race conditions. .htaccess can now contain
|
||
multiple Deny From ranges to prevent parsing problems (DLange)
|
||
|
||
* Fixed IP columns in spamblocklog, spamblock_htaccess, karmalog, visitors
|
||
and shoutbox to varchar(45) for IPv6 - including tunneled IPv4 (39+6)
|
||
|
||
* Fixed possible double includement of plugin_internal.inc.php
|
||
|
||
* Fix possible temporary caching errors failing $eventData[0]['properties']
|
||
|
||
* Basic support for static blocks (includeentry plugin) in 2k11.
|
||
|
||
* Added "backend_footer" event hook
|
||
|
||
* Exclude "frontpage extensions" directories "_vti_cnf" on windows servers
|
||
in Media Library
|
||
|
||
* Fixed pagination when searching terms with fetchlimit < 4
|
||
|
||
* Fixed deprecated /e modifier with PHP >= 5.5 in nl2br plugin restore method
|
||
|
||
|
||
Version 1.7.3 (August 28th, 2013)
|
||
------------------------------------------------------------------------
|
||
|
||
* Trackback to https:// style URLs will use proper port 443 instead
|
||
of 80.
|
||
|
||
* Disabled htmlarea spellchecker module, http://osvdb.org/87395
|
||
Thanks for Henri Salo for pointing this out. CVE-2013-5670
|
||
|
||
|
||
Version 1.7.2 (July 26th, 2013)
|
||
------------------------------------------------------------------------
|
||
|
||
* Fix a syntax error in the "mysql" deprecation code, thanks
|
||
to Ian
|
||
|
||
|
||
Version 1.7.1 (July 26th, 2013)
|
||
------------------------------------------------------------------------
|
||
|
||
* Added new event hooks "backend_plugins_install", "backend_plugins_update"
|
||
and "backend_templates_install".
|
||
|
||
* Serendipity will switch to mysqli if PHP >= 5.5 is used (mysql
|
||
is deprecated)
|
||
|
||
* Smarty upgrade to 3.1.14 (read changeLog and the README for API changes since Smarty 2)
|
||
|
||
* Upgrader will now remove/delete the browsercompatibility plugin
|
||
|
||
* Fixed Media Library exclude path to not show/proceed ckeditor/kcfinders .thumbs dir
|
||
|
||
* Fixed bulletproof->colorset GET mismatch with categorytemplates plugin
|
||
config.inc.php [Line 29]
|
||
|
||
* German translation for stable archives added (YL)
|
||
|
||
* Fixed curl result bug in spartacus plugin
|
||
|
||
* Create new migration task for propagate defaultBaseURL when
|
||
currently empty (onli)
|
||
|
||
* Fixed statistics sidebar querys ( & for PostgreSQL ) [242520b]
|
||
and added some missing html end tags
|
||
|
||
* Added missing current group name when editing usergroups
|
||
|
||
|
||
Version 1.7 (May 11th, 2013)
|
||
------------------------------------------------------------------------
|
||
|
||
* rc4: Get ready for CKEDITOR-wysiwyg Plugin mode
|
||
|
||
* rc4: Fixed fetching javascript object (for nugget textareas) in non-wysiwyg-mode
|
||
|
||
* rc4: Change .htaccess blocking mechanism by spamblock plugin to not fetch
|
||
too many datarows, thanks to DLange from the forums. (The .htaccess
|
||
feature is still considered experimental, use at your own risk ;))
|
||
|
||
* rc4: Fixed entryproperties backend 'cache now' link
|
||
|
||
* rc3 + rc4: Media database: Escape more Cookie values to prevent storing
|
||
possible XSS (http://board.s9y.org/viewtopic.php?f=3&t=19142).
|
||
Escape hotlinked media filename. Escape importer host name error
|
||
Thanks to GreenSun from the forums for bringing this to attention,
|
||
originally reported by Dshellnoi Unix
|
||
|
||
* rc2: Alter entries.tpl to add the line:
|
||
{assign var="entry" value=$entry scope="parent"}
|
||
for proper propagation of $entry to sub-templates.
|
||
|
||
* rc2: Alter error reporting to only fail when 'debug' mode is enabled,
|
||
so that "normal" blog installations will not fail on specific
|
||
E_STRICT warnings that are not important.
|
||
|
||
* rc2: temporary added empty $template_config_groups into templates with config,
|
||
to avoid display troubles for template changes, if previous template had these set.
|
||
Please check your template.
|
||
|
||
* rc2: reflect POST submitted changes in Bulletproof template configs re-set situations
|
||
|
||
* various PHP 5 compatibility fixes in core and plugins
|
||
|
||
* Allow entryproperties plugin to define defaults for custom fields
|
||
|
||
* Onyx, Net_URL classes: Remove PHP4 style constructor due to
|
||
PHP5 error "Constructor already defined"
|
||
|
||
* Improved RSS sidebarplugin to support Atom
|
||
|
||
* Bundled simplepie
|
||
|
||
* For Blogs running on a non-UTF-8 language, set a Smarty constant
|
||
to indicate the actually used charset.
|
||
|
||
* Added to use MyISAM handler for s9y tables (we do not use InnoDB
|
||
features, but rely on MyISAM fulltext)
|
||
|
||
* fixed defaultBaseURL did not show up installer. Thanks to onli.
|
||
Follow up from c292bad
|
||
|
||
* fixed draft & future entries preview link in backend
|
||
|
||
* Improved karmarating plugin to be able to use AJAX calls
|
||
(gregman)
|
||
|
||
* Allow Smarty to fetch .tpl files from all directories so that
|
||
s9y plugin can use the fetch() call for their .tpl files no
|
||
matter which (symlinked) directory the plugin resides in.
|
||
The Smarty security policy to us only serves as a restriction
|
||
within .tpl files to not allow arbitrary PHP modifier/function calls.
|
||
If in the future Smarty supports enforcing trustedDir checks on
|
||
{include} calls separately to smarty->fetch() calls, we'll also
|
||
add that to .tpl files.
|
||
(garvinhicking)
|
||
|
||
* Patch by Markus Br<42>kner: Properly handle files that have no
|
||
extension in media database
|
||
|
||
* Made Spartacus recognize github.com mirror (garvinhicking)
|
||
|
||
* Add "Summary" output to title of summary archive pages, patch by
|
||
hboeck
|
||
|
||
* Set the smarty object by instance (ophian)
|
||
It is often needed to access the Smarty object from anywhere in your code, e.g. in plugins
|
||
We now ensure that there is only one instance of the object available.
|
||
To obtain an instance of this class: $serendipity['smarty'] = Serendipity_Smarty::getInstance();
|
||
The first time this is called a new instance will be created. Thereafter, the same instance is handed back.
|
||
To overwrite use $serendipity['smarty'] = new Serendipity_Smarty; to create a new instance.
|
||
|
||
* Set a global Serendipity errorToExceptionHandler (ophian)
|
||
changed some old smarty trigger_errors to PHPs native function
|
||
|
||
* Updated spamblock plugin (ophian)
|
||
changed wordfilter to function and Commenters moderation check verify_once
|
||
to get checked via wordfilter to reject known spam comments before
|
||
|
||
* Changed backend comment (error) messages (ophian)
|
||
as now captured and styleable messages
|
||
(newly added .serendipity_backend_msg_notice css class)
|
||
|
||
* Updated nl2br plugin (ophian)
|
||
added isolation tag using nl to br
|
||
this also adds some NoBR buttons to backend entry forms
|
||
|
||
* Smarty3 support (ophian)
|
||
with this upgrade Serendipity / Smarty will at least need a webserver running the PHP 5.2 series.
|
||
As of August 2011, all PHP users should note, that the PHP 5.2 series is NOT supported anymore by the PHP developers.
|
||
All users are strongly encouraged to upgrade to PHP 5.3.8 and up. Please refer to your ISP about this.
|
||
|
||
* Added new serendipity['defaultBaseURL'] variable that makes sure
|
||
that the baseURL is not overriden when configuring serendipity
|
||
with a possibly autodetected currentl URL. Patch by Manko10.
|
||
|
||
|
||
(Older NEWS see file NEWS_OLD)
|