Last updated |
2003-02-25 13:08:55 EST |
Doc Title |
DLXS Release Notes |
Author 1 |
Farber, Phillip |
Author 2 |
Weise, John |
CVS Revision |
$Revision: 1.12 $ |
DLXS Release Notes
These notes summarize the DLXS releases chronologically, most recent
first. They are structured into release numbers and within that level
into General Information and then Middleware and XPAT-specific sections.
DLXS Release 11a - 5 MAR 2004
General Information
DLXS Release 11a is an interim release consisting of a few enhancements to Release 11. Refer to that section below for more detail. Release 11a is a full release of all DLXS middleware. There are no database schema changes. No database upgrades are required. A Release 11 version 4 database is fully compatible with release 11a.
Unicode support available in XPAT since Release 11 has been extended to the middleware and is delivered with working sample data under TextClass. FindaidClass shares the TextClass Unicode support changes. Refer to DLXS Unicode Data Preparation and Online Presentation Issues. ImageClass and BibClass still require minor changes to be fully Unicode compliant.
Release 11a is comprised of:
- BibClass version 3.1.2
- Broker20 version 1.1.0
- Collmgr version 3.1.1
- FindaidClass version 5.2.0
- ImageClass version 3.1.0
- Lib version 3.3.3
- TextClass version 3.3.0
- XClass version 2.1.1
- XPAT version 5.3.0
- dlxsd version 1.0.1
- mrsid_retrieve version 1.3.1
- tif2web version 1.0.3
- kakadu version 4.0.2
- cjpeg version 6b
Known Problems
XPAT Known Problems
XPAT 5.3.0 is generally backward-compatible with indexes generated by 5.2.x subject to a few isolated
misses during searching. Re-indexing with 5.3 xpatbld resolves this deficiency.
Database Known Problems
The SQL::Statement version 1.005 perl module is not backward compatible with version 0.1021. Version 0.1021 was typical with Perl version 5.6.1 whereas 1.005 is typical of Perl 5.8.0. We recommend you install perl 5.8.0 or higher and SQL::Statement 1.005 or higher.
Image Class Known Problems
-
The HTTP header is not being created properly by the getimage-idx cgi in Image Class (DLXS 11, 11a). The error is actually in Sidget2.pm at line 176. Here is the correction.
$buf = qq{Content-type: $contentType\n} . $contentDisposition . qq{Content-length: $size\n\n};
-
Two bugs related to sorting in Image Class (DLXS 11a) were recently resolved. Thanks to Driek Heesakkers, University of Amsterdam Digital Production Centre for his extra effort helping me reproduce the problems for debugging.
Two patches are provided here...
In $DLXSROOT/cgi/i/image/ImageApp.pm the subroutine prepToSort needs a minor modification.
Move the closing curly bracket up a few lines so that it looks like this...
$sort = $xcollSortMaps[0];
}
# sgml data might have abbrevs with dots.
# collmgr has abbrevs with underscores.
# look for both when parsing the data for a sort value.
$sort =~ s,\_,\[\.\_\],;
my $totalResults = &ImageClassUtils::totalResults($cgi, $bbo);
Also in ImageApp.pm, replace the subroutine ProcessItems with the following...
sub ProcessItems
{
my $self = shift;
my ( $cgi, $cio, $dso, $itemIDsRef, $bbo ) = @_;
# Set $gSliceStart and $gSliceEnd
# done globally for easy reuse
$self->sliceBounds( $cgi );
my @rset;
my @sliceOccurArray;
for (my $i = $ICGlobals::gSliceStart; $i <= $ICGlobals::gSliceEnd; $i++)
{
my $idRef = $$itemIDsRef[$i];
# last if slice is larger than results
last if (! defined $idRef);
my @oneID = ($$idRef);
my ($coll) = ($$idRef =~ m/S-([^-]*)-/i);
$coll = lc($coll);
$self->ProcessItemsColl($cgi, $cio,
$dso, $bbo, $coll,
\@oneID, \@rset);
push @sliceOccurArray, $self->makeSliceOccurArray(\@oneID);
}
return ( \@rset, \@sliceOccurArray );
}
- Image filenames can not begin with the letter "x" (upper or lowercase). It is not certain when this problem was introduced, but it is believed to exist in DLXS 10. It is known to exist in DLXS 11 and 11a.
- Any field that, such as an ID field, that includes non-alphanumeric chars, such as "-", should be mapped to ic_exact in the in the admin_field_maps Colldb/Collmgr field if exact searching of the entire field value is desired. This is not so much a problem as it is a fact.
- Display of JPEG2000 images as JPEG in the browser behaves oddly if the image is zoomed several times near the edge of the full image. The zoomed portion of the image is stretched to match the aspect ratio of the full-size image.
- "rgn" CGI parameters containing full field names generate an error. The CGI now expects field abbreviations, not full field names.
XPAT version 5.3.0
- No changes. Please see release notes for Release 11.
Lib version 3.3.3
New and Changed Functionality
- Middleware support for UTF-8 Unicode collections. XPat.pm sets the Perl UTF-8 flag on strings from collections configured in Collmgr to have UTF-8 localed. DlpsUtils::HighlightHit is completely new to supporting highlighting of multi-byte UTF-8 encoded results data.
- Visible in TextClass and FindaidClass: Implementation of frequency sorting, cross-collection results guide frame collection names are links to the collection's home page, sort select menu is based on the sort options of just
those collections with results from a cross collection search.
- DlpsUtils::HighlightHit has been rewritten to support highlighting multi-byte UTF-8 results. It emulates the full mapping performed by XPAT during searching to match search terms exactly in the results.
- Email addresses configured in the Collmgr and displayed via PIs in the output are automatically obfuscated to make them harder for web crawlers to harvest in an effort to reduce spam.
- Support for "foreign" URLs (URLs that go offsite) in the Collmgr 'homesite' field.
- No longer delete the 'g' (group) URL parameter when building the link to the collection home so the 'g' parameter will be carried around on subsequent links maintaining the group look and feel (if any).
Text Class version 3.3.0
New and Changed Functionality
- Support for UTF-8 encoded Unicode collection data. Utilizes xpatu as search engine for Unicode collections. Reads the 'locale' field in Collmgr to determine encoding, either UTF-8 or ISO-8859-*. Adds charset=UTF-8 META tag to existing html templates on output. Refer to DLXS Unicode Data Preparation and Online Presentation Issues. A Unicode sample collection named "sampletc_utf8" accompanies this release.
- Template and CSS style sheet changes to provide page image borders in Pageviewer.
- The data prep utility program, dtdalyzer.pl, is now XML aware i.e. case-sensitive.
- Two new data prep utility programs are delivered: isocer2utf8 converts SGML ISO Character Entity References to UTF-8 encoded Unicode characters and ncr2utf8 converts Numeric Character References to UTF-8 encoded Unicode characters.
- Frequency sorting is now a supported sort option.
- Changes to footer.chnk supporting email address obfuscation.
- PageView changes to handle multiple records in Pageview table in dlxs database (contone and bitonal page images can now live side by side).
- Cross-collection results guide frame collection names are links to the collection's home page, sort select menu is based on the sort options of just those collections with results from a cross collection search.
- A summary description of the search result is saved in the Search History instead of just
a single number under "Total Results" in the search history page.
- Implemented enhanced handling for TEI Level 2 materials with <DIV> depths greater than 1. This work is a generalization of a DLXS 10 contribution by Frances Webb at Cornell.
Bib Class version 3.1.2
New and Changed Functionality
Release of Z39BC.pm implementing a subclass of BibClass that is able to query Z3950 search engines. It uses Net::Z3950 (obtained from CPAN) to connect and create Z3950 queries which it then issues to a Z3950 search engine.
Presently it is designed to expect UTF-8 responses from its Z3950 queries, so the Z39App.pm application subclass should be modified to insert charset=UTF-8 <META> tags when outputting template files to handle the UTF-8 responses.
The collmgr 'host' field for Z39-based collections indicates the server where the Z3950 engine resides.
It is important to note that presently the Z39 implementation will only create queries for following fields: title, author, pubyear, language, and id, and that it assumes that the Z3950 search engine has a database with the same name as the collid, which is indicated when connecting to the engine. Here at UM, we are using Zebra as our Z3950 general-purpose structured text indexing and retrieval engine.
Image Class version 3.1.0
New and Changed Functionality
- In situations where the collection metadata is in MySQL and there are multiple "q" CGI parameters (e.g,. q1, q2, q3) it is now acceptable for any combination of the "q" parameters to have values or not. In the past if, for instance, q1 and q3 had values, but q2 did not, an assertion error would occur. Now it works fine. It also works with XPAT collections, but that is old news.
- Custom (user driven) ordering of portfolio items was added. The related MySQL tables BookBagDB and BookBagItems did not change in structure (no new or changed fields).
- The ability for any user (logged-in or not) to create a portfolio was added. If login is enabled in Image Class and the user logs in, the user's portfolios are stored long term.
- Portfolio code is more clearly separated in the middleware. Dependency on BookBag library methods increased (this is good).
- A new script called manageportfolios.pl is provided ($DLXSROOT/bin). It deletes temporary portfolios older than 2 days with the assumption the user's session has expired. It is only needed if Portfolios are enabled. Works well as a cron job.
- Template chunking was added. Results templates now use header chunks, which are found in $DLXSROOT/web/i/image with the templates. The javascript that sniffs the browser and platform is now in a chunk and all templates use it. Templates that don't use chunks should still work just fine.
- Collection and group webdir values in Collmgr/Colldb must have a leading slash. In the past Image Class would work with our without the leading slash. This is no longer the case.
- Colldb/Collmgr field "dfltsrch" fields is now required to have specific values. "default" does not work. and collid_all should be included if brwsimg and brwsrec are to work.
- The PATH processing instruction is no longer supported in Image Class templates. Use FBFILE processing instruction instead. There is no backward compatibility for this in DLXS 11a (there was in DLXS 11), so all existing templates must make this change.
- "Revert Size" functionality was added to the middleware, however the PIs are commented-out in the class level entry.tpl and bbentry.tpl templates. See also comments in entry.tpl
- Email obfuscation was added to the CONTACT processing instructions. Javascript is used to disguise email addresses from crawlers. It is recommended that the contacttext Colldb/Collmgr field value not be an email address since only the contact link is disguised.
- Significant Portfolio template, chunk, and stylesheet changes were made in the process of adding portfolio support for users not logged in. Some template cleanup was done as well.
- Added logout link to complement login.
- Made changes to bring prep under DLXSDATAROOT for data prep scripts.
- Fixed a bug in middleware that caused the MO attribute
of ISTRUCT to be omitted when the collection has
no media.
- Significant changes were made to the
collhomeLink subroutine that is used by the COLLHOME
PI. It is now able to return a collection home, group
home, or class home link depending on the situation.
This alllows it to be utilized from a wider array
of templates. The COLLHOME PI was renamed HOME. COLLHOME
will also continue to work through DLXS 12, after
which it is flagged for removal.
- Changes were made to make use of the
new hiliting routines in lib.
- Portfolios were not sorting properly
with mysql collections. Fixed.
- A single collection can now be searched
by cross collection fields, if so desired.
- Changes were needed in the mysqlImageApp::BuildCategorySearch
method to properly handle all xcoll and coll specific
situations. Also added a method to mysqlImageApp.pm
that converts cgi parameters in to a natural language
query string for display to the user when no results
are achieved. This has been sorely missing from the
mysql version of Image Class.
- Corrected problem where Next/Previous links were not always working properly. This was MySQL specific.
- The known problem of DLXS 11 regarding the "MEDIAEQUIVS" PI has been resolved.
Broker20 version 1.1.0
New and Changed Functionality
- No change from Release 11. See below.
Collmgr version 3.1.0
New and Changed Functionality
- No change from Release 11. See below.
FindaidClass version 5.2.0
New and Changed Functionality
- Unicode enabled due to code in Lib shared by TextClass.
- Addition of Previous and Next Item links.
- Email PIs now obfuscate the email addresses from the colldb, to aid in
preventing spam.
- Changes to URL parameters (view, subview, etc.) to more closely parallel TextClass usage.
- Code moved up to DLXSApp::FullTextApp and DLXSClass::FullTextClass so it could be shared by TextClass and FindaidClass.
- Addition of "Search Within" one Finding Aid functionality.
- Addition of Next/Previous links in results.
XClass version 2.1.1
New and Changed Functionality
- No change from DLXS release 11. See below.
DLXS Release 11 - 5 DEC 2003
General Information
DLXS Release 11 is comprised of:
- BibClass version 3.1.0
- Broker20 version 1.1.0
- Collmgr version 3.1.0
- FindaidClass version 5.0.0
- ImageClass version 3.0.0
- Lib version 3.2.0
- TextClass version 3.2.0
- XClass version 2.1.0
- XPAT version 5.3.0
- XslFallback version 1.0.0
- IdResolver version 1.0.0
- dlxsd version 1.0.1
- mrsid_retrieve version 1.3.1
- tif2web version 1.0.3
- kakadu version 4.0.2
- cjpeg version 6b
Known Problems
XPAT 5.3.0 is generally backward-compatible with indexes generated by 5.2.x subject to a few isolated
misses during searching. Re-indexing with 5.3 xpatbld resolves this deficiency.
The SQL::Statement version 1.005 perl module is not backward compatible with version 0.1021. Version 0.1021 was typical with Perl version 5.6.1 whereas 1.005 is typical of Perl 5.8.0. We recommend you install perl 5.8.0 and SQL::Statement 1.005 or higher. The workaround mentioned below may not be required when SQL::Statement 1.006 becomes available. Because of this the following constraints and workarounds apply.
- collmgr
- Functions normally with either 0.1021 or 1.005
- dbmove
- Functions normally moving CSV to MySQL under either 1.005 or 0.1021
- Incorrectly uppercases column names when moving MySQL to CSV under 1.005. The workaround is to lower case the resulting column names using an ascii editor.
- Fails completely under 0.1021 moving CSV to MySQL or vice versa..
- upgrade_1_2, upgrade_2_3, upgrade_3_4
- Functions normally upgrading a MySQL database under either 1.005 or 0.1021
- Incorrectly uppercases column names when upgrading CSV under 1.005. The workaround is to lower case the resulting column names using an ascii editor.
Image Class Known Problems
XPAT version 5.3.0
- 5.3.0 is a major new release of XPAT. Two new binaries, xpatbldu and xpatu enable indexing and searching of UTF-8 encoded Unicode XML data. Full Unicode support in the middleware will become available in a following release. In addition, "Lite" non-Unicode versions of these tools together with sgmlrgn and multirgn are now freely available without license fees and may be downloaded from http://www.dlxs.org.
- 5.3.0 is generally backward-compatible with indexes generated by 5.2.x subject to a few isolated
misses during searching. 5.3 can read 5.2 indexes albeit with a warning that it is not possible for 5.3 to determine whether the Data Dictionary has changed since the 5.2 index was built because the integrity checksum for 5.3 indexes is different than for 5.2.
- XPAT 5.2.x cannot read indexes generated by 5.3. That is, 5.3 is not forward-compatible.
- Because XPAT 5.2.x cannot read indexes generated by 5.3 and because DLXS sites may continue to use 5.2 for a period of time we've chosen to deliver 5.2 versions of the sample data indexes.
- With respect to Unicode support for element names and attribute names and values, xmlrgn is limited to Unicode code points in the range from 0 to 127 decimal, i.e. to USASCII values. multirgn should be used to create region indexes for XML where element names and/or attributes and attribute values are outside this range.
Lib version 3.2.0
New and Changed Functionality
- Support for CGM (Cornel--Goettingen-Michigan protocol
- New parent class DLXSClass with children BibClass, FullTextClass
- Support for newly released ID Resolver.
- New parent class PIFiller supporting subclasses PerlPIFiller and XsltPIFiller for Perl and XSLT filtering.
lib
- New module CGMResult.pm to handle CGM result set
- Member data keys changed to lower case
- CollsInfo.pm: Addition of access methods for "globalnamespace"
so that code could be shared. Also changed passing
of object creation parameters as a hash rather than
as an array.
- DbUtils.pm: routines were added to
to provide new basic functionality for storing and
retrieving rows.
- LibGlobals.cfg: Updated configuration of idresolver. The $gIdResolver variable is
now initially set to the value of the virtual host
for the idresolver rather than the URL for the idresolver.
- New module PIFiller.pm with subclasses PerlPIFiller.pm and XsltPIFiller.pm generalizing the filtering of XML for output.
- QueryFactory.pm: Changed 'and' to 'or in NaturalLanguageBaseQuery
in the case where the search type is 'simple' and
there are multiple q1's since the query is logically
q1 + q1 + ... + q1 i.e. a disjunction not a conjunction. Change an '&' character into '&' which is the form it must have in XML so user can
search for e.g. "Memphis Light, Gas & Water" but protect
actual entered character entity references like 'é'.
bin/db
- upgrade_3_4 utility provided to upgrade to version 4 of database.
Obsolete fields in this release are as follows (TableName:fieldname):
- BibClass:dddir
- ImageClass:dddir
- TextClass:tcumodule
- TextClass:standalonename
- ImageClass:banner
- TextClass:lel
- GroupData:groupstandalonename
- TextClass:maxdepthitems
- TextClass:standalonename
- ImageClass:banner
Text Class version 3.2.0
New and Changed Functionality
- Support for remote collection searching via new CGM protocol.
- Partial implementation of XSLT filtering; more work to follow.
- Minor template changes
- Significant architectural change introducing TextClass as a subclass of DLXSClass::FullTextClass
- Print-on-demand functionality added.
- TextClassUtils obsolete, replaced by PIFiller object hierarchy.
web/t/text
- <?CSS_PATH filename="filename.css">
PIs added and deprecated DOC_ROOT PIs removed
- Made changes to footer text for relevant
template pages be extracting footer content out into
two chunk files, footer.chnk and footernolist.chnk,
which appear at the bottom of list type and no list
type pages.
bin/t/text, bin/WW
- importpageviewdata.pl: enhancements: * after processing a
page metadata file, remember the maximum page sequence
number encountered and purge any page metadata in
the database for page sequences greater than that
(potentially) new maximum
- WW/makeWordWheelFiles.pl: Fix counts so they agree with what
you can search for in TextClass.
cgi/t/text
- New modules TextAppXsltPIFiller.pm TextAppPerlPIFiller.pm
- New modules: TextClass subclasses CgmTC and CgmPartialTC supporting CGM protocol
Bib Class version 3.1.0
New and Changed Functionality
- Full support for XSL stylesheets
web/b/bib
- Parallel set of templates with suffix '.xml' supporting XSL filtering.
cgi/b/bib
- New modules BibAppPerlFilters.pm BibAppXmlFilters.pm supporting XSL stylesheets while maintaining support for Perl filtering.
Image Class version 3.0.0
New and Changed Functionality
- MySQL is supported in addition to XPAT for searching collection metadata. XPAT will likely not be supported in future releases of Image Class.
- JPEG2000 is supported in addition to MrSID. Behavior is identical. JPEG2000 command line compression/decompression utilities are provided.
- Configuration of field abbreviations and labels, as well as the mapping of fields for cross-collection searching, is now done in Collmgr.
Collectionmaps.pm and makeCollectionmaps-idx are no lnger used.
- The form of field abbreviations has changed. "dots" are no longer allowed. SGML may continue to have dots, no need to redo data.
As field abbreviations are migrated to Collmgr they must have "dots" converted to underscores.
- The Collmgr field "dfltsrchflds" now must include an abbreviation in the form "collid_all" to enable searching of the entire record.
This field should be mapped to ic_all in the field_xcoll_maps Collmgr field for full record searching in across collections.
- MySQL table structure for Portfolios has changed for increased data stability.
- Media support has been improved. Practically any form of media (QuickTime, Flash, MP3) can be included in Image Class. Level of support varies. Configuration of imageprep has changed significantly.
web/i/image
- bbentry.tpl
- changed dlxs.ma to dlxs_ma
- A PI was added to entry.tpl and bbentry.tpl
called "MEDIAEQUIVSTOOL" which displays links for
viewing item in different media formats. Anticipated
use is for video in more than one format.
- bbthumbfull.tpl
- bbthumbfull.tpl: significant changes
were made in order to support scrollable iframes on
the portfolio thumbfull pages. the same changes could
be applied to the thumbfull.tpl template.
- search.tpl
- Replaced missing javascript loading
element that caused the search tips not to open when
requested.
- small style change
- style tweak
- Changed search.tpl and searchgroup.tpl
to use "TIPSURL" PI.
- searchgroup.tpl
- announcement tweaks
- Changed search.tpl and searchgroup.tpl
to use "TIPSURL" PI.
- css/imageclass-ie-mac.css
- A few styles definitions were added
related to display of the bbthumbfull page.
- Added style used to display a message
when there are no related views for an item and a
mysql media table is not being used with the colllection.
- added toolsbg style def
- graphics/recinit.jpg
- this new graphic is used as part of
the "help" display in the bbthumbfull display.
- js/imageclass.js
- changes to support move away from Collectionmaps.pm
to collmgr management of field mappings, labels, etc.
- imageclass.js: significant changes
were made in order to support scrollable iframes on
the portfolio thumbfull pages.
cgi/i/image
- ICLocalUtils.pm
- Changes were made to improve support
for media formats other than images. Also, minor changes
were made to enable the reduction of customized templates.
In other words, some basic generalizations were made
so that class or group level templates can do the
job.
- Dropped reference to Collectionmaps.pm,
which isn't used anymore.
- ImageApp.pm
- Fix server error: changed __AdjustOccurrenceCounts()
to AdjustOccurrenceCounts() for ARO changes to xclass.
- Made a change to ImageApp so that portfolios
can find items that have old ID delims. Made a change
to Image Class Utils to support new and old delims
in nextpreventry.
- Small changes to make portfolios work
properly with new as well as old isentryid delimiters.
- Fixed a bug that had disabled adding
to or deleting from Bookbag/Portfolio. Also made retrieval
of existing BookBag items more robust in the sense
that it now is better about retrieving and deleting
items with ids that are in older forms.
- Parameters passed to object creation
now a hash instead of an array.
- Major changes were made in order to
add support for mySQL to image class. ImageApp methods
were shifted and/or partitioned in order to simplify
subclassing for mySQL. With this commit, both xpat
and mysql should be largely functional. XClass searching
needs to be tested. The changes for mySQL provided
an opportune time to stop the use of full region names
in rgn parameters and to stop using Collectionmaps.pm.
These changes are complete with the exception if needing
some validity checking of rgn parameters.
- Changed all member data keys to lowercase
(ciowrapper, session, cgi, etc.)
- made to be compatable with lib changes.
also fixed bug in portfolios where missing items were
not being displayed as "missing" they were simply
not being displayed. other changes included a fix
for the problem where xcoll field data would not display
(e.g., dlxs_ma) and other little things.
- Changes were made to ImageApp.pm, ImageClassUtils.pm,
and imageclass.cfg to abandon the use of "storable"
freeze and thaw for the long-term storage of BookBag
items. The new mechanism stores BookBag items in a
seperate table, one per row. The freeze/thaw approach
was occassionally storing BookBags that could not
be thawed. The root of the problem was never discovered.
To faciliate this change and to migrate data from
the frozen storage to the new table, a script called
convertBookBag.pl has been created and can be found
in bin/i/image. It is important to read the comments
in the head of the convertBookBag.pl file to understand
the steps required to make this transition smoothely.
- Natural language query string now displays
properly on "no results" page. It was failing perhaps
due to a race condition related to the cgi redirect
that followed and storage of the natlangquery on the
session. Also fixed a bug with portfolios. When last
item of portfolio was deleted, an internal server
error occurred due to an attempt to insert non-existant
data rows into the BookBagItems table at the time
of storage.
- Changes were made to improve support
for media formats other than images. Also, minor changes
were made to enable the reduction of customized templates.
In other words, some basic generalizations were made
so that class or group level templates can do the
job.
- Greater support for media formats was
added, which for ImageApp mostly meant the additon
of a pi handler for the mediaequivstool.
- A request for a bookmarked portfolio
would not redirect to the login page if the user was
not logged in. Now it does.
- A request for a bookmarked portfolio
would not redirect to the login page if the user was
not logged in. Now it really does.
- Cleaned up code and added comments
related to BookBag / Portfolio changes.
- ImageApp.pm::forceAuth now checks,
when opening portfolio, to see if the user is authed,
and if not, redirects to auth. this is most likely
to occur when a portfolio page has been bookmarked.
previously the behavior was to display the items the
user is authorized to use, but this could be confusing.
- ImageApp.pm: support for TOTALRESULTS
PI was added to results handler. It simply inserts
the number of total results. The intended use is in
bbthumbfull.tpl (portfolios) to create a referenceable
javascript variable that knows the total number of
results. This addition allowed the PI THUMBFULLJSARRAYS
to be deprecated. Minor mods were also made to maintain
the results view when opening a new portfolio, etc.
ImageClassUtils.pm: Primarily, changes were made to
support new functionality in portfolio's "thumb with
full record" view. iFrames are now used to allow scrolling
of thumbs while keeping the full record in it's place.
This functionaly can also be used in the regular (non-porfolios)
"thumb with full record" view, though it has not yet
been applied. Care was taken to maintain backward
compatibility with existing templates. As of this
commit, however, it is most likely that NS Nav 4.x
has some disfunctioning portfolio functions. Namely,
check/uncheck all items. imageclass.cfg: Minor changes
were made to "help" text for thumbfull views. Also
minor changes to the global var gWindowProps, which
specifies how certain pop-up windows are to be created.
- Minor changes to further advance support
for mysql. Added data_table field to collmgr. Changed
code to use data_table field. Changed nature of media_table
field. Instead of "yes"/"no" values, it now holds
the name of the media_table. Code was updated to use
media_table in this new way.
- Added support for 'SID' PI to all page
handlers. Dropped a related but unused subroutine
sidParam from ImageClassUtils.
- Fixed a bug that caused portfolios
to fail to display items in all cases. Stemmed from
Lib change that added cio to the list of parameters
passed to BookBagItem for initialization. Also added
use of new mediahost colldb field, which allows the
server that delivers images to be specified per collection.
The default is still specified in imageclass.cfg.
- Corrected a bug in the way links from
coll pages to group pages were built. Relates to GROUPSLINK
pi.
- JPEG2000 support was added to the middleware.
Also made a small change to mysqlImageApp.pm so that
it gets the data table name from Collmgr rather than
basing it on the collid.
- Corrected a bug in sorting when only
1 coll of group searched.
- ImageClassUtils.pm
- A minor modification was made to display
a list of all colls on the group selection page in
the situation where there are no groups defined in
collmgr.
- A minor modification was made to display
a list of all colls on the group selection page in
the situation where there are no groups defined in
collmgr.
- Some adjustments were needed in Image
Class utils in order to properly handle leading slashes
on webdir paths.
- Changed filtering of isentryid to support
"]" as a delimiter within the ID in additon to "-"
which has been used traditionally but has been problematic.
- added filtering for javascript window
naming to take "]" out of idnos.
- changed related views display code
to make it properly select a viewid (given recent
changes to isentryid) for entry link building.
- Made a change to ImageApp so that portfolios
can find items that have old ID delims. Made a change
to Image Class Utils to support new and old delims
in nextpreventry.
- A small fix to ImageClassUtils.pm ThumbRecordFilt
which was not reading collmgr field properly when
"bb"/bookbag/portfolio view.
- Fixed a bug that had disabled adding
to or deleting from Bookbag/Portfolio. Also made retrieval
of existing BookBag items more robust in the sense
that it now is better about retrieving and deleting
items with ids that are in older forms.
- Major changes were made in order to
add support for mySQL to image class. ImageApp methods
were shifted and/or partitioned in order to simplify
subclassing for mySQL. With this commit, both xpat
and mysql should be largely functional. XClass searching
needs to be tested. The changes for mySQL provided
an opportune time to stop the use of full region names
in rgn parameters and to stop using Collectionmaps.pm.
These changes are complete with the exception if needing
some validity checking of rgn parameters.
- made to be compatable with lib changes.
also fixed bug in portfolios where missing items were
not being displayed as "missing" they were simply
not being displayed. other changes included a fix
for the problem where xcoll field data would not display
(e.g., dlxs_ma) and other little things.
- minor fixes. recordFilter section labels
are no longer lowercased.
- made a small fix to record filt to
stop "empty" fields from displaying
- Image Class middleware was altered
to allow the maximum viewable image size to be restricted
based on the value of the imgsizemax collmgr field.
- Changes were made to ImageApp.pm, ImageClassUtils.pm,
and imageclass.cfg to abandon the use of "storable"
freeze and thaw for the long-term storage of BookBag
items. The new mechanism stores BookBag items in a
seperate table, one per row. The freeze/thaw approach
was occassionally storing BookBags that could not
be thawed. The root of the problem was never discovered.
To faciliate this change and to migrate data from
the frozen storage to the new table, a script called
convertBookBag.pl has been created and can be found
in bin/i/image. It is important to read the comments
in the head of the convertBookBag.pl file to understand
the steps required to make this transition smoothely.
- Natural language query string now displays
properly on "no results" page. It was failing perhaps
due to a race condition related to the cgi redirect
that followed and storage of the natlangquery on the
session. Also fixed a bug with portfolios. When last
item of portfolio was deleted, an internal server
error occurred due to an attempt to insert non-existant
data rows into the BookBagItems table at the time
of storage.
- Changes were made to improve support
for media formats other than images. Also, minor changes
were made to enable the reduction of customized templates.
In other words, some basic generalizations were made
so that class or group level templates can do the
job.
- A minor change was made to the method
that concatenates meta field values so that it skips
empty fields.
- Fixed a bug where keylinks in thumbfull
results view were being built without a "c" parameter.
- added basic support for turning urls
into links in fields.
- Greater support for media formats was
added, which for ImageClassUtils.pm included a great
number of changes to the following subroutines...
imageDecision, parseImgInf, parseImgInfVariations,
and a few others to a lesser degree. Also, use of
the subroutine _ParamsToURL was dropped in favor of
the existing CGI method self_url.
- _ParamsToURL subroutine deleted.
- minor "view for type" changes
- Fixed bug in ImageClassUtils::convertInfFileData.
Extensions were not being parsed from filenames properly.
- ImageApp.pm: support for TOTALRESULTS
PI was added to results handler. It simply inserts
the number of total results. The intended use is in
bbthumbfull.tpl (portfolios) to create a referenceable
javascript variable that knows the total number of
results. This addition allowed the PI THUMBFULLJSARRAYS
to be deprecated. Minor mods were also made to maintain
the results view when opening a new portfolio, etc.
ImageClassUtils.pm: Primarily, changes were made to
support new functionality in portfolio's "thumb with
full record" view. iFrames are now used to allow scrolling
of thumbs while keeping the full record in it's place.
This functionaly can also be used in the regular (non-porfolios)
"thumb with full record" view, though it has not yet
been applied. Care was taken to maintain backward
compatibility with existing templates. As of this
commit, however, it is most likely that NS Nav 4.x
has some disfunctioning portfolio functions. Namely,
check/uncheck all items. imageclass.cfg: Minor changes
were made to "help" text for thumbfull views. Also
minor changes to the global var gWindowProps, which
specifies how certain pop-up windows are to be created.
- Minor changes to further advance support
for mysql. Added data_table field to collmgr. Changed
code to use data_table field. Changed nature of media_table
field. Instead of "yes"/"no" values, it now holds
the name of the media_table. Code was updated to use
media_table in this new way.
- Changes were made related to the use
of mysql as a search engine for image class. A bug
in the area of related views was fixed. Query building
was improved (the query itself is more efficient when
run).
- Add to Bookbag from entry view was
generating an assertion error for mysql collections.
Fixed two small things and it is fine.
- getimage-idx was altered in order to
add mySQL support for metadata. Now it would work
with xpat, or mysql, and with our without a mysql
media_table. Part of this change included shifting
the mysqlSearchEngineInit subroutine from mysqlImageApp.pm
to ImageClassUtils.pm so that it can be also be used
by getimage-idx.
- Added support for 'SID' PI to all page
handlers. Dropped a related but unused subroutine
sidParam from ImageClassUtils.
- Adjustment for dropping of dddir collmgr
field.
- Fixed a bug that caused portfolios
to fail to display items in all cases. Stemmed from
Lib change that added cio to the list of parameters
passed to BookBagItem for initialization. Also added
use of new mediahost colldb field, which allows the
server that delivers images to be specified per collection.
The default is still specified in imageclass.cfg.
- Corrected a bug in the way links from
coll pages to group pages were built. Relates to GROUPSLINK
pi.
- Modified the checking of old params
to flag occurrences of catX parameters and give the
user a link to the collection page.
- Portfolio pick list is now sorted by
userid and then portfolio name. This came at the request
of a faculty member.
- JPEG2000 support was added to the middleware.
Also made a small change to mysqlImageApp.pm so that
it gets the data table name from Collmgr rather than
basing it on the collid.
- Added cgi validity check to add a viewid
of "1" if none provided.
- Minor change to ImageClassUtils::browseAll
so that it now uses collmgr to determine the view
for browsing images.
- Searchbuild.pm
- Major changes were made in order to
add support for mySQL to image class. ImageApp methods
were shifted and/or partitioned in order to simplify
subclassing for mySQL. With this commit, both xpat
and mysql should be largely functional. XClass searching
needs to be tested. The changes for mySQL provided
an opportune time to stop the use of full region names
in rgn parameters and to stop using Collectionmaps.pm.
These changes are complete with the exception if needing
some validity checking of rgn parameters.
- made to be compatable with lib changes.
also fixed bug in portfolios where missing items were
not being displayed as "missing" they were simply
not being displayed. other changes included a fix
for the problem where xcoll field data would not display
(e.g., dlxs_ma) and other little things.
- Natural language query string now displays
properly on "no results" page. It was failing perhaps
due to a race condition related to the cgi redirect
that followed and storage of the natlangquery on the
session. Also fixed a bug with portfolios. When last
item of portfolio was deleted, an internal server
error occurred due to an attempt to insert non-existant
data rows into the BookBagItems table at the time
of storage.
- Sid2.pm
- Image Class middleware was altered
to allow the maximum viewable image size to be restricted
based on the value of the imgsizemax collmgr field.
- Greater support for media file formats
was added. Parameter passing in Sid2.pm was changed
for a few routines. Sidget2.pm had minor changes in
an attempt to improve downloading of media to disk
using content disposition headers. Some improvement
was achieved.
- Sidget2.pm
- corrected the mime-type for jpeg images,
which has been wrong for all of these years.
- Greater support for media file formats
was added. Parameter passing in Sid2.pm was changed
for a few routines. Sidget2.pm had minor changes in
an attempt to improve downloading of media to disk
using content disposition headers. Some improvement
was achieved.
- JPEG2000 support was added to the middleware.
Also made a small change to mysqlImageApp.pm so that
it gets the data table name from Collmgr rather than
basing it on the collid.
- getimage-idx
- Removed $userpath remnants from code.
- Major changes were made in order to
add support for mySQL to image class. ImageApp methods
were shifted and/or partitioned in order to simplify
subclassing for mySQL. With this commit, both xpat
and mysql should be largely functional. XClass searching
needs to be tested. The changes for mySQL provided
an opportune time to stop the use of full region names
in rgn parameters and to stop using Collectionmaps.pm.
These changes are complete with the exception if needing
some validity checking of rgn parameters.
- Image Class middleware was altered
to allow the maximum viewable image size to be restricted
based on the value of the imgsizemax collmgr field.
- A one line change was made to correct
a problem seen when displaying an image that exists
on the server as a series of fixed size images (e.g.,
small, medium, large jpegs) as opposed to a multi-res
sid file.
- Changes were made to improve support
for media formats other than images. Also, minor changes
were made to enable the reduction of customized templates.
In other words, some basic generalizations were made
so that class or group level templates can do the
job.
- getimage-idx was enhanced for greater
support of media formats.
- Fixed a bug. "Image Access Restricted"
was not displaying when needed. Assertion error was
being generated.
- getimage-idx was altered in order to
add mySQL support for metadata. Now it would work
with xpat, or mysql, and with our without a mysql
media_table. Part of this change included shifting
the mysqlSearchEngineInit subroutine from mysqlImageApp.pm
to ImageClassUtils.pm so that it can be also be used
by getimage-idx.
- fixed bug related to old id retrieval.
- Minor change to getimage-idx to add
handling of tif, tiff, jpg extensions when there is
not a media_table.
- In a couple of spots, getimage-idx
had the mysql media table name hard coded when it
should have been getting it from the colldb. This
was corrected.
- JPEG2000 support was added to the middleware.
Also made a small change to mysqlImageApp.pm so that
it gets the data table name from Collmgr rather than
basing it on the collid.
- getthumbnail-idx
- Removed $userpath remnants from code.
- getthumbnail-idx was enhanced for greater
support of media formats. Changes were
minimal.
- image-idx
- Removed $userpath remnants from code.
- Parameters passed to object creation
now a hash instead of an array.
- Major changes were made in order to
add support for mySQL to image class. ImageApp methods
were shifted and/or partitioned in order to simplify
subclassing for mySQL. With this commit, both xpat
and mysql should be largely functional. XClass searching
needs to be tested. The changes for mySQL provided
an opportune time to stop the use of full region names
in rgn parameters and to stop using Collectionmaps.pm.
These changes are complete with the exception if needing
some validity checking of rgn parameters.
- Minor changes to further advance support
for mysql. Added data_table field to collmgr. Changed
code to use data_table field. Changed nature of media_table
field. Instead of "yes"/"no" values, it now holds
the name of the media_table. Code was updated to use
media_table in this new way.
- Changes were made related to the use
of mysql as a search engine for image class. A bug
in the area of related views was fixed. Query building
was improved (the query itself is more efficient when
run).
- imageclass.cfg
- Major changes were made in order to
add support for mySQL to image class. ImageApp methods
were shifted and/or partitioned in order to simplify
subclassing for mySQL. With this commit, both xpat
and mysql should be largely functional. XClass searching
needs to be tested. The changes for mySQL provided
an opportune time to stop the use of full region names
in rgn parameters and to stop using Collectionmaps.pm.
These changes are complete with the exception if needing
some validity checking of rgn parameters.
- Image Class middleware was altered
to allow the maximum viewable image size to be restricted
based on the value of the imgsizemax collmgr field.
- tweak
- reset image host url for dev enviro
- Changes were made to ImageApp.pm, ImageClassUtils.pm,
and imageclass.cfg to abandon the use of "storable"
freeze and thaw for the long-term storage of BookBag
items. The new mechanism stores BookBag items in a
seperate table, one per row. The freeze/thaw approach
was occassionally storing BookBags that could not
be thawed. The root of the problem was never discovered.
To faciliate this change and to migrate data from
the frozen storage to the new table, a script called
convertBookBag.pl has been created and can be found
in bin/i/image. It is important to read the comments
in the head of the convertBookBag.pl file to understand
the steps required to make this transition smoothely.
- Portfolio functionality is set to be
"off" for migration to new BookBag code.
- Natural language query string now displays
properly on "no results" page. It was failing perhaps
due to a race condition related to the cgi redirect
that followed and storage of the natlangquery on the
session. Also fixed a bug with portfolios. When last
item of portfolio was deleted, an internal server
error occurred due to an attempt to insert non-existant
data rows into the BookBagItems table at the time
of storage.
- imageclass.cfg was enhanced for greater
support of media formats. Changes were minimal, and
mostly included additions to the gWords hash..
- minor
- A request for a bookmarked portfolio
would not redirect to the login page if the user was
not logged in. Now it does.
- A request for a bookmarked portfolio
would not redirect to the login page if the user was
not logged in. Now it really does.
- ImageApp.pm: support for TOTALRESULTS
PI was added to results handler. It simply inserts
the number of total results. The intended use is in
bbthumbfull.tpl (portfolios) to create a referenceable
javascript variable that knows the total number of
results. This addition allowed the PI THUMBFULLJSARRAYS
to be deprecated. Minor mods were also made to maintain
the results view when opening a new portfolio, etc.
ImageClassUtils.pm: Primarily, changes were made to
support new functionality in portfolio's "thumb with
full record" view. iFrames are now used to allow scrolling
of thumbs while keeping the full record in it's place.
This functionaly can also be used in the regular (non-porfolios)
"thumb with full record" view, though it has not yet
been applied. Care was taken to maintain backward
compatibility with existing templates. As of this
commit, however, it is most likely that NS Nav 4.x
has some disfunctioning portfolio functions. Namely,
check/uncheck all items. imageclass.cfg: Minor changes
were made to "help" text for thumbfull views. Also
minor changes to the global var gWindowProps, which
specifies how certain pop-up windows are to be created.
- Fixed windowprops so they work with
netscape nav 4.
- Minor changes to further advance support
for mysql. Added data_table field to collmgr. Changed
code to use data_table field. Changed nature of media_table
field. Instead of "yes"/"no" values, it now holds
the name of the media_table. Code was updated to use
media_table in this new way.
- Changes were made related to the use
of mysql as a search engine for image class. A bug
in the area of related views was fixed. Query building
was improved (the query itself is more efficient when
run).
- Added a global variable to act as a
switch for turning on and off mysql fulltext boolean
mode, which is only available in version 4.0.2 or
newer of MySQL.
- Fixed a bug in the use of "Boolean"
mysql searching.
- Fixed a bug that caused portfolios
to fail to display items in all cases. Stemmed from
Lib change that added cio to the list of parameters
passed to BookBagItem for initialization. Also added
use of new mediahost colldb field, which allows the
server that delivers images to be specified per collection.
The default is still specified in imageclass.cfg.
- Modified the checking of old params
to flag occurrences of catX parameters and give the
user a link to the collection page.
- JPEG2000 support was added to the middleware.
Also made a small change to mysqlImageApp.pm so that
it gets the data table name from Collmgr rather than
basing it on the collid.
- added one space to string.
- ImageApp/mysqlImageApp.pm
- first entry for additions to support
mysql as for image class content in image class. this
commital might have errors.
- Minor changes to further advance support
for mysql. Added data_table field to collmgr. Changed
code to use data_table field. Changed nature of media_table
field. Instead of "yes"/"no" values, it now holds
the name of the media_table. Code was updated to use
media_table in this new way.
- Changes were made related to the use
of mysql as a search engine for image class. A bug
in the area of related views was fixed. Query building
was improved (the query itself is more efficient when
run).
- Add to Bookbag from entry view was
generating an assertion error for mysql collections.
Fixed two small things and it is fine.
- getimage-idx was altered in order to
add mySQL support for metadata. Now it would work
with xpat, or mysql, and with our without a mysql
media_table. Part of this change included shifting
the mysqlSearchEngineInit subroutine from mysqlImageApp.pm
to ImageClassUtils.pm so that it can be also be used
by getimage-idx.
- Added functionality to retrieve an
individual item by an old id that may have been bookmarked
or stored in a portfolio.
- minor change
- Added support for 'SID' PI to all page
handlers. Dropped a related but unused subroutine
sidParam from ImageClassUtils.
- Added a global variable to act as a
switch for turning on and off mysql fulltext boolean
mode, which is only available in version 4.0.2 or
newer of MySQL.
- Fixed a bug in the use of "Boolean"
mysql searching.
- Clarified query building options for
mysql in code and in comments.
- Minor mod to distinguish between an
undef and an empty media_table field.
- Modified the tagDBdata subroutine to
handle the most basic image filename extensions (without
needing to have a media table). Specifically, deals
with the situation where the image filename field
contains a filename that includes a filename extension.
If extensions other than tif, tiff, jpg are encountered,
a media table is required. It is also OK not to have
a filename extension.
- Minor change to getimage-idx to add
handling of tif, tiff, jpg extensions when there is
not a media_table.
- Fixed bug that caused record and image
counts to fail with mysql colls.
- Added phrase searching of a specified
field in order to enable accurate retrieval of IDs
that have non-alpha-numeric chars. The field can be
specfied in the field_admin_maps field of collmgr.
- Fixed bug that caused assertion error
when the user does not use the first search box.
- Fixed a bug in the bug fix that caused
assertion error when the user does not use the first
search box.
- JPEG2000 support was added to the middleware.
Also made a small change to mysqlImageApp.pm so that
it gets the data table name from Collmgr rather than
basing it on the collid.
- Corrected a bug in sorting when only
1 coll of group searched.
/bin/i/image
- getFlds.pl
- These scripts can be used to transfer
data from image class sgml to collmgr.
- getFlds_all.sh
- These scripts can be used to transfer
data from image class sgml to collmgr.
- icsgml2icmysql.pl
- first entry of script to convert image
class sgml to mysql tables for use with image class.
- Added index building commands in the
sql output. Added field size info for media table.
Fixed bug in field identification that in rare cases
would cause a row to not have the same number of columns
as expected.
- Problem corrected where entryauth data
was not being written to sql data loading file for
all items of the entry.
- Now looks to colldb to know which fields
need to be indexed for searching.
- small change.
- added collid to "all" field to enable
retrieval of all records by collid. this will only
work reliably with xpat or mysql 4. mysql 3 will probably
misbehave, but maybe not.
- idb
- changed isentryid delimiter to "]"
- A new reporting mechanism was added
to "idb". A simple tab-delimited report of entryid
and filename for MISSING image/media files is now
generated in the coll's prep dir. The files is called
collid-missing.txt.
- Support was added for a couple more
media formats.
- Many significant changes were made
relative to the handling of media files in the data
prep process. The goal being to expand support for
media types.
- Minor changes for friendlier handling
of index / indexprep dir options in imageprep and
idb. Also added confirmation of collid to idb.
- Changes to support JPEG2000.
- made a configuration change for bmp
files so that they map to jp2, sid, and then jpg.
they were all going to jpg, so all the old static
jpgs were being used rather than the sids.
- imageprep
- changes to fix a problem with fbfile
in the coll specific arena
- minor bug fix related to images in
dirs named "large"
- A problem was fixed in imageprep. It
wasn't properly accounting for multiple fixed size
images e.g., small, medium, large jpegs. A related
change was made to ImageClassUtils.pm so that the
middleware would display the multiple images properly.
- multimedia enhancements
- Many significant changes were made
relative to the handling of media files in the data
prep process. The goal being to expand support for
media types.
- Minor changes for friendlier handling
of index / indexprep dir options in imageprep and
idb. Also added confirmation of collid to idb.
- JPEG2000 support added.
- minor change
- imageprep.cfg
- A bug in imageprep was fixed. The number
of binary files was being calculated wrong and if
there were only 1 file, it would be skipped. Also,
minor changes were made to improve support for other
media formats, especially audio and flash.
- Many significant changes were made
relative to the handling of media files in the data
prep process. The goal being to expand support for
media types.
- Configuration changes for better support
of thumbs for fixed images.
- 10->4b/blake/rdist.blaketc
- reverting to jpeg2000-less version
for now
- JPEG2000 support added.
- configuration adjustment for jpeg2000
- Added better checking for binaries
mrsid_retrieve and kdu_expand.
- imagetobib.pl
- fixed id location problem
- stopped the cleaning of viewids for
url building because image class does not clean viewids
- DC.ri was not being output properly
due to a case sensitity problem
- commented out a debugging print statement
- Added tagging for DC.SO (source) as
in bib class sgml.
- Changed to use unnormed rather than
normed imageclass sgml for transformation to bib.
hmmmm.
- localimageprep.cfg
- changes to fix a problem with fbfile
in the coll specific arena
- added a little sample configuration
code
- A problem was fixed in imageprep. It
wasn't properly accounting for multiple fixed size
images e.g., small, medium, large jpegs. A related
change was made to ImageClassUtils.pm so that the
middleware would display the multiple images properly.
- Added support for more media formats.
- Many significant changes were made
relative to the handling of media files in the data
prep process. The goal being to expand support for
media types.
- Minor changes for friendlier handling
of index / indexprep dir options in imageprep and
idb. Also added confirmation of collid to idb.
- Configuration changes for better support
of thumbs for fixed images.
- added configs for bp1ic
- Adjustment for apis thumbnails.
- putFlds.pl
- These scripts can be used to transfer
data from image class sgml to collmgr.
- Modified putFlds.pl to properly use
DLPS_DEV to determine which colldb row to
edit.
- putFlds_all.sh
- These scripts can be used to transfer
data from image class sgml to collmgr.
- setupcollindex
- commented out some of the perl replacements
because they cause troubl
- Corrected problems related to installation
and dlxsdataroot. This should address issues raised
by UPitt.
- convertBookBag.pl
- convertBookBag.pl was created to convert
user data stored in a BookBagDB table from the type
that uses the "storable" module to freeze and thaw
BookBag data for storage to the type that uses a separate
table (BookBagItems) to store items individually.
Broker20 version 1.1.0
New and Changed Functionality
- Incorporates support for the CGM protocol.
bin/b/broker20
- CreateAndPopulateCGMTables.txt: contains sql commands used to create the cgm database used by the CgmTC subclass. These tables are created on a dlxs MySQL database.
Purge_CGM_Database: This file is executed from a cron job. It deletes cgm records that are two
hours old or older.
Collmgr version 3.1.0
New and Changed Functionality
- Deleting a released collection or group
deletes the collection or group every where. Added
"hold" functionality
- Added release of a single collection
at a time
- Added some checks so that when a user
reauthenticates after being logged in as admin he
will not go to web pages he should not be accessing.
- When a collection is inserted into
the dlxs database it checks if the collid is in use
by any user. It use to check if it was in use by release,
or the user inserting.
- Added some validatiion check for collid.
Collid for non bib class collections must be of the
form [A-Za-z][A-Za-z0-9_]*.
FindaidClass version 5.0.0
New and Changed Functionality
- Major re-write of Finding Aids middleware making it a full DLXS class.
- Participates in the DLXSClass::FullTextClass object hierarchy.
- Supports EAD 2002 Standard for encoding Finding Aids.
- Configurable via collmgr
XClass version 2.1.0
New and Changed Functionality
- No change in DLXS release 11.
XslFallback version 2.1.0
New and Changed Functionality
- New CGI program supporting fallback of XML templates under XSL stylesheets.
IdResolver version 1.0.0
New and Changed Functionality
- New CGI program that supports the mapping of an ID into a URL for purposes of linking between teh DLXS mideleware classes. Previously Used internally at DLPS and now available to DLXS. The IdResolver CGI is integrated with the MySQL database configuration established in LibGlobals.pm.
DLXS Release 10 - 15 FEB 2003
General Information
DLXS Release 10 is comprised of:
- TextClass version 3.0.0
- BibClass version 2.3.0
- FindingAids version 2.1.0
- ImageClass version 2.5.0
- Broker20 version 1.0.0
- Collmgr version 3.0.0
- XClass version 2.0.0
- Lib version 3.0.0
- mrsid_retrieve version 1.3.1
- tif2web version 1.0.3
- dlxsd version 1.0.0
- XPAT version 5.2.3
Known Problems
The SQL::Statement version 1.005 perl module is not backward compatible with version 0.1021. Version 0.1021 was typical with Perl version 5.6.1 whereas 1.005 is typical of Perl 5.8.0. We recommend you install perl 5.8.0 and SQL::Statement 1.005 or higher. The workaround mentioned below may not be required when SQL::Statement 1.006 becomes available. Because of this the following constraints and workarounds apply.
- collmgr
- Functions normally with either 0.1021 or 1.005
- dbmove
- Functions normally moving CSV to MySQL under either 1.005 or 0.1021
- Incorrectly uppercases column names when moving MySQL to CSV under 1.005. The workaround is to lower case the resulting column names using an ascii editor.
- Fails completely under 0.1021 moving CSV to MySQL or vice versa..
- upgrade_1_2, upgrade_2_3
- Functions normally upgrading a MySQL database under either 1.005 or 0.1021
- Incorrectly uppercases column names when upgrading CSV under 1.005. The workaround is to lower case the resulting column names using an ascii editor.
XPAT version 5.2.3
Lib version 3.0.0
New and Changed Functionality
lib
- ApplicationResult.pm
- Significant enhancements to support TextClass sorting and results inter-filing. Caching mechanism for performance.
- Support ISO date in sorting
- Add id array compression to save space in session
- BookBag.pm
- When removing an item from the bookbag
if it is the last item for a collid, remove the collid
so we wont try to search a bookbag collid list that
has no idnos in it.
- CioFactory.pm
- Fix bug where database was always being
read even if there was a cio already on the session.
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- Changed calls to html template handling
to be in DlpsUtils rather than in each of the apps.
Added to DlpsSession, DlpsUtils and LibGlobals data
to hold a history of URLs to make assertions able
to trace back a user's path to a bad URL. Previous
subroutines like SetOriginalCgi are now SetOriginalCgiHistory
and so on.
- Remove $main::user[name|part] workdir
syntax
- Enhanced fallback for ImageClass using
a new mode "groupcoll" which supports fallback for
the case of a single c= appearing with a g= The fallback
is from coll to group to default group to class. Also
support for "defaultgroupid" in Collection table when
it is added to the database schema. This allows singlecoll
mode 'to fallback form coll to default group to class,
again for ImageClass and probably TextClass.
- CioWrapper.pm
- Added messages for assertions
- CollsInfo.pm
- AddClassObjects now take the requestedCollArr
instead of grabbing it internally so we can add class
objects on the fly for next/prev item links
- Made it a crime to ask for a tco using
an undef collid
- Allow multiple ignoreon hosts
- Added matching and 'all' token for
ignoreon
- Added NOASSERT param to GetClassObjByCollId()
to test whether tco has been added to CIO
- DLXSApp.pm
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- Fix problem in Debug method where DumpEnvVars
called without empty parameter list "()" was shifting
a cgi object into its scope making it produce plain
text
- branches: 1.16.2; Change to move call
to ValidityChecks to individual applications subclasses'
initialize methods.
- Add PrepareAroForCacheKey() to globally
flush cache on key mismatch instead of doing it as
a side-effect in ValidOccurrencesInCache and ComputeCacheState
- Fix XClass app trying to prepare aro
for caching. it is the child's responsibility only.
- DbUtils.pm
- All uses of double-quotes in SELECT
statements were changed to single quotes for compatibility
with future versions of the SQL::Statement perl module.
- use DlpsUtils qw( :DEFAULT ); not use
DlpsUtils;
- Fix of typo in error message.
- DevUtils.pm
- Enhanced AUTHZD_COLL file error message
- DlpsSession.pm
- Fix bug where database was always being
read even if there was a cio already on the session.
- Changed calls to html template handling
to be in DlpsUtils rather than in each of the apps.
Added to DlpsSession, DlpsUtils and LibGlobals data
to hold a history of URLs to make assertions able
to trace back a user's path to a bad URL. Previous
subroutines like SetOriginalCgi are now SetOriginalCgiHistory
and so on.
- use DlpsUtils qw( :DEFAULT ); not use
DlpsUtils;
- Added GetPersistentSessionItemByKeySubkey4()
for caching mechanism in TextClass
- branches: 1.33.2; Clone cgi before
saving it to history array
- DlpsUtils.pm
- Added html CHUNK handling subroutine.
- Modified SingularizePluralizeTerm so
term must match exactly so we can pass in keys likes
'match' and 'matching term'
- Changes related to work in collection/group selection
and consolidation of templates.
- TrimSpaces after removing metachars
in case this removal introduced leading or trailing
spaces
- Added parameter to RemoveTags() to
make it remove entire elements or just the tags
- Added excl to entity filter
- Removed. home.tpl now covers all cases
by redirecting to ets post-login
- added assertion for missing filename
in resolution in GetDefaultFileForCGC(). if page=foobar
the hash lookup for the corresponding filename fails
and we end up resolving to a directory instead of
a file and spew garbage.
- Fix bug in BuildAuthPageContent() which
caused a blank dlpserror page if $LibGlobals::gLoginUrl
was empty (as it would be after a normal dlxs install.
Fix bug in BuildLoginRedirect(). Url passed to the
auth system needed to be URL escaped to fix: escape
the URL string so it will survive URL unescaping by
the auth system. In addition the auth system will
replace ';' by '&' for separators to work around the
meta tag refresh parsing bug present in most browsers
where a meta tag like <META http-equiv="Refresh" content="1;
URL=http://fizzie/text-idx?c=moa;sid=foo"> causes
the sid following the second semicolon to be stripped
- Added new system error message
- Print trace if DEBUG or DLPS_DEV not
just DLPS_DEV
- Added RemoveXPATMetachars() called
from enhanced Filter_NOTEn_NotesForText() to use content
as well as ID to uniquify note.
- Added dump of envvars to assertion
email
- Changed calls to html template handling
to be in DlpsUtils rather than in each of the apps.
Added to DlpsSession, DlpsUtils and LibGlobals data
to hold a history of URLs to make assertions able
to trace back a user's path to a bad URL. Previous
subroutines like SetOriginalCgi are now SetOriginalCgiHistory
and so on.
- added comment to URL History
- Remove hardcoded mail addr left in
accidentally
- Fix logic in GetDefaultFileForCGC().
It needs to be told whether $filename came in as being
explicitly set as tpl= for customization on the url
or was derived from cgi parameters like page, view,
or browse. In the explicit case the fallback is from
collection to group but cannot proceed to class (because
it's custom) whereas in the non-explicit case the
fallback depends on the cross-collection mode i.e.
on whether we're looking for collection, group or
class templates.
- fix SetOriginalCgiHistory() to allow
for no $dso
- Finally get fallback correct for tpl=
parameter. The specified value of the tpl= parameter
is a filename that falls back as a function of xcollmode
(groups colls singlecollection) just like everything
else
- Enhanced fallback for ImageClass using
a new mode "groupcoll" which supports fallback for
the case of a single c= appearing with a g= The fallback
is from coll to group to default group to class. Also
support for "defaultgroupid" in Collection table when
it is added to the database schema. This allows singlecoll
mode 'to fallback form coll to default group to class,
again for ImageClass and probably TextClass.
- Remove '|' from the RemoveXPATMetachars()
subroutine. It's not a metachar and we do not map
it to a space in most all .dd's
- Added semicolon to   of environment
variable dumping routine in DlpsUtils
- Fix case in GetDefaultFileForCGC()
SPECIAL CASE: for resolving tpl=file.tpl (e.g. browse.tpl).
file.tpl must be located in coll, default group
or (unlikely) class space: if $xcollMode is 'colls'
because xc=1 (meaning we came from the cross-collection
interface) but there is only once 'c' (user is navigating
within a single collection) we need to make it look
like we're in single collection mode for the purposes
of resolution in this routine.
- Added $gIdResolver to LibGlobals so
that all classes may call it there. Also, moved the
resolveIdToURL routine from ImageClass to DlpsUtils
so that all can call it there.
- Added "use LWP::Simple" so that call
to IdResolver could be made.
- added q4, q5 and q6 to terms that will
be highlighted
- SingularizePluralizeTerm() handles
zero as the number as well as 1 or greater. If zero,
return plural.
- branches: 1.136.2; Fisheye routines
now ASSERT if $script is not passed in.
- added GenComputeTime
- Needed new routine to get only the
last CGI object from the CgiHistory.
- Fix OELIG => OElig charent
- Changed SingularizePluralizeTerm to
send back originally passed in term, unchanged, if
it is not found in the hash.
- GroupsInfo.pm
- use DlpsUtils qw( :DEFAULT ); not use
DlpsUtils;
- Added ignoreon for groups
- LibGlobals.cfg
- Removed. home.tpl now covers all cases
by redirecting to ets post-login
- Enhanced system error message
- Changed calls to html template handling
to be in DlpsUtils rather than in each of the apps.
Added to DlpsSession, DlpsUtils and LibGlobals data
to hold a history of URLs to make assertions able
to trace back a user's path to a bad URL. Previous
subroutines like SetOriginalCgi are now SetOriginalCgiHistory
and so on.
- branches: 1.23.2; Added $gIdResolver
to LibGlobals so that all classes may call it there.
Also, moved the resolveIdToURL routine from ImageClass
to DlpsUtils so that all can call it there.
- ObjectFactory.pm
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- ProcIns.pm
- Allow the SimpleSubstitution to take
a ref to a string as well as a string to save copying
- Scalar ref accepted as return value
from PI handler method
- QueryFactory.pm
- Allow full Reverse Polis Notation in
the boolean search. So that queries like (a and b)
or (c and d) can now be converted into xpat queries.
Prior to this change only boolean queries like (((a
and b) and c) or d) could be made
- Corrected a problem from previous release
so that boolean searches can be RPN.
- SearchHistory.pm
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- Use ';' instead of '&' in URLs
- No longer remove sort cgi parameter so that different
sorts show up in search history as different searches
easily recovered. Corresponds to change in TextApp::BuildNatLangSearchString
to mention sort used
- XPat.pm
- byte mode implemented
- enhancements to support bytemode in
XPat
- Print trace if DEBUG or DLPS_DEV not
just DLPS_DEV
- use DlpsUtils qw( :DEFAULT ); not use
DlpsUtils;
- added path truncation to GetDataDictName()
method.
- Changed GetRegionSize to use new signature
for GetSimpleResultsFromQuery.
- XPatResult.pm
- enhancements to support bytemode in
XPat
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- Added save/restore for XRO for caching
- branches: 1.10.2; added only one-half
of pset offset to pset result byte offset to keep
KWICs in their regions
- XPatResultSet.pm
- Added a new SSize label type 'hitsinbooleanregionssearch'
- generalized detailhitsinitemsearch
type to work for boolean and simple search hits counts
in a single item
- enhancements to support bytemode in
XPat
- Added GetResultsAsArrayRef() for efficiency
in accessing result in sort key case where the arrays
are large and iterating over the result is too expensive
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- branches: 1.19.2; use DlpsUtils qw(
:DEFAULT ); not use DlpsUtils;
- repositoryNames.pl
- new for repository counting reslist
- new CCSDthesis description
- new uq description
- BookBagItem/BBItemBC.pm
- Since TextClass::_HeaderFilter is called
by BBItemTC::_initialize, and it requires the $cgi
and $dso, they also needed to be sent to the BBItemTC::_initialize
method. Also, added these as parameters in BBItemBC
so that they might be accessed downstream if need
be.
- BookBagItem/BBItemTC.pm
- enhancements to support bytemode in
XPat
- Since TextClass::_HeaderFilter is called
by BBItemTC::_initialize, and it requires the $cgi
and $dso, they also needed to be sent to the BBItemTC::_initialize
method. Also, added these as parameters in BBItemBC
so that they might be accessed downstream if need
be.
- branches: 1.8.2; Filter tags in all
the pieces that come back from _HeaderFilter() not
just source but title, author, availability etc.
- Commit after merge of results and groups
work.
bin/db
- dbmove
- put in some error checking and included
some logic for the PageviewFig table.
- included PageviewFig logic
- dbmove.cfg
- included PageviewFig logic
- upgrade_1_2
- put in a bit more error checking.
- upgrade_2_3
- initial release.
- got rid of the use of userpart, and
move lib version up to 3.0000
Bugs Fixed
Text Class version 3.0.0
New and Changed Functionality
- TextClass
- TextClass has undergone significant re-architecture in order to implement sorting of results by author, title or date and, in cross-collection searches, to inter-file results from all selected collections.
- The results list is now more consistent across encoding levels. The initial results list consists of a bibliographic display per item.
- The user may select a link on the to see detailed search results either as summaries of hits or as key-word-in-context (KWIC).
- Full support for collection groups is now available via a "group select page" allowing the user to narrow their attention to search a group of related collections.
- The cross-collection search page now displays the group (if any) within which the collections to be searched reside, along with the other available groups.
- TextClass default templates have been modularized so that, for example, the search page template is a single file supporting all of the search types via "chunks" of html that can be plugged into the master template. The navbar is also a module. In general, this modularization should reduce the number of files that require modification to effect a site-wide change.
- Pageviewer
- Contone pages can now be displayed as well as bitonal pages.
- Pages can be associated with contone "figures" that appear in them.
When displaying the bitonal page, thumbnails of included figures, if
any, are displayed. Each thumbnail has a link built to ImageClass to
display a larger image, with all associated ImageClass behavior
(panning, zooming, etc.)
- There is a new table in the dlxs database called PageviewFig to hold
information about any figure images, and there is a new field in the
Pageview table to hold information about the bit depth of a page image
(related to whether it is bitonal, contone, etc.)
web/t/text
- accesspolicy.tpl
- new supporting files for umdl texts
- bbagbooleansearchform.chnk
- Modified bookbag search templates.
Collapsed to bbagsearch.tpl and search form chunks.
- bbagemail.tpl
- minor fixes to header.tpl, and bbaglist
and bbagemail to correct labeling of search options.
- bbaglist.tpl
- minor fixes to header.tpl, and bbaglist
and bbagemail to correct labeling of search options.
- bbagproximitysearchform.chnk
- Modified bookbag search templates.
Collapsed to bbagsearch.tpl and search form chunks.
- bbagsearch.tpl
- Modified bookbag search templates.
Collapsed to bbagsearch.tpl and search form chunks.
- bbagsimplesearchform.chnk
- Modified bookbag search templates.
Collapsed to bbagsearch.tpl and search form chunks.
- bib.tpl
- Removal, since these are superseded
by search.tpl and html chunking.
- bibext.tpl
- Removal, since these are superseded
by search.tpl and html chunking.
- bibsearchform.chnk
- Ongoing work with collection/group
selection. Template consolidation using chunks and
only one search page (search.tpl) to handle all "ext"
type pages and search types.
- boolean.tpl
- Removal, since these are superseded
by search.tpl and html chunking.
- booleanbbag.tpl
- Modified bookbag search templates.
Collapsed to bbagsearch.tpl and search form chunks.
So, old bbag search tpls not needed.
- booleanext.tpl
- Removal, since these are superseded
by search.tpl and html chunking.
- booleansearchform.chnk
- Chunking in more generic searchext
form and ongoing groups/collections selection work.
- Ongoing work with collection/group
selection. Template consolidation using chunks and
only one search page (search.tpl) to handle all "ext"
type pages and search types.
- browse_template.tpl
- replaced dynamically built references
to plug.gif with static ones in all tpl files
- browsecolls.tpl
- Initial commit of collection browsing
page.
- Hard paths to graphics files (to avoid
numerous GRAPHICS_PATH PI resolutions).
- updated js code for new menus
- updated search form chunkfiles to include
collection specific field pis. Also added nav header
chunks to header.tpl and reslist.tpl
- browsetabstyles.css
- Creation of NAV_TAB_STYLE_OVERRIDES
PI and supporting code and files.
- header.tpl
- First checkpoint on Branch_1_results_groups
- Removed <?GRAPHICS_PATH> PI for plug.gif
- updated search form chunkfiles to include
collection specific field pis. Also added nav header
chunks to header.tpl and reslist.tpl
- home.tpl
- Initial commit of new splash page to
replace previous "home.tpl".
- changes to search form chunks implement
a change to the search submit button eliminating the
type=image. change to search.js adds a line or to
to the pageinit function that unchecks all the collname
checkboxes if the selected group is "ALLSELECTED",
or the colls by title list.
- index.html
- these files are no longer used, since
the counts of collections and text is dynamically
calculated and the home.tpl file is used for display.
- jsheader.chnk
- Ongoing work with collection/group
selection. Template consolidation using chunks and
only one search page (search.tpl) to handle all "ext"
type pages and search types.
- navheader.chnk
- Ongoing work for group/collection selection.
- Chunking in more generic searchext
form and ongoing groups/collections selection work.
- Ongoing work with collection/group
selection. Template consolidation using chunks and
only one search page (search.tpl) to handle all "ext"
type pages and search types.
- Removed reference to "searching UMDL
Collections" since other information about the collection
or group being searched is already present.
- updated search form chunkfiles to include
collection specific field pis. Also added nav header
chunks to header.tpl and reslist.tpl
- added graphics. updates to css. fixed
form wrap in ww form, and some link problems in navheader.chnk
- navheader now includes bookbag notification
search form chunk files now have fix in layout for
specific restriction elements search tpl fixed now
so that loose table cell end tags don't' hang around
in some circumstances
- fixed affecting netscape display of
standalone search forms.
- many changes to all search and bbagsearch
form chunk files. all bbagsearchform chunk files should
now be consistent with the rest of the search forms.
Also restored search_restrictions PI to search.tpl.
minor fixes to text class.css
- newmaterial.tpl
- new supporting files for umdl texts
- pageviewer.frameset.tpl
- tweaking navheaderchunk and searchform
chunks. Added also navhaeder chunk to pageviewer.nav.
ww search links are included on search forms, but
not yet in the navigation pulldown menu
- pageviewer.js
- removed unnecessary lines from pageviewer.js
- edited the pageviewer.js file so that
the open window function would work minimally.
- pageviewer.nav.tpl
- changed pageview.nav.tpl to fix a target
bug in the nav links. Updated and commented much of
text class.css
- tweaking navheaderchunk and searchform
chunks. Added also navhaeder chunk to pageviewer.nav.
ww search links are included on search forms, but
not yet in the navigation pulldown menu
- added graphics. updates to css. fixed
form wrap in ww form, and some link problems in navheader.chnk
- pageviewer.pagenav.tpl
- tweaking navheaderchunk and searchform
chunks. Added also navhaeder chunk to pageviewer.nav.
ww search links are included on search forms, but
not yet in the navigation pulldown menu
- proximity.tpl
- Removal, since these are superseded
by search.tpl and html chunking.
- proximitybbag.tpl
- Modified bookbag search templates.
Collapsed to bbagsearch.tpl and search form chunks.
So, old bbag search tpls not needed.
- proximityext.tpl
- Removal, since these are superseded
by search.tpl and html chunking.
- proximitysearchform.chnk
- Ongoing work with collection/group
selection. Template consolidation using chunks and
only one search page (search.tpl) to handle all "ext"
type pages and search types.
- additional adjustments to headernav.chnk
--including addition of auth and umdl home links--and
adjustments to all search forms to fix an alignment
problem.
- fixed small bug in search.js pageinit
function, and straightened out some alignment issues
in the search form chunks.
- changes to search form chunks implement
a change to the search submit button eliminating the
type=image. change to search.js adds a line or to
to the pageinit function that unchecks all the collname
checkboxes if the selected group is "ALLSELECTED",
or the colls by title list.
- reslist.tpl
- First checkpoint on Branch_1_results_groups
- Removed <?GRAPHICS_PATH> PI for plug.gif
- updated search form chunkfiles to include
collection specific field pis. Also added nav header
chunks to header.tpl and reslist.tpl
- fix occ=2 for second occurrence of
nav links
- Changed SEARCH_TYPE to SEARCH_TYPE_NAME
- search.js
- Chunking in more generic searchext
form and ongoing groups/collections selection work.
- Ongoing work with collection/group
selection. Template consolidation using chunks and
only one search page (search.tpl) to handle all "ext"
type pages and search types.
- search.tpl
- Ongoing work with collection/group
selection. Template consolidation using chunks and
only one search page (search.tpl) to handle all "ext"
type pages and search types.
- Added PI for hidden variable for search
type within the form, based on the URL's page parameter
(now that all types are using the same template).
- Added PI for hidden variable for REQUESTED_COLLECTIONS
and BOOKBAG, left out of mockup.
- Creation of NAV_TAB_STYLE_OVERRIDES
PI and supporting code and files.
- changes to navigation chunk, search.tpl,
and associated css files to implement the horizontal
navigation menu to all pages
- Added HIDDEN_XG PI.
- added <?HIDDEN_DEBUG>
- searchext.tpl
- Chunking in more generic searchext
form and ongoing groups/collections selection work.
- searchhistory.tpl
- added new styles to text class.css to
handle fonts for l2 pages form the portal home page.
Changed searchhistory.tpl so that it would resemble
other searches
- searchtabstyles.css
- Creation of NAV_TAB_STYLE_OVERRIDES
PI and supporting code and files.
- simple.tpl
- Removal, since these are superseded
by search.tpl and html chunking.
- simplebbag.tpl
- Modified bookbag search templates.
Collapsed to bbagsearch.tpl and search form chunks.
So, old bbag search tpls not needed.
- simpleext.tpl
- Removal, since these are superseded
by search.tpl and html chunking.
- simplesearchform.chnk
- Chunking in more generic searchext
form and ongoing groups/collections selection work.
- updated search form chunkfiles to include
collection specific field pis. Also added nav header
chunks to header.tpl and reslist.tpl
- splash.tpl
- replaced dynamically built references
to plug.gif with static ones in all tpl files
- text.picklist.tpl
- replaced dynamically built references
to plug.gif with static ones in all tpl files
- text.tpl
- additional adjustments to headernav.chnk
--including addition of auth and umdl home links--and
adjustments to all search forms to fix an alignment
problem.
- textclass.css
- added new styles for the collection
browse page,added new styles for results and navigation,
and weeded out a lot of the old style declarations
- Added .indentlevel0 to support inline
summaries following pages in level 1 and 2 material
- Added some additional indent levels
for outline layout (vs. breadcrumb)
- added new styles to textclass.css to
handle fonts for l2 pages form the portal home page.
Changed searchhistory.tpl so that it would resemble
other searches
- textclass.js
- Added a mechanism to popupNotesWindow()
to fork off a new window for note links contained
within the note popup window itself and so on recursively.
Fixes javascript problem in Netscape where clicking
on the second link failed to replace the URL content
of the original popup, hanging instead.
- viewtextnote.tpl
- added graphics. updates to css. fixed
form wrap in ww form, and some link problems in navheader.chnk
bin/t/text
- importpageviewdata.pl
- bug fixes: * check, rework parameters
used to effect directory recursion (File::Find) enhancements:
* add capability to skip directories which contain
a file named ".importpageviewdata.skip"
- bug fixes: * correct typo in output
generated by new directory skipping function
- makepageviewdata.pl
- Initial commit of makepageview.data.pl
cgi/t/text
- DlpsLocalUtils.pm
- Fix 'view entire link, add InMyOwnWOrld
method
- Changed calls to CgiToHtmlTemplate
and such to use DlpsUtils routines.
- use DlpsUtils qw( :DEFAULT ); not use
DlpsUtils;
- Change to move call to ValidityChecks
to TextApp subclass's' initialize method and to group
various functions in the initialize method to allow
further subclassing. Changed calls to CgiToHtmlTemplate
to use the formerly global, now member data version
of the pages handled hash.
- branches: 1.13.2; Fixed ASSERT in DlpsIdResolver()
in call to CgiToHtmlTemplate() where $self was used
instead of the parent app of the tco in question.
- Changed CheckIdMatches to search for
matches in all cases except when the idno has a volume/issue
extension (such as "0001.001").
- Changed IdResolver trap so that it
would use whatever IDNO region is mapped in the specific
collection's map file.
- Fixed PVApp.pm initialize to properly
call AddClassObjects, so that the 'parentapp' key
was defined, it in turn being needed in DlpsLocalUtils's
DlpsResolver trap. Also fixed textclass.cfg's pages
handled for pageviewer.
- PVApp.pm
- removed GenComputeTime() now in DlpsUtils
- Fix 'view entire link, add InMyOwnWOrld
method
- Added digit to regexp on dev directory
name (for branching in development work) in routine
to clean path names when in remote mode.
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- Added handling of JS_PATH PI to frameset
handling.
- Changed calls to CgiToHtmlTemplate
and such to use DlpsUtils routines.
- Remove userpath, userpart old workdir
model
- Remove userpath, userpart old workdir
model
- Change to move call to ValidityChecks
to TextApp subclass's' initialize method and to group
various functions in the initialize method to allow
further subclassing. Changed calls to CgiToHtmlTemplate
to use the formerly global, now member data version
of the pages handled hash.
- Changes in initialize to segregate
setting of member data (offshoot of changes in 'pageshandled'
hash).
- add validity checks to initialize
- Changes to pageviewer to allow for
contone figures within bitonal pages and contone pages.
Note: this is in conjunction with the addition of the
dlxs database's PageviewFig table and the bpp field
in the Pageview table.
- Changes for figure navigation.
- PageView.cfg
- Changes to pageviewer to allow for
contone figures within bitonal pages and contone pages.
Note: this is in conjunction with the addition of the
dlxs database's PageviewFig table and the bpp field
in the Pageview table.
- PageView.pm
- Change to move call to ValidityChecks
to TextApp subclass's' initialize method and to group
various functions in the initialize method to allow
further subclassing. Changed calls to CgiToHtmlTemplate
to use the formerly global, now member data version
of the pages handled hash.
- Changes to pageviewer to allow for
contone figures within bitonal pages and contone pages.
Note: this is in conjunction with the addition of the
dlxs database's PageviewFig table and the bpp field
in the Pageview table.
- Fixed typo in tif2gif handler.
- Added debugging to daemon call routine.
- TextApp.pm
- Use byte offsets for speed
- Use QueryFactory for all id searches
and begin boolean kwic search work.
- Added boolean kwic and slicing thereof
- Next/previous item links
- Ongoing changes to search page handling.
Added HIDDEN_XG PI and building of hidden "c" and
building of collection list with checkboxes based
on number of "c" params in URL.
- Fix broken view entire text link
- Work enhancements to support bytemode
in XPat
- Added node/idno parameter to BuildMainEntry
and BuildSerialEntry for overrides that need to build
links
- Remove citerestrict if cite is empty;remove
submit.x, submit.y
- Added subsorting by title for date
and author
- Fixed "view text" links to go to first
page pageviewer of iel 1 and first page of article
in iel 2
- Added item-level search test routine,
added removal of sort menu when over threshold
- Added sortflds collmgr field processing
- Reset start=1 if sort order changes.
Fix cross class sort menu and search code if all collections
do no share all of the sort types.
- Fix type=bib searches and make the
naming of the bib search (Bibliography) consistent.
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- More error reporting for XPat errors
- ASSERT that 'idno' has a 'cc' in URL
- Changed calls to CgiToHtmlTemplate
and such to use DlpsUtils routines.
- Remove userpath, userpart old workdir
model
- TextClass.pm
- Added $dso param to some methods
- typo
- Changes for ALLSELECTED=1 and prev/next
item links
- Fix 'view entire link, add InMyOwnWOrld
method
- Added parameters to StripMainHeader()
and cosmetic byte mode changes
- Added node/idno parameter to BuildMainEntry
and BuildSerialEntry for overrides that need to build
links
- fix StripDivhead param order
- Added parameter to RemoveTags() to
make it remove entire elements or just the tags
- Added subsorting by title for date
and author
- Sort quoted titles correctly
- use correct "main" (article)
region to query for hits summary in serialissue encodingtype
(moajrnl)
- Added debugging. Fixed sorting for
the case where there are missing dates or authors.
We have to do 2 queries: one for the dates and one
for the titles in headers without dates and merge
the results in an rset. Cant be done in one query
because there are 2 regions (date and title) but the
pr.region.... command only lets us spec one of them.
The same for author too. Removed ALLSELECTED from
the CGI object before constructing the cache key --
ALLSELECTED is analogous to the cc -- it should not
appear.
- Fixed "view text" links to go to first
page pageviewer of iel 1 and first page of article
in iel 2
- New routines BuildLinkToFirstIdnoPage(
$cgi, $dso, $xpat, $idno, $iel ); and BuildLinkToFirstNodePage(
$cgi, $dso, $xpat, $idno, $node, $iel ); replacing
ones that were iel specific
- Added params to FigureFilter()
- VIEW_ENTIRE_TEXT_LINK no includes entire
html content for complete over-ride if desired
- Added some additional indent levels
for outline layout (vs. breadcrumb) and implemented
detailviewayout in db
- Added sortflds collmgr field processing
- Added ftr to PB filter so the "all
pages' can list the page type if available as well
as the pages
- Changed 'view text' to 'view first
page' for lel < 3
- Added PI handler for "add to bookbag"
link in header.tpl
- Fix type=bib searches and make the
naming of the bib search (Bibliography) consistent.
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- Enhance <PTR> note handling allowing
reference to pointer targets in different texts within
the same collection. For ecf.
- Enhanced Filter_NOTEn_NotesForText()
to use content as well as ID to uniquify note.
- More work on Filter_NOTEn_NotesForText
allowing for note content having been previously highlighted
by TextFilter()
- Remove userpath, userpart old workdir
model
- When Refining a search within an item
after already having refined once, the search searches
across that item. It use to search across the entire
collection after Refining more than once. When Refining
the search within a bookbag after already having refined
once, the search searches across the contents of
the bookbag. It use to search across the entire collection
after Refining more than once.
- TextClassUtils.pm
- Added PIs and methods to grab total
collection and total group numbers.
- Work for Group/Collection selection:
handling of browsecolls (groups) page.
- Creation of NAV_TAB_STYLE_OVERRIDES
PI and supporting code and files.
- Ongoing changes to search page handling.
Added HIDDEN_XG PI and building of hidden "c" and
building of collection list with checkboxes based
on number of "c" params in URL.
- Changed WW_NAV to look only and collection
number and type rather than xcollmode.
- Changed PI handler for TITLE to call
HOME_LINK handler
- Fixed up a couple of link building
routines that need to set ALLSELECTED=1 and moved
a tco access based on cc to the case where there'll
actually be a cc.
- Added tpl=home.tpl in "collection home"
links in collection list of cross-collection mode.
- In the building of a "word index" link
in the nav bar's search pull down, added a test to
see if in xcoll mode. So, even if there is only one
c (that does have a word wheel index), no link to
wordwheel will be built if there is a "xc" parameter.
- In the building of a "word index" link
in the nav bar's search pull down, changed the test
to use the xcollmode saved on the $dso (which in turn
meant passing the $dso to the IncludeExcludeNavLinks
routine.
- Changes to building of home link to
use fallback for finding home.tpl.
- Added xg parameter to links on groups
(and "all collections" ) when in xg mode, so that
the left frame (with aforementioned links) continues
to be built.
- Added logic to force intersection of
values in region pulldown in search forms to 'full
text' for simple and proximity and 'works' for other
search types. Javascript in search.js will need to
have the same logic (although it intersects values
from the arrays built from the CGI grabbing colldb
values).
- Added IsItemLevelRegion()
- Fixed searchhistory template PI handling
(NAV_TAB_STYLE_OVERRIDES and SEARCH_TYPE_TEXT).
- Fixed inclusion of search restrictions
in search pages.
- Fix type=bib searches and make the
naming of the bib search (Bibliography) consistent.
- Removed the last of the gender/genre/language
selection code and the javascript arrays build on
their basis
- Fix search within, add alt to img tag
for graphic title. There were diffs from main trunk
- added <?HIDDEN_DEBUG>
- Changed code in IncludeExcludeNavLinks
to properly determine whether to include a wordwheel
search link in the nav bar's Search popup menu.
- Fix HIDDEN_VARS PI for bbagemail.tpl
so that the c= parameter is among those added as hidden
vars so that the cgi does not acquire all c= in the
database and select the cross-collection template
instead of the ACLS bbaglist.tpl
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- Changed calls to CgiToHtmlTemplate
and such to use DlpsUtils routines.
- Remove userpath, userpart old workdir
model
- MakeTextOrGraphicLink: added required
alt tag to img tag
- Added PI's to display number of collections
on line and number of text in the home.tpl template.
- MakeTextOrGraphicLink: pass in an extra
variable, $alt for the img alt tag. ProcessGraphicsPathPI
ProcessJavascriptPathPI changed to handle fall back
problems caused by groups.
- added $piParamHashRef to BuildPullDown
method used by PI.
- WWApp.pm
- removed GenComputeTime() now in DlpsUtils
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- Changed calls to CgiToHtmlTemplate
and such to use DlpsUtils routines.
- Remove $main::user[name|part] workdir
syntax
- branches: 1.11.2; Fix pageviewer bug
cause by using wrong hashes for CgiToHtmlTemplate()
- Add cc to quicklink so HandleGeneralProcIns
-. IncludeExcludeRestrictions can get a tco from the
cc (even though it does not need to process any pis
in the given page
- pageviewer-idx
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- Remove userpath, userpart old workdir
model
- Changes to pageviewer to allow for
contone figures within bitonal pages and contone pages.
Note: this is in conjunction with the addition of the
dlxs database's PageviewFig table and the bpp field
in the Pageview table.
- text-idx
- Bump version to 4.0000, use LibVersion
3.0
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- textclass.cfg
- Rearranged template hash.
- Work for Group/Collection selection:
handling of browsecolls (groups) page.
- Added some tpl file names to template
hash.
- Ongoing work for collection/group selection.
- Added several items to the SingularizePluralizeTerm
hash
- Added a few singular/plural pairs
- Added sort message global
- Modified bookbag search templates.
Collapsed to bbagsearch.tpl and search form chunks.
- Added sortflds collmgr field processing
- remove userpart/userpath
- Fixed Refine Search.
- replaced 'text' with $TCGlobals::gClassName
- ww2-idx
- Removed qw( :standard :html3 escape
unescape escapeHTML ) from all "use CGI" pragmas.
8% performance improvement.
- Remove $main::user[name|part] workdir
syntax
- Remove userpath, userpart old workdir
model
- TextClass/SampleTC.pm
- use DlpsUtils qw( :DEFAULT ); not use
DlpsUtils;
misc/t/text/maps
- ALL maps
- changes for results display work (mainly
ID mappings)
- sampletc.map
- removed mapping of operators that started
with Capital, and added some more operator mappings.
Bugs Fixed
Bib Class version 2.3.0
New and Changed Functionality
web/b/bib
- bibclass.css
- added a style declaration for P to
assure that Ps and LIs would render the same font
family.
- added class "normal"
cgi/b/bib
- BibApp.pm
- removed GenComputeTimes() now in DlpsUtils
- AddClassObjects now take the requestedCollArr
instead of grabbing it internally so pass this arra
in now.
- Added $cgi parameter to call to DlpsUtils::GetDefaultFileForCGC.
- removed qw( :standard :html3 escape
unescape escapeHTML ) from "use CGI" pragmas. 8% performance
improvement.
- Changes integrating the DlpsUtils fallback
routines into BibClass removing the BibClass versions
of GetDefaultFileForCGC() and CgiToHtmlTemplate().
In conjunction with: Enhanced fallback for ImageClass
using a new mode "groupcoll" which supports fallback
for the case of a single c= appearing with a g= The
fallback is from coll to group to default group to
class. Also support for "defaultgroupid" in Collection
table when it is added to the database schema. This
allows singlecoll mode 'to fallback form coll to default
group to class, again for imageclass and probably
textclass.
- remove userpart/userpath
- Changed order of input parameters to
ClumpsToSlices.
- Fix asserion error when navigating
via fisheye. Clumps array was gobbling up the lat
parameter in ClumpsToSlices() leaving $mainsearchCount
undefined.
- added new parameter for display when
collections from a group are listed.
- Fixed revise search bug, and added
routine to handle other pages.
- Change to move call to ValidityChecks
to BibApp subclass's' initialize method and to group
various functions in the initialize method to allow
further subclassing (e.g., template pages hash) and
better ordering (e.g., ValidityChecks needing to first
check member data and then later possibly changing
the CGI object for downstream QueryFactory functions).
Changed calls to CgiToHtmlTemplate to use the formerly
global, now member data version of the pages handled
hash.
- Changed order of method calls within
intitialize.
- branches: 1.50.2; Added a new member
data that is used by the GIS subclass as a label in
the collection list for the number of datasets in
a collection, and whether the dataset is available
throught the UM Spatial Data Server.
- BibClass.pm
- removed qw( :standard :html3 escape
unescape escapeHTML ) from "use CGI" pragmas. 8% performance
improvement.
- fixed email and download filter so
that Kat's parameters are not displayed.
- removed bib identification tags from
being displayed in the long, and short display.
- Change to move call to ValidityChecks
to BibApp subclass's' initialize method and to group
various functions in the initialize method to allow
further subclassing (e.g., template pages hash) and
better ordering (e.g., ValidityChecks needing to first
check member data and then later possibly changing
the CGI object for downstream QueryFactory functions).
Changed calls to CgiToHtmlTemplate to use the formerly
global, now member data version of the pages handled
hash.
- changed order of elements
- BibClassUtils.pm
- Changed order of input parameters to
ClumpsToSlices.
- Fix asserion error when navigating
via fisheye. Clumps array was gobbling up the lat
parameter in ClumpsToSlices() leaving $mainsearchCount
undefined.
- change a couple of hard coded apmersands
that delimit cgi name-value pairs to semicolons
- bib-idx
- removed qw( :standard :html3 escape
unescape escapeHTML ) from "use CGI" pragmas. 8% performance
improvement.
- remove userpart/userpath
- Change to move call to ValidityChecks
to BibApp subclass's' initialize method and to group
various functions in the initialize method to allow
further subclassing (e.g., template pages hash) and
better ordering (e.g., ValidityChecks needing to first
check member data and then later possibly changing
the CGI object for downstream QueryFactory functions).
Changed calls to CgiToHtmlTemplate to use the formerly
global, now member data version of the pages handled
hash.
- Spaces added to make more clear in
notes.
- use LibVersion 3.0
- bibclass.cfg
- Changes integrating the DlpsUtils fallback
routines into BibClass removing the BibClass versions
of GetDefaultFileForCGC() and CgiToHtmlTemplate().
In conjunction with: Enhanced fallback for ImageClass
using a new mode "groupcoll" which supports fallback
for the case of a single c= appearing with a g= The
fallback is from coll to group to default group to
class. Also support for "defaultgroupid" in Collection
table when it is added to the database schema. This
allows singlecoll mode 'to fallback form coll to default
group to class, again for imageclass and probably
textclass.
- remove userpart/userpath
- Fix asserion error when navigating
via fisheye. Clumps array was gobbling up the lat
parameter in ClumpsToSlices() leaving $mainsearchCount
undefined.
- Fixed revise search bug, and added
routine to handle other pages.
misc/b/bib/maps
- bib.map
- Added >article main heading: region
KW to fix times bug where region was listed in the
database but the region was not mapped
Bugs Fixed
Image Class version 2.5.0
New and Changed Functionality
web/i/image
- templates and style sheets
-
Significant changes were made to certain processing instructions. There is backward compatibility, however use of the PATH PI and the corresponding ImageClassUtils::pathByType subroutine is deprecated. A combination of the following PIs is now preferred: FBFILE (builds a link to a file in the web space using standard fallback mechanisms to determine the path), JAVASCRIPTURL, and CGIROOT. Class level stylesheet files are now hardcoded paths relative to the web server docroot. Previously the paths were generated with a PI and fallback, which isn't actually appropriate since the class level style sheet file is always linked as a default. Also, an instance of the INSERTTEXT PI was added to the entry.tpl file. It is configured to insert into the template the contents of a file called "entryinfo.tpl". This is to facilitate the display of collection specific information in the entry template, such as a blanket copyright statement.
-
The "onload" statement was removed from the BODY tag. It contained a javascript preload command that was attempting to load image files that do not exist and are not necessary. It also caused a lot of unnecessary server error log entries. The onload statement should be removed from all copies of the entry.tpl template.
-
Templates were modified to fix a problem Netscape 4x had with the way the style sheets were being loaded.
-
entry.tpl was modified to move the header into each div. this allows the current div view (full image, description, etc. ) to be "sticky" while navigating to next/prev entries. it also allows other aspects of the view to be "sticky", for example the image size viewed. other things are intentionally not "sticky", such as the zoom state.
-
Minor aesthetic changes were made to the slice summary and fisheye. The extra bold tags were removed from around the summary/fisheye at the bottom of the results pages. The css now takes care of making the text bold. Also, a fisheye style was added in order to facilitate customization of the fisheye.
-
reslist, thumbfull, and thumbnail templates were modified simply to set the alignment of the middle column of header 1 to "center". This should keep the "new search" link from colliding with the banner text as it has been.
- js/imageclass.js
- imageclass.js function "hide" was removed.
The function "show" can now handle both show and hide.
The "show" function was updated to support ns6 and
ie6 in addition to ie4, ie5, and ns4. imageclass.js
function "MM_showHideLayers" was rewritten to support
ns6 and ie6 in addition to ie4, ie5, and ns4. Miscellaneous
unused javascript functions were removed completely.
The sniffBrowser function was added.
cgi/i/image
- Image Class was checked for compatability
with SGML that does and does not have new lines. Previously
the middleware expected the SGML to have all newlines
removed. Now it will work either way. One benefit
of this is a reduction of storage space needed for
prep files.
- The Image Class dependency on the group
"all" has been removed. It is no longer necessary
to have a group "all" and it is fine for a collection
to not be any group whatsoever.
- Image Class now uses Lib fallback routines
for choosing templates, graphics, css, javascript
files. This, along with similar work done to Text
Class and Bib Class brings consistency to the way
the classes handle fallback. It also introduces fallback
from the group to the class level, which is a significant
and good change for Image Class. There is also support
now for default groups to be specified per collection
in the collection database (though at this moment
the new field has not been added to the collection
database.) Standardization of fallback led to global
variable house cleaning in Image Class. ImageClassUtils::setupPaths
has been eliminated, taking with it the globals hashes
previously used for holding essential paths and urls.
A few other global variables were consolidated or
simply dropped if not needed.
- Features for turning a field in to
a linked URL were added to ICLocalUtils::insertField.
New PI parameters "baseurl" and "urltext" are now
accepted.
- The Image Class index.tpl page can
now have a search form on it, using relevant PIs,
if desired.
- Image Class had been calling ciofactory
twice in order to make sure that collids for items
in a bookbag/portfolio were properly resolved and
marked as requested. It accounted for the fact that
sometimes bookbag items were coming from a collection
that hadn't yet been requested/selected for searching.
As it turns out, calling ciofactory a second time
wasn't necessary. It works fine to just remove all
c parameters from the cgi object, which is the same
as requesting all collections. To make a long story
short, the code that Image Class used to cull collids
out of bookbag item ids and to call ciofactory a second
time has been removed with no apparent side affects.
- A bug was fixed in ImageApp.pm where
the string sId-placeholder was failing to get converted
to sId-actualsessionid. This caused Portfolios to
not work properly in the session-based model.
- An "addPI" command was strategically
placed in ImageApp.pm so that the bbdel.tpl loads
cascading style sheets properly. A global switch was
added to Image Class to turn on and off PUBLIC portfolio
functionality specifically. It is configurable in
imageclass.cfg.
-
Modifications were made to the parsing of istruct ids which turned out to be unreliable in rare situations.
- Sorting of results
was changed so that the default/unsorted order
is data occurrence order.Results had been getting
sorted by ID if nothing else. Sorting is now a wee
bit faster as well.
-
Next/Prev entry navigation in
the book bag had to be removed do to data retrieveal
and sorting complications. It didn't work right before,
so this is not a great loss.
- A global sort threshhold was added to Image Class.
- Changes were made to support "sticky"
entry views while navigating using next/prev.
- Another minor change was made so that a message
is left and an assertion error avoided if a portfolio
item is not found.
- ImageClassUtils::entryDivDisplayButtons
was changed to suppress display of the "view buttons"
(for switching between "full image", "description",
and "other views") in the situation where there is
only 1 view configured for the collection in CollMgr.
- ImageClassUtils.pm was changed to support
use of relative rather than absolute image file references
in the img/index directory. ImageClassUtils.pm is
backward compatible with previously created index
directories.
- A bug was fixed in pageBanner subroutine
that was causing failure of graphic banners.
- The window.opener options were changed
for entry (full record) views to include menubar,
location window functionality. Without menubar, it
was hard to print. Without location, it was hard to
determine the URL for the page.
- Image Class now utilizes DLXSDATAROOT.
- Certain characters are not allowed
Image Class field names. makeCollectionmaps-pm now
filters out such characters and prints a message saying
it did so.
- AUTHZD_COLL_sample
- The AUTHZD_COLL file is no longer inluded in the DLXS distribution. AUTHZD_COLL_sample is included instead and can easily be copied to AUTHZD_COLL for use.
Broker20 version 1.0.0
New and Changed Functionality
web/b/broker20
Broker has been replaced by Broker20.
- cgmerrormsg.tpl
- initial release.
- removed service from attribute
- errormsg.tpl, getrecord.tpl, identify.tpl, listidentifiers.tpl, listmetadataformats.tpl, listrecords.tpl, listsets.tpl
- Initial Release.
- changed to be 2.0 compliant
bin/b/broker20
- Purge_broker20_Log
- initiali relase. this is run as a cron
job on dlps4.
- added a line for testing.
- cvstag.broker20
- Initial Release
- remove reference to map files.
- quickfix
- script for Kat to clean up some files
on quick.
cgi/b/broker20
- PopulateDienstDB.txt
- Initial Release.
- added new verbs and the fact that now
the cgi is called broker20
- changes to disseminate.
- changed authority information.
- changed the def of Search.
- D update to reflect new list of verbs
we are going to implement.
- broker20
- Initial Release.
- changed more occurences of broker to
broker20.
- corrected use of DLXSROOT, and change
database connection back to Dienst.
- the fields can now come in in many
differnt ways, rather than field1, field2, etx :
- added resumption token checking.
- added gif and tif file dissemination.
- changed GIF to IMAGE
- changed location of giftocvt files.
- got rid off userpath and userpart.
- change dc mapping for contributor as
directed by Kat.
- implemented error checking for search
verb.
- changed map file from text.map to umhistmath.map.
- removed attributes of tags before creating
dc response. This way I did not miss tags that had
attributes in them.
- fixed bug in the where the attributes
where being deleted.
- D D removed code that changed unicode
values to &
- fixed ampersand showing up issue.
- contains Display verb.
- made modifications to support RPN for
the CGM protocol. Put in error checking so that if
there is bad metadata, the conversion from bib data
to dc data will indicate it.
- changed it so that a log file is created
to keep track of errors during the conversion from
bib class to dc. Also had to change the code after
a change to the library. the xro object now returns
a ref, it use to return the actual data.
- moved lib version to 3.0000
- corrected the display to show sort
requested.
- broker20.cfg
- Initial Release.
- changed more occurences of broker to
broker20.
- corrected use of DLXSROOT, and change
database connection back to Dienst.
- added mimetype global variable.
- added gif and tif file dissemination.
- got rid off userpath and userpart.
- changed it so that a log file is created
to keep track of errors during the conversion from
bib class to dc. Also had to change the code after
a change to the library. the xro object now returns
a ref, it use to return the actual data.
Collmgr version 3.0.0
New and Changed Functionality
- The Collection database is now at version 3.0. DLXS
Release 9 incorporated version 2.0 of the Collection database. DLXS
Release 10 includes a database utility called upgrade_2_3 that will
upgrade an existing version 2.0 database to version 3.0 bringing it up
to date with DLXS Release 10. Database schema changes, obsolete
fields and new fields are documented at http://docs.,dlxs.org
web/c/collmgr
- addfields.tpl
- added functionality for selecting the
class for which the field is deleted from.
- collmgr-fields.html
- Added new fields encodingtype, detailviewtype
detailviewlayout and deleted obsolete fields for release
10 version 3 database
- Added matching and 'all' token for
ignoreon
- Better handling of default sort order
and sort configuration
- added info about localhost and host
and sortflds
- deletefields.tpl
- added functionality for selecting the
class for which the field is deleted from.
cgi/c/collmgr
- collmgr
- Added test to ensure REMOTE_USER is
set.
- changed the use of " to ' in the routine
GetDatabaseInfo, since older versions of SQL::Statement
do not support it.
- Remove $main::user[name|part] workdir
syntax
- when the user dlxsadm updates a collection
or group, and another user has that collect or group
checked out, he/she will get a AGED status placed
on that collection.
- removed call to DlpsUtils::CleanCgiPamams.
This was removing the | symbol needed for when adding
a multiple type. Added some more error checking for
when adding a field. Will not allow fields that are
just numeric to be added to the database. Changed
the logout print command. The old one did not work
in test env.
- added logic to specify what class a
field that is being added should belong to.
- updated the LibVersion that collmgr
uses to 3.0000
- collmgr.cfg
- Remove $main::user[name|part] workdir
syntax
- updated the database version to 3.0
Finding Aids version 2.1.0
cgi/f/findaid
- findaid-idx
- Changes to accomodate changed interface
to XPatResultSet and DlpsUtils::BuildFisheyeString()
- Added call to DlpsUtils::SetOriginalCgi
so that ASSERTs can report the URL that caused the
ASSERT.
- Remove $main::user[name|part] workdir
syntax
- Call SetOriginalCgiHistory() remove
SetOriginalCgi()
- KillXPatProcess() was undefined because
it referred to $gXpat instead of $gXPat. DLXSDATAROOT
should not have been used to find map files only DLXSROOT
- Fix xpat syntax error (missing 'byte'
param) and lack of mapping for 'allscopecontent'
- Fix of Fisheye string and its calls
to XpatResultSet.
- use LibVersion 3.0
- Fixed call to XPatResultSet->GetNextLabeledResult
so that it gets values in an array context, now that
it returns an array.
- findaid-idx.vars.cfg
- Changes to accomodate changed interface
to XPatResultSet and DlpsUtils::BuildFisheyeString()
- Changed port to 620 and changed xpat
executable path.
- Remove $main::user[name|part] workdir
syntax
- branches: 1.32.2; KillXPatProcess()
was undefined because it referred to $gXpat instead
of $gXPat. DLXSDATAROOT should not have been used
to find map files only DLXSROOT
- Fixes to code after merge of results
and groups work (mostly XPatResultSet) along with
changes in the cfg file (port, host).
- Fix of Fisheye string and its calls
to XpatResultSet.
XClass version 2.0.0
web/x/xclass
- reslist.tpl
- removed font tag
- XCLASS: Fix "get results" PI to popup
new window
- simple.tpl
- Added collection list per class
cgi/x/xclass
- XClassApp.pm
- And new code for enhanced application
results removed GenComputeTimes() now in DlpsUtils
- removed qw( :standard :html3 escape
unescape escapeHTML ) from "use CGI" pragmas. 8% performance
improvement.
- Added collection list per class and
updated list of authzd colls
- Move validity checks call to _initialize
- xclass-idx
- And new code for enhanced application
results removed GenComputeTimes() now in DlpsUtils
- removed qw( :standard :html3 escape
unescape escapeHTML ) from "use CGI" pragmas. 8% performance
improvement.
- branches: 1.4.2; remove userpart/userpath
- xclass.cfg
- Added collection list per class and
updated list of authzd colls
- More hardcoding for goto links and
to make imageclass links use dlps3
- fix script name and url for each class
- fix script name and url for each class
- fix goto link for image class
- Fixed link buiding for correct host
for results
- Fix XClass app trying to prepare aro
for caching. it is the child's responsibility only.
DLXS Release 9 - 8 JUL 2002
General Information
DLXS Release 9 is comprised of:
- TextClass version 2.5.10
- BibClass version 2.2.7
- FindingAids version 2.0.4
- ImageClass version 2.3.3
- Broker version 1.2.0
- Collmgr version 1.1.0
- XClass version 1.0.0
- Lib version 2.4.15
- mrsid_retrieve version 1.3.1
- tif2web version 1.0.1
- dlxsd version 1.0.0
- XPAT version 5.2.3
Significant functional changes and enhancements introduced in Release 9:
- The Collection database is now at version 2.0. DLXS Release 8 incorporated version 1.0 of the Collection database. DLXS Release 9 includes a database utility called upgrade_1_2 that will upgrade an existing version 1.0 database to version 2.0 bringing it up to date with DLXS Release 9.
- TextClass
- Citation restrictions have been integrated into the search forms.
- Improved Level 2 results display by making results slicing occur at DIV1.
- Pagviewer improvements:
- Page turning makes only a single CGI call for the page image frame.
- PDF data is delivered in specifiable "chunks".
- Cross-frame status updating via Javascript.
- tif2web is used exclusively to support the available image formats (gif, pdf) for results
- Image Class has had numerous bug fixes and minor enhancements.
- All remote communication occurs via a single daemon program that uses a verb file for flexible configuration.
- BibClass now has a per-collection object for filtering and enhanced functionality rather than separate filter functions.
- A prototype cross-class application (XClass) and supporting Lib modules have been developed.
XPAT version 5.2.3
Lib version 2.4.15
New and Changed Functionality
- ApplicationResult.pm
- Initial definition of an cross-application result object.
- BookBag.cfg
- Created customizable emails from bookbag.
- Added Assertion reporting via email under envvar ASSERTION_EMAIL
- BookBag.pm
- Mods for BibClass subclass to allow more flexible bookbag filtering
- Changed download file name to something more generic.
- Created customizable emails from bookbag.
- Added Assertion reporting via email under envvar ASSERTION_EMAIL
- CioFactory.pm
- Backward support for DLPS_DEV == 1 under new workspace model.
- Added GetCioByClass().
- Make connection to database ONCE and disconnect in DLXSApp::AppFinishUp() and change interface to CollsInfo and GroupsInfo objects new() methods to accept a database handle
- Methods to support integration of citation information as a restriction to searching.
- Added comment re: IGNORE_REAUTH to prevent authorization infinite loop.
- CollsInfo.pm
- Added GetCioByClass().
- Make connection to database ONCE and disconnect in DLXSApp::AppFinishUp() and change interface to CollsInfo and GroupsInfo objects new() methods to accept a database handle
- DLXSApp.pm
- Empty session mods
- Added SetName()
- Moved GetAppKeyInfo SetAppKeyInfo up to DLXSApp
- Added Added ModeIsXClass() and access member data via GetAppKeyInfo and handle Debug() via no assert for xclass case.
- Make connection to database ONCE and disconnect in DLXSApp::AppFinishUp() and change interface to CollsInfo and GroupsInfo objects new() methods to accept a database handle
- DbUtils.pm
- Make connection to database ONCE and disconnect in DLXSApp::AppFinishUp() and change interface to CollsInfo and GroupsInfo objects new() methods to accept a database handle
- DlpsSession.cfg
- Fix typos in session lock dir and email address in config blocks
- DlpsSession.pm
- Empty session mods
- Debug message and errorBail when calling session hash tying.
- Added GetCioByClass().
- Make connection to database ONCE and disconnect in DLXSApp::AppFinishUp() and change interface to CollsInfo and GroupsInfo objects new() methods to accept a database handle
- DlpsUtils.pm
- Access $gERRORS from LibGlobals
- Methods to support integration of citation information as a restriction to searching.
- Addition of the CheckForAnyQValues routine.
- Added XPAT_LOGGING envvar to track xpat local pid
- Added Assertion reporting via email under envvar ASSERTION_EMAIL making var dynamic for To: address
- Filter '<' in DumpEnvVars()
- Added, for LEL2, call to $rset->GetTotalFocusLevels.
- Added "hitTerm" parameter to allow the term used for "hits" to be customized. If the parameter is omitted "hits" is used by default.
- GroupsInfo.pm
- Added GetCioByClass().
- Make connection to database ONCE and disconnect in DLXSApp::AppFinishUp() and change interface to CollsInfo and GroupsInfo objects new() methods to accept a database handle
- LibGlobals.cfg
- Added 'PAGE_NOT_FOUND' as qq{Cannot find html template page: }, to a global error message hash for Lib modules
- Fix debug logic for homesite link builder to stay with the virtual host that got you to the page originally e.g. pagliere.dev not fizzie. Deleted $gDevelopmentHost from LibGlobals
- Added Assertion reporting via email under envvar ASSERTION_EMAIL
- LibVersion.pm
- 2.0900
- Make connection to database ONCE and disconnect in DLXSApp::AppFinishUp() and change interface to CollsInfo and GroupsInfo objects new() methods to accept a database handle
- ObjectFactory.pm
- Implement CreateObject() for NameBibApp to avoid XCOLL/single issues from a cgi other than bib-idx
- Added GetCioByClass()
- ProcIns.pm
- Changed RE to parse the PI parameters into a hash to allow parameter values to contain spaces for better readability on suggestion of Sakaama Heesakkers.
- WW.pm
- Added DLXSDATAROOT handling of dd path
- Methods to support integration of citation information as a restriction to searching.
- XPat.pm
- Fix debug statement 'pat' changed to 'patexec'
- More debug stmts.
- SIGPIPE handler to trap exec errors in local forked child running XPAT for us.
- Added debug=rawresults
- Added XPAT_LOGGING envvar to track xpat local pid added reg CGI check and $0
- Use of new XPAT verb in the dlxsd.
- XPatResultSet.pm
- Methods to support integration of citation information as a restriction to searching.
- BookBagItem/BBItemBC.pm
- Mods for BibClass subclass to allow more flexible bookbag filtering
- BookBagItem/BBItemTC.pm
- Mods for BibClass subclass to allow more flexible bookbag filtering
- dbmove
- Pageview table not moved if target is CSV. Message showing progress of table population.
- Changed release switch to accomodate release and workshop releases.
- dbmove.cfg
- Changed release switch to accomodate release and workshop release.
- Added text class collections and groups for release and workshop.
Bugs Fixed
- 344: Allow AddPI to refer to a method as well as a subroutine
- 351: DlpsUtils::CleanCgiParameters deletes params with value 0
- 895: MySQL-based sessions broken for BC and IC
Text Class version 2.5.10
New and Changed Functionality
cgi/t/text
- PVApp.pm
- Added GetCioByClass()
- Removed GetMainFrameSrc method. Now initial call to pageviewer, as well as subsequent page navigation calls, use the same code. Previously, the initial call created a link in the main html frame to an image, while subsequent calls wrapped an img tag in an html template. Now they all use the html template to build the main frame.
- Changes to support integration of citation information as a restriction to searching.
- PageView.cfg
- Added remoteGif key in %gFormatToFormatHandlers
- PageView.pm
- Changes to support integration of citation information as a restriction to searching.
- TextApp.pm
- Added DSO param to bookbag methods
- Remove parameter for GetRequestedCollIds() GetCollids()
- Added _reinitialize()
- Error message in Assert in HeaderViewSearchesAndFilter
- Changes $self={}; to %$self={};
- Fixed bug in ShowMaxDepthRegions.
- Added GetCioByClass()
- Add xclass functionality and application result object handling
- Moved xclass exit outside of loop over collections so we don't jump out after just one
- Changes to support integration of citation information as a restriction to searching.
- Addition of the CheckForAnyQValues in ValidityChecks.
- Fixed bug in bib searches (handling rgn and rgn1, etc.) by adding a bit to ValidityChecks to set the rgn for type=boolean;subtype=bib.
- TextClass.pm
- Add "browseable" db fiels and remove HandlerExists() and ProcessCollSpecificPI() methods from several subclasses.
- Added an ASSERT to SubmitSearchSet to handle the previously silent failing when an empty (but non-error) result was returned from XPat.
- Moved ASSERT from SubmitSearchSet to XPatResultSet::InitIterator.
- Added DLXSDATAROOT functionality
- Fixed bug in ShowMaxDepthRegions.
- Added HandleHeaderFilter() and GetParentApp()
- Add xclass functionality and application result object handling
- Fix womv ptr notes problem. The target region was not being qualified by the idno when searching for the parent region (to get the head). Being too general the target selected the wrong div from which to extract the head for the note Popup window title.
- Changes to support integration of citation information as a restriction to searching.
- Assert in FindXPatContainingIdno re xpat object.
- Fix font highlighting
- Fixed bug in bib searches (handling rgn and rgn1, etc.) by adding a bit to ValidityChecks to set the rgn for type=boolean;subtype=bib.
- Added MAINHEADER to the synthetic regions accounted for in TextClass::_PagesWithHitsFilter.
- TextClassUtils.pm
- Remove userpath functionality from sub GetCollFilePath
- Alphabetic collection name sorting
- Remove parameter for GetRequestedCollIds() GetCollids()
- Added GetCioByClass()
- Added GID PI
- moved $gDevelopmentHost to LibGlobals and text for DLPS_DEV==uniqname
- Changes to support integration of citation information as a restriction to searching. 2002/06/05 --> Added support for orglink and orgtext PIs.
- Changed ORG_INFO related PIs to do the following: First, if the search is cross-collection, the contents of the INCLUDE_ PIs are ripped out. Second, there is only one PI (ORG_INFO) which takes the parameter "type" (either "link" or "text"), much like the CONTACT PI.
- Fix debug logic for homesite link builder to stay with the virtual host that got you to the page originally e.g. pagliere.dev not fizzie. Deleted $gDevelopmentHost from LibGlobals
- pageviewer-idx
- Added GetCioByClass()
- Add ApplicationClass attribute for application object creation
- Now require LibGlobals 2.0800
- text-idx
- Added GetCioByClass()
- Add ApplicationClass attribute for application object creation
- Now require LibGlobals 2.0800
- textclass.cfg
- moved gDevelopmentHost to LibGlobals
- Changes to support integration of citation information as a restriction to searching.
- ww2-idx
- Add ApplicationClass attribute for application object creation
- Now require LibGlobals 2.0800
web/t/text
- bib.tpl
- boolean.tpl
- header.tpl
- proximity.tpl
- reslist.tpl
- searchhistory.tpl
- text.tpl
- textclass.css
- ww-full.tpl
- ww-start.tpl
- Changes to templates to support integration of citation information as a restriction to searching.
- bibext.tpl
- Changed REGION_SEARCH_SELECT to REGION1_SEARCH_SELECT.
- browse_template.tpl
- Added browse template template
- search.js
- Changed clearSelectOptions function
- simple.tpl
- Changes to templates to support integration of citation information as a restriction to searching.
- First use of the ORG_INFO PI.
- graphics/pq.jpg
- graphics/pq2.jpg
- graphics/scale2.gif
- graphics/smnavline.gif
- graphics/smnavarrow.gif
- graphics/smnavplug-end.gif
- graphics/smnavplug.gif
- graphics/smnavplug1.gif
- graphics files for search revisions
Bugs Fixed
- 167: Add Help Text
- 183: Use DBI for access to all database-like data
- 224: wordwheel indexing find "aeque" when query is for "que"
- 230: first scoped head is a garbage kwic
- 241: Extend TextClass functionality: level 2 and mixed levels support
- 243: TextClass help.html missing
- 250: The bookbag indicator should not appear in the main window
- 253: Update code to handle latest version of Apache::Session
- 256: TextClass needs alternative to Adobe distill utility
- 263: Move divdepths and need for notes and entities filtering to colldb
- 266: Browse page builder has eccentricities
- 270: Highlighting of hits in SGML
- 271: idnos do not expand when given a 7 digit NOTIS ID, pages cannot be vie
- 293: Collection wordwheel Makefiles need to be changed to not use MFS
- 308: home links in header blow away session
- 309: home link in pageviewer loads in frame, not over frameset
- 357: TextClassUtils subroutines should be TextClass methods
- 363: Fix uses of FindHostName() and 'homesite', 'home' colldb for failover
- 365: Selecting a letter also does a search on the letter in Wordwheel
- 389: Need to implement a simple browse
- 405: Pageviewer defaults to seq=1 should be seq=00000001
- 409: Implement a more flexible mechanism for collection-specific look and feel
- 447: results page for searches in header fields have empty "hits in doc" li
- 476: colldb in TC should not have hard-coded DLXSROOT
- 478: Port ImageClass and TextClass to MySQL maintaining CSV support
- 484: Index search takes user to page not found
- 485: Broken links in MoA browse pages
- 494: pageviewer rewrite
- 568: Header.tpl reallignment
- 579: Pageviewer should be able to handle IDNO plus N value
- 602: MoA journal browse pages can't be repurposed
- 646: No filtering of bibliographic tags in full text
- 854: DirectoryIndex redirect incompatible with existing nav PIs
Bib Class version 2.2.7
New and Changed Functionality
cgi/b/bib
- BibApp.pm
- Changes implementing the BibClass subclass + no record numbering if only one record
- Implemented "view long format in new window" link
- Implementation of _initializeLocal() for NameBibApp
- fix HIDDED_GID html var substitution fixing #819
- Created routine to initialization for book bag
- Added header to _reinitialize routine.
- Moved GetAppKeyInfo SetAppKeyInfo up to DLXSApp
- Added GetCioByClass() and CollsFIlter)(in BibClass.pm
- Added handling for class-based index.tpl
- Added homesite support for collection link in the global.tpl page
- Fixed date range check for pub year.
- Fix debug logic for homesite link builder to stay with the virtual host that got you to the page originally e.g. pagliere.dev not fizzie. Deleted $gDevelopmentHost from LibGlobals
- Help page link was not beening created correctly.
- Made email button a PI
- Added call to RemoveClassObject. Before history was not working without this call.
- BibClass.pm
- Initial
- Added DLXSDATAROOT functionality
- Added DualDisplayModeSupport()
- Added GetCioByClass() and CollsFIlter)(in BibClass.pm
- Make GetPersistentSessionItemByKey('cio' ) GetCioByClass()
- Now use DbUtils::GetCellByKey_DBI() top get tectclass collection name for bibclass filtering via live database handle saved on session
- Added eval block around call to $collname = DbUtils::GetCellByKey_DBI to catch thrown exception if fetchrow_arrayref fails.
- Use of DlpsUtils::ResolveDlxsDataRoot function.
- bib-idx
- Changes implementing the BibClass subclass + no record numbering if only one record
- Added GetCioByClass() and CollsFIlter)(in BibClass.pm
- bibclass.cfg
- Changes implementing the BibClass subclass + no record numbering if only one record
- Implemented "view long format in new window" link
- Bib Name Resolver group bibperm in new global
- Created routine for initialization for book bag
- Added homesite support for collection link in the global.tpl page
- Added label for emailing from bookbag, since this was made into a PI.
- specific.functions.cfg
- default.functions.cfg
- bib.map
- Added mappings for COLL,FMT,LANG,TYPE
web/b/bib
- index.tpl
- Added handling for class-based index.tpl
- window.js
- Replaced bbagWindow.js
- Changed retrieving message to be more generic.
Bugs Fixed
- 295: map files not being read
- 773: support long display of a single record from a list
- 782: BibClass requires a per class subclass structure.
- 819: CGI loses g= parameter after search
- 829: changes to Long Display
- 920: text change from "Bibliographic" to "Metadata"
- 921: request for less space between file names on Filepicker page
- 945: BibClass app needs method to read Collections table
Image Class version 2.3.3
New and Changed Functionality
General
- The fisheye PI was modified to include vertical bar characters at the beginning and end. These will appear between the fisheye and "<< previous items" and between the fisheye and "next items >>" on the TOP and BOTTOM of the results pages. Therefore customized templates, including collection specific templates, should have the vertical bars around the fisheye PI removed. This solves the problem of bars being displayed even when there are not enough results to warrant a fisheye. The few remaining chunks of "interface english" left in the code were shifted to the %gWords has h in imageclass.cfg. This change affected ImageClassUtils.pm as well.
- Image file dimensions for the view tab graphics were shifted to a global variable to accomodate size changes.
- ImageApp.pm and ImageClassUtils.pm were modified to make thumbnail images link to the full record when displayed in the record div on the "images with full record" results page.
cgi/i/image
- Collectionmaps-last.pm
- XPAT queries were modified to remove requirement for the ID attribute of the COLL element to have a value beginning with "MC".
- Collectionmaps.pm
- XPAT queries were modified to remove requirement for the ID attribute of the COLL element to have a value beginning with "MC".
- ImageApp.pm
- Changed handling of "-dev" collids in the AUTHZD_COLL and PUBLIC_COLL environment variables so that when DLPS_DEV is true, it is OK if the environment variables do not have "-dev" on the collids.
- minor tweak to auth "-dev" tweak in ForceAuth routine.
- Added Get[CG]ioByClass() for cross class access to CIO and GIO from DSO. Alos added 'ApplicationClass' attribute for CioFactory->new() calls to identify Class for CIO/GIO operations.
- Support for template override via the tpl cgi parameter was added.
- Add xclass functionality and application result object handling
- ImageClassUtils.pm
- Fixed minor layout problem with "next/prev item"
- The "groups" PI parameter was added to GROUPSPICK PI to allow the list of groups included for selection to be limited to the list of group ids in the parameter. The default of no groups parameter is provided is all groups.
- When no thumbnail image is availble, pleasant text is displayed rather than ugly gray placeholder images. In some cases, nothing is displayed (e.g., entry/record view).
- Added DLXSDATAROOT functionality
- A change was made to hide the panning tool when panning is not an option (e.g., when the full image is being viewed).
- Added Get[CG]ioByClass() for cross class access to CIO and GIO from DSO. Alos added 'ApplicationClass' attribute for CioFactory->new() calls to identify Class for CIO/GIO operations.
- Additional field display options were added to the RecordFilt subroutine. A field may have multiple urls (separated by whitespace) in it, and all will be turned in to links if the "url" option is on. "urltarget" (allows target to be specified when "url" option is on).
- "urltarget," "delim," and "keylinks," field display options were added to RecordFilt. the "url" option was modified to support multiple urls in a single field.
- Collection Home links were added to collection picking routines.
- Fixed minor bug that stopped group "all" from being excluded from the group selection list when the pi specifies it. the "next" was inside the debug scope.
- A validity check was added for the rgnN parameter to make sure that for each qN parameter, there is an rgnN parameter. When there is not, term highlighting does not work properly.
- A small HTML error was corrected in the RecordFilt subroutine, shifting a "nowrap" attribute from the TR to TD tag in two places.
- getimage-idx
- Added Get[CG]ioByClass() for cross class access to CIO and GIO from DSO. Alos added 'ApplicationClass' attribute for CioFactory->new() calls to identify Class for CIO/GIO operations.
- Now require LibGlobals 2.0800
- getthumbnail-idx
- Added Get[CG]ioByClass() for cross class access to CIO and GIO from DSO. Alos added 'ApplicationClass' attribute for CioFactory->new() calls to identify Class for CIO/GIO operations.
- Now require LibGlobals 2.0800
- Fixed a bug where getthumbnail-idx was failing with an assertion error because the %attributes hash was lacking information about which class was being used.
- image-idx
- Added Get[CG]ioByClass() for cross class access to CIO and GIO from DSO. Alos added 'ApplicationClass' attribute for CioFactory->new() calls to identify Class for CIO/GIO operations.
- Now require LibGlobals 2.0800
- imageclass.cfg
- changed image host for dev
- Add xclass functionality: $gImageClassCgiRoot
- makeCollectionmaps-idx
- XPAT queries were modified to remove requirement for the ID attribute of the COLL element to have a value beginning with "MC".
- Added Get[CG]ioByClass() for cross class access to CIO and GIO from DSO. Alos added 'ApplicationClass' attribute for CioFactory->new() calls to identify Class for CIO/GIO operations.
- Now require LibGlobals 2.0800
web/i/image
- entry.tpl
- fixed minor layout problem with "next/prev item"
Bugs Fixed
- 345 v2: Collection selection
- 347 v2: New image controls and quality parameters
- 348 v2: Personal collection management tools
- 349 v2: Login interface
- 350 v2: Results with full record
- 388 v2: Independent sid serving
- 397 v2: Migrate to multiregion
- 410 v2: Handling of help email
- 411 v2: Make sure that null q2 with no q1 still works
- 413 v2: Thumbfull results divs not display right in netscape agitator
- 415 v2: Sids displayed in open portfolio window
- 417 v2: Imageclassutils::insertCollName should use colldb for collname
- 418 v2: Imageclassutils::thumbrecordfilt should use colldb briefcollname
- 421 v2: Meta categs other than dublin core (search forms and sort menu)
- 422 v2: Remove old access control mechanism
- 426 v2: Temp cgi dir must be configurable
- 446 v2: Id resolver functionality
- 454 v2: Add search term highlighting in results
- 456 v2: Add slideshow to entry view, and cgi memory for the last view
- 459 v2: Css/template cleanup
- 460 v2: Move interface english from cgi to configurable place
- 462 v2: Makecollectionmaps needs updating
- 463 v2: Sorting broken
- 464 v2: Support for version 3 browsers
- 465 v2: Better feedback for zero results searches
- 486 v2: Need to use web path in groups db
- 512 v2: Check urls for backward compatability
- 515 v2: Should image size defaults be in colldb?
- 518 v2: Implement new collection info template
- 520 v2: Include thumb image in record description table in full record resu
- 521 v2: Create template for no results page
- 522 v2: Makecolls can't move new .pm in to place
- 534 v2: Minimal description needed on page with full image
- 536 v2: Delete portfolio button missing in netscape
- 538 v2: Portfolio addition interface lacks radio button
- 551 v2: No horizontal scroll bar in entry view
- 554 v2: Image structures need some flexibility
- 563 v2: Xcoll reslist results view needs collname in records
- 564 v2: Slideshow results view needs redirect from cgi for backward compat
- 565 v2: Record display after sorting displays wrong record.
- 566 v2: Contact colldb collname change
- 570 v2: Should we add group descriptions to groups.tpl?
- 586 v2: Add colldb config of sid nlevel range
- 657 v2: Search form clear button doesn't work for revised searches
- 985 Need CSSURL PI handler for tips.tpl
Broker version 1.2.0
New and Changed Functionality
cgi/b/broker
- broker
- Chnaged it so that Dienst verbs work against the text collections rather than bib.
- Remove group from set list in ListSets verb.
- For the GetRecord verb, once a record is caught you loop out, before we would get all the records, so you could not have two collections with the same id.
- Corrected rank search.
- Change onlink to umelectr.
- Fixed so that full bib and full text work now.
- Changed the call to new cio and new gio to comply with lib changes.
- broker.cfg
- Added code to support text search for Dienst verbs.
- Removed extra / in file name.
Collmgr version 1.1.0
New and Changed Functionality
In release 9 Collmgr expects to see a version 2.0 DLXS database. This is either a new sample database as delivered with Release 9 or a version 1.0 database compatible with Release 8 and upgraded to version 2.0 by the upgrade_1_2 utility.
cgi/c/collmgr
- collmgr
- Add collmgr login link to logout good-bye page. Fiz it's partial html
- Added debugging for CSV_XS and DBI
web/c/collmgr
- collmgr-fields.html
- Added browseable field to the list
- Updated information for the subclassmodule field
Finding Aids version 2.0.4
- No significant code changes from Release 8. Finding Aids now comes with a sample data set found in obj/s/samplefa and idx/s/samplefa and preparatory scripts in prep/s/samplefa.
XClass version 1.0.0
- This is the first release of XClass. The current implementation of XClass is a prototype cross-class search application which sens a simple word or phrase query to each of TextClass and ImageClass and displays a simple result detailing the number of hits in each class and provides a link for the user to go to a given class and explore the result in more detail. XClass receives and ApplicationResult object from each class containing the result of the query. It is anticipated that this prototype will develop in functionality in subsequent releases.
DLXS Release 8 - 22 Mar 2002
General Information
This is an interim release of DLXS middleware.
DLXS Release 8 is comprised of TextClass version 2.5.0, BibClass version
2.1.6, FindingAids version 2.0.3, ImageClass version 2.3.1, Broker version 1.1.2, Collmgr version 1.1.0, mrsid_retrieve version 1.3.1, tif2web version 1.0.0, dlxsd version 1.0.0 and XPAT version 5.2.3. In particular, dlxsd (the remote daemon), mrsid_retrieve and tif2web are first-time deliverables in this release.
Release 8 introduces a new architecture incorporating an Application Object which
encapsulates the mainline code from a given class of middleware (text-idx, image-idx, bib-idx) and abstracts it into a Perl class that can be instantiated and manipulated as an object. The main program is reduced to just a few lines. The Application Object's class can be subclassed to change functionality in a manner similar to the subclasses of the TextClass collection object base class. In addition, a single CGI program can instantiate multiple application objects (from different middleware classes) and combine their functionality to produce "cross-class" applications. We expect to demonstrate such functionality in an upcoming release.
Release 8 has a new top-level directory structure "misc/{db,c/class/maps}" that replaces obj/c/class/lib/{db,maps}.
XPAT version 5.2.3
Lib version 2.4.7
New and Changed Functionality
- BookBag.cfg
- Install functions + change for $gReleaseUser to dlxsadm
- CioFactory.pm
- Lib changes supporting arbitrary databases.
- Install functions + change for $gReleaseUser to dlxsadm
- Do not redirect ot an nonexistend URL
during reauth if the installed middleware was configured
without a login URL such as at a site without an auth
system
- added debugging for database user name
- changed USERID to REMOTE_USER
- A problem in the Reauthenticate routine
was corrected. In situations where reauthentication
was necessary, the cgi ended up redirecting to itself
rather than to the login screen. This resulted in
an endless loop that timed out before too long.
- CollsInfo.pm
- Lib changes supporting arbitrary databases.
- changes for subclass directories
- DLXSApp.pm
- cdrom version number variable added
- rename $cgi->Dump() to $cgi->as_string()
an alias for Dump. Dump is causing repeated problems
not being recognized due to autoloading and exporT
AS "Dump" instead of "dump" I guess.
- DbUtils.pm
- added debugging for DBI_Connect
- DevUtils.pm
- get collections from DEV_COLL and AUTHZD_COLL
only when in development
- DlpsSession.cfg, DlpsSession.pm
- Install functions + change for $gReleaseUser
to dlxsadm
- Added "empty" as an option to the new
method as well as a method to simply attach a hash
reference to an empty DlpsSession object's persistent
data.
- DlpsUtils.pm
- Installation instrumentation changes
- Fix HighlightHit() setlocale logic
to be optional
- Allow 'host' to be 'localhost' in SetLocalOrRemoteMode()
giving a local connection.
- Remove quotes and regexp metachars
in CleanCgiParameters() and in pat50TruncationHandler()
- Added "force" to CGI call in BuildPullDown
so that "default" value would be the selected option.
- changed USERID to REMOTE_USER
- changes for subclass directories, Integrate ObjectFactory
- GroupsInfo.pm
- Lib changes supporting arbitrary databases
- LibGlobals.cfg
- new connect string for CSV = qq{DBI:CSV:f_dir=$CSV_filedir;binary=0;csv_sep_char=\t;csv_eol=\n;csv_quote_char=;
- Install functions + change for $gReleaseUser to dlxsadm
- login url is query_null for install.
- assign MySQL_adm_username directly to gReleaseUser
- ProcIns.pm
- Fixed ProcIns ProcessPIs method typo from previous change (eliminating &`, etc.)
- Change to better handle regular expression in ProcessPIs.
- QueryFactory.pm
- Remove quotes and regexp metachars in CleanCgiParameters() and in pat50TruncationHandler()
- XPat.pm
- Added better debug msg for xpat error return string <error></>
Bugs Fixed
- 130: Investigate and Implement multi-page PDFs
- 301: installation script for DLXS
- 344: Allow AddPI to refer to a method as well as a subroutine
- 351: DlpsUtils::CleanCgiParameters deletes params with value 0
- 477: Architectural change to support an "Application Object"
- 483: Word Index page gets funcky when narrowed
- 493: Add daemon code to CVS, middleware tree, and release process
- 508: Modify DLXS session functionality to support central repository
Text Class version 2.5.0
New and Changed Functionality
bin/t/text
- TextClass subclass modules have moved to cgi/t/text/TextClass
- Pageviewer
- Much work done in pageviewer: Use of
c42pdf for tif to pdf conversion. Use of newer version
of tif2gif. Syntax in command parameters for new xpatviewd
daemon using "verbs" (that in xpat-5.2.4) JavaScript
in page navigation frame to not always resubmit entire
frameset and its multiple cgi calls. "Chunking" of
pdfs, handling of "ready made pdfs" Minor typos in
CmeTC. Minor typos in TextClass and proper ordering
of two parameters in the FilterLel3and4... method.
- DlpsLocalUtils.pm
- Changed gHtmlTemplates to be fully
qualified with TCGlobals package name to fix bug with
checking of idno multiple matches.
- PVApp.pm
- Add DLXSROOT to baseObjDir in ServePageForIdno
- test/u/uniqname/gifcvtdir not needed
on remote machines
- New subroutine CreatePageViewObject()
to allow subclassing of the PageView object (pvo)
- Change to CreateMainFrameSrc to properly
handle text view (pageviewer runs targeted to _top,
which in turn calls text-idx in main frame).
- Fixed handling of gif image for text
view in method for GOTO_GIF PI handling.
- Fixed ValidityChecks so that incoming
cc is used if there is one.
- PVApp, WWApp, text-idx ww2-idx pageviewer-idx
uses new path syntax from DlpsUtils
- Integrate ObjectFactory
- PageView.cfg
- Install functions + change for $gReleaseUser
to dlxsadm
- Separate password for PageView so different
database type can be configured at install time e.g.
CSV for collection data abd MySQL for PageView table.
- Chnage all references in TextClassUtils
of the genre db field to singular.
- Changes to accommodate tif2web and
better syntax for xpatviewd daemon.
- PageView.pm
- FindHostName changes to Find_HTTP_HostName
- Change in maximum number for pdf chunking.
- Separate password for PageView so different
database type can be configured at install time e.g.
CSV for collection data abd MySQL for PageView table.
- Call to create destination directory
for local tif2pdf.
- remove superfluous require PageView.cfg
- importpageviewdata.pl
- New in Release 8
- General utility for copying page-level
metadata stored in legacy pageview.dat files into the
database store used by Text Class
- TextApp.pm
- Changed gTextClassCgi to gTextClassCgiRoot
in CheckIdMatches.
- handle tcumodule subclasses of TextClassUtils
object
- FindHostName call instead Find_HTTP_HostName
- Install functions + change for $gReleaseUser
to dlxsadm
- Install functions + change for $gReleaseUser
to dlxsadm
- Fixed GetItemEncodingLevel to ASSERT
if idno is not defined and changed calls to it to
supply an idno, gotten elsewhere; e.g., from a divhead
that is being filtered in a reslist. The bug was in
the case of searches that had no idno in the CGI object;
i.e., a general search.
- Integrate ObjectFactory
- TextClass.pm
- Lib changes supporting arbitrary databases
- Added $gRankFilePath and read 'rankfile'
path frorm db. FIxes broken moa sorting.
- Change firstpublished to firstpublishedstart
firstpublishedend and firstpublishedinc
- Type in call to GetItemEncodingLevel.
- TextClassUtils.pm
- Links to homesite do not use userpath
in development.
- Chnage all references in TextClassUtils
of the genre db field to singular.
- Added userpath to GetCollFilePath method.
- WWApp.pm
- ValidityChecks in WWApp to add cc.
- Fix missing sid on quicklink found
by Sakaama
- Integrate ObjectFactory
Integrate ObjectFactory
- pageviewer-idx
- Addition of CioFactory in pageviewer-idx and ww2-idx.
- Lib changes supporting arbitrary databases.
- changed #!/l/local/bin/perl to #!../../../bin/symlinks/perl
to facilitate installation
- Installation instrumentation changes
- New subroutine CreatePVApp() to allow
subclassing
- Much work done in pageviewer: Use of
c42pdf for tif to pdf conversion. Use of newer version
of tif2gif. Syntax in command parameters for new xpatviewd
daemon using "verbs" (that in xpat-5.2.4) JavaScript
in page navigation frame to not always resubmit entire
frameset and its multiple cgi calls. "Chunking" of
pdfs, handling of "ready made pdfs" Minor typos in
CmeTC. Minor typos in TextClass and proper ordering
of two parameters in the FilterLel3and4... method.
- PVApp, WWApp, text-idx ww2-idx pageviewer-idx
uses new path syntax from DlpsUtils
- Integrate ObjectFactory
- text-idx
- Lib changes supporting arbitrary databases.
- changed #!/l/local/bin/perl to #!../../../bin/symlinks/perl to facilitate installation
- handle appmodule subclasses of TextApp
object
- PVApp, WWApp, text-idx ww2-idx pageviewer-idx
uses new path syntax from DlpsUtils
- Integrate ObjectFactory
- textclass.cfg
- Links to homesite do not use userpath
in development. Added $gDevelopmentHost to TCGlobals
package (textclass.cfg)
- obj -> misc directory structure change
- Added $gRankFilePath
- Install functions + change for $gReleaseUser to dlxsadm
- ww2-idx
- Addition of CioFactory in pageviewer-idx and ww2-idx. Lib changes supporting arbitrary databases.
changed #!/l/local/bin/perl to #!../../../bin/symlinks/perl to facilitate installation.
Installation instrumentation changes. Integrate ObjectFactory
web/t/text
- bibext.tpl
- Missing <input type=prox,citation,boolean
in all extended forms>
- booleanext.tpl
- Missing <input type=prox,citation,boolean
in all extended forms>
- header.tpl
- minor changes to the css file for nav
colors, and removed footer nav from header.tpl
- pageviewer.frameset.tpl,pageviewer.nav.tpl,pageviewer.pagenav.tpl
- Change of template for page navigation
in pageviewer. Extra JavaScript to handle the updating
of frames, rather than the re-submission of the entire
frameset and its cgi's, if full re-submission is not
necessary. Pdf page chunking also now incorporated. Changed orientation of frameset to
horizontal
- proximityext.tpl
- Missing <input type=prox,citation,boolean
in all extended forms>
- search.js
- Making sure that the "genre" javascript
array and genre pulldown are built with the singular
genre and not plural (part of a coll db column name
change back to singular).
- textclass.css
- minor changes to the css file for nav
colors, and removed footer nav from header.tpl
Fixed Bugs
Bib Class version 2.1.6
New and Changed Functionality
- BibApp.pm
- Lib changes supporting arbitrary databases.
- removed locale == 'c' and now handle
appmodule subclasses of BibApp object
- Fixed tpl parameter handling so searches
can use custom pages as wel as just when we are serving
a page
- Change FindHostName() to Find_HTTP_HostName() for remote connect handling
- Install functions + change for $gReleaseUser to dlxsadm
- Long display is now a separete html page for fgdc data.
- bib-idx
- fix app object creation for single
class mode
- handle
appmodule subclasses of BibApp object. Integrate ObjectFactory
- BibApp uses new path syntax from DlpsUtils
- bibclass.cfg
- Install functions + change for $gReleaseUser
to dlxsadm
- default.functions.cfg
- fixed <W> problems in short and long
filters
Image Class version 2.3.1
New and Changed Functionality
- Added support for CollMgr (collection manager).
- Modified to use LibGlobals.pm.
- Changed perl hash bangs and MrSID retrieve path to reference symlinks in /bin/symlink.
- Rearranged code for compliance as DLXS application object. This included moving globals to the ICGlobals name space.
- Added cgi parameter adjustment for situations where there is a cc but no c parameter. c is set to equal cc.
- Modified to work with ObjectFactory.
- Corrected the problem where an attempt was made to connect to the BookBagDB even if $gBookBagToggle was set to "off".
- Changed to Find_HTTP_Host for proper support of localhost in collmgr. Fixed bug in MySQL_username.
- Modified makeCollectionmaps-idx so that it uses only collids from collmgr rows that are appropriate to the situation (collmgr-release, production, or userid)
- Modified middleware to support automated installation.
- All uses of the USERID environment variable were changed to REMOTE_USER since USERID has been depricated.
- Corrections and enhancements were made to the contextual instructions in %gViewInstruct and %gWords of imageclass.cfg.
- Added support for AUTHZD_COLL file for command link collection authorization.
- Added auto-support of g=all for getthumbnail-idx which was failing without it.
- Corrected bug where image would fail to display if session was new. It worked when using an old session because the group parameter would get picked up from the session.
- If mrsid_retrieve is not found, Sidget2 module now reports this as a debug message. It does not bail, because there are some situations where it is OK that mrsid_retrieve is not available. getimage-idx now uses group "all" if it is not a cross collection search. This corrects a problem where an inappropropriate group was being used when a collection specific search was initiated from a non-all group selection page.
- Corrected the problem where the cross collection search form was not displaying a collection's searchable fields in the case where a single collection was selected and the dfltsrchflds collmgr entry was "default".
- Links to getthumbnail-idx were getting built without a session id. This is now corrected.
- Fixed problem where fallback was not working for "viewtabs" graphics in the sense that the middleware was not checking for the presense of collection specific files.
- Corrected a problem where bbentry.tpl and entry.tpl templates lacked quote marks around an attribute value for a PI. In bbentry, this caused the graphics for panning and zooming to not display properly.
Fixed Bugs
- 345 v2 collection selection
- 347 v2 new image controls and quality parameters
- 348 v2 personal collection management tools
- 349 v2 login interface
- 350 v2 results with full record
- 388 v2 independent sid serving
- 396 v2: problem with quotes in alt tags for images
- 397 v2: migrate to multiregion
- 410 v2: handling of help email
- 411 v2: make sure that null q2 with no q1 still works
- 412 v2: migrate to sgml without line breaks
- 413 v2: thumbfull results divs not display right in netscape agitator
- 415 v2: sids displayed in open portfolio window
- 417 v2: ImageClassUtils::insertCollName should use colldb for collname
- 418 v2: ImageClassUtils::thumbrecordfilt should use colldb briefcollname
- 421 v2: meta categs other than dublin core (search forms and sort menu)
- 422 v2: remove old access control mechanism
- 426 v2: temp cgi dir must be configurable
- 446 v2: id resolver functionality
- 454 v2: add search term highlighting in results
- 456 v2: add slideshow to entry view, and cgi memory for the last view
- 459 v2: css/template cleanup
- 460 v2: move interface english from cgi to configurable place
- 462 v2: makeCollectionmaps needs updating
- 463 v2: sorting broken
- 464 v2: support for version 3 browsers
- 465 v2: better feedback for zero results searches
- 486 v2:need to use web path in groups db
- 490 v2: hide field display based on value (IMLS)
- 512 v2: check urls for backward compatability
- 514 v2: related views not displaying in ie os x, at least
- 515 v2: should image size defaults be in colldb?
- 518 v2:implement new collection info template
- 520 v2:Include thumb image in record description table in full record resu
- 521 v2:create template for no results page
- 522 v2: makeColls can't move new .pm in to place
- 532 v2: unnecessary step in choosing a collection ?
- 533 v2: unnecessary steps in choosing a collection (?)
- 534 v2: minimal description needed on page with full image
- 535 v2: "i" buttons not intuitive for searching
- 536 v2: delete portfolio button missing in netscape
- 537 v2: delete portfolio button missing in netscape
- 538 v2: portfolio addition interface lacks radio button
- 551 v2: no horizontal scroll bar in entry view
- 554 v2: image structures need some flexibility
- 563 v2: xcoll reslist results view needs collname in records
- 564 v2: slideshow results view needs redirect from cgi for backward compat
- 565 v2: record display after sorting displays wrong record.
- 566 v2: contact colldb collname change
- 570 v2: should we add group descriptions to groups.tpl?
- 580 v.2: APIS 'descriptive info' links could be explained more fully.
- 586 v2: add colldb config of sid nlevel range
- 657 v2: search form clear button doesn't work for revised searches
- 679 IMLS: Correct header display when using "select groups" link to return
- 681 IMLS: independent selection of display fields for each view
- 682 IMLS: display collection db name for each view
- 687 IMLS: bug in access point drop-down menu
- 732 collection names should be links in group list
- 739 is "images with full record" an appropriate designation
Known Problems
- Image Class does not work properly when using MySQL for the session database. CSV is therefore preferred. Since the session database is configured in Lib (i.e., globally for all of DLXS), CSV must be used for all Classes if Image Class is to be used. The installer will ask, "Select the session datastore type," which should be answered "CSV" if Image Class is to be used. The configuration can be changed post-install by editing the value of $gSessDatabaseSelector in /DLXSROOT/lib/DlpsSession.cfg.
- The Makefiles for building Image Class XPAT indexes allocate 384 MB to
the xpatbld process. If the memory allocation fails, the allocation
should be lowered using the following guideline:
Memory allocation for xpatbld (-m 384m) should be no more than 3/4
physical memory. And, there is no need for it to be more than twice
thesize of the .sgm file.
Finding Aids version 2.0.1
Broker version 1.1.2
- This release of broker uses the bib collections maintained by Collmgr, rather than a copy of these collections.
- Sets are created based on groups that have the OAI parameter set to Y or y. Sets are also composed of the specific collections that make up these groups.
- Added installation parameters to make Broker easier to setup.
- Complete Latin-1 Unicode support was added, and a couple of other characters.
Collmgr version 1.0.0
- This is the initial release of Collmgr.
- Collmgr is responsible for maintaining collection and group information for the three DLXS classes. It interface to either a MySQL database or a CSV database, and maintains collection/group data there.
- Collmgr works kind of like a configuration management system, where users login and check out collections/groups, make changes to them, test these changes and then checkin their changes.
- Collmgr can also perform specific administrative functions, like adding and deleting collection/group fields to the database, and releasing the checked in collections/groups to production.
Finding Aids version 2.0.3
- No significant changes from Release 7
DLXS Release 7 - 9 JAN 2002
General Information
This is an interim release of DLXS middleware intended to distribute Image
Class version 2.0.0, which is a complete rewrite of the class.
DLXS Release 6 is comprised of TextClass version 2.3.0, BibClass version
2.1.0, FindingAids version 2.0.1, ImageClass version 2.0.0, Broker version 1.1.0
and XPAT version 5.2.3.
XPAT version 5.2.3
Text Class version 2.3.0
Bib Class version 2.1.0
Image Class version 2.0.0
New and Changed Functionality
Image Class was rewritten to improve performance and to make better use of
DLXS Lib, colldb, and groups. To the extent possible, backward compatability
for cgi parameters was maintained.
Several key enhancements have been made:
- Interface redesign
- Results sorting
- Portfolios (a.k.a., personal collections)
- Greater use of common DLXS libraries
- Support for more image file formats and sizes
- Support for remote image serving (images may be served from a different
machine than the middleware and xpat indexes)
- Collection specific XPAT indexes
- Results caching for faster navigation in a result set
- Support for Cascading Style Sheets
- Extensive use of COLLDB for collection configuration and customization
- Collection grouping
Known Problems
imageclass.cfg attempts to establish connection with mysql for BookBagDB functionality, even if BookBag functionality is turned off. Please make the following adjustments (in bold) to the imageclass.cfg...
### BookBagDB Configuration
{
my $dsn;
my $username = 'usernamehidden';
my $pw = 'passwordhidden';
$gbbagentrydivsdefault = 'full image';
$gBbagTableName = 'BookBagDB';
if ($gBookBagToggle)
{
if ( $ENV{'DLPS_DEV'} )
{
$dsn = 'DBI:mysql:dlxs:fizzie.umdl.umich.edu:';
}
else
{
$dsn = 'DBI:mysql:dlxs:dlps1.umdl.umich.edu:';
}
eval{ $gDBHBbag = &DbUtils::Connect_DBI($dsn, $username, $pw); };
if ( $@ )
{
&DlpsUtils::errorBail( $@ );
}
}
}
Finding Aids version 2.0.1
Broker version 1.1.0
Lib version 2.4.0
Backward Compatibility
No changes from #6
DLXS Release 6 - 1 OCT 2001
General Information
This is an interim release of DLXS middleware intended to distribute bug fixes, functional enhancements and coding clean-ups which have occurred since the 30 MAR 2001 Release 5.
DLXS Release 6 is comprised of TextClass version
2.3.0, BibClass version 2.1.0, FindingAids version 2.0.1, ImageClass
version 1.0.6, Broker version 1.1.0 and XPAT version 5.2.3.
These fixes and enhancements apply primarily to TextClass,
BibClass and Lib. ImageClass version 1.0.6 and XPAT 5.2.3 (both first
delivered in DLXS Release 5) are unchanged in this release.
With this release comes the initial delivery of Broker version 1.1.0.
XPAT version 5.2.3
New and Changed Functionality
Fixed Bugs
Known Problems
xmlrgn
makes all the region names all uppercase. Element names in XML are case-sensitive. "P" and "p", for instance, would be two completely different elements. XPAT cannot work with documents that might have elements with the same name, but different case. Such documents are rare.
-
xmlrgn
will complain: ...omitted tag minimization parameter can be omitted only if "OMITTAG NO" is specified on the SGML declaration
. This is unexpected since XML doesn't allow the minimization parameter. The xml.dcl file included with the XPAT distribution can be used to work around these problems.
-
xmlrgn
will complain: ...general entity "lt" (or "gt" or "amp) not defined and no default entity
. This is unexpected since they are three of the five predefined or "built-in" entities of XML. The xml.dcl file included with the XPAT distribution can be used to work around these problems.
Text Class version 2.3.0
New and Changed Functionality
cgi/t/text
- subclass modules (in general)
- Mandatory to define
maxdepthitems
array for each subclasses. Enforced via assertion in base class. This is because every collection has different "lowest level" elements in reslist display.
- Extensive rework of notes handling removed much of the need to over-ride base class notes filtering in the subclasses. There are now 2 mechanisms to define
NOTEPARENT
regions: (1) as usual in the coll.extra.srch
as a fabricated region and (2) explicitly in the subclass code (if the parent regions may be nested).
- Wordwheel
- makeWordWheelFiles.pl: split on all non-alphanumerics including all 8 bit to fix problem with \0255 masquerading as '-'
- sample.ww.blank.dd: Added \346 (ae ligature) to <mappings> as 'e' to fix wordwheel problem of aem appearing when 'm' is entered due xpat bug where "æ" is indexed as an empty string.
- text-idx
- New customization mechanism: code to import
trap
routines from DlpsLocalUtils.pm
- Added eval around
EmailBookBag
to trap malformed address message thrown from BookBag.pm
- Added
AUTHZD_COLL
file for debugging as a proxy for auth system to set contents of AUTHZD_COLL
environment variable
- Added "groups" functionality. A group is a set of collections. The group is based on the "groups" database table and is specified by the
g
URL parameter. This functionality is as yet not exposed in the user interface.
- Added fallback mechanism for locating templates. If handling a pagespec URL parameter we "fallback" from collection-specific directory to a group-specific directory to the class web directory. If xcollmode is 'group' fallback from group to class. If xcollmode is 'colls' no fallback. If not in xcollmode, fallback from collection-specific dir to class web directory.
-
ValidityChecks
makes sure cc
matches one of the c
URL parameters
- ww2-idx
- Fix problem with uppercase search term not matching the always lowercase ww sgml data resulting in item not highlighted.
- Fix spacing of WORDWHEEL_UP|DOWN_BUTTON
- Add
Debug_AUTHZD_COLL
calls so pageviewer and ww2 can run as stand-alone scripts in debug mode to pick up the list of authorized collections in AUTHZD_COLL file.
- pageviewer-idx
- Changes to generalize the dlpsid resolver (if only a abc1234 formatted id comes in without 00x.000x volume.issue qualifier). Code put in an installation local Utils file (DlpsLocalUtils) and a subroutine to call the code as a "trap".
- Add
Debug_AUTHZD_COLL
calls so pageviewer and ww2 can run as stand-alone cgi's in debug mode to pick up the list of authorized collections in AUTHZD_COLL file.
- textclass.cfg
- Changes to handle new
trap
mechanism
- Added German to default languages
- Fix authentication problem where static variable hard-coded to "ets" was used instead of the
CGI::self_url
of the current $cgi object: Delete: $gRedirToAuthSystem = 'http://ets.umdl.umich.edu/t/text';
- TextClass.pm
- Changes to handle multiple idno matching trap.
- Moved
MakeButtonLinkFromDivT
routine to TextClass.pm so that it can be overridden.
- Moved
BuildGoToHeaderViewButton
from TextClassUtils to TextClass and changed from a subroutine to method so it can be overridden.
- Moved
BuildGoToHeaderViewButton
from TextClassUtils to TextClass and changed from subroutine to method so it can be overridden
- Fixed
singlegenre,
singlegender
and singleperiod
not appearing in templates by not deleting the mapped
key from the CIO when that object is instantiated and checking for it in TextClass->GetValueByKey
- Fix misspelling of "caesura" in
TextFilter
- Change to
GetValueByKey
in TextClass.pm to look for those bits of info that come from the CollsInfo object contained in the TextClass object (rather than having come from direct setting of the TextClass object).
- Make low encoded text page viewing preserve the line breaks
- Significant changes to how notes and their scoping parents are searched for and filtered. There are now 2 mechanisms to define
NOTEPARENT
regions: (1) as usual in the coll.extra.srch
as a fabricated region and (2) explicitly in the subclass code (if the parent regions may be nested).
- Improvements to
EDITION[STMT}
filtering in _HeaderFilter
- Fixed bug where
psetoffset
was not properly being passed into the XPat object and so was not used in properly calculating the byte offset (used in ordering results) when type was PSet.
- Added filtering in
TextFilter
to remove DLPSTEXTCLASS
tags and to add lines for <P TYPE="SKIPLINE">
- Added error messages identifying
rgn
URL parameter value when we have an ASSERT
failure trying to terminology map a region
- Modified calls to
AddPI
passing method names rather than coderefs to allow method invocation on derived classes via ProcessPI.
- Call
_HeaderFilter
as a method rather than subroutine
- Moved
FilterPBs,
HI_Filter,
FigureFilter
from TextClassUtils to TextClass methods.
- Added
HtmlForNoIndentLevel
- Made
$gTextClassCgi
a main::
global moved out of TextClassUtils.pm
- Fix regexp in
ParsePbTag
causing Page 'NA' to be displayed for all pages for HEADER_TOC
PI.
- Added
HandleHighlighting
to support special input mapping for collections like CME. Special input mapping allows the user to enter uppercase characters as proxies for certain other characters (e.g Middle English 'yogh') that cannot easily be generated at the keyboard and to search for same in specially prepared collection data.
- Added filtering to
TextFilter
to map <S> (textclass.dtd sentence element, html strikethru) to nothing. Added similar filtering to CleanResidualTags
for KWIC handling.
- Changed gender restriction query building
to include a new fabricated region
GENDERWITHIN
to handle cases where the GENDER
fabricated region is in the HEADER
sometimes and within divwithinfo
other times.
- Added
GetNoteMaxDivHead
to indicate the deepest level at which NOTE1 or PTR might occur. Needed to know where to start looking for parent DIV (HEAD). Formerly used GetDivHeadRange
but that does not work because we don't always display the deepest DIVs in results.
- Fixed query in sub
PageFilterForLowLel:
ENCODINGDESC-T
should have been EDITORIALDECL-T
- Added filtering to
TextFilter
to better handle the content of <FRONT>
e.g. in bwrp. Improve stray tag cleanup in general by calling DlpsUtils::RemoveTags
- Added
FilterFullRegion
method called from _ScopedResultsFilter
to handle fullregion
search results in an subclass over-ridable way.
- Add
FigureToHTML
method (over-ridable) to replace <FIGURE>
with <img>
(or whatever).
- Add highlighting functionality to notes display. Links that point to notes that contain hits are displayed in red. Hits are highlighted in results displayed in Notes window.
- TextClassUtils.pm
- TextClassUtils is now a Perl Class module which is instantiated as a TCUO object by the 3 TextClass cgi programs. As such all the subroutines in TextClassUtils can be over-ridden as methods of a subclass of the TextClassUtils Class. This change requires a new syntax:
TextClassUtils::Sub
becomes $tcuo->Sub
- Now call
Find_HTTP_HostName
when building links so virtual hosts with different DocumentRoot
values are supported.
- Added
ProcessGraphicsPathPI
to handle GRAPHICS_PATH
PI for graphics file location fallback mechanism
web/t/text
- templates (in general)
- Add
COLL_SPECIFIC_CONTENT
PI for inline help
- Add
GRAPHICS_PATH
PI supporting graphics file fallback
- Changes to navbars and to main style sheet
- pageviewer.frameset.tpl
- Increased vertical real estate
- pageviewer.nav.tpl
- Significant layout changes
- Minor adjustment to nav background graphics
- pageviewer.main.tpl
- Added class=indentBlock to main frame
- simpleext.tpl
- Add
<input type="hidden" name="type" value="simple">
instead of letting it default so statistic gather will be accurate
- textclass.css
- Added styles for
<SPEAKER>
and <STAGE>
elements for theater related collections
- ww-full.tpl
- Fix spacing of WORDWHEEL_UP|DOWN_BUTTON and use of smaller arrow graphics
obj/t/text/maps
- maps in general
- Several new maps added.
TARGETPARENT,
NOTEPARENT,
TARGET
removed from most maps.
obj/t/text/db
- groups
- New table: 'groups' added. See above.
- colldb
- Fixed 1500-1600 to read: pre-1600 in some collections.
Fixed Bugs
- Bugzilla #271 Idnos do not expand when given a 7 digit NOTIS ID, pages cannot be viewed
- Bugzilla #308 Home links in header do not include session ID
- Bugzilla #230 First scoped head is a garbage kwic
- Bugzilla #253 Update code to handle latest version (1.53) of Apache::Session
- Bugzilla #270 HighlightHit cannot differentiate between text in tags and actual content
- Bugzilla #293 Collection wordwheel Makefiles need to be changed to not use MFS indexing
Known Problems
Bib Class version 2.1.0
This release does not include any significant improvements in functionality. It is focused mainly on bug fixes. Not listed in a separate item below is support for an ID attribute on the A element in bib.map.
New and Changed Functionality
cgi/b/bib
- bib-idx
- Fixed
CleanCgiParameters
call to use the one in DlpsUtils instead of the one in main which
has bugs.
- Fixed
ASSERT
failure where cc
is ALLSELECTED
and no Terminology Mapper defined for ALLSELECTED
- use default Terminology Mapper since we only need the standard mapping for rgn1
- Added call to
TerminologyMapper::GetMapfileName
for better error reporting.
- Fix pagespec/pagename parameter convention to adhere to DLXS parameter standard
page=pagespec
pagename=somepage.tpl
- Added AUTHZD_COLL debugging file functionality
- bibclass.cfg
- Fix authentication problem where static variable hard-coded to "ets" was used instead of the
CGI::self_url
of the current $cgi object: Delete: $gRedirToAuthSystem
= 'http://ets.umdl.umich.edu/t/text';
- specific.functionality.cfg
Fixed Bugs
- Bugzilla #295 DLXS map files not being read. Only bib.map was being read for NonStandardBaseQueryNaturalLanguage
Known Problems
- Bugzilla #272: BibClass does not build links based on the
'host' field in the database so links to collections hosted on machines other
than the machine running bib-idx will point to to the local machine data which
usually does not exist (rather it is on a remote machine). This will only be a
problem if BibClass colldb contains rows for more than one host.
Image Class version 1.0.6
This release is identical to that contained in DLXS Release 5. Considerable
architectural and functional enhancements are scheduled for version 2 of the
Image Class, expected to be released in late 2001.
Finding Aids version 2.0.1
New and Changed Functionality
- All non-idresolver code for
<DAO>
filtering has been removed.
- Fix boolean searches in the Collection Title Field produced no matches.
Fixed Bugs
Known Problems
Broker version 1.1.0
Functionality
- This initial release of broker consists of the implementation of the OAI Protocol for metadata harvesting, and the implementation of most of the Dienst verbs. The implementation is Unicode compliant, and uses an interface to a mysql database to create responses for some of the Dienst verbs.
Fixed Bugs
Known Problems
Lib version 2.4.0
This release of the shared DLXS library modules incorporates some minor enhancements to the API and significant additional functionality in the database interface defined in DbUtils.pm.
New and Changed Functionality
- BookBag.pm
- Rename method in
DlpsSession::Delete
to DeleteSession
(also for warning re: redefinition of Delete
- CollsInfo.pm
- Modifications below the API to generalize data access via DBI.
AddClassObjects
now passes $optionalArgsRef
to class new
method to support a subclass-able TextClassUtils object at first element of this argument array.
- DevUtils.pm
- Add
Debug_AUTHZD_COLL
to support reading debug-time authorized collection list from a file. This, so all classes can benefit.
-
- Rename method in
DlpsSession::Delete
to DeleteSession
- DlpsUtils.pm
- Added mapping for &grqu; => " in
FilterCharEnts_CH_Greek
for Chadwick-Heealy collections
- Added entity mapping for ? => '?'
- Assorted additional character entity filtering additions.
ReAuthorizeLink
changes to fix authentication problem where static variable hard-coded to "ets" was used instead of the CGI::self_url
of the current $cgi object.
- Use temporary cgi in
ReAuthorizeLink
so sid does not get lost.
- Add
Find_HTTP_HostName
to call when building links so virtual hosts with different DocumentRoots
will be correct.
- Added subroutine
GetTagAttributes
to return key/value hash of attributes/values in a tag.
- Added
GroupGroupResolution
to aid in groups processing.
- Workaround DLPS authentication module problem where %20 mapped to '+' in redirect in
ReAuthorizeLink
x
- Improve stray tag cleanup in general by adding
DlpsUtils::RemoveTags
- Call
TrimSpaces
on each cgi parameter in CleanCgiParameters
so we don't pass along "stuff " or even " " to query factory (which accepts this blindly).
- Added boolean return value to
HighlightHit
to indicate whether text contained a hit that was highlighted.
- Add
$noSub
(parameter to HighlightHit
to check for hits without adding highlighting.
- GroupsInfo.pm
- Modifications below the API to generalize data access via DBI.
- ProcIns.pm
-
ProcIns::ProcessPIs
now accepts either a subroutine ref or a string containing (possibly subclassed) object method names for specifying the routine to run to handle a PI.
- Modified
GetParms
to return writable copy of parameter array for possible modification (shift) in ProcessPI
for method invocation on derived classes.
- TerminologyMapper.pm
- Added
GetMapfileName
to retrieve filename for better error reporting.
- XPat.pm
- Added line to change XPat's default left context of 14 to 0 with "{LeftContext 0}"
Backward Compatibility
DLXS #6 introduces some minor non-backward compatible changes. One, as a result of a generalization in the database connect mechanism, is trivial because the class middleware interface to DbUtils.pm is mediated by the CollsInfo.pm and GroupsInfo.pm APIs this change should have no effect on existing middleware.
DbUtils::Connect_DBI
replaces DbUtils::Connect_CSV
and supports a arbitrary string parameter to define the underlying data store which can be any store supported by a perl DBD driver including CSV, mySql, etc..
- Rename method in
DlpsSession::Delete
to DeleteSession.
Fixed Bugs
- 167: Add Help Text
- 183: Use DBI for access to all database-like data
- 230: First scoped head is a garbage kwic
- 241: Extend TextClass functionality: level 2 and mixed levels support
- 243: TextClass help.html missing
- 245: Javascript on extended proximity search appears to be broken
- 253: Update code to handle latest version of Apache::Session
- 261: Change middleware to adhere to new directory conventions
- 263: Move divdepths and need for notes and entities filtering to colldb
- 266: Browse page builder has eccentricities
- 269: Must be able to search any region in TC header
- 270: Highlighting of hits in SGML
- 271: idnos do not expand when given a 7 digit NOTIS ID, pages cannot be vie
- 293: Collection wordwheel Makefiles need to be changed to not use MFS
- 308: Home links in header blow away session
- 309: Home link in pageviewer loads in frame, not over frameset
- 340: Linux tif2gif gives fuzzy, unreadble results
- 357: TextClassUtils subroutines should be TextClass methods
- 363: Fix uses of FindHostName() and 'homesite', 'home' colldb for failover
- 405: Pageviewer defaults to seq=1 should be seq=00000001
- 409: Implement a more flexible mechanism for collection-specific look-and-feel
- 447: Results page for searches in header fields have empty "hits in doc" li
- 476: colldb in TC should not have hard-coded DLXSROOT
- 478: Port ImageClass and TextClass to MySQL maintaining CSV support
- 484: Index search takes user to page not found
- 489: TC regions/colls in the colldb have "order" problems
- 494: pageviewer rewrite
- 568: Header.tpl reallignment
- 602: MoA journal browse pages can't be repurposed
- 646: No filtering of bibliographic tags in full text
Known Problems
- While much more difficult to reproduce that in the previous
release, due to a race condition, it is still possible to click "add to
bookbag" on multiple items rapidly enough to make the code fail to add one or
more of the clicked items to the BookBag.
DLXS Release 5 - 30 MAR 2001
General Information
This is the first release that incorporates all three Classes (Text,
Bib, Image) and the Finding Aid middleware in a single release.
XPAT version 5.2.3
Enhancements
- A new command option and argument to specify a sync message for
startup. The syntax is [-s [ syncargmsg ] ].
Known Problems
Text Class version 2.2.3
Enhancements
Known Problems
Bib Class version 2.0.2
This release is a significant re-development of BibClass which uses
the DLXS common library modules found in Lib. In particular, it uses a database
for collection data and session management for BookBag and Search History
functionality.
Enhancements
Known Problems
- Bugzilla #272: BibClass does not build links based on the
'host' field in the database so links to collections hosted on machines other
than the machine running bib-idx will point to to the local machine data which
usually does not exist (rather it is on a remote machine). This will only be a
problem if BibClass colldb contains rows for more than one host.
Image Class version 1.0.6
- The most current DLXS libraries are now used where applicable.
- DlpsUtils.pm
- DevUtils.pm
- QueryFactory.pm
- TerminologyMapper.pm
- XPat.pm
- XPatResult.pm
- XPatResultSet.pm
- CGI parameters conform to DLXS standard
- Full conformance with standard directory structures.
The primary goal was to make essential changes to keep pace with
core DLXS developments. This was intentionally done without drastically
modifying the architecture or functionality of the programs. Considerable
architectural and functional enhancements are scheduled for version 2 of the
Image Class, expected to be released in spring 2001.
Enhancements
There are a few remarkable enhancements in Version 1.
- Improved delivery of JPEGs extracted from SID files (better
caching, and believed to be faster)
- Improved results retrieval (faster retrieval for records with
multiple images)
- Unlimited Boolean query components (q1 .. qN)
- Support for advanced image structures (e.g., differentiation
between overviews and details)
- In the process of adding support for advanced image structures,
the transformation tools were significantly improved upon, further simplifying
collection deployment.
- Several bugs that caused XPAT sessions to run endlessly were
eliminated.
- Improved display in situations where thumbnails are not
available, especially for related views.
- Improved interface for navigating to related views from a
detail view.
- The transformation process can now find image filenames in any
number of specified fields.
Version 1 includes a significant DTD change, which requires
collection metadata to be reprocessed. It is a general goal to keep DTD changes
to an absolute minimum.
Dependencies
Finding Aids version 2.0.0
Enhancements
Known Problems
Lib version 2.1.1
This is the first release of the shared DLXS library modules
(collectively known as Lib). Release of Lib as a separately versioned
deliverable gives us needed flexibility to supply updates for functionality
enhancements and bug fixes and to better maintain backward-compatibility when
newer Lib versions are released.
Enhancements
- LibVersion.pm maintains the version number for Lib and via the
Perl 'use' statement allows programs to programatically ensure that the correct
level of functionality is present in the shared modules that compose Lib.
- A new module (GroupsInfo.pm) provides an interface to a DBI
table (
groups) which supports the grouping of collection into
named groups. This functionality is used in this release of BibClass.
- A new module (DbUtils.pm) provides a simple interface built on
top of DBI to connect to a CSV database, read a table and disconnect.
- Adapted sessions handling to use the new Apache::Session module
version 1.53 , and added configuration options the for the session data store
(File, MySQL, etc.)
- A subclass module (BookBagItem/BBItemBC.pm) provides a variant
of the BookBagItem class for use by BibClass.
Backward Compatibility
DLXS #5 introduces 2 non-backward compatible changes as a
result of the move to the Perl DBI database interface and the update of
Apache::Session to version 1.53 with its correspondingly different file
structure for session management
- The TextClass and BibClass configuration variable $gCollDbName
now points to the directory
containing the database tables rather than to the database
file (
colldb) itself. Because colldb is a DBI CSV table it can
contain neither blank lines nor comment (#) lines. The "s_" and "a_" data type
prefixes on the column heads have been eliminated also. To convert your colldb,
remove blank and comment lines and the "s_" and "a_" prefixes form the column
heads.
- The new session file structure now consists of a subdirectory
(e.g.
/tmp/sessions ) containing one file per session rather
than consisting of a single file maintaining all sessions. This change was
necessary due to problems with slow access to the CGI attributable to
contention for access to the single semaphore-protected file mechanism. In the
release, remove the session file and create a directory to hold the multiple
session files and a second directory (e.g.
/tmp/sessionslock) to hold the lock files which protect
the session files.
Known Problems
- While much more difficult to reproduce that in the previous
release, due to a race condition, it is still possible to click "add to
bookbag" on multiple items rapidly enough to make the code fail to add one or
more of the clicked items to the BookBag.