Skip to content
Snippets Groups Projects
Commit 2cfb0738 authored by catch's avatar catch
Browse files

Issue #3438769 by vinmayiswamy, amateescu, catch, antonnavi, michelle: Sub workspace does not clear

parent 9b41c6a8
No related branches found
No related tags found
12 merge requests!11131[10.4.x-only-DO-NOT-MERGE]: Issue ##2842525 Ajax attached to Views exposed filter form does not trigger callbacks,!3878Removed unused condition head title for views,!3818Issue #2140179: $entity->original gets stale between updates,!3731Claro: role=button on status report items,!3154Fixes #2987987 - CSRF token validation broken on routes with optional parameters.,!3133core/modules/system/css/components/hidden.module.css,!2812Issue #3312049: [Followup] Fix Drupal.Commenting.FunctionComment.MissingReturnType returns for NULL,!2062Issue #3246454: Add weekly granularity to views date sort,!617Issue #3043725: Provide a Entity Handler for user cancelation,!579Issue #2230909: Simple decimals fail to pass validation,!560Move callback classRemove outside of the loop,!555Issue #3202493
Pipeline #312166 passed with warnings
+3
......@@ -391,7 +391,12 @@ public static function getSubscribedEvents(): array {
* The workspace publish event.
*/
public function onPostPublish(WorkspacePublishEvent $event): void {
$this->deleteAssociations($event->getWorkspace()->id());
// Cleanup associations for the published workspace as well as its
// descendants.
$affected_workspaces = $this->workspaceRepository->getDescendantsAndSelf($event->getWorkspace()->id());
foreach ($affected_workspaces as $workspace_id) {
$this->deleteAssociations($workspace_id);
}
}
}
......@@ -156,6 +156,14 @@ public function testWorkspaceAssociation(): void {
$expected_initial_revisions['dev'] = [8];
$this->assertWorkspaceAssociations('node', $expected_latest_revisions, $expected_all_revisions, $expected_initial_revisions);
// Publish 'stage' and check the workspace associations.
/** @var \Drupal\workspaces\WorkspacePublisherInterface $workspace_publisher */
$workspace_publisher = \Drupal::service('workspaces.operation_factory')->getPublisher($this->workspaces['stage']);
$workspace_publisher->publish();
$expected_revisions['stage'] = $expected_revisions['dev'] = [];
$this->assertWorkspaceAssociations('node', $expected_revisions, $expected_revisions, $expected_revisions);
}
/**
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment