#76: Extended author information and (portal) feedback
- Contents
- Proposed by
- Alexander Limi
- Seconded by
- Ivo van der Wijk
- Proposal type
- User interface
- Repository branch
- plip76-remaining-changes
- State
- completed
Definitions
- author
- Creator in DC, the portal member that has created the content. Must be a real member, members defined at a higher level in the Zope instance are/will remain tricky
Motivation
When viewing content it should be possible to retrieve more information about its author, view other content by this author and send feedback to this author.
Assumptions
- This plip is implemented on a relatively old branch by limi.
- Authors must be real plone members, not users defined at a higher level in the Zope instance (i.e. root)
Proposal
The byline template must be changed so it shows the full name of the author, the date the content became effective and a link to an author page listing specific details about the author, such as:
- full name
- portrait
- Location and other harmless data, once implemented as Member properties
- A feedback form (if the visitor is logged in), or else a button telling the user to login to send feedback
- An overview of content by this author by content type, 5 items per content-type (max) and a link to search for more content of this type by this author.
Implementation
The author page is a CPT that gets passed the authorname as part of the traverse_subpath, i.e. /author/username
**Update**[optilude] - if no traverse_subpath is given, it will also look at the Creator of the parent object; that way, you can go to '/Members/member1/document1/author' to get author info on that document. This also makes it easier to navigate back (a link is provided) to the document.
Feedback uses the referer header to get (or guess) the context for which the feedback is being sent and who the author of this content is if the feedback is to be sent to the author.
Anonymous users must login first to send feedback. The current portlet currently has a bug that prevents proper redirection to the original authorpage when logging in - this will be fixed (and the portlet will be better cachable in the process as well)
Other content by this author will be implemented by searching all content by this author and by iterating over this entire content listing, building groups of content per content type.
The authors address must not be revealed in this proces.
Deliverables
- An author template showing portait, a feedback form (if not isAnon) and other content
- a mail template
- Form handling code
- Full name support in document_byline including a link to the author page
- if possible: unittests
Risks
- Avoid exposing the authors email address
- Avoid allowing spam to be relayed through the forms or form handlers
- Sending spam directly to an author is hard to be avoided (unless we require images to be typed over, etc)
- It's not possible to keep track of the original document where feedback is being sent about if an anonymous user has to login first.
- The current setup, with an author page template and an argument through the traverse_subpath does not work properly with the portlet_login (came_from is set incorrectly to /author)
- Users that do not exist on portal-level (i.e. one level higher) cannot send mail, even if their mail address is present in memberdata
Progress log
o Ivo did the initial work
o optilude added some cleanups, a unit test for the new method, and merged into 2.1
o limi still needs to do the UI work - the template is ugly :)
o Wrong branch was used, remaining differences between uiteam-plip76-author-feedback and uiteam-plip76-extended-author-info will be in branch plip76-remaining-changes
Participants
Alexander Limi
Ivo van der Wijk
Martin Aspeli (optilude)
Allow Anonymous User to Contact User
Allow Anonymous to Contact Author
Would it be possible to allow an anonymous user to send feedback (no log-in)? Users may not want to register just to send a quick, one-time message.
Should pretty much be ready for merge
Needs a code review from someone that knows permissions and security, though.
Also needs UI tweaks, but I will do that once it's merged.