mirror of
git://projects.qi-hardware.com/eda-tools.git
synced 2024-11-29 16:45:20 +02:00
dk-catq.pl: allow selection of top category as well
- boom/dist/dk/dk-catq.pl: category can now include the top-level category (syntax: top/sub) - boom/dist/dk/dk-catq.pl: corrected value printed in "no such value" error message
This commit is contained in:
parent
83d4e709af
commit
046ae8584e
7
boom/dist/dk/dk-catq.pl
vendored
7
boom/dist/dk/dk-catq.pl
vendored
@ -41,6 +41,8 @@ while (<>) {
|
|||||||
$id = shift @q;
|
$id = shift @q;
|
||||||
$key = shift @q;
|
$key = shift @q;
|
||||||
$cat = shift @q;
|
$cat = shift @q;
|
||||||
|
($topcat, $cat) = ($`, $') if $cat =~ m|/|;
|
||||||
|
|
||||||
for (@q) {
|
for (@q) {
|
||||||
die "not a field=value pair: \"$_\"" unless /\s*=\s*/;
|
die "not a field=value pair: \"$_\"" unless /\s*=\s*/;
|
||||||
push(@{ $f{$`} }, $');
|
push(@{ $f{$`} }, $');
|
||||||
@ -57,6 +59,9 @@ $url = $URL.$key;
|
|||||||
if ($q[1] =~ /<title>Digi-Key</) {
|
if ($q[1] =~ /<title>Digi-Key</) {
|
||||||
undef $found;
|
undef $found;
|
||||||
for (@q) {
|
for (@q) {
|
||||||
|
$on = $1 eq $topcat if
|
||||||
|
defined $topcat && /catfiltertopitem>\s*(.*?)\s*</;
|
||||||
|
next if defined $topcat && !$on;
|
||||||
next unless /Cat=(\d+)[&"].*?>\s*(.*?)\s*[(<]/;
|
next unless /Cat=(\d+)[&"].*?>\s*(.*?)\s*[(<]/;
|
||||||
next if $2 ne $cat;
|
next if $2 ne $cat;
|
||||||
$found = $1;
|
$found = $1;
|
||||||
@ -98,7 +103,7 @@ for (keys %f) {
|
|||||||
die "no such field: $_" unless defined $field;
|
die "no such field: $_" unless defined $field;
|
||||||
for $v (@{ $f{$_} }) {
|
for $v (@{ $f{$_} }) {
|
||||||
$value = $val{$_}{$v};
|
$value = $val{$_}{$v};
|
||||||
die "no such value: \"$_\"=\"$f{$_}\"" unless defined $value;
|
die "no such value: \"$_\"=\"$v\"" unless defined $value;
|
||||||
$url .= "&$field=$value";
|
$url .= "&$field=$value";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user