Reorder subpages without using the sitemap?
Permalink
Hi, I'm building out a large site with many pages (>200) and many users (>50), all with permissions to specific sections. The order of pages within sections is a pretty big deal to these users since the autonav pulls this order in for a side nav on each section. I'm looking for a way for users to reorder subpages without using the sitemap.
My reasoning is that most of these users are older/non-techies, so I'd like to protect them from themselves. I easily imagine one of them just going to town and reorganizing the entire website as opposed to just their section of 10 or so pages. I've had no luck finding any such block. Any ideas?
My reasoning is that most of these users are older/non-techies, so I'd like to protect them from themselves. I easily imagine one of them just going to town and reorganizing the entire website as opposed to just their section of 10 or so pages. I've had no luck finding any such block. Any ideas?
you mean like on the page? you can do that in edit mode, move/delete.
Thanks for the reply. I'm actually referring to the cDisplayOrder of pages, as can be currently changed only in the sitemap by dragging pages up and down.
I've always just used the sitemap. I'd like to know if this is possible as well.
Me as well. And no complaints with the sitemap, it works well for intermediate users. I just worry about my beginner users really messing something up if there's no restrictions/scaled down sitemap function.
is it possible to modify pages you don't have permissions for? I didn't think so, but maybe it is.
alternatively you could have each group of pages have a leader with more experience and everyone else talks to them.
Having a leader would be a practical default solution. But I'm trying to help my client move away from that model. Before they had 70+ people emailing one IT person to make changes like this.
So far the staff has loved c5 because it eliminates this need (and the IT person is looking forward to some vacation time). If there's not easy way to execute this feature safely, a leader solution will have to do I guess.
So far the staff has loved c5 because it eliminates this need (and the IT person is looking forward to some vacation time). If there's not easy way to execute this feature safely, a leader solution will have to do I guess.
It'd make sense that permissions would apply to sitemap reordering for pages, but it doesn't seem so. I just tried with a sample limited user. The limited user couldn't edit the pages in other sections, but could reorder any of them as they pleased in the sitemap.
do you have advanced permissions on? that might stop that (like the admin or delete checkbox) But anyway thats something I'll submit to beta, it shouldn't work- it doesn't make any sense otherwise. And you shouldn't have to do extra.
just found this code maybe try adding some code like ?
$c = $this->getCollectionObj(); $pxml->guests['canRead'] = false; $pxml->registered['canRead'] = false; $pxml->group[0]['gID'] = ADMIN_GROUP_ID; $pxml->group[0]['canRead'] = true; $pxml->group[0]['canWrite'] = true; $pxml->group[0]['canApproveVersions'] = true; $pxml->group[0]['canDelete'] = true; $pxml->group[0]['canAdmin'] = true; $pxml->user[0]['uID']=$this->getUID(); $pxml->user[0]['canRead'] = true; $pxml->user[0]['canWrite'] = false; $pxml->user[0]['canAdmin'] = false; $c->assignPermissionSet($pxml);
$pxml->user[0]['canMove'] = false;
That looks promising. Where's that code located in the core?
Just played with all of the permissions I know of through the sitemap and the sitemap permissions tab (all with advanced permissions enabled). No luck. Even just read access to the sitemap allows the user to change the order.
Just played with all of the permissions I know of through the sitemap and the sitemap permissions tab (all with advanced permissions enabled). No luck. Even just read access to the sitemap allows the user to change the order.
not sure where it is in the core. looked at these posts.
http://www.concrete5.org/community/forums/customizing_c5/programmat...
http://www.concrete5.org/documentation/developers/permissions/conte...
since you want to apply it to the sitemap though i'd try putting it somewhere in that file (root/concrete/single_pages/dashboard) but I'm just guessing.
http://www.concrete5.org/community/forums/customizing_c5/programmat...
http://www.concrete5.org/documentation/developers/permissions/conte...
since you want to apply it to the sitemap though i'd try putting it somewhere in that file (root/concrete/single_pages/dashboard) but I'm just guessing.
No luck tracking down the code in single pages, will keep looking.
aha! take a look at root/concrete/tools and the file page controls menu
Nice find, the page_controls_menu_js.php could do the trick. Though I'll need to find the exact function to add in some advanced permissioning. Will see what I can do.
i may have been thinking the wrong path. would this do the trick?
http://www.concrete5.org/marketplace/addons/diy-navigation/...
http://www.concrete5.org/marketplace/addons/diy-navigation/...
That could be a potential solution. I'm actually already using a similar block called Quicklinks on most pages to insert custom arranged hot links. However, from what I can tell this DIY Nav block doesn't use to autonav core, i.e. the users have to select the pages they want linked as opposed to an auto-add. This is a bit too much for some of our users and doesn't force standards (that every page created must be linkable through a nav).
Thanks for the tip though. I think we might look to create a front end-solution to change the cDisplay Order variable.
Thanks for the tip though. I think we might look to create a front end-solution to change the cDisplay Order variable.
cool.