silverstripe / silverstripe-dms

Adds a Document Management System to Silverstripe
BSD 3-Clause "New" or "Revised" License
40 stars 52 forks source link

Ability to disable DocumentSets intermediary structure #197

Closed jaedb closed 4 years ago

jaedb commented 6 years ago

For any small- to medium-sized website (or any website with less than hundreds of documents), Document Sets pose a superfluous level of structure that users find both frustrating and confusing. We find ourselves struggling to justify their purpose to our clients.

That being said, large-scale website with hundreds of documents (eg Government-level websites) suit the Document Sets structure really well.

To this end, I propose that developers (or better yet, administrators) can opt-in to the Document Sets structure. This could be the ability for documents to be attached directly to pages (as was previously the case), or perhaps a configuration value to disable Document Sets completely.

robbieaverill commented 6 years ago

Hi @jaedb - it makes sense to me that you could make this configurable. There's a couple of ways that this could be done:

I think the easiest way to implement this kind of feature would be that if you don't want document sets the backend would still create one by default, but have it hidden from CMS users and the templates. This way we wouldn't have to change the data model architecture, but rather just add some config settings and some logic in an onBeforeWrite hook somewhere.

Would you be keen to submit a pull request for this?

jaedb commented 6 years ago

That sounds like a reasonable approach. No point interfering with the data model architecture if we can avoid it - provided it doesn't start introducing clunky logic.

I'm happy to explore the implementation of this.

camfindlay commented 6 years ago

+1

camfindlay commented 6 years ago

A flag in the config.yml would be ideal

maxime-rainville commented 4 years ago

Unfortunately, Silverstripe CMS 3 has entered limited support in June 2018. This means we'll only be fixing critical bugs and security issues for Silverstripe CMS 3 going forward.

You can read the Silverstripe CMS Roadmap for more information on our support commitments.