31 lines
826 B
Perl
31 lines
826 B
Perl
package App::Netdisco::Web::CustomFields;
|
|
|
|
use Dancer ':syntax';
|
|
|
|
use App::Netdisco::Web::Plugin;
|
|
use App::Netdisco::Util::CustomFields;
|
|
|
|
foreach my $config (@{ setting('custom_fields')->{'device'} || [] }) {
|
|
next unless $config->{'name'};
|
|
|
|
register_device_details({
|
|
%{ $config },
|
|
field => ('cf_' . $config->{'name'}),
|
|
label => ($config->{'label'} || ucfirst $config->{'name'}),
|
|
}) unless $config->{'hidden'};
|
|
}
|
|
|
|
foreach my $config (@{ setting('custom_fields')->{'device_port'} || [] }) {
|
|
next unless $config->{'name'};
|
|
|
|
register_device_port_column({
|
|
position => 'right', # or "mid" or "right"
|
|
default => undef, # or "checked"
|
|
%{ $config },
|
|
field => ('cf_' . $config->{'name'}),
|
|
label => ($config->{'label'} || ucfirst $config->{'name'}),
|
|
}) unless $config->{'hidden'};
|
|
}
|
|
|
|
true;
|