php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay

| files >> /var/www/html/img_galeri/2r1asasas/root/proc/self/root/usr/libexec/webmin/virtualmin-init/ |
| files >> /var/www/html/img_galeri/2r1asasas/root/proc/self/root/usr/libexec/webmin/virtualmin-init/edit.cgi |
#!/usr/bin/perl
# Show a page for creating or editing a bootup action associated with
# some domain.
require './virtualmin-init-lib.pl';
&ReadParse();
$d = $in{'dom'} ? &virtual_server::get_domain($in{'dom'}) : undef;
&ui_print_header($d ? &virtual_server::domain_in($d) : undef,
$in{'new'} ? $text{'edit_title1'} : $text{'edit_title2'}, "");
if (!$in{'new'}) {
# Get the existing action
($init) = grep { $_->{'id'} eq $in{'id'} }
&list_domain_actions($d);
$init || &error($text{'edit_egone'});
}
else {
# Adding a new action
$init = { 'status' => 1 };
($tmpl) = grep { $_->{'id'} eq $in{'tmpl'} } &list_action_templates();
if ($config{'mode'} eq 'smf' && !$tmpl) {
$init->{'stop'} = ':kill';
}
}
print &ui_form_start("save.cgi", "post");
print &ui_hidden("new", $in{'new'});
print &ui_hidden("tmpl", $in{'tmpl'});
print &ui_hidden("id", $in{'id'});
if ($in{'dom'}) {
print &ui_hidden("dom", $in{'dom'});
}
print &ui_table_start($text{'edit_header'}, undef, 2);
# Domain selector, if needed
if (!$in{'dom'}) {
@doms = grep { $_->{$module_name} &&
&virtual_server::can_edit_domain($_) }
&virtual_server::list_domains();
print &ui_table_row($text{'edit_dom'},
&ui_select("dom", undef,
[ map { [ $_->{'id'}, $_->{'dom'} ] } @doms ]));
}
# Action name
print &ui_table_row($text{'edit_name'},
&ui_textbox("name", $init->{'name'}, 30));
# Description
print &ui_table_row($text{'edit_desc'},
&ui_textbox("desc", $init->{'desc'}, 60));
# Enabled?
if (&can_start_actions()) {
# Init mode, in which we can just control if started at boot
print &ui_table_row($text{'edit_status'},
&ui_yesno_radio("status", int($init->{'status'})));
}
else {
# SMF mode, in which we can see the real status
my @opts = ( [ 1, $text{'yes'} ],
[ 0, $text{'no'} ] );
if ($init->{'status'} == 2) {
push(@opts, [ 2, $text{'edit_maint'} ]);
}
print &ui_table_row($text{'edit_status2'},
&ui_radio("status", $init->{'status'}, \@opts));
if ($init->{'status'} == 2) {
# Show failure log
print &ui_table_row($text{'edit_startlog'},
"<pre>".&html_escape($init->{'startlog'})."</pre>");
}
}
if ($tmpl) {
# Adding from template .. show name
print &ui_table_row($text{'edit_tmpl'}, $tmpl->{'desc'});
# Show parameters
for($i=0; defined($tmpl->{'pname_'.$i}); $i++) {
$tt = $tmpl->{'ptype_'.$i};
$tn = 'param_'.$tmpl->{'pname_'.$i};
$of = $tmpl->{'popts_'.$i};
@opts = $of ? &read_opts_file($of) : ( );
print &ui_table_row($tmpl->{'pdesc_'.$i},
$tt == 0 ? &ui_textbox($tn, undef, 50) :
$tt == 1 ? &ui_textbox($tn, undef, 10) :
$tt == 2 ? &ui_textbox($tn, undef, 50).
&file_chooser_button($tn) :
$tt == 3 ? &ui_radio($tn, $opts[0]->[0], \@opts) :
$tt == 4 ? &ui_select($tn, $opts[0]->[0], \@opts) :
undef);
}
# Show fixed code for start and stop
$start = $tmpl->{'start'};
$start = &substitute_template($start, $d) if ($d);
print &ui_table_row($text{'edit_start'},
"<pre>".&html_escape($start)."</pre>");
$stop = $tmpl->{'stop'};
$stop = &substitute_template($stop, $d) if ($d);
print &ui_table_row($text{'edit_stop'},
$stop eq ":kill" ? $text{'edit_stopkill'} :
"<pre>".&html_escape($stop)."</pre>");
}
else {
# Start code
print &ui_table_row($text{'edit_start'},
&ui_textarea("start", $init->{'start'}, 5, 80));
# Stop code
if ($config{'mode'} eq 'smf') {
$stopdef = &ui_radio(
"stop_def", $init->{'stop'} eq ':kill' ? 1 : 0,
[ [ 1, $text{'edit_stopkill'} ],
[ 0, $text{'edit_stopbelow'} ] ])."<br>\n";
}
print &ui_table_row($text{'edit_stop'},
$stopdef.
&ui_textarea("stop", $init->{'stop'} eq ':kill' ? undef :
$init->{'stop'}, 5, 80));
# Current processes
if (!$in{'new'}) {
@procs = &get_started_processes($init);
if (@procs) {
@table = ( );
foreach my $p (@procs) {
push(@table, [ $p->{'pid'}, $p->{'cpu'},
$p->{'size'}, $p->{'args'} ]);
}
print &ui_table_row($text{'edit_procs'},
&ui_columns_table(
[ $text{'edit_ppid'}, $text{'edit_pcpu'},
$text{'edit_psize'}, $text{'edit_pcmd'} ],
undef,
\@table));
}
}
}
# SMF FMRI
if (!$in{'new'} && $init->{'fmri'}) {
print &ui_table_row($text{'edit_fmri'},
"<tt>".&html_escape($init->{'fmri'})."</tt>");
}
print &ui_table_end();
if ($in{'new'}) {
print &ui_form_end([ [ "create", $text{'create'} ] ]);
}
else {
print &ui_form_end([ [ "save", $text{'save'} ],
[ "delete", $text{'delete'} ],
undef,
&can_start_actions() ? (
[ "startnow", $text{'edit_startnow'} ],
[ "stopnow", $text{'edit_stopnow'} ]
) : ( )
]);
}
&ui_print_footer("index.cgi?dom=$in{'dom'}", $text{'index_return'});
y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`