Log Message:
-----------
use new theme/template arrangment
Modified Files:
--------------
webwork2/lib/WeBWorK:
ContentGenerator.pm
Revision Data
-------------
Index: ContentGenerator.pm
===================================================================
RCS file: /webwork/cvs/system/webwork2/lib/WeBWorK/ContentGenerator.pm,v
retrieving revision 1.159
retrieving revision 1.160
diff -Llib/WeBWorK/ContentGenerator.pm -Llib/WeBWorK/ContentGenerator.pm -u -r1.159 -r1.160
--- lib/WeBWorK/ContentGenerator.pm
+++ lib/WeBWorK/ContentGenerator.pm
@@ -425,18 +425,16 @@
sub content {
my ($self) = @_;
- my $ce = $self->r->ce;
+ my $r = $self->r;
+ my $ce = $r->ce;
- # if the content generator specifies a custom template name, use that
- # field in the $ce->{templates} hash instead of "system" if it exists.
- my $templateName;
- if ($self->can("templateName")) {
- $templateName = $self->templateName;
- } else {
- $templateName = "system";
- }
- $templateName = "system" unless exists $ce->{templates}->{$templateName};
- template($ce->{templates}->{$templateName}, $self);
+ my $themesDir = $ce->{webworkDirs}{templates};
+ my $theme = $r->param("theme") || $ce->{defaultTheme};
+ $theme = $ce->{defaultTheme} if $theme =~ m!(?:^|/)\.\.(?:/|$)!;
+ my $template = $self->can("templateName") ? $self->templateName : $ce->{defaultThemeTemplate};
+ my $templateFile = "$themesDir/$theme/$template.template";
+
+ template($templateFile, $self);
}
=back
|