2 Quick Questions

Permalink
Hi all. I am new to concrete and this is my first post. Awesome CMS by the way.

Is it possible to create/edit content, but not publish it until it is approved? Say, maintenance of the site is delegated to someone, but that person's manager must approve the content first.

Can I only allow a user to edit one page? Meaning, a user from Sales can only edit the Sales page, but not the rest of the site.

Any help/suggestions is appreciated.

 
synlag replied on at Permalink Reply
synlag
Hi,

1. Content isn't visible until you do not aprove the version. You have to use peview page.

2. Yes, you can. Have a look at this thread:
http://www.concrete5.org/help/building_with_concrete5/installation/...

Cheers
Remo replied on at Permalink Reply
Remo
you don't even have to activate the advanced permission model, just browse to a page and push the permissions button in the toolbar...

I don't think it needs a lot of explanation, create a group, a user, put it in the group, select the group on the permission dialog but not the guest.. and there you go, as easy as 1+1
t00thless replied on at Permalink Reply
thanks guys.

i have to say the way concrete handles my two questions is perfect. so far, i have looked nearly 30 CMS and installed and spent time with 5. concrete has blown the others away as far as ease of use. and that is what i have to focus on with my users.
Hackopotamus replied on at Permalink Reply
Hackopotamus
So, I've been happy with the approval features so far until my latest client inquired as to why they have to go around searching for pages that require approval. There seems to be lacking some sort of dashboard component that displays all the pages awaiting authorization.

Currently, I've tried to hack it in to the sitemap search tool by doing the following:

Modify /concrete/models/search/collection.php

1. Replace the following around line 41
$this->setLinkingWord();
$this->filters .= "cv1.cvIsApproved = 1";

with
if($searchArray['pageStatus']){
         if($searchArray['pageStatus'] == "AwaitingApproval"){
            $this->searchQuery .= " inner join CollectionVersions cv2 on (cv2.cID = Pages.cID)";
            $this->setLinkingWord();
            $this->filters .= "cv2.cvComments <> 'Initial Version'";
            $this->setLinkingWord();
            $this->filters .= "cv2.cvApproverUID IS NULL";
         }
         else{
            $this->setLinkingWord();
            $this->filters .= "cv1.cvIsApproved = 1";
         }
      }

and then in concrete/elements/dashboard/sitemap_search.php add the following before the submit button
<div class="fieldRow">
         <?php echo t('Status')?>:<br>
         <select name="pageStatus" style="width: 170px">
            <option value="Approved"<?php  if (!$_GET['pageStatus'] || $_GET['pageStatus'] == '' || $_GET['pageStatus'] == 'Approved') { ?> selected <?php  } ?>><?php echo t('Approved')?></option>
            <option value="AwaitingApproval"<?php  if ($_GET['pageStatus'] == 'AwaitingApproval') { ?> selected <?php  } ?>><?php echo t('Awaiting Approval')?></option>
         </select>
      </div>

This creates a dropdown on the sitemap search page that will allow you to search for pages with versions awaiting approval from an editor type person. The Approved option is the default behavior prior to the modification

This modification seems to be working out for us. Maybe it will help someone else.
Hackopotamus replied on at Permalink Reply 1 Attachment
Hackopotamus
Mod files for authorization and review of user contributed pages found via search function of the sitemap.

I seem to be having difficulty uploading files to the existing reply in edit mode in both Chrome and IE8.