File: bugzilla

package info (click to toggle)
surfraw 2.3.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 1,624 kB
  • sloc: sh: 7,977; perl: 824; makefile: 277
file content (87 lines) | stat: -rwxr-xr-x 3,428 bytes parent folder | download | duplicates (3)
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#!/bin/sh
# elvis: bugzilla	-- Search for bugs on Bugzilla bugtrackers
. surfraw || exit 1

w3_config_hook () {
    def   SURFRAW_bugzilla_site     kernel
    def   SURFRAW_bugzilla_status   open
    def   SURFRAW_bugzilla_product  all
}

w3_usage_hook () {
    cat <<EOF
Usage: $w3_argv0 [options] [search words]...
Description:
  Surfraw search for bugs on Bugzilla bugtrackers
Local options:
  -site=URL                     Bugzilla site to search
                                The site URL can be specified,
				or the following aliases can be used:
				  kernel, mozilla, gnome, kde, apache,
				  freedesktop, eclipse, redhat,
				  mandriva, gentoo, novell
                                Default: $SURFRAW_bugzilla_site
                                Environment: SURFRAW_bugzilla_site
				Examples: bugzilla -s=https://bugs.kde.org ipv6
				          bugzilla -s=kde ipv6
  -status=open            |     Bug status
          closed          |
	  all
                                Default: $SURFRAW_bugzilla_status
                                Environment: SURFRAW_bugzilla_status
  -product=all            |     Product to search for bugs in.
           <product name>
                                Default: $SURFRAW_bugzilla_product
                                Environment: SURFRAW_bugzilla_product
EOF
    w3_global_usage
}

w3_parse_option_hook () {
    opt="$1"
    optarg="$2"
    case "$opt" in
    -st*=*)     setopt   SURFRAW_bugzilla_status  "$optarg" ;;
    -s*=*)      setopt   SURFRAW_bugzilla_site    "$optarg" ;;
    -p*=*)      setopt	 SURFRAW_bugzilla_product "$(w3_url_of_arg "$optarg")" ;;
    *) return 1 ;;
    esac
    return 0
}

w3_config
w3_parse_args "$@"
# w3_args now contains a list of arguments

if [ "$SURFRAW_bugzilla_product" = all ] ; then
    setopt SURFRAW_bugzilla_product ""
fi

case "$SURFRAW_bugzilla_status" in
    open)   setopt SURFRAW_bugzilla_status "__open__"    ;;
    closed) setopt SURFRAW_bugzilla_status "__closed__"  ;;
    all)    setopt SURFRAW_bugzilla_status "__all__"     ;;
esac

case "$SURFRAW_bugzilla_site" in
    kernel)      setopt SURFRAW_bugzilla_site "https://bugzilla.kernel.org"         ;;
    mozilla)     setopt SURFRAW_bugzilla_site "https://bugzilla.mozilla.org"         ;;
    gnome)       setopt SURFRAW_bugzilla_site "https://bugzilla.gnome.org"           ;;
    kde)         setopt SURFRAW_bugzilla_site "https://bugs.kde.org"                 ;;
    apache)      setopt SURFRAW_bugzilla_site "https://issues.apache.org/bugzilla"   ;;
    freedesktop) setopt SURFRAW_bugzilla_site "https://bugs.freedesktop.org"         ;;
    eclipse)     setopt SURFRAW_bugzilla_site "https://bugs.eclipse.org/bugs"       ;;
    redhat)      setopt SURFRAW_bugzilla_site "https://bugzilla.redhat.com/" ;;
    gentoo)      setopt SURFRAW_bugzilla_site "https://bugs.gentoo.org"              ;;
    novell)      setopt SURFRAW_bugzilla_site "https://bugzilla.novell.com"         ;;
esac

if test -z "$w3_args"; then
    w3_browse_url "${SURFRAW_bugzilla_site}/query.cgi?format=advanced"
else
    escaped_args=`w3_url_of_arg $w3_args`
#    params="short_desc_type=allwordssubstr&short_desc=${escaped_args}&bug_status=${SURFRAW_bugzilla_status}"
    params="content=${escaped_args}&bug_status=${SURFRAW_bugzilla_status}"
    params="${params}&product=${SURFRAW_bugzilla_product}"
    w3_browse_url "${SURFRAW_bugzilla_site}/buglist.cgi?${params}"
fi