# # Routines to be edited by the developer to provide validation for parameters # and provison of the control data for table(s) # # 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 { my $c = shift; my $prefix_data = shift; #Data hash as parameter my $ret = 'ok'; return $ret; } sub validate_TABLE { my $c = shift; my $prefix_data = shift; #Data hash as parameter my $ret = 'ok'; return $ret; } # Get control data for tables(s) sub get_ibays { my $c = shift; my @ret = {}; 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'){ $actionModify .= ""." " } my %hash = ('Name'=> $ibayname, 'Description' => $ibaydesc, 'Flag' => $ibaynfs, 'Modify' => $actionModify ); push(@ret,\%hash); } return \@ret } # Return hash with values from row in which link clicked on table 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 = {}; return $ret; } 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 = {}; return $ret; } #after sucessful modify or create or whatever and submit then perfom (if the params validate) sub perform_PARAMS { my $c = shift; my $prefix_data = shift; #Data hash as parameter my $ret = 'ok'; return $ret; } sub perform_TABLE { my $c = shift; my $prefix_data = shift; #Data hash as parameter my $ret = 'ok'; return $ret; } sub create_link{ # WIP my ($c,$route, $panel, $index) = shift; my $link = "$route?trt=$panel&Selected=$index"; return $link; } 1;