projects
/
kivitendo-erp.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
92770ef
)
Menu: YAML::XS benutzen wenn vorhanden
author
Sven Schöling
<s.schoeling@linet-services.de>
Wed, 15 Jul 2015 16:42:24 +0000
(18:42 +0200)
committer
Sven Schöling
<s.schoeling@linet-services.de>
Mon, 20 Jul 2015 14:37:27 +0000
(16:37 +0200)
SL/Menu.pm
patch
|
blob
|
history
diff --git
a/SL/Menu.pm
b/SL/Menu.pm
index
d72bb36
..
1ecb52f
100644
(file)
--- a/
SL/Menu.pm
+++ b/
SL/Menu.pm
@@
-3,10
+3,15
@@
package SL::Menu;
use strict;
use SL::Auth;
use strict;
use SL::Auth;
-use YAML
::XS
();
+use YAML ();
use File::Spec;
use SL::MoreCommon qw(uri_encode);
use File::Spec;
use SL::MoreCommon qw(uri_encode);
+our $yaml_xs;
+BEGIN {
+ $yaml_xs = eval { require YAML::XS };
+}
+
sub new {
my ($package, $domain) = @_;
sub new {
my ($package, $domain) = @_;
@@
-19,7
+24,12
@@
sub new {
my $nodes = [];
my $nodes_by_id = {};
for my $file (@files) {
my $nodes = [];
my $nodes_by_id = {};
for my $file (@files) {
- my $data = YAML::XS::LoadFile(File::Spec->catfile($path, $file));
+ my $data;
+ if ($yaml_xs) {
+ $data = YAML::XS::LoadFile(File::Spec->catfile($path, $file));
+ } else {
+ $data = YAML::LoadFile(File::Spec->catfile($path, $file));
+ }
_merge($nodes, $nodes_by_id, $data);
}
_merge($nodes, $nodes_by_id, $data);
}