summaryrefslogtreecommitdiffstats
path: root/perl-install/interactive/http.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/interactive/http.pm')
-rw-r--r--perl-install/interactive/http.pm77
1 files changed, 41 insertions, 36 deletions
diff --git a/perl-install/interactive/http.pm b/perl-install/interactive/http.pm
index 42e116380..70017c41d 100644
--- a/perl-install/interactive/http.pm
+++ b/perl-install/interactive/http.pm
@@ -1,4 +1,4 @@
-package interactive::http; # $Id$
+package interactive::http;
use diagnostics;
use strict;
@@ -13,11 +13,10 @@ use log;
my $script_name = $ENV{INTERACTIVE_HTTP};
my $no_header;
-my $uid;
my $pipe_r = "/tmp/interactive_http_r";
my $pipe_w = "/tmp/interactive_http_w";
-sub open_stdout {
+sub open_stdout() {
open STDOUT, ">$pipe_w" or die;
$| = 1;
print CGI::header();
@@ -26,34 +25,34 @@ sub open_stdout {
# cont_stdout must be called after open_stdout and before the first print
sub cont_stdout {
- my ($title) = @_;
- print CGI::start_html(-title => $title) if $no_header;
+ my ($o_title) = @_;
+ print CGI::start_html('-title' => $o_title) if $no_header;
$no_header = 0;
}
-sub new_uid {
+sub new_uid() {
my ($s, $ms) = gettimeofday();
$s * 256 + $ms % 256;
}
-sub new() {
+sub new {
open_stdout();
bless {}, $_[0];
}
-sub end() {
- -e $pipe_r or return; # don't run this twice
+sub end {
+ -e $pipe_r or return; # do not run this twice
my $q = CGI->new;
cont_stdout("Exit");
print "It's done, thanks for playing", $q->end_html;
close STDOUT;
unlink $pipe_r, $pipe_w;
}
-sub exit() { end; exit($_[1]) }
+sub exit { end(); exit($_[1]) }
END { end() }
sub ask_fromW {
- my ($o, $common, $l, $l2) = @_;
+ my ($o, $common, $l, $_l2) = @_;
redisplay:
my $uid = new_uid();
@@ -64,63 +63,62 @@ sub ask_fromW {
# print $q->img({ -src => "/icons/$o->{icon}" }) if $o->{icon};
print @{$common->{messages}};
- print $q->start_form(-name => 'form', -action => $script_name, -method => 'post');
+ print $q->start_form('-name' => 'form', '-action' => $script_name, '-method' => 'post');
print "<table>\n";
- map_index {
+ each_index {
my $e = $_;
print "<tr><td>$e->{label}</td><td>\n";
$e->{type} = 'list' if $e->{type} =~ /(icon|tree)list/;
- #- combo doesn't exist, fallback to a sensible default
+ #- combo does not exist, fallback to a sensible default
$e->{type} = $e->{not_edit} ? 'list' : 'entry' if $e->{type} eq 'combo';
if ($e->{type} eq 'bool') {
- print $q->checkbox(-name => "w$::i", -checked => ${$e->{val}} && 'on', -label => $e->{text} || " ");
+ print $q->checkbox('-name' => "w$::i", '-checked' => ${$e->{val}} && 'on', '-label' => $e->{text} || " ");
} elsif ($e->{type} eq 'button') {
print "nobuttonyet";
} elsif ($e->{type} =~ /list/) {
my %t;
$t{$_} = may_apply($e->{format}, $_) foreach @{$e->{list}};
- print $q->scrolling_list(-name => "w$::i",
- -values => $e->{list},
- -default => [ ${$e->{val}} ],
- -size => 5, -multiple => '', -labels => \%t);
+ print $q->scrolling_list('-name' => "w$::i",
+ '-values' => $e->{list},
+ '-default' => [ ${$e->{val}} ],
+ '-size' => 5, '-multiple' => '', '-labels' => \%t);
} else {
print $e->{hidden} ?
- $q->password_field(-name => "w$::i", -default => ${$e->{val}}) :
- $q->textfield (-name => "w$::i", -default => ${$e->{val}});
+ $q->password_field('-name' => "w$::i", '-default' => ${$e->{val}}) :
+ $q->textfield('-name' => "w$::i", '-default' => ${$e->{val}});
}
print "</td></tr>\n";
} @$l;
print "</table>\n";
- print $q->p();
- print $q->submit(-name => 'ok_submit', -value => $common->{ok} || _("Ok"));
- print $q->submit(-name => 'cancel_submit', -value => $common->{cancel} || _("Cancel")) if $common->{cancel} || !exists $common->{ok};
+ print $q->p;
+ print $q->submit('-name' => 'ok_submit', '-value' => $common->{ok} || N("Ok"));
+ print $q->submit('-name' => 'cancel_submit', '-value' => $common->{cancel} || N("Cancel")) if $common->{cancel} || !exists $common->{ok};
print $q->hidden('state'), $q->hidden('uid');
print $q->end_form, $q->end_html;
close STDOUT; # page terminated
while (1) {
- local *F;
- open F, "<$pipe_r" or die;
- $q = CGI->new(\*F);
+ open(my $F, "<$pipe_r") or die;
+ $q = CGI->new($F);
$q->param('force_exit_dead_prog') and $o->exit;
last if $q->param('uid') == $uid;
open_stdout(); # re-open for writing
- cont_stdout(_("Error"));
- print $q->h1(_("Error")), $q->p("Sorry, you can't go back");
+ cont_stdout(N("Error"));
+ print $q->h1(N("Error")), $q->p("Sorry, you cannot go back");
goto redisplay;
}
- map_index {
+ each_index {
my $e = $_;
my $v = $q->param("w$::i");
if ($e->{type} eq 'bool') {
@@ -138,22 +136,29 @@ sub p {
}
sub wait_messageW {
- my ($o, $title, $messages) = @_;
+ my ($_o, $_title, $message, $message_modifiable) = @_;
cont_stdout();
print "\n" . CGI::p();
- p(@$messages);
+ p($message, $message_modifiable);
}
sub wait_message_nextW {
- my ($o, $messages, $w) = @_;
- p(@$messages);
+ my ($_o, $message, $_w) = @_;
+ p($message);
}
sub wait_message_endW {
- my ($o, $w) = @_;
- p(_("Done"));
+ my ($_o, $_w) = @_;
+ p(N("Done"));
print "\n" . CGI::p();
}
+sub ok {
+ N("Ok");
+}
+
+sub cancel {
+ N("Cancel");
+}
1;