From fbbaa7ec1e3db823f6c22689779ba4eb47fb47bb Mon Sep 17 00:00:00 2001 From: Jamie Cameron Date: Sat, 20 Jan 2018 15:28:03 -0800 Subject: [PATCH] Manual editing icon for MySQL config file https://github.com/webmin/webmin/issues/766 --- mysql/edit_manual.cgi | 32 ++++++++++++++++++++++++++++++++ mysql/images/manual.gif | Bin 0 -> 478 bytes mysql/index.cgi | 10 +++++----- mysql/lang/en | 7 +++++++ mysql/log_parser.pl | 3 +++ mysql/save_manual.cgi | 22 ++++++++++++++++++++++ 6 files changed, 69 insertions(+), 5 deletions(-) create mode 100755 mysql/edit_manual.cgi create mode 100644 mysql/images/manual.gif create mode 100755 mysql/save_manual.cgi diff --git a/mysql/edit_manual.cgi b/mysql/edit_manual.cgi new file mode 100755 index 000000000..864c456bb --- /dev/null +++ b/mysql/edit_manual.cgi @@ -0,0 +1,32 @@ +#!/usr/local/bin/perl +# Show a config file for manual editing + +require './mysql-lib.pl'; +&ReadParse(); +&ui_print_header($header_subtext, $text{'manual_title'}, ""); + +$conf = &get_mysql_config(); +@files = &unique(map { $_->{'file'} } @$conf); +$in{'manual'} ||= $files[0]; +&indexof($in{'manual'}, @files) >= 0 || + &error($text{'manual_efile'}); + +# File selector +print &ui_form_start("edit_manual.cgi"); +print $form_hiddens; +print "$text{'manual_file'}\n", + &ui_select("manual", $in{'manual'}, \@files),"\n", + &ui_submit('Edit'); +print &ui_form_end(); + +# Config editor +print &ui_form_start("save_manual.cgi", "form-data"); +print $form_hiddens; +print &ui_hidden("manual", $in{'manual'}); +print &ui_table_start(undef, undef, 2); +print &ui_table_row(undef, + &ui_textarea("data", &read_file_contents($in{'manual'}), 20, 80), 2); +print &ui_table_end(); +print &ui_form_end([ [ undef, $text{'save'} ] ]); + +&ui_print_footer("", $text{'index_return'}); diff --git a/mysql/images/manual.gif b/mysql/images/manual.gif new file mode 100644 index 0000000000000000000000000000000000000000..e57b83c90b70c191f4e142a86a456a52438ac895 GIT binary patch literal 478 zcmZ?wbhEHbG+;1bXklRZ|NsBYnKKy}7|x`notc^TKW*ljnKRD-!OS!NXBz)MV|-?& z@tHHm@7}%pe`Ki;O^-gz@Ye(g%PA*2Sk8e!NB@Y zL7^`tb6!RkTgHJty$9zuW}SY?{diB^cDtYp;(z8w9G=;s*0ML_RO-i_(Vx~uyb{e6 zb=&?RE4(|otJ+$2;}KTz&38XpYUZuZ4qS2OPw(vSZjCv<%1mud9fjdc%)LyVZl*!{ zOf0M{{S#&>wK22J)Xqtn*f58^XF>C-&PfbRj2z1?ooB6WV`p6HyQN}pa3B+B+sxX< zAyN57bGW#<`m_AjrcBDuJ;-w|H={JnFuP?6C)c4{$3n~QuF_#Td+1c^zUly<+7COq zxOmoIoNcM{=5fi_%?}^X+TGa6^1!-7U?Kw>=a;`fHY?rhO!&bfXIb2L;b;d>r~^0a zbERz)l)UOsYVX|C=u{~6x3p#vJMZoe!(cxr^YppR>>93RGFENf49t8*c`}pNsfaoY l2n2o+{'file'} } @$conf); +$in{'manual'} ||= $files[0]; +&indexof($in{'manual'}, @files) >= 0 || + &error($text{'manual_efile'}); + +# Write the file +$in{'data'} =~ s/\r//g; +&open_lock_tempfile(MANUAL, ">$in{'manual'}"); +&print_tempfile(MANUAL, $in{'data'}); +&close_tempfile(MANUAL); + +&webmin_log("manual"); +&redirect("");