mirror of
https://github.com/silverstripe/silverstripe-cms
synced 2024-10-22 08:05:56 +02:00
Merge pull request #108 from robert-h-curry/7077-lazy-loading
MINOR: Modify VirtualPage to work with lazy loading.
This commit is contained in:
commit
6d77709704
@ -69,11 +69,12 @@ class VirtualPage extends Page {
|
||||
* @return SiteTree Returns the linked page, or failing that, a new object.
|
||||
*/
|
||||
function CopyContentFrom() {
|
||||
if(empty($this->record['CopyContentFromID'])) return new SiteTree();
|
||||
$copyContentFromID = $this->CopyContentFromID;
|
||||
if(!$copyContentFromID) return new SiteTree();
|
||||
|
||||
if(!isset($this->components['CopyContentFrom'])) {
|
||||
$this->components['CopyContentFrom'] = DataObject::get_by_id("SiteTree",
|
||||
$this->record['CopyContentFromID']);
|
||||
$copyContentFromID);
|
||||
|
||||
// Don't let VirtualPages point to other VirtualPages
|
||||
if($this->components['CopyContentFrom'] instanceof VirtualPage) {
|
||||
@ -89,7 +90,7 @@ class VirtualPage extends Page {
|
||||
return $this->components['CopyContentFrom'] ? $this->components['CopyContentFrom'] : new SiteTree();
|
||||
}
|
||||
function setCopyContentFromID($val) {
|
||||
if(DataObject::get_by_id('SiteTree', $val) instanceof VirtualPage) $val = 0;
|
||||
if($val && DataObject::get_by_id('SiteTree', $val) instanceof VirtualPage) $val = 0;
|
||||
return $this->setField("CopyContentFromID", $val);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user