default to a session cookie instead of setting an explicit timeout, weird timezone...
[freeside.git] / httemplate / misc / dump.cgi
index 2c7dfc4..3b60b20 100644 (file)
@@ -1,19 +1,20 @@
-<%
-  if ( driver_name =~ /^Pg$/ ) {
-    my $dbname = (split(':', datasrc))[2];
-    if ( $dbname =~ /[;=]/ ) {
-      my %elements = map { /^(\w+)=(.*)$/; $1=>$2 } split(';', $dbname);
-      $dbname = $elements{'dbname'};
-    }
-    open(DUMP,"pg_dump $dbname |");
-  } else {
-    eidiot "don't (yet) know how to dump ". driver_name. " databases\n";
-  }
-
-  http_header('Content-Type' => 'text/plain' );
-
-  while (<DUMP>) {
-    chomp;
-%><%= $_ %><% }
-   close DUMP;
-%>
+%  die "access denied"
+%    unless $FS::CurrentUser::CurrentUser->access_right('Export');
+%
+%  if ( driver_name =~ /^Pg$/ ) {
+%    my $dbname = (split(':', datasrc))[2];
+%    if ( $dbname =~ /[;=]/ ) {
+%      my %elements = map { /^(\w+)=(.*)$/; $1=>$2 } split(';', $dbname);
+%      $dbname = $elements{'dbname'};
+%    }
+%    open(DUMP,"pg_dump $dbname |");
+%  } else {
+%    errorpage("don't (yet) know how to dump ". driver_name. " databases");
+%  }
+%
+%  http_header('Content-Type' => 'text/plain' );
+%
+%  while (<DUMP>) {
+%    print $_;
+%  }
+%  close DUMP;