diff options
Diffstat (limited to 'httemplate/misc/dump.cgi')
-rw-r--r-- | httemplate/misc/dump.cgi | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/httemplate/misc/dump.cgi b/httemplate/misc/dump.cgi new file mode 100644 index 000000000..3b60b20ef --- /dev/null +++ b/httemplate/misc/dump.cgi @@ -0,0 +1,20 @@ +% 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; |