#9938: factor custom output transformations out of the editors
+---
Reporter: davisagli |Owner: davisagli
Type: PLIP| Status: closed
Priority: minor |Milestone: 4.1
Component: Infrastructure | Resolution: fixed
Keywords: |
+---
Description changed by gotcha:
Old description:
'''Proposer:''' David Glick[[BR]]
'''Seconder:''' None as yet[[BR]]
[[BR]]
== Motivation ==
Currently there are several features we provide via hooks in the
transform chain from text/html to text/x-safe-html:
* resolveuid resolution
* image captioning
For historical reasons, these transformations are implemented in both
kupu and TinyMCE. This has been a maintenance problem, as bugfixes for
these features in one of the packages usually don't get ported to the
other. Worse, only one of the editor's transformations can be activated
at a time, making it impossible to use both editors in the same site
allowing each user to choose his or her preference, if these features are
desired.
These transforms are applied at render time, not edit time, and as such
are really features of the CMS, not of a particular editor.
== Proposal ==
I propose replacing both editors' implementations of these features with
a new implementation, based on both, in a new plone.outputtransforms
package.
The control panel settings related to these features will be moved from
the kupu and TinyMCE control panels to the Editing control panel.
== Implementation Deliverables ==
* New plone.outputtransforms package based on the existing
implementations
* Update Products.kupu and Products.TinyMCE to depend on
plone.outputtransforms (note: this needs to work in Plone 3 too)
* Move the control panel settings for link-by-uid and captioning to the
editing control panel.
* Upgrade steps to uninstall the old transforms and install the new one.
* Regression tests based on the old implementations
* Martin Aspeli has proposed a new UUID implementation in PLIP #10778.
If that is accepted, I will look into making link-by-uid support the new
uuids in addition to Archetypes UIDs. (This would facilitate future
support of non-AT content when linking in the editors, though support in
the editors would also be needed where the resolveuid links are
generated.)
== Risks ==
* Recent versions of Products.kupu and Products.TinyMCE are commonly
used in Plone 3, so we need to make sure that plone.outputtransforms
works there too.
== Participants ==
David Glick[[BR]]
Hanno Schlichting said he can help ensure the link-by-uid feature remains
LinguaPlone-aware.
== Progress ==
Not started.
New description:
'''Proposer:''' David Glick[[BR]]
'''Seconder:''' None as yet[[BR]]
[[BR]]
== Motivation ==
Currently there are several features we provide via hooks in the transform
chain from text/html to text/x-safe-html:
* resolveuid resolution
* image captioning
For historical reasons, these transformations are implemented in both kupu
and TinyMCE. This has been a maintenance problem, as bugfixes for these
features in one of the packages usually don't get ported to the other.
Worse, only one of the editor's transformations can be activated at a
time, making it impossible to use both editors in the same site allowing
each user to choose his or her preference, if these features are desired.
These transforms are applied at render time, not edit time, and as such
are really features of the CMS, not of a particular editor.
== Proposal ==
I propose replacing both editors' implementations of these features with a
new implementation, based on both, in a new plone.outputtransforms
package.
The control panel settings related to these features will be moved from
the kupu and TinyMCE control panels to the Editing control panel.
== Implementation Deliverables ==
* New plone.outputtransforms package based on the existing
implementations
* Update Products.kupu and Products.TinyMCE to depend on
plone.outputtransforms (note: this needs to work in Plone 3 too)
* Move the control panel settings for link-by-uid and captioning to the
editing control panel.
* Upgrade steps to uninstall the old transforms and install the new one.
* Regression tests based on the old implementations
* Martin Aspeli has proposed a new UUID implementation in PLIP #10778. If
that is accepted, I will look into making link-by-uid support the new
uuids in addition to Archetypes UIDs. (This would facilitate future
support of non-AT content when linking in the editors, though support in
the editors would also be needed where the resolveuid links are
generated.)
== Risks ==
* Recent versions of Products.kupu and Products.TinyMCE are commonly used
in Plone 3, so we need to make sure that