Fix Duplicate to Subsite functionality.

This commit is contained in:
Garion Herman 2017-06-04 15:05:59 +12:00
parent c2484365cf
commit 1975861aec
2 changed files with 6 additions and 7 deletions

View File

@ -348,12 +348,11 @@ class LeftAndMainSubsites extends Extension
/**
* @param array $data
* @param Form $form
*/
public function copytosubsite($data, $form)
public function copytosubsite($data)
{
$page = DataObject::get_by_id(SiteTree::class, $data['ID']);
$subsite = DataObject::get_by_id('Subsite', $data['CopyToSubsiteID']);
$page = SiteTree::get()->byID($data['ID']);
$subsite = Subsite::get()->byID($data['CopyToSubsiteID']);
$includeChildren = isset($data['CopyToSubsiteWithChildren']) ? $data['CopyToSubsiteWithChildren'] : false;
$newPage = $page->duplicateToSubsite($subsite->ID, $includeChildren);

View File

@ -12,7 +12,7 @@ use SilverStripe\Core\Convert;
use SilverStripe\Forms\CheckboxField;
use SilverStripe\Forms\DropdownField;
use SilverStripe\Forms\FieldList;
use SilverStripe\Forms\InlineFormAction;
use SilverStripe\Forms\FormAction;
use SilverStripe\Forms\ToggleCompositeField;
use SilverStripe\ORM\DataExtension;
use SilverStripe\ORM\DataObject;
@ -109,7 +109,7 @@ class SiteTreeSubsites extends DataExtension
$isDefaultSubsite = $this->owner->SubsiteID == 0 || $this->owner->Subsite()->DefaultSite;
if ($isDefaultSubsite && $subsitesMap) {
$fields->addFieldsToTab(
$fields->addFieldToTab(
'Root.Main',
ToggleCompositeField::create('SubsiteOperations',
_t('SiteTreeSubsites.SubsiteOperations', 'Subsite Operations'),
@ -118,7 +118,7 @@ class SiteTreeSubsites extends DataExtension
'Copy page to subsite'), $subsitesMap),
new CheckboxField('CopyToSubsiteWithChildren',
_t('SiteTreeSubsites.CopyToSubsiteWithChildren', 'Include children pages?')),
$copyAction = new InlineFormAction(
$copyAction = new FormAction(
'copytosubsite',
_t('SiteTreeSubsites.CopyAction', 'Copy')
)