# -*- tcl -*-
collection lawcentbib /data/web/e/law/faculty/INDICES; # where nand puts the indices
cgi email elong@anael.lib.uchicago.edu; # where errors are mailed to
parser refer -flatten 1; # the kind of data expected
#set DATA /data/web/e/law/faculty/centennial.txt
#set SEDSCRIPT [format {/^[ %s]*$/{N;/^[ %s]*\n[ %s]*$/D;}} \t \t \t]
#origin [list |tr -d {\015} < $DATA | sed $SEDSCRIPT]
#the following creates a pseudo field that distiguishes titles that are for journals (i.e. field 3 when field 0=journal article)
#origin [list |tr -d {\015} < $data | awk {BEGIN {FS=OFS="\t"}; {$37=$1 ":" $4;print}}]
origin /data/web/e/law/faculty/crlf.txt; # the data source
index author {A} -label "Author"; #indexes author and uses custom label
index title {T} -label "Title"
index journal {B} -label "Journal"
sort pathsort {O}; # search results sorted on field 0
browse linkformat "Browse %s"
browse recordtype {0} -label "Record Type"
browse authorbrowse {A} -label "Author"
#detypify defines a proc which will strip the reference type from the browse field being used for the journal browse (see note above about the browse field pseudo field)
#proc detypify {str} {
# regsub {^[^:]*:} $str ""
#}
browse journalbrowse {B} -label "Journal";# -only [list string match "Journal Article:*"]
browse yearbrowse {D} -label "Year"
search::dnf defsearch -disjuncts 2
# cgi limit select {50 25 100 200 500}; # lets user select the number of search results to a page
cgi listing -style numbers
html title {Law Centennial Bibliography}
html header -file /data/web/e/law/faculty/lawcentbibheader-aux.cf
html top {
} [clock format [clock seconds] -format "%e %B %Y at %I:%M %p"]]
source /data/web/lib/nand/e.style
#layout lawcentbibalternate builtin fulltags
#layout lawcentbiblayout builtin paragraph 0 _1 2 3 4 5 6 7 8 9
#layout testlayout custom {n fields labels} {
# format foo
#}
layout lawcentbibcustom custom {n fields labels} {
# $fields is a "serialized array"
default "" A T I D Y V P B Z 8 7 6 O U C W E G R
name $fields
switch -exact -- $0 {
"Book" {
set x {}
lappend x [r $A ,]
lappend x [l
$T ,]
lappend x [r $C ,]
lappend x $I
set 7D [j -s ", " $7 $D]
set Y [l ( $7D )]
lappend x $Y
eval j $x
}
"Journal Article" {
set x {}
lappend x [r $A ,]
lappend x [r $T ,]
lappend x $V
lappend x [l
$B ]
lappend x $P
lappend x [l ( $D ).]
eval j $x
}
"Book Section" {
set x {}
lappend x [r $A ,]
lappend x [r $T ,]
lappend x [l {in
} $B ,]
set ED [j $E $D]
set IED [j -s ", " $I $ED]
set Z [l ( $IED )]
lappend x $Z
lappend x [l "at " $P .]
eval j $x
}
"Audiovisual Material" {
set x {}
lappend x [r $A ,]
lappend x [r $T ,]
lappend x [r $8 ,]
lappend x [r $D .]
lappend x [r $6 .]
lappend x [r $O .]
lappend x [url $U $U]
eval j $x
}
"Electronic Source" {
set x {}
lappend x [r $A ,]
lappend x [l
$T .]
lappend x $8
lappend x [r $D .]
lappend x [r $O .]
lappend x [r [url $U $U] .]
eval j $x
}
"Edited Book" {
set x {}
lappend x [r $A ,]
lappend x [r $T ,]
lappend x [r $C ,]
lappend x [r $I ,]
set 7D [j -s ", " $7 $D]
set Y [l ( $7D )]
lappend x $Y
lappend x $G
lappend x [r $R .]
eval j $x
}
"Magazine Article" {
set x {}
lappend x [r $A ,]
lappend x [r $T ,]
lappend x $V
lappend x $B
lappend x $P
set 8D [j -s " " $8 $D]
set W [l ( $8D )]
lappend x $W
lappend x
eval j $x
}
"Newspaper Article" {
set x {}
lappend x [r $A ,]
lappend x [r $T ,]
lappend x $V
lappend x [l
$B ]
lappend x $D
lappend x [l "at " $P .]
eval j $x
}
"Report" {
set x {}
lappend x [r $A ,]
lappend x [l
$T ,]
lappend x [r $C ,]
lappend x [r $I ,]
lappend x $8
lappend x [r $D .]
lappend x [r $O .]
eval j $x
}
"Review" {
set x {}
lappend x [r $A ,]
lappend x [r $E ,]
lappend x [r $T ,]
lappend x $V
lappend x $B
lappend x $P
set 8D [j -s " " $8 $D]
set W [l ( $8D )]
lappend x $W
eval j $x
}
default {
#$7 and $V are not defined in Centennial.ens
l
[format {Yikes! Report this immediately! %s} $fields]
}
}
}