Versions:

2.1.0 (2007-10-02)

SilverStripe 2.1.0 was released on '''2 October 2007''' and had the following changes:

Overview

  • Comment administration section, and comment moderation
  • Allow CMS users to limit view/edit access to a page
  • Show an rss link for page comments on each page

Upgrading

Too many redirects

A problem occurs of 'too many redirects' or the page just doesn't load (home page) because of these situations:

  • Access tab for home page has 'logged in users only', OR
  • NO radio buttons have been set. This happens when upgrading site from old DB.

It's caused by a redirect to Security/login on the home page controller, which is blocked off, so you can't actually login, so it infinitely loops a redirect. See http://open.silverstripe.com/ticket/1488

Features and Enhancements

  • Theme support
  • Widget support
  • Better extension API
  • Unit testing framework
  • More API documentation
  • Added support for __ss_environment.php files
  • New classes
    • BankAccountField
    • BBCodeParser
    • HasManyComplexTableField
    • HasOneComplexTableField
    • ManyManyComplexTableField
    • NewsletterType
    • RestfulService (from mashups module)
      • Improved classes
    • ComplexTableField
      • Validation in popup
    • ContentController
      • Added project()
    • Controller
      • Added redirectedTo()
    • Convert
      • Added raw2htmlatt()
      • Added raw2mailto()
    • DatabaseAdmin
      • Drastically improved database build performance
    • DataObject
      • Added ID,ID,ID syntax for populating many-many joins
    • DataObjectDecorator
      • Allow member CMS fields to be added
    • DataObjectSet
      • Added getRange()
    • Date
      • Added past_date()
    • Director
      • Added set_dev_servers()
      • Added set_test_servers()
      • Added redirected_to()
      • Refactored CMS page-URL accessing to use ->AbsoluteLink(), which can be overridden by defining alternateAbsoluteLink()
    • Debug
      • Optionally hide backtrace-headers in message() and show() (applied in 'showqueries')
    • Email
      • MimeType-fallback (from /etc/mime.types)
      • Improved validation in is_valid_address()
    • FieldSet
      • Added insertAfter()
    • Form
      • Automatic filesystem backup of POST-data
    • FormField
      • Support for right-aligned titles
      • Custom CSS-classes by addExtraClass() and removeExtraClass()
    • Group
      • Added Description field
    • HtmlEditorField
      • Allow classes other than 'typography' to be set
    • Image
      • Added PaddedImage()
    • ImageField
      • Added readonly transformation
    • PageCommentInterface
      • Added anchors to page comments, and made rss feed link to them
    • Permission
      • Added $strict flag to check()
      • Allow passing of an array of permission codes to get_members_by_permission()
      • Added get_groups_by_permission()
    • PhoneNumberField
      • Improved validation
    • Security
      • Added basicauthlogin()
    • SecurityAdmin
      • Added EDIT_PERMISSIONS permission code
    • TableField
      • Validation and RequiredFields
    • TableListField
      • Added sorting, highlighting, formatting
      • Improved styling
    • TreeDropdownField
      • Improved styling
    • Varchar
      • Added RTF()
    • ViewableData
      • Added <% if HasPerm(PERM_CODE() %> for templates
  • Javascript
    • Implemented showIndicator() and hideIndicator()
    • Improved statusMessage() to clear manually instead of fixed interval
    • Added hideStatusMessage()

Bug Fixes

  • CMS
    • Fix specific newsletter bug
    • Don't show classes user doesn't have permissions to change to in class dropdown
    • Fix reading of Live pages in CMSMain
    • Fix double page reading after changing the class
    • Fix insert flash
    • Fix version regex for release candidates
    • Fix delete in Files and Images section
    • Fixed saving root folder causes error
    • Fixed "non-numeric ID" error that occurs when visiting newsletter section for a newsletter that doesn't exist (caused by session sometimes)
    • Fixed CMS sort subpages bug
  • Sapphire
    • Improved spam detection
    • Support for running SilverStripe in safe mode and under open_basedir restrictions
    • PHP notice fixes
    • Use normal authentification rather than basicauth for db/build
    • Fix CSS of profiler pop-up
    • Changed DropdownField $emptyString syntax from '0' to ''
    • Fixed IE6 DOM-parsing bug caused by FormResponse::load_form()
    • Triggering previewwrite for 'delete' and 'replace' SQL-actions
    • Changed record-insertion in DataObject
    • Boolean accepts database-default
    • Fixed Permission::get_members_by_permission()
    • Added memory_limit to publishall()
    • Fix many-many component set relation setting
    • The Link for a RedirectorPage points to its target
    • Add SQL_ prefix in place it was missing in Email
    • Added a check to make sure record exists before calling hasMethod on it in CheckboxSetField
    • Fixed bug in DataObject::addStaticVars()
    • Check for string 'true' as well as boolean in SiteTree::MetaTags()
    • Fix AllNewsletters value not being passed to OptionSetField in SubscribeForm
    • Improved the encapsulation of ErrorPage publication
    • Fix redirect back after failing login
    • Fixed renaming of .tar.gz and .tar.bz2 files
    • Fixed validation of DateField, EmailField and NumericField
    • Fix livesite bug for visibility handling difference between PHP5.2.0 and PHP5.1.6
    • Changed colouring of db/build to be more appropriate for the actual meaning of the messages
    • Fixed redirection from /home/ to /./ in IE6
    • Use the homepage as a model for the security base-page, so that things like the current subsite are factored in
    • Sorted permission codes in Permission::get_codes
    • Changes to support gallery module
    • Added missing has_many in DataObjectDecorator
    • Replace empty strings in SQL queries with NULL
  • JSParty
    • TinyMCE has been updated to 2.1.1.1

Installer

  • New installer look based on BlackCandy
  • Use the new theme system
  • Add first and last name fields
  • Added ability to set servers that will be in dev mode
  • When the posix module isn't present, throw a warning instead of dying
  • Warn if PHP version is less that 5.2.0 in support of GoPHP5 (http://www.gophp5.org)
  • Added favicon to installer and default template
  • Optional reporting of version information to SilverStripe
  • Installer now runs with short tags disabled
  • open_basedir and safe mode fixes