.github | ||
.tx | ||
client | ||
docs/en | ||
lang | ||
src | ||
templates/Colymba | ||
_config.php | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc.js | ||
.gitattributes | ||
.gitignore | ||
.nvmrc | ||
.stylelintrc.js | ||
.upgrade.yml | ||
babel.config.json | ||
composer.json | ||
LICENSE | ||
package.json | ||
README.md | ||
transifex.js | ||
webpack.config.js | ||
yarn.lock |
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. 🚨
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 developmentnpm 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.