-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
enhancementNew feature or requestNew feature or request
Milestone
Description
- Add setting for "Move to trash before deleting".
- Add check for trash setting to deletion event.
- Add
$event->sender->keepFileOnDelete = true;if trash is enabled. - Add notice about garbage collection. Include reference to
softdeleteduration. - Add label to show how long assets will be kept for by general config. e.g.
Trash will be automatically emptied after 30 days.
craft-remote-asset-protect/src/RemoteAssetProtect.php
Lines 171 to 197 in 129e47a
| // Listen for asset deletion | |
| Event::on( | |
| Asset::class, | |
| Asset::EVENT_BEFORE_DELETE, | |
| function(ModelEvent $event) { | |
| $event->sender->keepFileOnDelete = true; | |
| // Only consider deletion if ModelEvent, and is not a typical local volume | |
| if ( $event instanceof ModelEvent && !$event->sender->getVolume()->getFs() instanceof craft\fs\Local ) { | |
| $canDelete = false; | |
| if ( array_key_exists( $this->env, $this->environments ) ) { | |
| if ( $this->environments[ $this->env ][ $this->permissionsTable->delete ] ) { | |
| $canDelete = true; | |
| } | |
| } | |
| if ( !$canDelete ) { | |
| $event->isValid = false; | |
| throw new \yii\base\Exception('Assets cannot be deleted in this environment.'); | |
| } | |
| } | |
| } | |
| ); |
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request