Merge branch 'master' of git.freeside.biz:/home/git/freeside
[freeside.git] / rt / etc / upgrade / 4.1.1 / acl.Pg
1
2 sub acl {
3     my $dbh = shift;
4
5     my @acls;
6
7     my @tables = qw (
8         objectscrips_id_seq
9         ObjectScrips
10     );
11
12     my $db_user = RT->Config->Get('DatabaseUser');
13
14     my $sequence_right
15         = ( $dbh->{pg_server_version} >= 80200 )
16         ? "USAGE, SELECT, UPDATE"
17         : "SELECT, UPDATE";
18
19     foreach my $table (@tables) {
20         # Tables are upper-case, sequences are lowercase in @tables
21         if ( $table =~ /^[a-z]/ ) {
22             push @acls, "GRANT $sequence_right ON $table TO \"$db_user\";"
23         }
24         else {
25             push @acls, "GRANT SELECT, INSERT, UPDATE, DELETE ON $table TO \"$db_user\";"
26         }
27     }
28     return (@acls);
29 }
30
31 1;