.. This file should contain the changes for the last release only, which
   will be included on the package's page on pypi. All older entries are
   kept in HISTORY.txt

Changelog
=========

4.1.5 (2012-04-18)
------------------

- Stop filtering folder_listing to the types from 
  @@plone_portal_state/friendly_types, since that excludes non-searchable
  types rather than non-listable types.
  [davisagli]

- PloneControlPanel's enumConfiglets no longer returns invisible configlets.
  [esteele]
  
- Use getId() instead of title_or_id() for displaying which items get 
  deleted, to avoid unicode error
  Fixes https://dev.plone.org/ticket/12765
  [spereverde]

- Hide left column in prefs_main_template when user does not have access to
  configlets.
  Fixes https://dev.plone.org/ticket/12572
  [gotcha]

- Re-apply PLIP 10901 to table_sort.js, fixing a bug with reversing sort
  on the first column.
  [mj]


4.1.4 (2012-02-08)
------------------
- Catch KeyError on 'userid' that occurs when mail_password is
  accessed directly (without 'userid' in the request). Return
  mail_password_form.
  [brayt]

- Notify ObjectModifiedEvent when a content title is modified
  through action > rename.
  Fixes http://dev.plone.org/ticket/12460
  [thomasdesvenain]

- Fixed some mail tests in combination with five.pt.
  [maurits]

- Do not display the author contact form when the logged in user does
  not have an email address.
  Fixes http://dev.plone.org/ticket/12258
  [maurits]


4.1.3 (2011-11-28)
------------------

- IE critical fix on toggle select and form submit helpers.
  [thomasdesvenain]

4.1.2 (10/13/2011)
------------------

- Fixed the two high priority scenarios (global sections viewlet and nav 
  portlet) of http://dev.plone.org/ticket/11189.
  [fulv]

- Allow users with the Manage Users permission to change the login
  name of other users; specifically this allows them to change the
  email address when this is used as login name.
  Fixes http://dev.plone.org/plone/ticket/11255
  [maurits]

- Re-enable the getObjPositionInParent index in the portal_atct tool.
  Fixes http://dev.plone.org/plone/ticket/11151
  [davisagli]

- Removed the 'What' row in the event view that displayed the
  keywords; this is already handled by the keywords viewlet.
  Fixes http://dev.plone.org/plone/ticket/10818
  [maurits]

- Fix PloneTool.changeOwnershipOf to not pass MemberData to the underlying
  Owned.changeOwnership, but a plain User object only.
  [stefan]

4.1.1 (2011-09-21)
------------------

- Fixed folder_listing template
  so that listing macro can be used outside of folder_listing.
  [thomasdesvenain]

- AuthenticatedUsers group is used for local roles etc, and is not the same
  as Authenticated role. Thus, it can not be optimized away in catalog queries.
  [tesdal]

- getFolderContents only sets b_size if batching is true.
  [do3cc]

4.1 - 2011-07-12
----------------

- Make the ``plone-final`` import step dependend on ``rolemap`` to
  prevent some hard-to-debug add-on product related issues.
  Closes http://dev.plone.org/plone/ticket/11997;
  [MatthewWilkes]

- Use ``transaction.savepoint`` instead of ``transaction.begin`` in
  ``isLinked``;
  closes http://dev.plone.org/plone/ticket/7784; does not reopen
  http://dev.plone.org/plone/ticket/6666 probably because we use fixed version
  of ZEO
  [gotcha]

- Fix: content status history form entries are not batched because there is
  no batch navigation management on this page,
  so that all selected elements from folder contents are displayed.
  [thomasdesvenain]

- Optimized: Huge optimization of calendar_formfield.js under ie8 and lower.
  Gain of 50% on js execution on a large page.
  [thomasdesvenain]

4.1rc3 - 2011-06-02
-------------------

- Apply patches to prevent exploitation of CVE-2011-1948 (Hotfix 20110531.)
  [elro]

- In actions.xml, use object_url for the object_buttons.
  Fixes http://dev.plone.org/plone/ticket/11733.
  [WouterVH]

- Set Language to 'all' to list content in all languages when listing a
  worklist's contents (workflow) to support LinguaPlone better.
  [mj]

- Set appropriate cache headers on createObject redirects to prevent caching
  by proxy servers.
  [elro]

- Added "X-Theme-Disabled" response header to failsafe_login_form to disable
  Diazo/plone.app.theming.
  [elro]

- Fixed PloneBatch to work for non-lazy sequences.
  [hannosch]

- Explicitly load the `configure.zcml` from `plone.app.upgrade`, so the upgrade
  steps are loaded in `plone.app.testing` based test layers.
  [hannosch]

- Define a ZCML feature called `plone-41` in addition to the existing `plone-4`
  to be used in conditional ZCML registrations.
  [hannosch]

- Avoid registering CMFDefault's upgrade steps, as they are not useful in Plone.
  [hannosch]

4.1rc2 - 2011-05-21
-------------------

- Fixed PloneBatch class to handle limited result sets correctly. This closes
  http://dev.plone.org/plone/ticket/11733.
  [hannosch]

- Hide datepicker icon for date widget if plone.jscalendar is not loaded.
  Fixes #11831.
  [smcmahon]

4.1rc1 - 2011-05-20
-------------------

- Make folder_listing filter on @@portal_state/friendly_types when applied to
  a container. (Add portal_types to site_properties types_not_to_list to
  exclude them from friendly_types.)
  [elro]

- Error handling for folder_full_view_item so items using a BrowserView render
  a link instead of causing an error.
  [elro]

- Refactor dragdropreorder.js and folder_moveitem to detect client/server
  ordering mismatches and be more robust in event of mousing out of the table
  rows.
  [elro]

- Add forward compatibility with DateTime 3.
  [hannosch]

- Added a new interface blacklist to the `CatalogTool` module. Items in this
  list won't be indexed in the object_provides index. This saves about 1kb of
  mostly useless data to be stored per object. If you need to query on one of
  the blacklisted interfaces, consider using other indexes to get a small
  result set and then checking the actual objects or add a specialized index
  for the data you are interested in. Also changed the stored value to a tuple
  to safe some memory overhead of the list type.
  [hannosch]

- Optimize images and icon file sizes.
  [hannosch]

- Fix the event_view to refer to the `icon_export_*` images relative to the
  portal and not the current context.
  [hannosch]

- Text on login success page uses navigation root title instead of portal title.
  Refs http://dev.plone.org/plone/ticket/9175.
  [thomasdesvenain]

- Let the content import step (importing the site structure) not
  depend on plone-final but on typeinfo.  Solves circular dependency.
  Refs http://dev.plone.org/plone/ticket/8350
  [maurits]

- Set Content-Language header to default language when content language is an
  empty string.
  [elro]

- Change csrf patch to apply to MemberAdapter instead of MemberData when using
  CMF 2.3.
  [elro]

- CMFCore registers a memberdata export/import handler in 2.3, so make our
  registration conditional.
  [elro]

- Remove `previous` sub-collection from default content, as sub-collections are
  not enabled by default since Plone 4.0 and having one in the default content
  is confusing. Closes http://dev.plone.org/plone/ticket/10705.
  [hannosch]

- Fix zope.sendmail patch to raise errors for immediate sending failures.
  Relates to http://dev.plone.org/plone/ticket/10675.
  [elro]

- Sort on content title ignores accents.
  So, d < é < f.
  [thomasdesvenain]

- Expose the query report and plan on the catalog tool.
  [hannosch]

- Optimize the data indexed by the `allowedRolesAndUsers` index and the query
  performed against it.
  [hannosch]

- Fix cicular dependency in import steps.
  This partially fixes http://dev.plone.org/plone/ticket/8350
  [kiorky]

4.1b2 - 2011-04-06
------------------

- Fix bug in formUnload.js where changes to select option lists without a
  default were incorrectly detected (javascript indexes from 0, not 1.)
  [elro]

- Added "rss" alias to "RSS".
  This fixes https://dev.plone.org/plone/ticket/11638.
  [gotcha]

- Fixed: "showing field with error is broken in edit view"
  This fixes https://dev.plone.org/plone/ticket/11686.
  [gotcha]

- Fixed: "missing required icon in tabs in edit view"
  This fixes https://dev.plone.org/plone/ticket/11685.
  [gotcha]

- Make wicked an optional dependency. (It is still pulled in by the Plone
  distribution.)
  [davisagli]

- Fix import of RoleManager to avoid deprecation warning.
  [davisagli]

- Update MigrationTool.getSoftwareVersion to return Products.CMFPlone version.
  [elro]

4.1b1 - 2011-03-06
------------------

- Remove useless trailing slash in 404.
  This fixes http://dev.plone.org/plone/ticket/11550
  [gotcha]

- Remove invocation of do_search_collapse from advanced search form.
  It caused the function to run twice, making collapsibles wink
  rather than open. Fixes http://dev.plone.org/plone/ticket/11565
  [smcmahon]

- Use correct argument order in utranslate.py script.
  This fixes http://dev.plone.org/plone/ticket/10395
  [fRiSi]

- Add missing security declarations on PropertiesTool.
  [davisagli]

4.1a3 - 2011-02-14
------------------

- Discontinue tagging plone_3rd party as a separate external.
  [esteele]

4.1a2 - 2011-02-10
------------------

- On search form don't show list of users when anonymous
  unless explicitly allowed in @@security-controlpanel.
  Fixes http://dev.plone.org/plone/ticket/11346
  [msmith64]

- Add fallback icon for control panels with no icon, in the portlet_prefs
  portlet. This fixes http://dev.plone.org/plone/tickets/11112.
  [topherh, davisagli]

- Use the new optimized BooleanIndex for the `is_default_page` and
  `is_folderish` indexes and the new `UUIDIndex` for the `UID` index.
  [hannosch]

- Remove js-generated inline style from searchbox. Same CSS is in public.css.
  Fixes http://dev.plone.org/plone/tickets/11186.
  [msmith64]

- Use nocall: when getting the @@sitemap_view in sitemap.pt.
  [elro]

- Hide plone.app.registry, z3c.form as an add-on options from the
  @@plone-addsite view, quickinstaller.
  [esteele]

- Merge in PLIP #9288: Improved commenting infrastructure. Refs
  http://dev.plone.org/plone/ticket/9288
  [timo]

- Fixed handling of relative links used as default pages
  http://dev.plone.org/plone/ticket/11340
  [fRiSi]

4.1a1 - 2011-01-18
------------------

- Removing unused import from testCatalogTool.
  [thet]

- Alphabetical ordering of metadata.xml dependencies.
  [thet]

- Using tom gross' improved and tested safeToInt version.
  [tom_gross, thet]

- Move PlacefulWorkflow, kupu, iterate and openid to Plone egg dependencies.
  [elro]

- Depend on plone.app.uuid for indexing content UUIDs.
  [toutpt, davisagli]

- Added ++resource++blank.html, a building block for cross-domain iframe
  communication (e.g. with Disqus.)
  [elro]

- Added iframe option for single sign on login templates.
  [elro]

- Removed duplicate code in login templates.
  [elro]

- Added ajax_include_head request parameter for use with cross domain iframe.
  [elro]

- Single Sign On support in login forms.
  [elro]

- Refactored ``URLTool.isURLInPortal``, adding ``allow_external_login_sites``
  property to ``site_properties`` for external sites considered to be internal
  for the purposes of logging in.
  [elro]

- Improve table sort of 'listing' class tables. We can use a sortabledata-xxxx
  class in a cell (td) where xxxx is a sortable data value, then, sort uses xxxx
  value to compare cell values, instead of td text content.
  Refs http://dev.plone.org/plone/ticket10809
  [thomasdesvenain]

- Merge in PLIP #10901: Set and enforce base coding standards for our own
  JavaScript. Refs http://dev.plone.org/plone/ticket/10901
  [esteele]

- Removed IOrderedContainer-implementation from PloneFolder in favour
  of implementation in OFS.OrderSupport
  [tom_gross]

- Renamed package to `Products.CMFPlone`.
  [elro]

- Deprecated the following scripts that are only used by deprecated templates.
  These will be removed in Plone 5: prefs_group_edit.py,
  prefs_valid_search_restriction.py, prefs_user_group_search.py,
  prefs_portrait_delete.py.
  [davisagli]

- Replaced the prefs_group_details.pt template with a browser view in
  plone.app.controlpanel. Ss a side effect this means group creation is now
  protected by the Plone Users and Groups control panel permission, rather than
  the CMF Manage Groups permission.
  [davisagli]

- Turn plone_control_panel.pt into a deprecated alias for the
  @@overview-controlpanel view from plone.app.controlpanel.
  [davisagli]

- Protect most control panels with specific permissions instead of the generic
  "Manage portal".
  [davisagli]

- Configure the Site Administrator role in the default rolemap and workflows.
  This role is intended for people who should have full content editing
  privileges but not Manager access (i.e. to the ZMI).
  [davisagli]

- Updated to use Zope 2.13.
  [hannosch]
