diff --git a/modules/datastore/datastore.module b/modules/datastore/datastore.module index 33c4064ff1..0b78c16bc4 100644 --- a/modules/datastore/datastore.module +++ b/modules/datastore/datastore.module @@ -15,6 +15,7 @@ function datastore_theme($existing, $type, $theme, $path) { 'uuid' => NULL, 'title' => NULL, 'url' => NULL, + 'node_id' => NULL, ], ], 'datastore_dashboard_revision_cell' => [ diff --git a/modules/datastore/src/Form/DashboardForm.php b/modules/datastore/src/Form/DashboardForm.php index 61d3e279df..cdf905dd9a 100644 --- a/modules/datastore/src/Form/DashboardForm.php +++ b/modules/datastore/src/Form/DashboardForm.php @@ -502,6 +502,7 @@ protected function buildRevisionRow(array $rev, int $resourceCount, string $harv if ($moderation_class == 'hidden') { $moderation_class = 'published-hidden'; } + return [ [ 'rowspan' => $resourceCount, @@ -510,6 +511,7 @@ protected function buildRevisionRow(array $rev, int $resourceCount, string $harv '#uuid' => $rev['uuid'], '#title' => $rev['title'], '#url' => Url::fromUri("internal:/dataset/$rev[uuid]"), + '#node_id' => $rev['node_id'], ], ], [ diff --git a/modules/datastore/templates/datastore-dashboard-dataset-cell.html.twig b/modules/datastore/templates/datastore-dashboard-dataset-cell.html.twig index 466214284e..1b0912791d 100644 --- a/modules/datastore/templates/datastore-dashboard-dataset-cell.html.twig +++ b/modules/datastore/templates/datastore-dashboard-dataset-cell.html.twig @@ -1,2 +1,8 @@ -
{{ uuid }}
- \ No newline at end of file + +
{{ uuid }}
diff --git a/modules/datastore/tests/src/Unit/Form/DashboardFormTest.php b/modules/datastore/tests/src/Unit/Form/DashboardFormTest.php index b1e434f107..523b6a9b81 100644 --- a/modules/datastore/tests/src/Unit/Form/DashboardFormTest.php +++ b/modules/datastore/tests/src/Unit/Form/DashboardFormTest.php @@ -110,6 +110,7 @@ public function testBuildTableRowsWithHarvestIdFilter() { 'moderation_state' => 'published', 'modified_date_metadata' => '2020-01-15', 'modified_date_dkan' => '2021-02-11', + 'node_id' => 1, ]; $distribution = [ 'distribution_uuid' => 'dist-1', @@ -154,6 +155,7 @@ public function testBuildTableRowsWithHarvestIdFilter() { $this->assertEquals('NEW', $form['table']['#rows'][0][2]['data']); $this->assertEquals('done', $form['table']['#rows'][0][6]['data']['#status']); $this->assertEquals(NULL, $form['table']['#rows'][0][6]['data']['#error']); + $this->assertEquals(1, $form['table']['#rows'][0][0]['data']['#node_id']); } /** @@ -167,6 +169,7 @@ public function testBuildTableRowsWithDatasetTitleFilter() { 'moderation_state' => 'published', 'modified_date_metadata' => '2020-01-15', 'modified_date_dkan' => '2021-02-11', + 'node_id' => 2, ]; $distribution = [ 'distribution_uuid' => 'dist-1', @@ -222,6 +225,7 @@ public function testBuildTableRowsWithDatasetTitleFilter() { $this->assertEquals('NEW', $form['table']['#rows'][0][2]['data']); $this->assertEquals('done', $form['table']['#rows'][0][6]['data']['#status']); $this->assertEquals(NULL, $form['table']['#rows'][0][6]['data']['#error']); + $this->assertEquals(2, $form['table']['#rows'][0][0]['data']['#node_id']); } /** @@ -235,6 +239,7 @@ public function testBuildTableRowsWithUuidFilter() { 'moderation_state' => 'published', 'modified_date_metadata' => '2020-01-15', 'modified_date_dkan' => '2021-02-11', + 'node_id' => 3, ]; $distribution = [ 'distribution_uuid' => 'dist-1', @@ -295,6 +300,7 @@ public function testBuildTableRowsWithAllDatasets() { 'title' => 'Dataset 1', 'modified_date_metadata' => '2019-08-12', 'modified_date_dkan' => '2021-07-08', + 'node_id' => 3, 'distributions' => [ [ 'distribution_uuid' => 'dist-1', @@ -320,6 +326,7 @@ public function testBuildTableRowsWithAllDatasets() { 'title' => 'Non-Harvest Dataset', 'modified_date_metadata' => '2019-08-12', 'modified_date_dkan' => '2021-07-08', + 'node_id' => 3, 'distributions' => [ [ 'distribution_uuid' => 'dist-2', @@ -395,6 +402,7 @@ public function testBuildTableRowsDatasetWithNoDistribution() { 'modified_date_metadata' => '2019-08-12', 'modified_date_dkan' => '2021-07-08', 'distributions' => ['Not found'], + 'node_id' => 1, ], ]; @@ -421,6 +429,7 @@ public function testBuildTableRowsWithUnsupportedResourceTypes() { 'title' => 'Dataset 1', 'modified_date_metadata' => '2019-08-12', 'modified_date_dkan' => '2021-07-08', + 'node_id' => 5, 'distributions' => [ [ 'distribution_uuid' => 'dist-1', @@ -510,6 +519,7 @@ public function testBuildTableRowsWithUnsupportedResourceTypes() { $this->assertEquals('done', $form["table"]["#rows"][1][3]["data"]["#status"]); // The second row post import class is correct. $this->assertEquals('done', $form["table"]["#rows"][1][3]["class"]); + $this->assertEquals(5, $form['table']['#rows'][0][0]['data']['#node_id']); } /** @@ -524,6 +534,7 @@ public function testBuildTableRowsDatasetMultipleDistribution() { 'title' => 'Dataset 1', 'modified_date_metadata' => '2019-08-12', 'modified_date_dkan' => '2021-07-08', + 'node_id' => 7, 'distributions' => [ [ 'distribution_uuid' => 'dist-1',