summaryrefslogtreecommitdiffstats
path: root/perl-install/standalone/drakhelp
blob: 9f23a035349eeb0cb221f002bd9e211e48176933 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/usr/bin/perl

use strict;
use diagnostics;

use lib qw(/usr/lib/libDrakX);
use standalone;     #- warning, standalone must be loaded very first, for 'explanations'

use interactive;
use common;
use any;
use ctxhelp;
use log;


sub usage() {
    print STDERR N(" drakhelp 0.1
Copyright (C) %s Mandriva.
This is free software and may be redistributed under the terms of the GNU GPL.

Usage: 
", '2003-2008') . 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);
}
my ($opt, $idlabel) = @ARGV;
@ARGV == 2 && ($opt eq '--id' || $opt eq '--doc' || $opt eq '--help') or usage();



my ($instpath, $ancpath, $package) = 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) = ctxhelp::path2help($opt, $idlabel, 'en');
    if (! -e $instpath && $package ne $package2) {
	system("/usr/sbin/drakhelp_inst $package2");
    }
}

if (-e $instpath) {
    local $ENV{HOME} = '/root' if !$<;
    run_program::raw({ detach => 1 }, '/usr/bin/www-browser', "file://$ancpath");
} else {
    $ugtk2::wm_icon = "help";
    my $in = interactive->vnew;
    $in->ask_warn(N("Mandriva Linux Help Center"), N("No Help entry for %s\n", $idlabel));
}