Ticket #9293 (confirmed PLIP)

Opened 7 years ago

Last modified 2 years ago

Integrate plone.app.changeownership to allow folks to change the owners of content

Reported by: jonstahl Owned by:
Priority: minor Milestone: Future
Component: General Version:
Keywords: Cc: albieback, jaroel, grahamperrin@…, hoka

Description (last modified by jaroel) (diff)

Replying to jaroel: Proposer: Jon Stahl
Seconder: Roel Bruggink

Motivation

In an intranet/internal corporate portal, suppose user Foo is assigned editor privileges at folder /Alpha. In that case, she can create new items and edit all items in that folder. She creates "institutional" items as the editor, not personal items.
Now, the editor for folder /Alpha will be changed to user Bar. He will be able to edit all items in folder /Alpha, and create new items.
However, Foo can still change the items she created while she was editor, because she is still the owner of the items. It may not be desirable, because she no longer occupies the editor position.
If one wants to take her away with all editing privileges, admin should user "/ownership_form", which is not very practical to reach (one needs a special url, not a convenient tab), and uses a combo box which is not good for a big user base.

Assumptions

N/A

Proposal & Implementation

We see two parts in this implementation, namely:

  1. Configlet/controlpanel for site-wide changes
  2. Object specific changes.
  3. Ownership taking (or modification) should be in a new Plone tab.
  4. Ownership taking should an action "Change ownership"
  5. In the Sharing tab (as the ownership changing will probably be made right after Sharing changes). Maybe at the bottom of the sharing tab there could be the new "ownership form", in which one could see the current owner of the current item, and search for the new owner.
  6. Another (yet simpler) solution would be making Owner one of the Sharing columns (maybe labeled as "does own", parallel to "can something"), having radio buttons instead of checkboxes: the original owner would have "does own" privileges initially, and changing in this column could alter local role assignment (giving Owner role to whoever is selected) and ownership info.

Deliverables

  • 1. Configlet in Site Setup for site-wide changes.
  • 2a. Add tab -or-
  • 2b. Add action menuitem -or-
  • 2c. Integration of ownership_form in @@sharing (see also #4287) -or-
  • 2d. Add Owner local role and change @@sharing accordingly.

Risks

All implementations are fairly simple to do, but deliverable 2d could be troublesome security wise.

Participants

Open

Progress

At this moment we have a working implementation in plone.app.changeownership done by Mustapha Benali for the site-wide changes.

Change History

comment:1 Changed 7 years ago by albieback

  • Cc albieback added

comment:2 follow-up: ↓ 4 Changed 7 years ago by MatthewWilkes

Hi Alberto,

Another one not following the format…

This appears to be a feature request, not a PLIP.  Please reread
http://plone.org/news/proposals-for-plone-4-solicited especially regarding
the format for PLIPs.

comment:3 Changed 7 years ago by kleist

  • Type changed from PLIP to Feature Request
  • Component changed from Unknown to Templates/CSS

PLIP => Feature Request, set Component.

Note that the sharing tab once did have a link to "/ownership_form" (see #4287)

comment:4 in reply to: ↑ 2 Changed 7 years ago by albieback

Replying to MatthewWilkes:

Another one not following the format…

I agree... It was just a little bit of too much enthusiasm before finding the PLIP template.

comment:5 Changed 6 years ago by hannosch

  • Milestone changed from 4.0 to Future

comment:6 follow-up: ↓ 8 Changed 6 years ago by jonstahl

  • Description modified (diff)
  • Reporter changed from albieback to jonstahl
  • Cc jaroel added
  • Component changed from Templates/CSS to Infrastructure
  • Summary changed from Ownership Form should be a tab or integrated to Sharing tab, and improved to Integrate plone.app.changeownership to allow folks to change the owners of content
  • Milestone changed from Future to 4.x
  • Type changed from Feature Request to PLIP

comment:7 Changed 6 years ago by grahamperrin

  • Cc grahamperrin@… added

comment:8 in reply to: ↑ 6 Changed 6 years ago by jaroel

re: I'd expect that it's already in a pretty good state.

Hold your horses, thanks to the I just took the existing product, fixed it and released it :) As far as I can tell by the quick test I've done (migrate an existing user to another existing user), it all works perfectly. A quick visual code check didn't trigger a "this is ugly" feeling, though it needs some tests.

comment:9 Changed 6 years ago by grahamperrin

Without altering the plone.app.changeownership focus of this PLIP:

 iw.memberreplace ( at plone.org) is another product used successfully. I used it in its alpha state, it's now RC, and there are zero (0) issues in the tracker.

I don't know which was developed or released first, but plone.app.changeownership is amongst the  search results for iw.memberreplace.

Dry run

Logging all this

I particularly appreciated the dry run.

If dry run and logging features are not already within plone.app.changeownership — documentation is relatively sparse — then maybe they could be spun into feature requests (beyond a PLIP).

comment:10 Changed 5 years ago by rossp

  • Status changed from new to closed
  • Resolution set to wontfix

PLEASE READ THIS AND RE-OPEN VALID PLIPS!

As we launch the new PLIP process we'd like to see which PLIPs:

  • are still appropriate/needed
  • still have owners/proposers/champions
  • still have available implementers

If this PLIP should still be considered for future releases of Plone please do re-open this ticket and assign an appropriate milestone. If it should be considered for the next release of Plone, use the 4.2 milestone. Also be sure to update the PLIP description, requester, owner, etc. and include a comment detailing recent progress and new plans. We will use all these details in the new continuous PLIP process.

comment:11 follow-up: ↓ 23 Changed 5 years ago by jaroel

  • Status changed from closed to reopened
  • Resolution wontfix deleted
  • Milestone changed from 4.x to 4.3

Proposer: Jon Stahl
Seconder: Roel Bruggink

Motivation

In an intranet/internal corporate portal, suppose user Foo is assigned editor privileges at folder /Alpha. In that case, she can create new items and edit all items in that folder. She creates "institutional" items as the editor, not personal items.
Now, the editor for folder /Alpha will be changed to user Bar. He will be able to edit all items in folder /Alpha, and create new items.
However, Foo can still change the items she created while she was editor, because she is still the owner of the items. It may not be desirable, because she no longer occupies the editor position.
If one wants to take her away with all editing privileges, admin should user "/ownership_form", which is not very practical to reach (one needs a special url, not a convenient tab), and uses a combo box which is not good for a big user base.

Assumptions

N/A

Proposal & Implementation

We see two parts in this implementation, namely:

  1. Configlet/controlpanel for site-wide changes
  2. Object specific changes.
  3. Ownership taking (or modification) should be in a new Plone tab.
  4. Ownership taking should an action "Change ownership"
  5. In the Sharing tab (as the ownership changing will probably be made right after Sharing changes). Maybe at the bottom of the sharing tab there could be the new "ownership form", in which one could see the current owner of the current item, and search for the new owner.
  6. Another (yet simpler) solution would be making Owner one of the Sharing columns (maybe labeled as "does own", parallel to "can something"), having radio buttons instead of checkboxes: the original owner would have "does own" privileges initially, and changing in this column could alter local role assignment (giving Owner role to whoever is selected) and ownership info.

Deliverables

  • 1. Configlet in Site Setup for site-wide changes.
  • 2a. Add tab -or-
  • 2b. Add action menuitem -or-
  • 2c. Integration of ownership_form in @@sharing (see also #4287) -or-
  • 2d. Add Owner local role and change @@sharing accordingly.

Risks

All implementations are fairly simple to do, but deliverable 2d could be troublesome security wise.

Participants

Roel Bruggink, jaroel

Progress

At this moment we have a working implementation in plone.app.changeownership done by Mustapha Benali for the site-wide changes.

comment:12 Changed 5 years ago by jaroel

Input needed on deliverable 2: which seat should I take?

comment:13 Changed 5 years ago by jonstahl

Personally, I think 2c seems like the best option. 2d with a role titled "owner" would be my second choice.

comment:14 Changed 5 years ago by elvix

2c seems to be the best option. That one is also in line with the current planning for plone.app.cmsui/Plone 5 whateverit'llbecalled.

I would recommend 2c with the ownership form above the sharing form, and rename it "responsible person" instead of owner.

comment:15 Changed 5 years ago by ldr

The discussion in #8901 is relevant here.

comment:16 Changed 5 years ago by eleddy

After discussion, the FWT would like to see this divided into two plips - one for the site wide setup and one for the local ownership changes. This way the easier plip (part 2) can go forward while we address some issues with performance and part 1.

WRT the site wide configlet, can you look at #8901 and comment on the performance and how to address that?

WRT the ownership tab, this feature existed at some point and was removed for some reason, although none of us can remember why. We think this is a welcome re-addition, but request that some discussion happens on the dev list to get a variety of opinions on the options (2a-2d) and to see if anyone recalls the original reason for removal.

comment:17 Changed 5 years ago by rossp

Sent a reminder by email to the PLIP participants to try and solicit a response.

comment:18 Changed 4 years ago by jaroel

It's on my todolist, I'll get back to this asap.

comment:19 Changed 4 years ago by rossp

  • Milestone changed from 4.3 to 4.4

Moving this to 4.4 since we haven't hear any further. If you're going to be able to get this ready for implementation review by the first week of January then let us know and we'll move it back to 4.4.

comment:20 Changed 4 years ago by eleddy

  • Cc hoka added
  • Version set to 4.1
  • severity set to Normal

comment:21 Changed 4 years ago by aclark

This is pretty handy! Just tried it in 4.2rc2 and it works as expected. My only concern would be that the old "change_ownership" form was handy too, so I wonder if it could be added back as well. It's slightly unintuitive to navigate to site setup and type in a path, but I'd take that over nothing. I'm also not sure whether I'd like only <obj>/change_ownership vs both <obj>/change_ownership and a control panel configlet, but again anything is better than nothing. This definitely feels like something that should be a core feature.

comment:22 Changed 4 years ago by davisagli

  • Component changed from Infrastructure to General

comment:23 in reply to: ↑ 11 Changed 3 years ago by davisagli

  • Status changed from reopened to confirmed
  • Version 4.1 deleted
  • Description modified (diff)
  • Milestone changed from 4.4 to 4.x

Roel, do you still have interest/availability to work on part 2 of this? Are you interested in submitting it for the next Plone release?

comment:24 Changed 3 years ago by jaroel

  • Description modified (diff)

I'm interested, but I don't really have the time to make his happen :/ If someone would like to do this, that would be great!

comment:25 Changed 3 years ago by esteele

  • Milestone changed from 4.x to 5.0

The Framework Team has decided to move on to Plone 5. Updating milestones accordingly.

comment:26 Changed 2 years ago by davisagli

  • Milestone changed from 5.0 to Future

Moving this to Future because no one is actively working on it.

Note: See TracTickets for help on using tickets.