diff options
Diffstat (limited to 'perl-install/standalone/drakhelp')
| -rwxr-xr-x[-rw-r--r--] | perl-install/standalone/drakhelp | 38 | 
1 files changed, 27 insertions, 11 deletions
diff --git a/perl-install/standalone/drakhelp b/perl-install/standalone/drakhelp index 19dc4ef04..c2b46979a 100644..100755 --- a/perl-install/standalone/drakhelp +++ b/perl-install/standalone/drakhelp @@ -9,30 +9,46 @@ use standalone;     #- warning, standalone must be loaded very first, for 'expla  use interactive;  use common;  use any; -use ctxhelp; +eval { require ctxhelp };  use log;  sub usage() {      print STDERR N(" drakhelp 0.1 -Copyright (C) 2003-2005 Mandriva. +Copyright (C) %s Mandriva. +Copyright (C) %s Mageia.  This is free software and may be redistributed under the terms of the GNU GPL.  Usage:  -") . N(" --help                - display this help      +", '2003-2008', '2011') . N("  --help                - display this help       ") . N(" --id <id_label>       - load the html help page which refers to id_label  ") . N(" --doc <link>          - link to another web page ( for WM welcome frontend)  "); -    exit(0) +    exit(0);  }  my ($opt, $idlabel) = @ARGV; -@ARGV == 2 && ($opt eq '--id' || $opt eq '--doc' || $opt eq '--help') or usage(); +@ARGV == 2 && member($opt, qw(--id --doc --help)) or usage(); -$ugtk2::wm_icon = "help"; -my $in = interactive->vnew; -my ($instpath, $ancpath, $package) = ctxhelp::path2help($opt, $idlabel); --e $instpath or system("/usr/sbin/drakhelp_inst $package"); --e $instpath or $in->ask_warn(N("Mandriva Linux Help Center"), N("%s cannot be displayed \n. No Help entry of this type\n", $instpath)); -system("/usr/bin/www-browser $ancpath &") if -e $instpath; +my ($instpath, $ancpath, $package) = eval { ctxhelp::path2help($opt, $idlabel) }; +if (! -e $instpath) { +    system('/usr/sbin/drakhelp_inst', $package); +} + +if (! -e $instpath) { +    #- trying again, asking for the english entry +    ($instpath, $ancpath, my $package2) = eval { ctxhelp::path2help($opt, $idlabel, 'en') }; +    if (! -e $instpath && $package ne $package2) { +	system("/usr/sbin/drakhelp_inst $package2"); +    } +} + +if (-f $instpath) { +    local $ENV{HOME} = '/root' if !$<; +    run_program::raw({ detach => 1 }, 'display_help', "file://$ancpath"); +} else { +    $ugtk3::wm_icon = "help"; +    my $in = interactive->vnew; +    $in->ask_warn(N("%s Help Center", N("Mageia")), N("No Help entry for %s\n", $idlabel)); +}  | 
