mirror of
https://github.com/processwire/processwire.git
synced 2025-08-10 16:54:44 +02:00
Add the FieldtypeDoesVersions interface for Fieldtypes that support handling versions of their own page data
This commit is contained in:
@@ -236,6 +236,58 @@ interface FieldtypeHasPageimages {
|
|||||||
public function getPageimages(Page $page, Field $field);
|
public function getPageimages(Page $page, Field $field);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Indicates Fieldtype has version support and manages its own versions
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
interface FieldtypeDoesVersions {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the value for given page, field and version
|
||||||
|
*
|
||||||
|
* @param Page $page
|
||||||
|
* @param Field $field
|
||||||
|
* @param int $version
|
||||||
|
* @return mixed
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function getPageFieldVersion(Page $page, Field $field, $version);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Save version of given page field
|
||||||
|
*
|
||||||
|
* @param Page $page
|
||||||
|
* @param Field $field
|
||||||
|
* @param int $version
|
||||||
|
* @return bool
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function savePageFieldVersion(Page $page, Field $field, $version);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Restore version of given page field to live page
|
||||||
|
*
|
||||||
|
* @param Page $page
|
||||||
|
* @param Field $field
|
||||||
|
* @param int $version
|
||||||
|
* @return bool
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function restorePageFieldVersion(Page $page, Field $field, $version);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Delete version
|
||||||
|
*
|
||||||
|
* @param Page $page
|
||||||
|
* @param Field $field
|
||||||
|
* @param int $version
|
||||||
|
* @return bool
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function deletePageFieldVersion(Page $page, Field $field, $version);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Indicates that an Inputfield provides tree selection capabilities
|
* Indicates that an Inputfield provides tree selection capabilities
|
||||||
*
|
*
|
||||||
|
@@ -881,6 +881,9 @@ class PageTraversal {
|
|||||||
}
|
}
|
||||||
if($language && $language->id) $url .= "&language=$language->id";
|
if($language && $language->id) $url .= "&language=$language->id";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$version = (int) ((string) $page->get('_version|_repeater_version'));
|
||||||
|
if($version) $url .= "&version=$version";
|
||||||
|
|
||||||
$append = $page->wire()->session->getFor($page, 'appendEditUrl');
|
$append = $page->wire()->session->getFor($page, 'appendEditUrl');
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user