2012-08-09 23:52:46 +02:00
GridField Bulk Editing Tools
============================
2014-10-01 11:29:38 +02:00
[![Latest Stable Version ](https://poser.pugx.org/colymba/gridfield-bulk-editing-tools/v/stable.svg )](https://github.com/colymba/GridFieldBulkEditingTools/releases)
[![Latest Unstable Version ](https://poser.pugx.org/colymba/gridfield-bulk-editing-tools/v/unstable.svg )](https://github.com/colymba/GridFieldBulkEditingTools/tree/master)
2018-02-01 12:40:23 +01:00
[![License ](https://poser.pugx.org/colymba/gridfield-bulk-editing-tools/license.svg )](#license-and-copyright)
2014-10-01 11:29:38 +02:00
2017-01-25 13:27:11 +01:00
Set of SilverStripe 4 GridField components to facilitate bulk file upload & record editing.
2014-10-01 11:29:38 +02:00
2013-12-05 18:42:17 +01:00
2014-10-01 11:29:38 +02:00
## Components:
2014-05-04 17:13:03 +02:00
* [Bulk Upload ](#bulk-upload ): Upload multiple images or files at once into DataObjects
2014-10-01 11:29:38 +02:00
* [Bulk Manager ](#bulk-manager ): Delete, Unlink, Edit (and more) multiple records at once
2013-12-05 18:42:17 +01:00
2013-04-16 19:06:24 +02:00
## Requirements
2018-02-27 15:48:02 +01:00
* SilverStripe 4.0 (master / 3.+)
2017-01-25 13:27:11 +01:00
* SilverStripe 3.1 (version 2.+ / 1.+)
2018-02-27 15:23:48 +01:00
* Silverstripe 3.0 (version 0.5)
2012-07-18 01:27:28 +02:00
## Installation
2018-02-27 15:23:48 +01:00
`composer require colymba/gridfield-bulk-editing-tools`
2012-07-18 01:27:28 +02:00
2017-01-25 13:27:11 +01:00
## 3.0.0 deprecations
The 3.x versions of this module require SilverStripe 4.x+, and PHP 5.5 or above:
* Namespaces are implemented, and some class names have changed (see `.upgrade.yml` for mapping)
2014-05-11 21:23:03 +02:00
## 2.0.0 deprecations
2017-01-25 13:27:11 +01:00
Major deprections in latest 2.0.0 release:
2014-05-11 21:23:03 +02:00
* The `GridFieldBulkImageUpload` has been renamed to `GridFieldBulkUpload` .
* `onBulkImageUpload` callback has been renamed to `onBulkUpload`
2014-05-04 17:13:03 +02:00
## Bulk Upload
Upload multiple images or files at once into DataObjects. Perfect for galleries and the like.
2013-12-05 18:42:17 +01:00
2017-01-25 13:27:11 +01:00
```php
$config->addComponent(new \Colymba\BulkUpload\BulkUploader());
```
2013-12-05 18:42:17 +01:00
2018-03-02 10:36:15 +01:00
### Versioned
By default `BulkUploader` will write to the current stage (most likely Draft). To auto publish your `DataObject` , use the following param or config:
```php
$config->addComponent(new \Colymba\BulkUpload\BulkUploader(null, null, true));
```
OR
```php
$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 ](https://github.com/silverstripe/silverstripe-framework/blob/4.0/docs/en/02_Developer_Guides/00_Model/10_Versioning.md#dataobject-ownership )
2018-02-12 14:32:28 +01:00
See [BULK_UPLOAD.md ](docs/en/BULK_UPLOAD.md ) for detailed configuration.
2012-08-09 23:52:46 +02:00
2012-09-06 18:05:16 +02:00
## Bulk Manager
2013-12-05 18:42:17 +01:00
Perform actions on multiple records straight from the GridField
2017-01-25 13:27:11 +01:00
```php
$config->addComponent(new \Colymba\BulkManager\BulkManager());
```
2013-12-05 18:42:17 +01:00
2018-02-12 14:32:28 +01:00
See [BULK_MANAGER.md ](docs/en//BULK_MANAGER.md ) for detailed configuration.
2012-09-05 22:40:59 +02:00
2018-02-28 20:12:05 +01:00
## Tooling
* `npm run watch` for development
* `npm run dist` before pushing to the repo
2014-03-15 14:53:20 +01:00
## 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/ ](https://www.transifex.com/projects/p/gridfieldbulkeditingtools/ ) to contribute translations, rather than sending pull requests with YAML/JS files.
2018-02-01 12:40:23 +01:00
## License and Copyright
2013-08-04 15:21:06 +02:00
2018-02-01 12:40:23 +01:00
[BSD 3-clause license ](LICENSE )