- Fixed MetaTags so it accepts a string or a boolean, which means it will behave correctly in templates
- Improved the encapsulation of ErrorPage publication
- Added ID,ID,ID syntax for populating many-many joins
- Fix redirect back after failing login
- Fixed renaming of .tar.gz and .tar.bz2 files
- Added validation to TableField
- 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
- Added PaddedImage to Image
- Allow passing of an array of permission codes to Permission::get_members_by_permission()
- Refactored newsletter system to put recipient selection and form-fieldset generation into the NewsletterType class, to allow for subclassing NewsletterType to create special system newsletters.
- 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
- Added Director::redirected_to / Controller::redirectedTo() for redirection-detection
- Added '<% if HasPerm(PERM_CODE() %>' to ViewableData for template
- Sorted permission codes in Permission::get_codes
- Added EDIT_PERMISSIONS permission code for SecurityAdmin
- Added Permission::get_groups_by_permission
- Refactored CMS page-URL accessing to use ->AbsoluteLink(), which can be overridden by defining alternateAbsoluteLink()
- Allow logging in via BasicAuth
- Allow the dev and test servers to be set via Director
- Modules must now have _config.php files in order to be loaded
- Forms in newsletter & security section were incorrectly submitting when enter was pressed
- Fixed validation of date fields in a user defined form
- Fixed search in MemberTableField
- Fixed multiple security groups being created when logging in with default admin
- Ensure that WYSIWYG context menu always appears on the screen
- Fixed permissions for administrating page comments
- Added pagination for page comments
- Fixed a bug where you couldn't always edit the bottom of an WYSIWYG editor field
- Fixed ContentController::PageComments() method to die if spammers are POSTing form data when comments are disabled
- Fixed permission checking on PHP 5.0.5
- Fixed 'cannot access protected property' error in Security section on PHP 5.0.5
- Fixed javascript validation of forms
- Don't show popup when validation fails in Security section
- Fixed error when asp_tags = On
- Fixed bug where you have a non-required field with numeric validation
- Added ContentNegotiator::set_encoding() to choose a character set other than utf-8
- Added a limit of 20 steps in Breadcrumbs generation
- Changed SiteTree.Title length from 100 to 255
- Fixed random password generator in Member::createNewPassword()
- Fixed bug where scrollbars aren't shown in the CMS
- Let CMSMain be used to manage objects without Sort
- Fixed BatchProcess to not display an error if no objects could be processed
- The help button now redirects to http://userhelp.silverstripe.com
- Fixed a bug where a user is redirected incorrectly after logging in
- Changed temp-folder selection to not leave temp files lying around, and put silverstripe temp files into a silverstripe-cache folder
- Removed duplicate XML class
- Made guid of PageComments in rss feed unique
- Performance improvements to client-side javascript
- Fixed bugs caused by missing html elements
- Optimised behaviour load times
- Sorted the output of profiler
- Performance enhancements to form and template code
- Added trace argument to Profiler::show
- Added profiling scaffolds
- Fixed code to remove need for short_open_tag
- Fixed FileSize generation for sizes of just over 1 meg
- only show $messageBlock in FormField::FieldHolder() if $Message is existing
- fixed rightTitle and id in FormField::FieldHolder()
- Added Email::send_all_emails_to to assist in testing
- Added Email::cc_all_emails_to() and Email::bcc_all_emails_to()
- Fixed ?isDev=1 mode
- Replaced sendLiveErrorsTo with send_errors_to, for more flexibility
- Set default of sendWarnings on Debug::send_errors_to
- Fixed formatting of error emails sent from ajax requests
- Removed debug plumbing from the results of Debug::backtrace()
- Added ?profile_trace=1 url variable tool to show a trace on the profiler
- Simplified return data of htmlEmail, an inconsequential internal optimisation
- Create assets folder if it doesn't exist when uploading a file
- Improvements to profiling information
- Fixed bug in SiteTree::NestedTitle()
- Updated CalendarDateField, adding a calendar icon to the right of it
- Updated date field in CMS-edited forms to use CalendarDateField
- Added Form::current_action() and Form::single_field_required() to aid in form optimisation
- Don't append /home to the home page URL
- Small fix for windows installations
- Fixed efficiency problems in Versioned::get_latest_version
- Fixed File::sync(), to let it recurse into new directories in a single execution
- Fixed bug with getting form action that was breaking form submission and complextablefield pop-up
- Prepared CheckboxSetField for use editing a many-many join in the CMS, popualted with a SQLMap object
- Added TreeDropdownField::setTreeBaseID, for showing a sub-tree in your field
- Fixed SQLMap iteration
- Added option to TableField, to aid putting TableFields inside the ComplexTableField? popup
- Simplified EmailField validation error message
- Fixed some bugs in the debug emailer
- Reduced amount of ajax-refetching that the TreeSelectorFields do
- Added 'open in new window' checkbox to link inserter
- Fix macron support in reports
- Improved debug message (remove big blocks of redundant data)
- Allow for the disabling of default buttons. Apply this to CMSMain and GenericDataAdmin in the administration, so that we don't default to clicking the *DELETE* button.
- Added default value to first arg of permissionFailure(); it's not actually used!
- Added PermissionProvider class and Permission::get_codes()
- Added ClassInfo::implementorsOf()
- Added providePermissions() for core items, and set up a dropdown interface for the security CMS admin
- Added DataObject::add_extension() for adding decorators in _config.php
- Added DataObjectDecorator::extraDBFields() for modifying the decorated data objects, adding extra database fields
- Improved handling of EditableFormFields on new UserDefinedForms
- Version displayed in CMS now works correctly
- Removed non-XHTML compliant border attributes from editor
- Updated GenericDataAdmin to use new permissions model
- Fixed CMS action button support when text size increases
- Added message when report is empty
- fixed (overrides) to CSS to avoid larger font-size due to em values
- Fixed tree scrolling and resizing issues
- Improved search results message shown on first load
- Added 2nd argument to LeftAndMain::setApplicationName so that the name in the top corner and the name shown elsewhere can be 2 different strings
- Added event.setStyle to prototype_improvements.js
- Fix weird bug in behaviour to do with class.applyToChildren
- Add class text field to image properties dialog in TinyMCE
- Added ?debug_behaviour=1 URL option for debugging behaviour calls with Firebug
- Made calendar control register a date change when the calendar is used