SM2Gen/Targets/Nfsshare-Custom.pm

126 lines
3.2 KiB
Perl
Raw Normal View History

#
# Routines to be edited by the developer to provide validation for parameters
# and provison of the control data for table(s)
#
2024-05-06 11:05:43 +02:00
# Generated by SME2Gen version:0.7 Chameleon version:4.5.4 On Python:3.10.12 at 2024-05-06 08:40
#
use esmith::util;
use esmith::HostsDB;
use esmith::AccountsDB;
use esmith::NetworksDB;
use esmith::HostsDB;
use esmith::DomainsDB;
#The most common ones
our $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
our $adb = esmith::AccountsDB->open() || die("Couldn't open Accounts db");
our $ndb = esmith::NetworksDB->open() || die("Couldn't open Network db");
our $hdb = esmith::HostsDB->open() || die("Couldn't open Hosts db");
our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
# Validation routines - parameters for each panel
sub validate_PARAMS {
2024-05-06 11:05:43 +02:00
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
return $ret;
}
sub validate_TABLE {
2024-05-06 11:05:43 +02:00
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
return $ret;
}
# Get control data for tables(s)
2024-04-28 13:03:06 +02:00
sub get_ibays {
my $c = shift;
2024-05-06 11:05:43 +02:00
my @ret = {};
2024-04-28 13:03:06 +02:00
my @ibays = $adb->ibays();
foreach my $i (@ibays){
# Taken pretty well verbatim from /usr/share/perl5/vendor_perl/esmith/FormMagick/Panel/nfsshare.pm
# although the href is more specific to the SM2 structure.
my $ibayname = $i->key();
my $ibaydesc = $i->prop('Name');
my $ibaynfs = $i->prop('NfsStatus')||'disabled';
my $modifiable = $i->prop('Modifiable') || 'yes';
$ibaynfs = $c->l('ENABLED') if ($ibaynfs eq 'enabled');
$ibaynfs = $c->l('DISABLED') if ($ibaynfs eq 'disabled');
#my $params = $self->build_ibay_cgi_params($ibayname, $i->props());
#my $scriptname = "nfsshareu";
#my $href = "$scriptname?$params&action=modify&wherenext=";
my $actionModify = ' ';
if ($modifiable eq 'yes'){
2024-05-06 11:05:43 +02:00
$actionModify .= "<a href='nfsshared?trt=PARAMS&Selected=$ibayname'><button class='sme-modify-button' title=".$c->l("MODIFY").">".$c->l("MODIFY")."</button></a>"."&nbsp"
2024-04-28 13:03:06 +02:00
}
my %hash = ('Name'=> $ibayname,
'Description' => $ibaydesc,
'Flag' => $ibaynfs,
'Modify' => $actionModify
);
2024-05-06 11:05:43 +02:00
push(@ret,\%hash);
2024-04-28 13:03:06 +02:00
}
2024-05-06 11:05:43 +02:00
return \@ret
2024-04-28 13:03:06 +02:00
}
2024-05-06 11:05:43 +02:00
2024-04-28 13:03:06 +02:00
# Return hash with values from row in which link clicked on table
2024-05-06 11:05:43 +02:00
sub get_selected_PARAMS {
my $c = shift;
my $selected = shift; #Parameter is name of selected row.
my $is_new_record = shift; #Indicates new record required (defaults)
my %ret = {};
2024-04-28 13:03:06 +02:00
return $ret;
}
2024-05-06 11:05:43 +02:00
sub get_selected_TABLE {
my $c = shift;
my $selected = shift; #Parameter is name of selected row.
my $is_new_record = shift; #Indicates new record required (defaults)
my %ret = {};
2024-04-28 13:03:06 +02:00
return $ret;
}
2024-04-28 13:03:06 +02:00
#after sucessful modify or create or whatever and submit then perfom (if the params validate)
sub perform_PARAMS {
2024-05-06 11:05:43 +02:00
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
2024-04-28 13:03:06 +02:00
return $ret;
}
sub perform_TABLE {
2024-05-06 11:05:43 +02:00
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
2024-04-28 13:03:06 +02:00
return $ret;
}
2024-05-06 11:05:43 +02:00
sub create_link{
# WIP
my ($c,$route, $panel, $index) = shift;
my $link = "$route?trt=$panel&Selected=$index";
return $link;
}
1;