2 # Display an SQL command
4 require './custom-lib.pl';
7 # Work out which DBI drivers we have
8 @drivers = &list_dbi_drivers();
10 # None! Offer to install
11 &ui_print_header(undef, $text{'sql_title1'}, "");
16 $myneed = &urlize(join(" ", @need, "DBD::mysql"));
17 $pgneed = &urlize(join(" ", @need, "DBD::Pg"));
18 print &text('sql_edrivers',
19 "../cpan/download.cgi?source=3&cpan=$myneed&return=/$module_name/&returndesc=".&urlize($text{'index_return'}),
20 "../cpan/download.cgi?source=3&cpan=$pgneed&return=/$module_name/&returndesc=".&urlize($text{'index_return'})),"<p>\n";
23 $access{'edit'} || &error($text{'edit_ecannot'});
25 &ui_print_header(undef, $text{'sql_title1'}, "");
27 $cmd = &get_command($in{'id'}, $in{'idx'});
31 &ui_print_header(undef, $text{'sql_title2'}, "");
32 $cmd = &get_command($in{'id'}, $in{'idx'});
35 print &ui_form_start("save_sql.cgi", "post");
36 print &ui_hidden("new", $in{'new'}),"\n";
37 print &ui_hidden("id", $cmd->{'id'}),"\n";
38 print &ui_table_start($text{'sql_header'}, "width=100%", 2);
42 print &ui_table_row($text{'edit_id'}, "<tt>$cmd->{'id'}</tt>");
44 print &ui_table_row($text{'edit_desc'},
45 &ui_textbox("desc", $cmd->{'desc'}, 50));
46 print &ui_table_row($text{'edit_desc2'},
47 &ui_textarea("html", $cmd->{'html'}, 2, 50));
49 # Show databse type and name
50 print &ui_table_row($text{'sql_type'},
51 &ui_select("type", $cmd->{'type'},
52 [ map { [ $_->{'driver'}, $_->{'name'} ] } @drivers ]));
53 print &ui_table_row($text{'sql_db'},
54 &ui_textbox("db", $cmd->{'db'}, 20));
57 print &ui_table_row($text{'sql_cmd'},
58 &ui_textarea("sql", $cmd->{'sql'}, 10, 70));
60 # Show login and password
61 print &ui_table_row($text{'sql_user'},
62 &ui_textbox("dbuser", $cmd->{'user'}, 20));
63 print &ui_table_row($text{'sql_pass'},
64 &ui_password("dbpass", $cmd->{'pass'}, 20));
66 # Show host to connect to
67 print &ui_table_row($text{'sql_host'},
68 &ui_opt_textbox("host", $cmd->{'host'}, 20,
71 # Command ordering on main page
72 print &ui_table_row(&hlink($text{'edit_order'},"order"),
73 &ui_opt_textbox("order", $cmd->{'order'} || "", 6, $text{'default'}));
75 print &ui_table_end(),"<p>\n";
77 # Show section for parameters
78 &show_params_inputs($cmd);
82 print &ui_form_end([ [ "create", $text{'create'} ] ]);
85 print &ui_form_end([ [ "save", $text{'save'} ],
86 [ 'clone', $text{'edit_clone'} ],
87 [ "delete", $text{'delete'} ] ]);
90 &ui_print_footer("", $text{'index_return'});