bug 5190: improve linking to MARC field documentation

* zero-pad tag numbers as needed
* handle special case for linking to UNIMARC 0XX vs. 1-8XX
* add a wrapper function
* add comment about the poor linkability of IFLA's UNIMARC documentation

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
(cherry picked from commit 141ec0b9bc)

Signed-off-by: Chris Nighswonger <chris.nighswonger@gmail.com>
This commit is contained in:
Galen Charlton 2010-10-29 22:35:44 -04:00 committed by Chris Nighswonger
parent 19894217ef
commit 067c2d101d
1 changed files with 20 additions and 7 deletions

View File

@ -67,21 +67,36 @@ function PopupZ3950() {
}
}
function PopupMARCFieldDoc(field) {
function PopupMARCFieldDoc(field, fieldnumber) {
<!-- TMPL_IF NAME="MARC21" -->
_MARC21FieldDoc(field);
<!-- TMPL_ELSE -->
_UNIMARCFieldDoc(field, fieldnumber);
<!-- /TMPL_IF -->
}
function _MARC21FieldDoc(field) {
if(field == 0) {
window.open("http://www.loc.gov/marc/bibliographic/bdleader.html");
} else if (field < 900) {
window.open("http://www.loc.gov/marc/bibliographic/bd"+field+".html");
window.open("http://www.loc.gov/marc/bibliographic/bd" + ("000"+field).slice(-3) + ".html");
} else {
window.open("http://www.loc.gov/marc/bibliographic/bd9xx.html");
}
}
function PopupUNIMARCFieldDoc(field,fieldnumber) {
function _UNIMARCFieldDoc(field,fieldnumber) {
/* http://archive.ifla.org/VI/3/p1996-1/ is an outdated version of UNIMARC, but
seems to be the only version available that can be linked to per tag. More recent
versions of the UNIMARC standard are available on the IFLA website only as
PDFs!
*/
if(field == 0) {
window.open("http://archive.ifla.org/VI/3/p1996-1/uni.htm");
} else if (field < 100) {
window.open("http://archive.ifla.org/VI/3/p1996-1/uni"+fieldnumber+".htm#b" + ("000"+field).slice(-3));
} else if (field < 900) {
window.open("http://archive.ifla.org/VI/3/p1996-1/uni"+fieldnumber+".htm#b"+field);
window.open("http://archive.ifla.org/VI/3/p1996-1/uni"+fieldnumber+".htm#" + ("000"+field).slice(-3));
} else {
window.open("http://archive.ifla.org/VI/3/p1996-1/uni9.htm");
}
@ -770,9 +785,7 @@ function unHideSubfield(index,labelindex) { // FIXME :: is it used ?
<a href="#" tabindex="1" class="tagnum" title="<!-- TMPL_VAR NAME="tag_lib"--> - Click to Expand this Tag" onclick="ExpandField('tag_<!-- TMPL_VAR NAME="tag"-->_<!-- TMPL_VAR NAME='index' --><!-- TMPL_VAR NAME="random" -->'); return false;"><!-- TMPL_VAR NAME="tag" --></a>
<!-- TMPL_ELSE -->
<span class="tagnum" title="<!-- TMPL_VAR NAME="tag_lib" -->"><!-- TMPL_VAR NAME="tag" --><a
onClick="<!-- TMPL_IF NAME="MARC21" -->PopupMARCFieldDoc(<!-- TMPL_VAR NAME="tag" -->)
<!-- TMPL_ELSE -->PopupUNIMARCFieldDoc(<!-- TMPL_VAR NAME="tag" -->,<!-- TMPL_VAR NAME="number" -->)
<!-- /TMPL_IF -->;return false;">&nbsp;?</a></span>
onclick="PopupMARCFieldDoc(<!-- TMPL_VAR NAME="tag" -->, <!-- TMPL_VAR NAME="number" -->); return false;">&nbsp;?</a></span>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="fixedfield" -->
<input tabindex="1" class="indicator flat" type="text" style="display:none;" name="tag_<!-- TMPL_VAR NAME="tag" -->_indicator1_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->" size="1" maxlength="1" value="<!-- TMPL_VAR NAME="indicator1" -->" />