Subscription portlet breaks batch workflow state change
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Singing & Dancing |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
If you go to a folder_contents page, check a content and click "Change state", you'll get a traversal error. This is because having the Subscription portlet in the site will change the request.
The change happens somewhere within collective.
A quick test seems to confirm that doing setup_form not in the __init__ but in the render of the portlet improves the situation. Possibly that's not a complete fix, but it's a start. Best of all would of course be if setup_form keeps it's fingers away from request.form. It seems like something there goes through everything in request.form and validates it or something. It's all very strange.
Changed in singing-dancing: | |
status: | Fix Committed → Fix Released |
Hint: It's Products. Five.browser. decode. processInputs that's changing request.form (via plone.z3cform. z2.switch_ on). I think what you're seeing is a general problem with all views or portlets that use processInputs. processInputs will change items in the form to unicode so that form libraries like formlib and z3c.form can work on request.form.