84c45cb3863f4a94fbb7301ec17ba76cf57d7c38
[Evergreen.git] / Open-ILS / src / perlmods / OpenILS / Template / Plugin / WebUtils.pm
1 package OpenILS::Template::Plugin::WebUtils;
2 use strict; use warnings;
3 use OpenILS::Utils::Fieldmapper;
4
5 use Template::Plugin;
6 use base qw/Template::Plugin/;
7 use OpenSRF::AppSession;
8 use OpenSRF::System;
9 use XML::LibXML;
10 use OpenSRF::Utils::SettingsParser;
11 use JSON;
12
13 sub new {
14         my ($class) = @_;
15         $class = ref($class) || $class;
16         my $self = {};
17         return bless($self,$class);
18 }
19         
20
21 sub XML2perl {
22         my( $self, $doc ) = @_;
23         return OpenSRF::Utils::SettingsParser::XML2perl($doc);
24 }
25
26
27 sub perl2JSON {
28         my( $self, $perl ) = @_;
29         my $json = JSON->perl2JSON($perl);
30         warn "Created JSON from perl:\n$json\n";
31         return $json;
32 }
33         
34 sub JSON2perl {
35         my( $self, $perl ) = @_;
36         warn "Turning JSON into perl:\n$perl\n";
37         my $obj = JSON->JSON2perl($perl);
38         warn "Created Perl from JSON: $obj \n";
39         return $obj;
40 }
41
42 sub perl2prettyJSON {
43         my( $self, $perl ) = @_;
44         return JSON->perl2prettyJSON($perl);
45 }
46
47
48
49 1;