We're testing adding professors as users so that they can clear give the OK to their work before it is published. In our current workflow, we have it so that staff takes the course content, uploads it and formats it for the OCW site. We want the professors to come in at this point and give it a look to make sure it is accurate, then correct any errors and finalize it for publication (staff would push the final publish button).
In order for the professors' accounts to edit a course created by a staffer's account, what type of user should they be? It seems that only Administrator accounts can edit content created by others... Is this true or am I missing something?
In order to provide a Professor with a view to their course, you have them register for an account and assign them the role of viewer. This will allow them to see unpublished material for review. Unfortunately in the latest production version of eduCommons the viewer role is not assignable from the plone control panel, but it can be assigned via the ZMI by using the portal_role_manager in the acl_users object in the root of your eduCommons site (not the acl_users at the top level of your Zope instance).
The next step would be to extend eduCommons by changing the viewer role to have write permissions on the content. This can be done by changing viewer permissions for the appropriate workflow states which are assigned to content items. This also can be done through the ZMI using the portal_workflow tool. I would highly recommend making the changes in a non-production version first and testing them before you modify a live production version. You may also want to read up on modifying permissions in Plone. They can be a bit tricky. If you change the permissions on various states in the workflow for viewers, be aware that those changes will only happen when a state change is applied. All content that is already published will not have the permissions modified.
Alternatively it may be better to give the viewer role the "Manage Portal" permission globally and allow a viewer to edit content in any state. You would have to make sure that anyone with a viewer account was trustworthy, as they would be able to delete content across the eduCommons site.
The very best solution would be to elevate a viewer's role locally for just their course material, but that would mean using the local role functionality in Plone which we have not yet integrated into eduCommons.
When you come up with a solution, it would be great if you posted it here for others, and we could give you feedback on it.