e4bc553521
* Add 2.0.0 changelog * Update DMSInterface and DMSDocumentInterface removing *page and adding getDocumentSetsByPage to DMSInterface * Update use documentation and update unit tests This commit changes the relationship from Pages has_many Documents to Pages has_many DocumentSets which are many_many to Documents. The upload field has been upated to attach documents to a set instead of a page, the tests updated and the DMSInterface and DMSDocumentInterface updated to be less relevant to pages and more relevant to document sets. |
||
---|---|---|
_config | ||
.tx | ||
code | ||
css | ||
docs/en | ||
images | ||
javascript | ||
lang | ||
resources | ||
scss | ||
templates | ||
tests | ||
_config.php | ||
.codecov.yml | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.scrutinizer.yml | ||
.travis.yml | ||
code-of-conduct.md | ||
composer.json | ||
config.rb | ||
CONTRIBUTING.md | ||
LICENSE.md | ||
README.md |
Document Management Module (DMS)
Overview
The module adds a new DMSDocument
model which allows management of large amounts of files, and their relations to
pages. In contrast to the File
model built into SilverStripe core, it aims to wrap storage and access concerns in
a generic API. This allows more fine-grained control over how the documents are managed and exposed through the website.
Additionally, documents are stored and managed as part of a page instead of away in a separate assets store.
Features
- Relation of documents to pages
- Relation of documents to other documents
- Management and upload of documents within a page context in the CMS
- Metadata management through the powerful
GridField
andUploadField
core APIs - Configurable tags for documents
- Download via SilverStripe controller (rather than filesystem URLs)
- Access control based on PHP logic, and page relations
- Replacement of existing files
Documentation
For information on configuring and using this module, please see the documentation section.
Requirements
- PHP 5.3 with the "fileinfo" module (or alternatively the "whereis" and "file" Unix commands)
- (optional) Pagination of Documents in the CMS
- (optional) Sorting of Documents in the CMS
- (optional) Full text search of Documents
- (optional) Text extraction for Document full-text search
- (optional) Tags
Contributing
Translations
Translations of the natural language strings are managed through a third party translation interface, transifex.com. Newly added strings will be periodically uploaded there for translation, and any new translations will be merged back to the project source code.
Please use https://www.transifex.com/projects/p/silverstripe-dms/ to contribute translations, rather than sending pull requests with YAML files.
See the "i18n" topic on doc.silverstripe.org for more details.