Skip to content

Silverstripe CMS GridField components for bulk upload and bulk record edit, unlink & delete 📦💥

License

Notifications You must be signed in to change notification settings

silverstripe/silverstripe-gridfield-bulk-editing-tools

Repository files navigation

GridField Bulk Editing Tools

⚠️ I haven't been able to give as much love as I would like to these repos as they deserve. If you have time and are interested to help maintain them, give me a shout. 🚨

Latest Stable Version Latest Unstable Version License

Set of SilverStripe CMS GridField components to facilitate bulk file upload & record editing.

Components:

  • Bulk Upload: Upload multiple images or files at once into DataObjects
  • Bulk Manager: Delete, Unlink, Edit (and more) multiple records at once

Installation

composer require colymba/gridfield-bulk-editing-tools

Bulk Upload

Upload multiple images or files at once into DataObjects. Perfect for galleries and the like.

$config->addComponent(new \Colymba\BulkUpload\BulkUploader());

Versioned

By default BulkUploader will write to the current stage (most likely Draft). To auto publish your DataObject, use the following param or config:

$config->addComponent(new \Colymba\BulkUpload\BulkUploader(null, null, true));

OR

$config->getComponentByType('Colymba\\BulkUpload\\BulkUploader')->setAutoPublishDataObject(true);

Your DataObject should own the Image/File relation so it is published at the same time: See SilverStripe DataObject ownership DOC

See BULK_UPLOAD.md for detailed configuration.

Bulk Manager

Perform actions on multiple records straight from the GridField

$config->addComponent(new \Colymba\BulkManager\BulkManager());

See BULK_MANAGER.md for detailed configuration.

Tooling

  • npm run watch for development
  • npm run dist before pushing to the repo

Translations

Translations of the natural language strings are managed through a third party translation interface, transifex.com.

Please use https://www.transifex.com/projects/p/gridfieldbulkeditingtools/ to contribute translations, rather than sending pull requests with YAML/JS files.

License and Copyright

BSD 3-clause license