From 3b4e0c7ca9955e34028a503652303727da9d6afd Mon Sep 17 00:00:00 2001 From: Flaviu Mates Date: Thu, 21 Jan 2021 14:27:31 +0200 Subject: [PATCH] TT#108000 Implement getPref function in DeviceConfig * getPref will help retrieve exactly the preference by name, or return a default value if preference is not found; it should simplify device configs a lot Change-Id: I8e730b2f51a7819a39956879bff6cf771fb6132b (cherry picked from commit a61d4db5b6327c763cb4ff4ec17c09f824ab663c) --- lib/NGCP/Panel/Template/Plugin/DeviceConfig.pm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lib/NGCP/Panel/Template/Plugin/DeviceConfig.pm b/lib/NGCP/Panel/Template/Plugin/DeviceConfig.pm index b7e4befe65..d94a739ad9 100644 --- a/lib/NGCP/Panel/Template/Plugin/DeviceConfig.pm +++ b/lib/NGCP/Panel/Template/Plugin/DeviceConfig.pm @@ -39,4 +39,18 @@ sub getValue { return; } +sub getPref { + my $self = shift; + my ($pref_name, $default_val) = @_; + + my $preferences = $self->{_CONTEXT}->stash->get('preferences'); + foreach my $level (qw/device profile model/) { + my $v = $preferences->{device}->{$level}->{$pref_name}; + next unless $v; + return $v; + } + + return $default_val // ''; +} + 1;