summaryrefslogtreecommitdiffstats
path: root/Bugzilla/Quantum/Template.pm
diff options
context:
space:
mode:
authorDylan William Hardison <dylan@hardison.net>2018-04-04 05:05:04 +0200
committerDylan William Hardison <dylan@hardison.net>2018-08-20 23:52:50 +0200
commit4a66989c7cf4bcb1afce0c4e39a3f1c87ef0e57c (patch)
treec96b05f8f3ca81ac7bbb8ad061fc0bab2d2fcc04 /Bugzilla/Quantum/Template.pm
parent77468653f4f3e3285bc68e455b5b4e4265362aeb (diff)
downloadbugzilla-4a66989c7cf4bcb1afce0c4e39a3f1c87ef0e57c.tar.gz
bugzilla-4a66989c7cf4bcb1afce0c4e39a3f1c87ef0e57c.tar.xz
Bug 1455495 - Replace apache with Mojolicious
Diffstat (limited to 'Bugzilla/Quantum/Template.pm')
-rw-r--r--Bugzilla/Quantum/Template.pm39
1 files changed, 39 insertions, 0 deletions
diff --git a/Bugzilla/Quantum/Template.pm b/Bugzilla/Quantum/Template.pm
new file mode 100644
index 000000000..2442f1134
--- /dev/null
+++ b/Bugzilla/Quantum/Template.pm
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# This Source Code Form is "Incompatible With Secondary Licenses", as
+# defined by the Mozilla Public License, v. 2.0.
+
+package Bugzilla::Quantum::Template;
+use 5.10.1;
+use Moo;
+
+has 'controller' => (
+ is => 'ro',
+ required => 1,
+);
+
+has 'template' => (
+ is => 'ro',
+ required => 1,
+ handles => ['error', 'get_format'],
+);
+
+sub process {
+ my ($self, $file, $vars, $output) = @_;
+
+ if (@_ < 4) {
+ $self->controller->stash->{vars} = $vars;
+ $self->controller->render(template => $file, handler => 'bugzilla');
+ return 1;
+ }
+ elsif (@_ == 4) {
+ return $self->template->process($file, $vars, $output);
+ }
+ else {
+ die __PACKAGE__ . '->process() called with too many arguments';
+ }
+}
+
+1; \ No newline at end of file