We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 15566
    • 73 Posts
    I have stripped the permissions right back on one of my (new) Access Policies so I am left with this:

    change_password
    frames
    home
    load
    logout

    After flushing permissions/cache I am still left with:

    Home
    Site - preview, logout
    Components - my components
    Reports - Site Schedule
    User -Profile
    Support - Forums, Wiki, JIRA, API Documentation

    How can I remove most of these so I am just left with my components and how can I set up a unique home screen for this Access Policy only (which loads one of my components) ?
      • 3749
      • 24,544 Posts
      Add a custom permission called full_menu to the policy for the admin Super User. (Be sure to do this first).

      Then go to Manager Actions and add that permission (full_menu) in the Permissions field at the bottom of the form you see when updating an item in the right panel. Do this for all the menu items you want to hide from other users. If you hide a main Top Menu choice, you don’t need to hide its children.

      If a menu choice already has a permission, just add a comma and full_menu to the end of it (no spaces).
        Did I help you? Buy me a beer
        Get my Book: MODX:The Official Guide
        MODX info for everyone: http://bobsguides.com/modx.html
        My MODX Extras
        Bob's Guides is now hosted at A2 MODX Hosting
        • 15566
        • 73 Posts
        I suspected the flexibility was there, I just couldn’t find it.

        Your instructions make sense, but I can’t find the areas you mean.

        1. How do you add a custom permission? I can only seem to add permissions that already exist.
        2. Do you mean go to Actions (not Manager Actions) and if so, once I am there do I add a new Action under core?

        I am being very cautious, and would like real idiot proof steps, because if I get this wrong I could potentially lock the whole site for Super Users.
          • 14368
          • 56 Posts
          I wanted to know how to do this myself, so tried following Bob’s instructions on a site where noone is logged in but me.

          Here’s a more full description of what to do:

          1. Go to Security -> Access Controls, click the Access Policies tab and right click to Edit the Administrator policy (or whichever is the policy of the super admin user)
          2. Click the Permissions tab, then click on the New Permission button up the top
          3. In ’Name’ manually write (don’t use the drop-down) the name of your new permission - full_menu - and give it a description if you like (e.g. ’View all items in the top level menu’) then click Add and Save the access policy.
          4. To define what your new permission will do, go to System -> Actions and right click to edit whichever Top Menu items you want to hide
          5. In the Permissions box, put the name of the new permission - full_menu - which tells that menu to only display if the current user has that permission, hiding it from all users who don’t, then Save.
          6. Security -> Flush Permissions to reload the new permission for your admin user so you can still see the hidden Top Menu items.

          That worked for me, thanks Bob!
            • 3749
            • 24,544 Posts
            Quote from: jobatkin at Nov 12, 2010, 04:40 AM

            I wanted to know how to do this myself, so tried following Bob’s instructions on a site where noone is logged in but me.

            Here’s a more full description of what to do:

            1. Go to Security -> Access Controls, click the Access Policies tab and right click to Edit the Administrator policy (or whichever is the policy of the super admin user)
            2. Click the Permissions tab, then click on the New Permission button up the top
            3. In ’Name’ manually write (don’t use the drop-down) the name of your new permission - full_menu - and give it a description if you like (e.g. ’View all items in the top level menu’) then click Add and Save the access policy.
            4. To define what your new permission will do, go to System -> Actions and right click to edit whichever Top Menu items you want to hide
            5. In the Permissions box, put the name of the new permission - full_menu - which tells that menu to only display if the current user has that permission, hiding it from all users who don’t, then Save.
            6. Security -> Flush Permissions to reload the new permission for your admin user so you can still see the hidden Top Menu items.

            That worked for me, thanks Bob!

            Thanks for providing the details. I’m sure many users will appreciate it. smiley

            I would add two things.

            First, as I mentioned above, if a menu choice already has a permission (a few do), just add a comma and full_menu to the end of it (no spaces). You definitely don’t want to be replacing existing permissions.

            Second, and this is optional, I generally recommend duplicating the Administrator policy (or the Administrator Policy Template if you have version 2.0.5 or later) if you’re going to add or delete permissions. Then modify the duplicate and assign it in the ACL entry. If you modify the standard Administrator policy, there’s a chance that your changes could be lost when you upgrade MODx. If that happened, you might have to edit the database to regain access to the menu items for the admin Super User.
              Did I help you? Buy me a beer
              Get my Book: MODX:The Official Guide
              MODX info for everyone: http://bobsguides.com/modx.html
              My MODX Extras
              Bob's Guides is now hosted at A2 MODX Hosting