improvments/fixes for z3950 support.
* Works now even on ADD, not only on MODIFY * able to search on ISBN, author, title
This commit is contained in:
parent
8970895bba
commit
bb7fecd745
11
C4/Biblio.pm
11
C4/Biblio.pm
|
|
@ -1,6 +1,11 @@
|
|||
package C4::Biblio;
|
||||
# $Id$
|
||||
# $Log$
|
||||
# Revision 1.49 2003/06/17 11:21:13 tipaul
|
||||
# improvments/fixes for z3950 support.
|
||||
# * Works now even on ADD, not only on MODIFY
|
||||
# * able to search on ISBN, author, title
|
||||
#
|
||||
# Revision 1.48 2003/06/16 09:22:53 rangi
|
||||
# Just added an order clause to getitemtypes
|
||||
#
|
||||
|
|
@ -478,14 +483,15 @@ sub MARCgettagslib {
|
|||
$res->{$tag}->{mandatory}=$mandatory;
|
||||
}
|
||||
|
||||
$sth=$dbh->prepare("select tagfield,tagsubfield,$libfield as lib,tab, mandatory, repeatable,authorised_value,thesaurus_category,value_builder from marc_subfield_structure order by tagfield,tagsubfield");
|
||||
$sth=$dbh->prepare("select tagfield,tagsubfield,$libfield as lib,tab, mandatory, repeatable,authorised_value,thesaurus_category,value_builder,kohafield from marc_subfield_structure order by tagfield,tagsubfield");
|
||||
$sth->execute;
|
||||
|
||||
my $subfield;
|
||||
my $authorised_value;
|
||||
my $thesaurus_category;
|
||||
my $value_builder;
|
||||
while ( ($tag, $subfield, $lib, $tab, $mandatory, $repeatable,$authorised_value,$thesaurus_category,$value_builder) = $sth->fetchrow) {
|
||||
my $kohafield;
|
||||
while ( ($tag, $subfield, $lib, $tab, $mandatory, $repeatable,$authorised_value,$thesaurus_category,$value_builder,$kohafield) = $sth->fetchrow) {
|
||||
$res->{$tag}->{$subfield}->{lib}=$lib;
|
||||
$res->{$tag}->{$subfield}->{tab}=$tab;
|
||||
$res->{$tag}->{$subfield}->{mandatory}=$mandatory;
|
||||
|
|
@ -493,6 +499,7 @@ sub MARCgettagslib {
|
|||
$res->{$tag}->{$subfield}->{authorised_value}=$authorised_value;
|
||||
$res->{$tag}->{$subfield}->{thesaurus_category}=$thesaurus_category;
|
||||
$res->{$tag}->{$subfield}->{value_builder}=$value_builder;
|
||||
$res->{$tag}->{$subfield}->{kohafield}=$kohafield;
|
||||
}
|
||||
return $res;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2414,6 +2414,7 @@ sub breedingsearch {
|
|||
$query .= "isbn like \"$isbn%\"";
|
||||
}
|
||||
}
|
||||
warn "Q : $query";
|
||||
$sth = $dbh->prepare($query);
|
||||
$sth->execute;
|
||||
while (my $data = $sth->fetchrow_hashref) {
|
||||
|
|
|
|||
|
|
@ -190,6 +190,7 @@ sub build_tabs ($$$$) {
|
|||
$subfield_data{tag_mandatory}=$tagslib->{$tag}->{mandatory};
|
||||
$subfield_data{mandatory}=$tagslib->{$tag}->{$subfield}->{mandatory};
|
||||
$subfield_data{repeatable}=$tagslib->{$tag}->{$subfield}->{repeatable};
|
||||
$subfield_data{kohafield}=$tagslib->{$tag}->{$subfield}->{kohafield};
|
||||
$value=char_decode($value) unless ($is_a_modif);
|
||||
$indicator = $x if $x; #XXX
|
||||
if ($tagslib->{$tag}->{$subfield}->{authorised_value}) {
|
||||
|
|
@ -220,6 +221,7 @@ sub build_tabs ($$$$) {
|
|||
$subfield_data{tag_mandatory}=$tagslib->{$tag}->{mandatory};
|
||||
$subfield_data{mandatory}=$tagslib->{$tag}->{$subfield}->{mandatory};
|
||||
$subfield_data{repeatable}=$tagslib->{$tag}->{$subfield}->{repeatable};
|
||||
$subfield_data{kohafield}=$tagslib->{$tag}->{$subfield}->{kohafield};
|
||||
if ($tagslib->{$tag}->{$subfield}->{authorised_value}) {
|
||||
$subfield_data{marc_value}= build_authorized_values_list($tag, $subfield, $value, $dbh, $authorised_values_sth);
|
||||
} elsif ($tagslib->{$tag}->{$subfield}->{thesaurus_category}) {
|
||||
|
|
|
|||
|
|
@ -50,6 +50,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -72,6 +73,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -94,6 +96,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -116,6 +119,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -138,6 +142,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -160,6 +165,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -182,6 +188,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -204,6 +211,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -226,6 +234,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -248,6 +257,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -268,6 +278,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -279,11 +290,13 @@
|
|||
<input type="hidden" name="subfield" value="<TMPL_VAR name="oldbiblionumtagsubfield">">
|
||||
<input type="hidden" name="field_value" value="<TMPL_VAR name="oldbiblionumber">">
|
||||
<input type="hidden" name="mandatory" value="0">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag" value="<TMPL_VAR name="oldbiblioitemnumtagfield">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="oldbiblioitemnumtagsubfield">">
|
||||
<input type="hidden" name="field_value" value="<TMPL_VAR name="oldbiblioitemnumber">">
|
||||
<input type="hidden" name="mandatory" value="0">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</TMPL_IF>
|
||||
</form>
|
||||
|
||||
|
|
@ -365,7 +378,22 @@ function Dopop(link,i) {
|
|||
}
|
||||
|
||||
function PopupZ3950(link,i) {
|
||||
newin=window.open("../z3950/search.pl?bibid=<TMPL_VAR name="bibid">","z3950 search",'width=500,height=400,toolbar=false,scrollbars=yes');
|
||||
var strQuery="";
|
||||
for (i=0 ; i<document.forms[0].field_value.length ; i++) {
|
||||
if (document.forms[0].kohafield[i].value == "biblioitems.isbn" && document.forms[0].field_value[i].value.length>0) {
|
||||
strQuery += "&isbn="+document.forms[0].field_value[i].value;
|
||||
}
|
||||
if (document.forms[0].kohafield[i].value == "biblio.title" && document.forms[0].field_value[i].value.length>0) {
|
||||
strQuery += "&title="+document.forms[0].field_value[i].value;
|
||||
}
|
||||
if (document.forms[0].kohafield[i].value == "biblio.author" &&document.forms[0].field_value[i].value.length>0) {
|
||||
strQuery += "&author="+document.forms[0].field_value[i].value;
|
||||
}
|
||||
if (document.forms[0].kohafield[i].value == "biblioitems.issn" && document.forms[0].field_value[i].value.length>0) {
|
||||
strQuery += "&issn="+document.forms[0].field_value[i].value;
|
||||
}
|
||||
}
|
||||
newin=window.open("../z3950/search.pl?bibid=<TMPL_VAR name="bibid">"+strQuery,"z3950 search",'width=500,height=400,toolbar=false,scrollbars=yes');
|
||||
}
|
||||
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -49,6 +49,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -71,6 +72,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -93,6 +95,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -115,6 +118,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -137,6 +141,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -159,6 +164,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -181,6 +187,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -203,6 +210,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -225,6 +233,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -247,6 +256,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -267,6 +277,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -277,12 +288,14 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="oldbiblionumtagfield">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="oldbiblionumtagsubfield">">
|
||||
<input type="hidden" name="field_value" value="<TMPL_VAR name="oldbiblionumber">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="mandatory" value="0">
|
||||
<input type="hidden" name="tag" value="<TMPL_VAR name="oldbiblioitemnumtagfield">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="oldbiblioitemnumtagsubfield">">
|
||||
<input type="hidden" name="field_value" value="<TMPL_VAR name="oldbiblioitemnumber">">
|
||||
<input type="hidden" name="mandatory" value="0">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
<input type="hidden" name="kohafield" value="<TMPL_VAR name="kohafield">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</TMPL_IF>
|
||||
</form>
|
||||
|
||||
|
|
@ -358,9 +371,24 @@ function Check(f) {
|
|||
document.f.submit();
|
||||
}
|
||||
}
|
||||
function Dopop(link,i) {
|
||||
defaultvalue=document.forms[0].field_value[i].value;
|
||||
newin=window.open(link+"&result="+defaultvalue,"value builder",'width=500,height=400,toolbar=false,scrollbars=yes');
|
||||
|
||||
function PopupZ3950(link,i) {
|
||||
var strQuery="";
|
||||
for (i=0 ; i<document.forms[0].field_value.length ; i++) {
|
||||
if (document.forms[0].kohafield[i].value == "biblioitems.isbn" && document.forms[0].field_value[i].value.length>0) {
|
||||
strQuery += "&isbn="+document.forms[0].field_value[i].value;
|
||||
}
|
||||
if (document.forms[0].kohafield[i].value == "biblio.title" && document.forms[0].field_value[i].value.length>0) {
|
||||
strQuery += "&title="+document.forms[0].field_value[i].value;
|
||||
}
|
||||
if (document.forms[0].kohafield[i].value == "biblio.author" &&document.forms[0].field_value[i].value.length>0) {
|
||||
strQuery += "&author="+document.forms[0].field_value[i].value;
|
||||
}
|
||||
if (document.forms[0].kohafield[i].value == "biblioitems.issn" && document.forms[0].field_value[i].value.length>0) {
|
||||
strQuery += "&issn="+document.forms[0].field_value[i].value;
|
||||
}
|
||||
}
|
||||
newin=window.open("../z3950/search.pl?bibid=<TMPL_VAR name="bibid">"+strQuery,"z3950 search",'width=500,height=400,toolbar=false,scrollbars=yes');
|
||||
}
|
||||
|
||||
</script>
|
||||
|
|
|
|||
Loading…
Reference in New Issue