Jump to:

5450 Posts in 1672 Topics by 1197 members

Customising the CMS

SilverStripe Forums » Customising the CMS » Can Silverstripe do that/Criticize my implementation

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Page: 1
Go to End
Author Topic: 1016 Views
  • jsaade
    Avatar
    Community Member
    18 Posts

    Can Silverstripe do that/Criticize my implementation Link to this post

    In my first Silverstripe project, the client had a list of requirements, and I had to tweak silverstripe in order to fulfill them all.

    Requirements:
    - Website is for Cars and Real Estates.
    - Cars are divided into 4 categories: Used, New, Classified Used, Classified New
    - Real Estates: Sale, Rent, Classified Sale, Classified Rent.

    - Admin Can create users that belong to one of the top categories and those users can only edit/add pages they manage (they cannot see other users pages).

    - When a user edits a page, a publication request is emailed to the admin who must approve in order to publish anything.

    - Other Requirements:
    - Site Banners with also group of users restrictions.
    - Ability to add/edit Regions for real estates.
    - Ability to add/edit Car Brands and Models.

    Implementation:
    1- Security:


    • - Admins
      - Content Authors

      • - Cars
        - Used

        • - Car Agent A
          - Car Agent B

        - New
        - Classified Used
        - Classified New

      ...

    As you see from the above Tree, the admin creates new agents groups under their specific Category.
    and being Tree based, I can add restricitions on pages, The SiteTree "Pages" looks like the following:

    • - Home -> only admin can edit
      - Cars -> only Content Author can edit

      • - Used -> only Used Group can edit

        • - Car Agent A Page -> only Car agent A can edit
          - Car Agent B Page -> Only car agent B can edit


      ...

    Now this imposed a restriction on the admin, as an admin has to first go to "Security", add the new group then go back to "Pages"
    create a page for that specific group and set the permission for that group.
    I setup most of the permissions, so the admin only has to put the permissions for the new group only.

    I also used Simplify Module to hide pages users cannot see, I also made it Hide a lot of Tabs (almost all the tabs except content related stuff) for Content Authors.

    - I used cmsworkflow module to make a small workflow system (Admin published, Content Authors request).

    I have just delivered the solution to the client, and hopefully he will find it easy and robust enough to add agents.
    But I am thinking, was there a better way to do the above? How would someone with more experience in SilverStripe implement the same requirements?

    Thanks.

    1016 Views
Page: 1
Go to Top

Want to know more about the company that brought you SilverStripe? Then check out SilverStripe.com

Comments on this website? Please give feedback.