function setfields(bibcode) {
    if ( window.opener == null ) {
	window.open('/bib_abs.html?'+bibcode,'_blank');
	window.close();
    } else if ( window.opener.ListOpener == 'abs_connect' ) {
	if((bibcode[0] == '1') || (bibcode[0] == '2')){
	    year = bibcode.substring(0,4);
	    bibstem = bibcode.substring(4,9) ;
	    vol = bibcode.substring(9,13) ;
	    if ( vol == '....' ) {
		vol = '' ;
	    }
	} else if (bibcode.length > 5) {
	    year = '' ; 
	    bibstem = bibcode.substring(0,5) ;
	    vol = bibcode.substring(5,9) ;
	    if ( vol == '....' ) {
		vol = '' ;
	    }
	} else {
	    year = '' ; 
	    bibstem = bibcode.substring(0,5) ;
	    vol = '' ;
	}
	window.opener.document.abs_connect.ref_stems.value = year + bibstem + vol;
	window.opener.document.abs_connect.start_year.value = year;
	window.opener.document.abs_connect.end_year.value = year;
	window.close();
    } else if ( window.opener.ListOpener == 'bibcode_queryform' ) {
	if((bibcode[0] == '1') || (bibcode[0] == '2')){
	    year = bibcode.substring(0,4);
	    if ( bibcode[4] != '.' ) {
		bibstem = bibcode.substring(4,9);
	    } else {
		bibstem = '';
	    }
	    for ( i=9 ; (bibcode[i] == '.') && (i < 13) ; i++ ) ;
	    if ( i < 13 ) {
		vol = bibcode.substring(i,14) ;
	    } else {
		vol = '' ;
	    }
	} else if (bibcode.length > 5) {
	    year = '' ; 
	    if ( bibcode[0] != '.' ) {
		bibstem = bibcode.substring(0,5);
	    } else {
		bibstem = '';
	    }
	    for ( i=5 ; (bibcode[i] == '.') && (i < 9) ; i++ ) ;
	    if ( i < 9 ) {
		vol = bibcode.substring(i,10) ;
	    } else {
		vol = '' ;
	    }
	} else {
	    bibstem = bibcode ;
	    year = '' ; 
	    vol = '' ; 
	}
	window.opener.document.bibcode_queryform.year.value = year;
	window.opener.document.bibcode_queryform.bibstem.value = bibstem;
	window.opener.document.bibcode_queryform.volume.value = vol;
	window.close();
    } else if ( window.opener.ListOpener == 'fulltext_queryform' ) {
	if((bibcode[0] == '1') || (bibcode[0] == '2')){
	    year = bibcode.substring(0,4);
	    if ( bibcode[4] != '.' ) {
		bibstem = bibcode.substring(4,9);
	    } else {
		bibstem = '';
	    }
	    for ( i=9 ; (bibcode[i] == '.') && (i < 13) ; i++ ) ;
	    if ( i < 13 ) {
		vol = bibcode.substring(i,14) ;
	    } else {
		vol = '' ;
	    }
	} else if (bibcode.length > 5) {
	    year = '' ; 
	    if ( bibcode[0] != '.' ) {
		bibstem = bibcode.substring(0,5);
	    } else {
		bibstem = '';
	    }
	    for ( i=5 ; (bibcode[i] == '.') && (i < 9) ; i++ ) ;
	    if ( i < 9 ) {
		vol = bibcode.substring(i,10) ;
	    } else {
		vol = '' ;
	    }
	} else {
	    bibstem = bibcode ;
	    year = '' ; 
	    vol = '' ; 
	}
	window.opener.document.fulltext_queryform.ref_stems.value = year + bibstem + vol;
	window.opener.document.fulltext_queryform.start_year.value = year;
	window.opener.document.fulltext_queryform.end_year.value = year;
	window.close();
    }
}
