Difference between revisions of "Dynamic template.pl"
(Added page about config file) |
(Added actually file name in bold. Also discuss template_core as a supersedent.) |
||
| Line 2: | Line 2: | ||
{{cfgd}} | {{cfgd}} | ||
| − | This file contains the enabling (i.e. <code>$c->{dynamic_template}->{enable} = 1;</code>) and the option to define a function for the dynamic template. This allow parts of the template (i.e. pins) to be defined on-the-fly. | + | '''dynamic_template.pl''' is superseded by [[template_core.pl]] but is linked into this through [[template_legacy.pl]], so can still be used if so wanted. |
| + | |||
| + | This file contains the enabling (i.e. <code>$c->{dynamic_template}->{enable} = 1;</code>) and the option to define a function for the dynamic template. This allow parts of the template (i.e. pins) to be defined on-the-fly. | ||
$c->{dynamic_template}->{function} = sub { | $c->{dynamic_template}->{function} = sub { | ||
my( $repository, $parts ) = @_; | my( $repository, $parts ) = @_; | ||
Latest revision as of 12:23, 27 January 2022
EPrints 3 Reference: Directory Structure - Metadata Fields - Repository Configuration - XML Config Files - XML Export Format - EPrints data structure - Core API - Data Objects
dynamic_template.pl is superseded by template_core.pl but is linked into this through template_legacy.pl, so can still be used if so wanted.
This file contains the enabling (i.e. $c->{dynamic_template}->{enable} = 1;) and the option to define a function for the dynamic template. This allow parts of the template (i.e. pins) to be defined on-the-fly.
$c->{dynamic_template}->{function} = sub {
my( $repository, $parts ) = @_;
$parts->{mypin} = $repository->xml->create_text_node( "Hello, World!" );
};
The above example sets the pin mypin to the text string Hello, World!. This can then be included in the archive's template (e.g. cfg/lane/en/templates/default.xml) with the markup:
<epc:pin ref="mypin"/>
As well as the dynamic template function there is configuration to define the order that the main options in EPrints' key_tools:
$c->{plugins}->{"Screen::Login"}->{appears}->{key_tools} = 100;
$c->{plugins}->{"Screen::Register"}->{actions}->{register}->{appears}->{key_tools} = 150;
$c->{plugins}->{"Screen::Logout"}->{appears}->{key_tools} = 10000;
$c->{plugins}->{"Screen::Admin::Config::Edit::XPage"}->{actions}->{edit}->{appears}->{key_tools} = 1250;
$c->{plugins}->{"Screen::Admin::Phrases"}->{actions}->{edit}->{appears}->{key_tools} = 1350;
$c->{plugins}->{"Screen::OtherTools"}->{appears}->{key_tools} = 20000;