Merge branch '2.2'

This commit is contained in:
Steve Boyd 2019-12-16 15:07:03 +13:00
commit 9f23ed4769
8 changed files with 15 additions and 17 deletions

View File

@ -151,7 +151,7 @@ class DMS extends SS_Object implements DMSInterface
public function getDocumentSetsByPage(SiteTree $page) public function getDocumentSetsByPage(SiteTree $page)
{ {
return $page->DocumentSets(); return $page->getDocumentSets();
} }
/** /**

View File

@ -55,14 +55,11 @@ class DMSSiteTreeExtension extends DataExtension
/** /**
* Get a list of document sets for the owner page * Get a list of document sets for the owner page
* *
* @deprecated 3.0 Use DocumentSets() instead.
*
* @return ArrayList * @return ArrayList
*/ */
public function getDocumentSets() public function getDocumentSets()
{ {
Deprecation::notice('3.0', 'Use DocumentSets() instead'); return $this->owner->DocumentSets();
return $this->owner->hasManyComponent('DocumentSets');
} }
/** /**
@ -74,7 +71,7 @@ class DMSSiteTreeExtension extends DataExtension
{ {
$documents = ArrayList::create(); $documents = ArrayList::create();
foreach ($this->owner->DocumentSets() as $documentSet) { foreach ($this->getDocumentSets() as $documentSet) {
/** @var DocumentSet $documentSet */ /** @var DocumentSet $documentSet */
$documents->merge($documentSet->getDocuments()); $documents->merge($documentSet->getDocuments());
} }

View File

@ -820,12 +820,12 @@ class DMSDocument extends DataObject implements DMSDocumentInterface
new GridFieldDataColumns(), new GridFieldDataColumns(),
new GridFieldPaginator(30) new GridFieldPaginator(30)
); );
$versionsGridFieldConfig->getComponentByType('GridFieldDataColumns') $versionsGridFieldConfig->getComponentByType('GridFieldDataColumns')
->setDisplayFields(Config::inst()->get('DMSDocument_versions', 'display_fields')) ->setDisplayFields(Config::inst()->get('DMSDocument_versions', 'display_fields'))
->setFieldFormatting( ->setFieldFormatting(
array( array(
'FilenameWithoutID' => '<a target="_blank" class="file-url" href="$Link">' 'FilenameWithoutID' => '<a target=\"_blank\" class=\"file-url\" href=\"$Link\">$FilenameWithoutID</a>'
. '$FilenameWithoutID</a>'
) )
); );

View File

@ -12,7 +12,8 @@
"silverstripe/framework": "^3.5", "silverstripe/framework": "^3.5",
"silverstripe/cms": "^3.5", "silverstripe/cms": "^3.5",
"symbiote/silverstripe-gridfieldextensions": "^2.0", "symbiote/silverstripe-gridfieldextensions": "^2.0",
"silverstripe/taxonomy": "^1.2" "silverstripe/taxonomy": "^1.2",
"mustangostang/spyc": "<=0.6.2"
}, },
"suggest": { "suggest": {
"undefinedoffset/sortablegridfield": "Allow documents to be reordered via drag-and-drop" "undefinedoffset/sortablegridfield": "Allow documents to be reordered via drag-and-drop"

View File

@ -1,6 +1,6 @@
<% if $DocumentSets %> <% if $getDocumentSets %>
<div class="documentsets"> <div class="documentsets">
<% loop $DocumentSets %> <% loop $getDocumentSets %>
<% include DocumentSet %> <% include DocumentSet %>
<% end_loop %> <% end_loop %>
</div> </div>

View File

@ -50,9 +50,9 @@ class DMSDocumentSetTest extends SapphireTest
$ds2 = $this->objFromFixture('DMSDocumentSet', 'ds2'); $ds2 = $this->objFromFixture('DMSDocumentSet', 'ds2');
$ds3 = $this->objFromFixture('DMSDocumentSet', 'ds3'); $ds3 = $this->objFromFixture('DMSDocumentSet', 'ds3');
$this->assertCount(0, $s4->DocumentSets(), 'Page 4 has no document sets associated'); $this->assertCount(0, $s4->getDocumentSets(), 'Page 4 has no document sets associated');
$this->assertCount(2, $s1->DocumentSets(), 'Page 1 has 2 document sets'); $this->assertCount(2, $s1->getDocumentSets(), 'Page 1 has 2 document sets');
$this->assertEquals(array($ds1->ID, $ds2->ID), $s1->DocumentSets()->column('ID')); $this->assertEquals(array($ds1->ID, $ds2->ID), $s1->getDocumentSets()->column('ID'));
} }
/** /**

View File

@ -142,7 +142,7 @@ class DMSEmbargoTest extends SapphireTest
$doc->Folder = "0"; $doc->Folder = "0";
$dID = $doc->write(); $dID = $doc->write();
$s1->DocumentSets()->first()->getDocuments()->add($doc); $s1->getDocumentSets()->first()->getDocuments()->add($doc);
$s1->publish('Stage', 'Live'); $s1->publish('Stage', 'Live');
$s1->doPublish(); $s1->doPublish();

View File

@ -65,9 +65,9 @@ class MigrateToDocumentSetsTaskTest extends SapphireTest
$this->assertContains('Skipped: already has a set: 1', $result); $this->assertContains('Skipped: already has a set: 1', $result);
// Test that some of the relationship records were written correctly // Test that some of the relationship records were written correctly
$this->assertCount(1, $firstPageSets = $this->objFromFixture('SiteTree', 'one')->DocumentSets()); $this->assertCount(1, $firstPageSets = $this->objFromFixture('SiteTree', 'one')->getDocumentSets());
$this->assertSame('Default', $firstPageSets->first()->Title); $this->assertSame('Default', $firstPageSets->first()->Title);
$this->assertCount(1, $this->objFromFixture('SiteTree', 'two')->DocumentSets()); $this->assertCount(1, $this->objFromFixture('SiteTree', 'two')->getDocumentSets());
// With dryrun enabled and being run the second time, nothing should be done // With dryrun enabled and being run the second time, nothing should be done
$result = $this->runTask(array('action' => 'create-default-document-set', 'dryrun' => '1')); $result = $this->runTask(array('action' => 'create-default-document-set', 'dryrun' => '1'));