colymba/gridfield-bulk-editing-tools

SilverStripe GridField component to upload images/files and edit records in bulk

Installs: 184 499

Dependents: 44

Suggesters: 7

Stars: 76

Watchers: 19

Forks: 59

Open Issues: 14

Type:silverstripe-vendormodule


README

Latest Stable Version Latest Unstable Version License

Set of SilverStripe 4 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

Requirements

  • SilverStripe 4.0 (master / 3.+)
  • SilverStripe 3.1 (version 2.+ / 1.+)
  • Silverstripe 3.0 (version 0.5)

Installation

composer require colymba/gridfield-bulk-editing-tools

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)

2.0.0 deprecations

Major deprections in latest 2.0.0 release:

  • The GridFieldBulkImageUpload has been renamed to GridFieldBulkUpload.
  • onBulkImageUpload callback has been renamed to onBulkUpload

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