[Framework-Team] PLIP #126 ready for review
David Glick
davidglick at onenw.org
Tue Jan 13 00:37:30 UTC 2009
PLIP 126 (Link type should automatically redirect when accessed
directly) has been implemented. You can get the review buildout from:
http://svn.plone.org/svn/plone/review/plip126-link-redirects
I'm going to paste the contents of http://svn.plone.org/svn/plone/review/plip126-link-redirects/PLIP_126_README.txt
here for ease of any discussion...
Review bundle for PLIP 126: Link type should automatically redirect
when accessed directly
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
========================================================================
This bundle presents the branches that have been modified to implement
PLIP 126.
The result of the work in this bundle is that site administrators may
optionally make
the default view of the Link content type redirect to the target URL
of the link. (The target
was already used when Links are shown in navigation, but not if the
link object is accessed
directly.)
Summary of changes
------------------
* Plone:
- Default profile creates a 'redirect_links' property (value:
False) in site_properties
- Added link_redirect_view.py to the plone_content skin layer.
This redirects or falls
back to link_view depending on the value of the 'redirect_links'
property.
- Default profile sets link_redirect_view to be the default view
for the Link type
- Plone 3.2 to 3.3 migration profile performs the same changes as
were made to the default
profile (the default view is only changed if the old view was
link_view, e.g. uncustomized)
- link_view.pt now shows a "This Link will redirect" notice to
editors when 'redirect_links'
is enabled
* plone.app.controlpanel:
- Added a checkbox on the types configlet for the Link type only,
which controls the
'redirect_links' property. We could put this on another
configlet but types seems like
the most logical place someone would look for it.
Summary of test assertions
--------------------------
- 'redirect_links' property is created and set to False on site
creation
- ditto on migration from <3.3
- Added basic functional test coverage to types configlet. Just
because it was non-existent.
- Types configlet can be used to set the 'redirect_links' property
- redirect_link_view.py redirects only if redirect_links is True and
the user doesn't
have permission to edit the link
Needed documentation changes
----------------------------
Documentation of the Link content type should be updated to note the
availability of
this option.
Documentation of the types configlet should be updated to reflect the
presence of the
'Redirect immediately to link target' setting in Plone 3.3+
Existing documentation of how to make links automatically redirect
should be updated to
describe the new option. (e.g. http://plone.org/documentation/how-to/repurpose-link-object/
-- the approach I've taken is based on the last comment on that howto)
Backwards compatibility
-----------------------
Existing behavior should not change unless the site administrator
turns on the new option.
Existing installations in which the 'link_view' script was customized
will continue to work
despite the change in the default view for Links, because
link_redirect_view delegates to
link_view after checking the redirect_links option.
Existing installations that have changed the default view for Links to
something other than
link_view should continue to work, because the migration that changes
the default Link view
from link_view to link_redirect_view only runs if the old value was
link_view. (Of course,
in this scenario, some custom work will be needed to make the new
'redirect_links' option
actually function.)
Other considerations
--------------------
* Translations for the 'types_controlpanel_redirect_links' and
'message_permissions_blocking_link_redirect' msgids should be added.
* I experimented with, but ultimately deferred removing the
conditional code in many
listing views that handles Links as a special case in order to
link to the target URL.
This becomes unnecessary if redirect_links is true, because you
can go to the Link like
any other content type and its default view will take care of
redirecting to the target.
However, setting redirect_links to True seemed like too big of a
behavior change for the
3.x series, so I have instead added a draft PLIP suggesting this
change for 4.x:
http://dev.plone.org/plone/ticket/8867
Credits
-------
* David Glick
* Andrew Burkhalter
peace,
David Glick
Web Developer
ONE/Northwest
New tools and strategies for engaging people in protecting the
environment
http://www.onenw.org
davidglick at onenw.org
work: (206) 286-1235 x32
mobile: (206) 679-3833
Subscribe to ONEList, our email newsletter!
Practical advice for effective online engagement
http://www.onenw.org/full_signup
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.plone.org/pipermail/plone-framework-team/attachments/20090112/56d6e329/attachment.html>
More information about the Framework-Team
mailing list