#!/usr/local/bin/perl # Display an SQL command require './custom-lib.pl'; &ReadParse(); # Work out which DBI drivers we have @drivers = &list_dbi_drivers(); if (!@drivers) { # None! Offer to install &ui_print_header(undef, $text{'sql_title1'}, ""); eval "use DBI"; if ($@) { @need = ( "DBI" ); } $myneed = &urlize(join(" ", @need, "DBD::mysql")); $pgneed = &urlize(join(" ", @need, "DBD::Pg")); print &text('sql_edrivers', "../cpan/download.cgi?source=3&cpan=$myneed&return=/$module_name/&returndesc=".&urlize($text{'index_return'}), "../cpan/download.cgi?source=3&cpan=$pgneed&return=/$module_name/&returndesc=".&urlize($text{'index_return'})),"
\n";
}
$access{'edit'} || &error($text{'edit_ecannot'});
if ($in{'new'}) {
&ui_print_header(undef, $text{'sql_title1'}, "");
}
else {
&ui_print_header(undef, $text{'sql_title2'}, "");
$cmd = &get_command($in{'id'}, $in{'idx'});
}
print &ui_form_start("save_sql.cgi", "post");
print &ui_hidden("new", $in{'new'}),"\n";
print &ui_hidden("id", $cmd->{'id'}),"\n";
print &ui_table_start($text{'sql_header'}, "width=100%", 2);
# Show command info
if (!$in{'new'}) {
print &ui_table_row($text{'edit_id'}, "$cmd->{'id'}");
}
print &ui_table_row($text{'edit_desc'},
&ui_textbox("desc", $cmd->{'desc'}, 50)."
\n".
&ui_textarea("html", $cmd->{'html'}, 2, 50));
# Show databse type and name
print &ui_table_row($text{'sql_type'},
&ui_select("type", $cmd->{'type'},
[ map { [ $_->{'driver'}, $_->{'name'} ] } @drivers ]));
print &ui_table_row($text{'sql_db'},
&ui_textbox("db", $cmd->{'db'}, 20));
# Show command to run
print &ui_table_row($text{'sql_cmd'},
&ui_textarea("sql", $cmd->{'sql'}, 10, 70));
# Show login and password
print &ui_table_row($text{'sql_user'},
&ui_textbox("dbuser", $cmd->{'user'}, 20));
print &ui_table_row($text{'sql_pass'},
&ui_password("dbpass", $cmd->{'pass'}, 20));
# Show host to connect to
print &ui_table_row($text{'sql_host'},
&ui_opt_textbox("host", $cmd->{'host'}, 20,
$text{'sql_local'}));
print &ui_table_end(),"
\n"; # Show section for parameters &show_params_inputs($cmd); # End of form if ($in{'new'}) { print &ui_form_end([ [ "create", $text{'create'} ] ]); } else { print &ui_form_end([ [ "save", $text{'save'} ], [ "delete", $text{'delete'} ] ]); } &ui_print_footer("", $text{'index_return'});