#!/usr/bin/perl use strict; use OpenILS::Application::Storage; use OpenILS::Application::Storage::CDBI; # I need to abstract the driver loading away... use OpenILS::Application::Storage::Driver::Pg; use CGI qw/:standard start_*/; our %config; do '##CONFIG##/live-db-setup.pl'; OpenILS::Application::Storage::CDBI->connection($config{dsn},$config{usr},$config{pw}); OpenILS::Application::Storage::CDBI->db_Main->{ AutoCommit } = 1; my $cgi = new CGI; #------------------------------------------------------------------------------- # HTML part #------------------------------------------------------------------------------- print < Home

Permission List Setup


HEADER #------------------------------------------------------------------------------- # setup part #------------------------------------------------------------------------------- my %profile_cols = ( qw/id SysID code Name description Description/ ); my @col_display_order = ( qw/id code description/ ); #------------------------------------------------------------------------------- # Logic part #------------------------------------------------------------------------------- if (my $action = $cgi->param('action')) { if ( $action eq 'Remove Selected' ) { for my $id ( ($cgi->param('id')) ) { permission::perm_list->retrieve($id)->delete; } } elsif ( $action eq 'Update Selected' ) { for my $id ( ($cgi->param('id')) ) { my $u = permission::perm_list->retrieve($id); $u->code( $cgi->param("code_$id") ); $u->description( $cgi->param("description_$id") ); $u->update; } } elsif ( $action eq 'Add New' ) { permission::perm_list->create( { code => $cgi->param("code"), description => $cgi->param("description") } ); } } #------------------------------------------------------------------------------- # Form part #------------------------------------------------------------------------------- { #----------------------------------------------------------------------- # User form #----------------------------------------------------------------------- print "
". "\n"; for my $col ( @col_display_order ) { print th($profile_cols{$col}); } print ''; for my $row ( sort { $a->code cmp $b->code } (permission::perm_list->retrieve_all) ) { print Tr( td( $row->id() ), td(""), td(""), td(""), ); } print "", td(), td(""), td(""), td(), ""; print "
Action
"; print " | "; print " | "; print "

"; } print "";