From 358d3d29415080dd1b42449dc6f7cc1881393902 Mon Sep 17 00:00:00 2001 From: astanley Date: Thu, 5 Jun 2025 13:10:51 +0000 Subject: [PATCH] split ownership --- src/Form/CreateMediaFromFileForm.php | 1 + src/Utils.php | 16 ++++++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/Form/CreateMediaFromFileForm.php b/src/Form/CreateMediaFromFileForm.php index b61167d..97b3e92 100644 --- a/src/Form/CreateMediaFromFileForm.php +++ b/src/Form/CreateMediaFromFileForm.php @@ -209,6 +209,7 @@ final class CreateMediaFromFileForm extends FormBase { '#type' => 'textfield', '#title' => $this->t('File ownership'), '#default_value' => $default_ownership, + '#attributes' => ['class' => ['media-side-by-side']], ]; $form['actions'] = [ diff --git a/src/Utils.php b/src/Utils.php index eb60fee..0235bfd 100644 --- a/src/Utils.php +++ b/src/Utils.php @@ -42,7 +42,9 @@ class Utils { if (!$file) { $absolute_path = $fileSystem->realpath($destination_path); if ($absolute_path) { - chown($absolute_path, $build_data['ownership']); + $ownership = explode(':', $build_data['ownership']); + chown($absolute_path, $ownership[0]); + chgrp($absolute_path, $ownership[1]); } $file = File::create([ @@ -70,7 +72,6 @@ class Utils { "field_media_of" => $nid, ]); $media->save(); - } /** @@ -79,7 +80,8 @@ class Utils { public static function buildMediaBatch($build_data) { $source_dir = $build_data['source_dir']; if ($source_dir && !is_dir($source_dir)) { - \Drupal::logger('islandora_inplace_media')->error('Source directory does not exist: @dir', ['@dir' => $source_dir]); + \Drupal::logger('islandora_inplace_media') + ->error('Source directory does not exist: @dir', ['@dir' => $source_dir]); return; } $destination = $build_data['destination_path']; @@ -93,7 +95,7 @@ class Utils { $batch = [ 'title' => t('Processing media files...'), 'operations' => [], - // Static method reference. + // Static method reference. 'finished' => [self::class, 'finishMediaBatch'], ]; @@ -112,10 +114,12 @@ class Utils { */ public static function finishMediaBatch($success, $results, $operations) { if ($success) { - \Drupal::logger('islandora_inplace_media')->notice('Successfully processed media files.'); + \Drupal::logger('islandora_inplace_media') + ->notice('Successfully processed media files.'); } else { - \Drupal::logger('islandora_inplace_media')->error('There were errors processing media files.'); + \Drupal::logger('islandora_inplace_media') + ->error('There were errors processing media files.'); } }