mirror of
https://github.com/silverstripe/doc.silverstripe.org
synced 2024-10-22 17:05:50 +02:00
7ecbf49ac9
git-svn-id: http://svn.silverstripe.com/projects/ss2doc/branches/v2@117896 467b73ca-7a2a-4603-9d3b-597d59a354a9
43 lines
1022 B
PHP
Executable File
43 lines
1022 B
PHP
Executable File
<?php
|
|
/**
|
|
* Transformation that will make a form printable.
|
|
* Builds on readonly forms with different behaviour for tabsets.
|
|
* @package forms
|
|
* @subpackage transformations
|
|
*/
|
|
class PrintableTransformation extends ReadonlyTransformation {
|
|
function transformTabSet($field) {
|
|
$transformedField = new PrintableTransformation_TabSet($field->Tabs()->transform($this));
|
|
$transformedField->Title = $field->Title();
|
|
$transformedField->TabSet = $field->TabSet;
|
|
return $transformedField;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Class representing printable tabsets
|
|
* @package forms
|
|
* @subpackage transformations
|
|
*/
|
|
class PrintableTransformation_TabSet extends TabSet {
|
|
function __construct($tabs) {
|
|
$this->children = $tabs;
|
|
CompositeField::__construct($tabs);
|
|
}
|
|
|
|
function FieldHolder() {
|
|
// This gives us support for sub-tabs.
|
|
$tag = ($this->tabSet) ? "h2>" : "h1>";
|
|
|
|
foreach($this->children as $tab) {
|
|
$retVal .= "<$tag" . $tab->Title() . "</$tag\n";
|
|
$retVal .= $tab->FieldHolder();
|
|
}
|
|
return $retVal;
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
?>
|