Workflow / Approval Process in Dashboard3 users found helpful
Add your ideas and suggestions and we'll see what we can pull together.
<Warning: Wall of Text follows>
I have 42+ content contributors. I was thinking of an easy way for all of us to track:
- Pages pending approval (with one-click admin approval)
- Latest site activity (with page version comments + timestamp)
- Internal dashboard messages (like notices of new functionality / new block options / planned downtime etc.)
Some of that I could do by just inserting a block area on the dashboard page and then whipping up some blocks.
Internal dashboard messages could be a simple content-like block with maybe a message priority level attribute.
Latest site activity would be pretty easy to pull from the DB - showing the pages last updated, who updated them, when, and the version comments. I haven't dived in to the page publishing system - but it's conceivable that such a block could also have the pages pending approval shown as well (although they would need top billing and not hidden in a list)
But the main thing that I see is missing is an approval and workflow system. At the moment I've just handed out publishing rights like candy because it is too much trouble to put an approval process in place.
Having a way of not only approving a page, but providing feedback on approval rejection would be extremely beneficial. Then when the person that owns the page logs back in, they have a message about why their page didn't get approved and what they need to fix. Having that information tied to the page version would be even more awesome... although now I'm way out into left field.
Now for Project Management Ideas...
I'm thinking for web development... but here goes. Have the ability to create a project and assign tasks to site members would be nice. Then when those users log in they have access to the project list and see the tasks that they are assigned.
So an example is the creation of an "accounting" section of the website. I create a project, create an editable list of tasks and then assign responsibilities (or have others do that). So Jane is responsible for writing web content for page x, y, and z; Bill is responsible for choosing images for those pages; while Sue has to approve and publish the section.
*Project creation / modification / deletion / archive functionality.
*Task creation / assignment / deletion / "finished" / etc functionality.
Drag-n-drop task order.
*Task due dates / milestones / project gnatt charts
*Project Team assignment (who has access to the project)
*Project task RSS + project/task comment RSS.
*Project resource file set(s), list of project related files shown on project page.
</end wall of text>
Concept art for a message center. Allowing site admins to communicate with other users that have dashboard privileges.
Concept art for change tracker. Allowing users with dashboard access to see the latest edits/updates to the website.
just made the simple package that will display the list of Unapproved pages, and the pages that are in edit mode.
just add the attribute 'unapproved' and it will display the pages.
Now that change tracker idea by glockops really looks like a good idea, even to be included in concrete5 core :) Is there any implementation of this yet? Else I might have a go at this if I have some time.
Additionally if you remove these lines from /concrete/tools/check_in.php
and change the 'Preview My Edits'-Button to 'Save My Edits'.
Then you have to restrict the access to the "Unapproved Pages"-tab via advanced permissions and sitemap system pages , remove the "Approve" popup from concrete/tools/page_controls_menu_js.php.
And you have a basic approval process... ;)
If you site is not on the root of website.
In the file "single_pages\dashboard\sitemap\non_approve.php"
echo " <a href='/index.php?cID=" . $f . "&ctask=approve-recent" . $token . "' target='_blank'>" . t('Approve') . "</a></li>";
echo " <a href='" . DIR_REL . "/index.php?cID=" . $f . "&ctask=approve-recent" . $token . "' target='_blank'>" . t('Approve') . "</a></li>";
I'm attaching a screenshot - looks like it adds 2 new items under the Sitemap heading: Edited Pages and Unapproved Pages
Maybe I'm missing something, but how do I set up a user with editing rights, but not approval rights?