Release Notes for Current DLXS Release

From DLXS Documentation

(Difference between revisions)
Jump to: navigation, search
(Roger/Moses anti-frameset mods)
Current revision (12:19, 30 October 2012) (edit) (undo)
(General Information Release_15)
 
(36 intermediate revisions not shown.)
Line 6: Line 6:
identical to release 14 except for enhancements and bug fixes as noted below.  
identical to release 14 except for enhancements and bug fixes as noted below.  
-
Note that searching for the string <span class="release_15">'''Release_15''' </span> will produce a list of changes to this wiki that are relevant to DLXS Release 15.</p>
+
Note that searching for the string <span class="release_15">'''Release_15'''</span> will produce a list of changes to this wiki that are relevant to DLXS Release 15.</p>
<p>Highlights of release 15 include:
<p>Highlights of release 15 include:
<ul>
<ul>
-
        <li>[[#TextClass|Pageviewer]]</li>
+
<li>[[#Lib|Customizable user interface fallback]]</li>
 +
<li>Better error handling and notification</li>
 +
<li>Improved browsing, including support for non-[a-z] characters</li>
 +
<li>[[#TextClass|TextClass]]: Much improved scaling and size options for JP2 images in PageViewer</li>
 +
<li>[[#ImageClass|ImageClass]]: Several new search options</li>
 +
<li>[[#OAI|OAI improvements]]</li>
 +
<li>[[#TextClass|TextClass]]: Text Class no longer supports MrSid image files (Image Class still does)</li>
 +
 
</ul>
</ul>
-
* Other stuff
+
 
-
* More stuff
+
</p>
</p>
Line 19: Line 25:
   <ul>
   <ul>
         <li>[[#BibClass|BibClass version 3.10.1]]</li>
         <li>[[#BibClass|BibClass version 3.10.1]]</li>
-
         <li>[[#Oai|Oai version 1.2.2]]</li>
+
         <li>[[#OAI|Oai version 1.2.2]]</li>
         <li>[[#IdResolver|IdResolver 1.2.1]]</li>
         <li>[[#IdResolver|IdResolver 1.2.1]]</li>
         <li>[[#Collmgr|Collmgr version 3.5.1]]</li>
         <li>[[#Collmgr|Collmgr version 3.5.1]]</li>
-
         <li>[[#FindaidClass|FindaidClass version 6.8.1]]</li>
+
         <li>[[#FindaidClass|FindaidClass version 6.9.2]]</li>
-
         <li>[[#ImageClass|ImageClass version 5.1.4]]</li>
+
         <li>[[#ImageClass|ImageClass version 5.2.3]]</li>
         <li>[[#Lib|Lib version 4.20.2]]</li>
         <li>[[#Lib|Lib version 4.20.2]]</li>
-
         <li>[[#TextClass|TextClass version 4.14.1]]</li>
+
         <li>[[#TextClass|TextClass version 4.14.2]]</li>
         <li>[[#XClass|XClass version 2.2.5]]</li>
         <li>[[#XClass|XClass version 2.2.5]]</li>
-
         <li>[[#XPAT|XPAT version 5.3.2]]</li>
+
         <li>[[#XPAT|XPAT version 5.3.2 (5.3.7 in Release 15b)]]</li>
         <li>[[#SRU|SRU version 1.3.1]]</li>
         <li>[[#SRU|SRU version 1.3.1]]</li>
         <li>[[#Stats|Stats version 1.5.1]]</li>
         <li>[[#Stats|Stats version 1.5.1]]</li>
Line 47: Line 53:
     </p>
     </p>
 +
<p>Additionally: Text Class PageViewer no longer supports Mr.SID images so if you are using Mr.SID they will have to be converted to JP2. Image Class still supports MrSID, though migration to JP2 is highly recommended.</p>
==Known Problems==
==Known Problems==
Line 62: Line 69:
===XPAT===
===XPAT===
     <ul>
     <ul>
-
       <li>No changes.</li>
+
       <li>No changes in the original release.</li>
 +
      <li>There have been two XPAT-only releases (15a and 15b) bringing the version number to 5.3.7:</li>
 +
      <ul>
 +
        <li>64-bit inode support for large filesystems.</li>
 +
        <li><code>-r ROOT_PATH</code> command-line option where <code>ROOT_PATH</code> is an absolute path to which all other paths are relative.</li>
 +
        <li>Coptic and Arabic Unicode blocks added.</li>
 +
        <li>Cyrillic and Devanagari blocks extended.</li>
 +
      </ul>
     </ul>
     </ul>
===Lib===
===Lib===
 +
====New and Changed Functionality====
 +
<p><b>Customizable Fallback</b></p>
 +
Collections can now be configured to use any number of custom fallback levels between the standard group and class levels.  This allows greater control and reduced code duplication when managing your [[Customizing_the_User_Interface|user interface customizations]]. See the new "customfallbackwebdirs" Collection Manager field.
 +
 +
====Changed Files====
<p><b>DlpsUtils.pm</b></p>
<p><b>DlpsUtils.pm</b></p>
<ul>
<ul>
Line 326: Line 345:
The algorithm used in Release 14 used discrete steps to determine the scaled size, Release 15 uses continuous scaling to create the image size.
The algorithm used in Release 14 used discrete steps to determine the scaled size, Release 15 uses continuous scaling to create the image size.
</li>
</li>
-
<li>Instead of using the + or - symbols to increase or decrease the size of the image and ocr, which only gave the user 3 size options ( small, medium, and large ), the user can now select a percent deviation from the original image size from which to view the image page or the ocr page.  At startup the software will determine what sizes to make available to the user.  A full range of sizes may not be available for every page image.  The sizes available depends on the image's resolution.  The maximum range available is 50% to 400%.</li>
+
<li>Instead of using the + or - symbols to increase or decrease the size of the image and ocr, which only gave the user 3 size options ( small, medium, and large ), the user can now select a percent deviation from the original image size from which to view the image page or the ocr page.  For JP2000 files, at startup the software will determine what sizes to make available to the user.  A full range of sizes may not be available for every JP2000 page image.  The sizes available depends on the image's resolution.  The range available is 50% to 400%.  This range is not configurable for JP2000 files.  A test is made to determine if the image can scale to the appropriate the size.  If it can, that scale is made available, if not that scale is not made available.</li>
-
 
+
<li>Pageviewer will no longer support Mr.SID images so if you are using Mr.SID they will have to be converted to jp2.</li>
<li>Pageviewer will no longer support Mr.SID images so if you are using Mr.SID they will have to be converted to jp2.</li>
<li>Pageviewer no longer uses a frameset for displaying PDF; the <code>frm</code> URL parameter is no longer generated, and is ignored if present.</li>
<li>Pageviewer no longer uses a frameset for displaying PDF; the <code>frm</code> URL parameter is no longer generated, and is ignored if present.</li>
 +
<li>The location of the page images have to be on the either on the server where pageviewer runs from or mounted on to that server.  You can indicate the location of images in the hash %gMoutnPointMap in the ItemView.cfg.</li>
</ul>
</ul>
Line 356: Line 375:
<li>PageView/MachynPV.pm </li>
<li>PageView/MachynPV.pm </li>
</ul>
</ul>
 +
 +
<p>'''Picklist'''</p>
 +
 +
Picklist has been modified to offer issue and volume views, along with the "classic mode" (i.e., pre-existing picklist view). By default, all code is evaluated in classic mode, meaning that picklists will behave as it did in release 14. See [[Picklist customization for serial articles]] for more information.
 +
 +
The following files were changed to support this change:
 +
 +
<ul>
 +
<li>DlpsLocalUtils.pm</li>
 +
<li>langmap.en.xml</li>
 +
<li>picklist.xsl</li>
 +
<li>picklistheader.xsl</li>
 +
</ul>
 +
 +
There were many collection-specific changes. The broadest changes were accomplished by enabling the new picklist functionality in SpoCommonTC.pm and in turn subclassing that (instead of TextClass.pm) for collection-specific text classes. Additional customization was accomplished for each collection by modifying picklist.xsl, picklistheader.xsl, or langmapextra.xml in the respective web directory.
====Changed Files====
====Changed Files====
Line 582: Line 616:
</ul>
</ul>
-
===Oai===
+
===OAI===
 +
 
 +
====New and Changed Functionality====
 +
You must create the following two tables oai_marc and oai_mods in additions to the oai and oaisets tables:
 +
 
 +
<pre>
 +
  CREATE TABLE `oai_marc` (
 +
    id  varchar(150) NOT NULL default '',
 +
    timestamp  timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
 +
    marc21  mediumblob,
 +
    PRIMARY KEY  (id),
 +
    KEY timestamp (timestamp),
 +
    KEY oai_time_id (timestamp,id));
 +
 
 +
  CREATE TABLE `oai_mods` (
 +
    id` varchar(150) NOT NULL default '',
 +
    timestamp  timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
 +
    mods  mediumblob,
 +
    PRIMARY KEY  (id),
 +
    KEY timestamp (timestamp),
 +
    KEY oai_time_id (timestamp,id));
 +
</pre>
 +
 
 +
We were finding that UMProvider was taking too long when responding to a request for marc and mods records, so we created these two tables to contain marc and mods records.  In our nightly cron jobs that keep the oai tables current, we have all the marc and mods records placed in the oai table and also in one of these two tables depending on the format type of the record:
 +
 
 +
<pre>
 +
INSERT INTO oai_marc select id, times tamp, marc21 FROM oai WHERE marc21 is not null;
 +
 
 +
INSERT INTO oai_marc select id, times tamp, marc21 FROM oai WHERE marc21 is not null;
 +
</pre>
 +
 
 +
The data provider provides records from the oai table when a Dublin Core format type request comes in; from the oai_marc table when a marc format type request comes in; and, from oai_mods when a mods format request comes in.
 +
 
 +
====Changed Files====
<p><b>provider/LoadDB.pl</b></p>
<p><b>provider/LoadDB.pl</b></p>
<ul>
<ul>
Line 829: Line 896:
<p><b>reslist.xsl</b></p>
<p><b>reslist.xsl</b></p>
<ul>
<ul>
-
   <li>added sliceftr</li>
+
   <li>Added the sliceftr module, adding the results slices to the bottom of the page as in Text Class.</li>
-
 
+
-
</ul>
+
-
<p><b>findaidclass.css</b></p>
+
-
<ul>
+
-
  <li>sliceftr twice</li>
+
-
 
+
-
</ul>
+
-
<p><b>reslist.xsl</b></p>
+
-
<ul>
+
-
  <li>sliceftr</li>
+
    
    
</ul>
</ul>
Line 862: Line 919:
   <li>Added sub TagLink_XML to override superclass and include Findaid class
   <li>Added sub TagLink_XML to override superclass and include Findaid class
     specific region name "Subjects" . </li>
     specific region name "Subjects" . </li>
-
 
 
-
</ul>
 
-
<p><b>FindaidClass/ClementsmssFC.pm</b></p>
 
-
<ul>
 
-
  <li>bioghist labels</li>
 
-
 
 
-
</ul>
 
-
<p><b>FindaidClass/CoheneadFC.pm</b></p>
 
-
<ul>
 
-
  <li>get rid of Arrangement, try to handle dual bioghist</li>
 
-
 
 
-
</ul>
 
-
<p><b>FindaidClass/CoheneadFC.pm</b></p>
 
-
<ul>
 
-
  <li>bioghist label finishing touches</li>
 
-
 
 
-
</ul>
 
-
<p><b>FindaidClass/ClarkeFC.pm</b></p>
 
-
<ul>
 
-
  <li>remove roadblock on the full text link</li>
 
    
    
</ul>
</ul>
Line 892: Line 929:
<ul>
<ul>
   <li>$gHelpSubdir: more flexibility for location of help files.</li>
   <li>$gHelpSubdir: more flexibility for location of help files.</li>
-
 
 
-
</ul>
 
-
<p><b>FindaidClass/PolareadFC.pm</b></p>
 
-
<ul>
 
-
  <li>remove missing nav item</li>
 
-
 
 
-
</ul>
 
-
<p><b>polaread.map</b></p>
 
-
<ul>
 
-
  <li>Added military units and media types</li>
 
-
 
 
-
</ul>
 
-
<p><b>polaread.map</b></p>
 
-
<ul>
 
-
  <li>their preferred label names</li>
 
    
    
</ul>
</ul>
Line 918: Line 940:
<ul><li>stats_driver.pl</li></ul>
<ul><li>stats_driver.pl</li></ul>
</ul>
</ul>
-
 
-
 
===SRU===
===SRU===
Line 929: Line 949:
       <li>No changes.</li>
       <li>No changes.</li>
     </ul>
     </ul>
-
 
===XClass===
===XClass===
     <ul>
     <ul>
       <li>No changes.</li>
       <li>No changes.</li>
     </ul>
     </ul>

Current revision

Main Page > Release Notes for Current DLXS Release

Contents

[edit] General Information Release_15

TextClass is substantially identical to release 14 except for enhancements and bug fixes as noted below. Note that searching for the string Release_15 will produce a list of changes to this wiki that are relevant to DLXS Release 15.

Highlights of release 15 include:

Release 15 is comprised of:

Additionally: Text Class PageViewer no longer supports Mr.SID images so if you are using Mr.SID they will have to be converted to JP2. Image Class still supports MrSID, though migration to JP2 is highly recommended.

[edit] Known Problems

  • None

[edit] Database Installation Notes

MySQL is the supported database type. In order to run DLXS you will need to have a MySQL server installed. Sample data is delivered in the form of a MySQL dump file which can be directly imported into a MySQL database. The database upgrade script (upgrade_7_8) operates only on a MySQL database. These issues are documented in detail in the installation instructions and the upgrade instructions.

[edit] New and Changed Functionality

[edit] XPAT

  • No changes in the original release.
  • There have been two XPAT-only releases (15a and 15b) bringing the version number to 5.3.7:
    • 64-bit inode support for large filesystems.
    • -r ROOT_PATH command-line option where ROOT_PATH is an absolute path to which all other paths are relative.
    • Coptic and Arabic Unicode blocks added.
    • Cyrillic and Devanagari blocks extended.

[edit] Lib

[edit] New and Changed Functionality

Customizable Fallback

Collections can now be configured to use any number of custom fallback levels between the standard group and class levels. This allows greater control and reduced code duplication when managing your user interface customizations. See the new "customfallbackwebdirs" Collection Manager field.

[edit] Changed Files

DlpsUtils.pm

  • Make no referring URL Assertion Failure Report not send email
  • Now log Assertion Failure Reports
  • If $keyValuePairs are not requested, an array is returned. Fixed bug that returned array in arbitrary order instead of in order they were listed in Collmgr.
  • Updated to display feedback form with captcha on AFR error page
  • Added noAssert option to MkdirPath() to prevent inf. loop
  • sub BuildClassCacheWebPath (for emitting in XML).
  • Added RemoveTrailingHalfEntities + RemoveLeadingHalfEntities; rewrote RemoveLeadingAndTrailingHalfTags to use both.
  • During fallback, check any dirs listed in the 'customfallbackwebdirs' filed in collmgr (after checking group dirs, but before checking class dirs).
  • Fallback: Grab values from LibGlobals for values that are undef or not passed in from app modules.

LibGlobals.cfg

  • Updated to read in the AFR error message from a (HTML) file
  • changed path to systemerrorfeedback.html file, adding f/feedback.
  • ScriptNames, used in search forms, now have vlaues defined here instead of in web/lib/dlxsglobals.xml.

DlpsUtils.pm, LibGlobals.cfg

  • rewrite reCAPTCHA code to use a global hash for pub/priv keys in LibGlobals and add access routines in DlpsUtils.pm

XsltPIFiller/FullTextAppXsltPIFiller.pm

  • added initialize and field for subclass gSortFields

BookBag.pm

  • Remove underscore from file extension for download file.

DbUtils.pm

  • Backticked a table names and column names in a bunch of places.

CollsInfo.pm, DLXSApp/FullTextApp.pm, DLXSClass/FullTextClass.pm, XsltPIFiller/FullTextAppXsltPIFiller.pm

  • Fix linking to be relative to preserve https

XsltPIFiller/FullTextAppXsltPIFiller.pm

  • fix linking to be relative to preserve https
  • BuildHelpLink_XML: more flexibility for location of help files.
  • Use fallback to find the appropriate help dir. Then use logic to find the best file within that dir.
  • BuildPdfLink_XML: fixed algorithm to find best help file in the fallback help dir.

ItemView.cfg, ItemView.pm, ItemViewApp.pm

  • Serving full item PDFs (if available in the repository).

Stats/Reports/COUNTER/ReportTools.pm

  • Display title ID if title name cannot be determined, rather than just skipping that title.

DLXSApp.pm, ItemAuth.pm, DLXSApp/FullTextApp.pm, DLXSClass/FullTextClass.pm, XsltPIFiller/FullTextAppXsltPIFiller.pm

  • Moved item-level auth checking into module ItemAuth.pm, for use in auxillary cgi scripts.

DLXSApp.pm, DLXSApp/FullTextApp.pm, DLXSClass/FullTextClass.pm, XsltPIFiller/FullTextAppXsltPIFiller.pm

  • Revert ItemAuth changes

DLXSApp.pm, DLXSApp/FullTextApp.pm

  • Re-virtualized ItemLevelRestrictionTestHook here.
  • Put sub ItemLevelRestrictionTestHook back here.

DLXSApp/FullTextApp.pm

  • Fixes in ItemLevelRestrictionTestHook.

ItemAuth.pm

  • TestItemLevelRestriction:: test whether the appObject is defined before calling methods on it; otherwise use provided default values.

Stats/DB.pm, Stats/MainPage.pm, Stats/Resource.pm, Stats/Reports/COUNTER/BR1.pm, Stats/Reports/COUNTER/BR2.pm, Stats/Reports/COUNTER/BR5.pm, Stats/Reports/COUNTER/DR1.pm, Stats/Tools/ResourceTools.pm, Stats/XML/BuildXML.pm

  • Changes to record stats by year/month now instead of year/month/day, to reduce the number of rows in the database.

XsltPIFiller.pm

  • Decode browse values as UTF-8 before they're written to the XML output (so multi-byte characters are represented correctly).
  • Checks whether the browse value is already unicode (uft-8 flag is set) before decode it as unicode; for some reason, for serialissue, the flag is already set in production, but not in development(?).
  • sub BuildScriptNames_XML

XsltPIFiller/FullTextAppXsltPIFiller.pm

  • sub BuildCacheWebPath. To emit the href to the cache in the XML, instead of forcing XSLT to munge it from the path on disk.

LibGlobals.cfg, XsltPIFiller.pm

  • Typo in gScriptNameFindaid.

CioFactory.pm, DlpsUtils.pm, GroupsInfo.pm

  • Examine AUTHZD_COLL for groupids, then populate authzd coll list with its member collids. (Allows Cory to only make one access control rule for large groups.)

DLXSApp.pm, DlpsUtils.pm, XsltPIFiller.pm

  • More generic handling of browse navigation --- UI is able to present non-[a-z] characters. Most of these are UTF8 characters; query parameters are now protected accordingly. Modified DlpsUtils::RemoveLeadingAndTrailingHalfEntities to ignore partial entity-like strings that have spaces in them.

XsltPIFiller/FullTextAppXsltPIFiller.pm

  • Emit 'crosscollection.search.title.str' (via langmap.en.xml) for TITLE_XML PI when xcollmode=colls to give title in <head> of page=home or page=browsecolls.

Stats/MainPage.pm

  • Don't hard-code years for custom report. Do from 2006 to year().

XsltPIFiller/FullTextAppXsltPIFiller.pm

  • Change 'amount' pulldown building to reflect values that are in the map starting at 5 in increments of 5 up to 120

ItemView.cfg, ItemView.pm, ItemViewApp.pm

  • changes to make pageview work like pageturner.

ItemView.pm

  • Using the collmgr configurable display sizes.

DLXSApp.pm, XsltPIFiller.pm

  • DLXSApp.pm - GetBrowseInfo: sort results of ItemBrowseCount scan so [a-z] are guaranteed to come first XsltPIFiller.pm - BuildBrowseNav_XML: more accurate calculation of initial single-letter browse list (avoiding conflicts between how MySQL and Perl see some unicode characters)

ItemView.pm

  • dynamic page config.

ItemView.pm

  • 1. changed quality from 85 to 100 so picture would be sharper. 2. Put in a check so that the defaultPage size is one available from the dynamically computed amounts.

DLXSApp/FullTextApp.pm

  • Different ways to sort idnos follr picklists; SPO (by default) will use index order, but the default will be to sort by idno.
  • Changed FullTextApp::HandlePicklistPage to use array of array refs instead of hash to maintain order and updated all calling code
  • Refactored and merged picklist logic with base class picklist logic
  • All SPO picklist customization using new Volume/Issue mode

DlpsUtils.pm, ItemAuth.pm, XsltPIFiller.pm, XsltPIFiller/FullTextAppXsltPIFiller.pm

  • New collmgr field to disable quickbrowse in dynamic browse page; fixed an authorization issue (related to reusing AUTHZD environment variable), so now picklists conditionally show PDF link; some SPO picklist customization (to work with PDF links)

DLXSApp.pm

  • Pass arguments that enable custom fallback functionality in DlpsUtils.pm.

LibGlobals.cfg

  • Put fallback variables here in case they aren't defined at the class level.

BrowseUpdate/FindaidBU.pm

  • Added ability to generate subject browse for Finding Aids

BrowseUpdate.pm, updatebrowsedb.pl, BrowseDoubleLayerNav.xsl

  • Browse lists are based on collection data, so values outside 'a'..'z' can now be found in browse lists.
  • Explicitly encode browse values as UTF-8 before writing them to the database tables.
  • UTF-8 values are transliterated (e.g. zó -> zo) to match MySQL query semantics; the original UTF-8 is presented in lists.
  • Punctuation in values is ignored when building counts ("A.B" is treated as "Ab").
  • Menu correctly handles when there are > 26 items in the navbar.
  • Browse update should be run against collections.

dlxsglobals.xml

  • ScriptNames now populated by a PI for greater application control (in this case, to substitute the Shibboleth script alias).
  • New collmgr field to disable quickbrowse in dynamic browse page; fixed an authorization issue (related to reusing AUTHZD environment variable), so now picklists conditionally show PDF link; some SPO picklist customization (to work with PDF links)

[edit] TextClass

[edit] New and Changed Functionality

Pageviewer

Pageviewer was changed to support the following functionalaties:

  • The algorithm used in Release 14 used discrete steps to determine the scaled size, Release 15 uses continuous scaling to create the image size.
  • Instead of using the + or - symbols to increase or decrease the size of the image and ocr, which only gave the user 3 size options ( small, medium, and large ), the user can now select a percent deviation from the original image size from which to view the image page or the ocr page. For JP2000 files, at startup the software will determine what sizes to make available to the user. A full range of sizes may not be available for every JP2000 page image. The sizes available depends on the image's resolution. The range available is 50% to 400%. This range is not configurable for JP2000 files. A test is made to determine if the image can scale to the appropriate the size. If it can, that scale is made available, if not that scale is not made available.
  • Pageviewer will no longer support Mr.SID images so if you are using Mr.SID they will have to be converted to jp2.
  • Pageviewer no longer uses a frameset for displaying PDF; the frm URL parameter is no longer generated, and is ignored if present.
  • The location of the page images have to be on the either on the server where pageviewer runs from or mounted on to that server. You can indicate the location of images in the hash %gMoutnPointMap in the ItemView.cfg.

The following files were changed to support this change:

  • t/text/clipviewer.xsl
  • t/text/htmlhead.xsl
  • t/text/langmap.en.xml
  • t/text/langmap.fr.xml
  • t/text/pageviewer.xsl
  • t/text/viewer.utils.xsl
  • t/text/viewer.xsl
  • lib/ItemView.cfg
  • lib/ItemView.pm
  • lib/ItemViewApp.pm

In the subclasses are, these files were changed:

  • a/acls/pageviewer.xsl
  • PVApp/EeboPVApp.pm
  • PageView/AclssuppPV.pm
  • PageView/CjsPV.pm
  • PageView/EccoPV.pm
  • PageView/MachynPV.pm

Picklist

Picklist has been modified to offer issue and volume views, along with the "classic mode" (i.e., pre-existing picklist view). By default, all code is evaluated in classic mode, meaning that picklists will behave as it did in release 14. See Picklist customization for serial articles for more information.

The following files were changed to support this change:

  • DlpsLocalUtils.pm
  • langmap.en.xml
  • picklist.xsl
  • picklistheader.xsl

There were many collection-specific changes. The broadest changes were accomplished by enabling the new picklist functionality in SpoCommonTC.pm and in turn subclassing that (instead of TextClass.pm) for collection-specific text classes. Additional customization was accomplished for each collection by modifying picklist.xsl, picklistheader.xsl, or langmapextra.xml in the respective web directory.

[edit] Changed Files

langmap.en.xml

  • added openurl link text

pageviewerheader.xsl

  • added class=title245 to div in itemcitation

textclass.css

  • added .title245 style to fix long titles that wrap and cut off pdf viewer navigation
  • Links to PDFs (if available).
    • picklistheader.xsl
    • textclass.css

navheader.xsl

  • Simplified help link; now uses whatever value is provided by the middleware.

help/help-readme.html

  • Describes a workflow and workfiles that do not exist.

help/bbag-holdings.html, help/bbag-intro.html, help/bbag-srch.html, help/history-intro.html, help/results-intro.html, help/results-sort.html, help/search-basic.html, help/search-bib.html, help/search-boolean.html, help/search-intro.html, help/search-proximity.html, help/search-sel-type.html, help/search-tips.html, help/search-ww.html, help/xcbbag-holdings.html, help/xcbbag-intro.html, help/xcbbag-search.html, help/xchistory-intro.html, help/xcresults-intro.html, help/xcresults-sort.html, help/xcsearch-basic.html, help/xcsearch-bib.html, help/xcsearch-boolean.html, help/xcsearch-intro.html, help/xcsearch-proximity.html, help/xcsearch-sel-type.html, help/xcsearch-tips.html, help/xcsearch-ww.html, help/css/help.css

  • Copyediting, took out references to UMDL.

tocheader.xsl

  • Don't add comma between multiple EDITORS after apply-templates, the comma is add ed in the template rule.

textclass.css

  • added style for tocdiv table to make it 100% due to a bug in IE8 that ignores the table width set in the table attribute

tocheader.xsl

  • $subjectinfo: also use @TYPE='keyword'.

htmlhead.xsl

  • changed the way title is handled for journals

navheader.xsl

  • call buildLoginLink factored out of web/t/text/navheader.xsl

clipviewer.xsl, jquery.ba-resize.js, pageviewer.xsl, pdf_framer.js, viewer.utils.xsl, viewer.xsl

  • Removed frm param and frameset option for PDF viewing; now use iframe with Javascript to calculate correct frame size.

footer.import.xsl

  • Added alt attribute to "Back to Top" link image.

header.xsl, search.xsl, ww.xsl

  • Renamed form method "GET" to "get".

text.components.xsl

  • Typo: $divLevel -> $divlevel

text.components.xsl

  • HEADER tmeplate: handle unexpected cases with <xsl:otherwise><xsl:apply-templates/></xsl:otherwise>.

textclass.css

  • added styles for new h1, h2, etc. output from t/text/text.components.xsl

resultsheader.xsl

  • More robust code changes to support mixed collections moved from Feminist Studies to DLXS system-wide
  • Fixes for Diderot so publication information field only shows up if any information; fix to base XSLT stylesheet since applies to all collections
    • resultsheader.xsl
    • searchheader.xsl

langmap.en.xml, picklist.xsl, picklistheader.xsl, resultsheader.xsl, searchheader.xsl

  • All SPO picklist customization using new Volume/Issue mode

browse.xsl

  • New collmgr field to disable quickbrowse in dynamic browse page; fixed an authorization issue (related to reusing AUTHZD environment variable), so now picklists conditionally show PDF link; some SPO picklist customization (to work with PDF links)

TextClass.pm

  • SerialArticleTocLinkHook: built link to view=toc for pageimage collections.

TextAppXsltPIFiller.pm

  • BuildItemLink_XML: handle case of serialarticle colls using pageimages.

DlpsLocalUtils.pm

  • CreatePicklist: don't link to text view if it's a serialarticle coll that uses pageimages.

textclass.cfg

  • fix linking to be relative to preserve https

textclass.cfg

  • $gHelpSubdir: more flexibility for location of help files.

TextClass.pm

  • Moved logic of ViewPDFLink_XML to TextAppXsltPIFiller.pm, as most of the time it is processing PIs.

TextAppXsltPIFiller.pm

  • ViewPDFLink_XML: now looks for PDFs in item obj dir, then serves them out of web cache.

TextClass.pm

  • Moved ViewPDFLink_XML back from TextAppXsltPIFiller.pm (caused more problems than it solved).

TextAppXsltPIFiller.pm

  • Moved ViewPDFLink_XML back to TextClass.pm (caused more problems than it solved).

TextClass.pm

  • Moved item-level auth checking into module ItemAuth.pm, for use in auxillary cgi scripts.

TextClass.pm

  • Calls to ViewPDFLink_XML now call BuildPODandDODLinks_XML.

DlpsLocalUtils.pm

  • Add call to BuildPODandDODLinks_XML.

textclass.cfg

  • Change 'amount' pulldown building to reflect values that are in the map starting at 5 in increments of 5 up to 120 -- replaces @proximityAmounts array

textclass.cfg

  • Set up a variable (which will be used in TextClass/SpoCommonTC.pm when commited) that uses custom SpoLocalUtils.pm instead of DlpsLocalUtils.pm for picklist processing.

textclass.cfg

  • Added .png to gEntityExtensionsToCheck.

TextClass/FsTC.pm

  • New collmgr field to disable quickbrowse in dynamic browse page; fixed an authorization issue (related to reusing AUTHZD environment variable), so now picklists conditionally show PDF link; some SPO picklist customization (to work with PDF links)

[edit] ImageClass

[edit] CGI/Middleware

Known Problems

  • None known so far.

Enhancements

  • Image Viewing
    • Each field value repetition is now wrapped in a DIV with class fldvalrep so that spacing between repetitions can be controlled (fieldvalues.xsl, css/imageclass.css)
    • Document domain setting is no longer set; it can be added in custom XSL (js/imageclass.js)
    • Added download link for current image size (entry_imagetools.xsl, langmap.en.xml, panzoom.xsl)
    • Feedback form now uses reCAPTCHA service (bbentry.xml, entry.xml)
    • Added "prep tables in use" indicator when using prep=1 option (htmlhead.xsl, langmap.en.xml, css/imageclass.css)
    • Improved page titles and meta information for key pages in Image Class with hopes of improving search engine recognition and simply making the pages more meaningful and therefore user friendly (entry.xml, entry.xsl, groups.xsl, htmlhead.xsl, index.xsl, panzoom.xsl, results.xsl, search.xsl).
    • Long titles can be truncated via Javascript (entry.xsl, panzoom.xsl, entry.xml, js/jquery.text-overflow.js).
    • ImageAppXsltPIFiller.pm
      • Added "urltext" option to idlinks and keylinks options for field value display, configurable in collmgr.
      • display order of browseoptions fields is now the same as listed in the browsefields collmgr field.
  • Portfolios
    • Track ExtendedSliceSize and warn user that their downloaded porfolio will not contain all items (bbexportprep.xsl, langmap.en.xml).
    • Better handling of IDs that have changed since being stored in a portfolio (ImageApp.pm)
    • Better cleanup of artifacts from downloaded portfolios (ImageApp.pm)
  • Searching/Browsing
    • Changes that support new searching options ("searchtypes" in Collection Manager) including starts with, ends with, and contains, exact, and support for term list in search form (browseoptions.xsl, index.xml, index.xsl, search.xsl, css/imageclass.css, js/imageclass.js).
    • Fields can now be weighted for relevance ranking. Configurable in Collection Manager.
    • Search result pages have a link reference to a MediaRSS feed (resultsdata.xsl).
    • Result pages should now print without losing any images (htmlhead.xsl, css/print.css)

[edit] Data Preparation

Enhancements

statsconfig.pl

  • This a new script that generates stats configuration resource definations for image class collections. These definitions are used by the stats system to know how to gather usage statistics.

[edit] OAI

[edit] New and Changed Functionality

You must create the following two tables oai_marc and oai_mods in additions to the oai and oaisets tables:

  CREATE TABLE `oai_marc` (
    id  varchar(150) NOT NULL default '',
    timestamp  timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
    marc21  mediumblob,
    PRIMARY KEY  (id),
    KEY timestamp (timestamp),
    KEY oai_time_id (timestamp,id));

  CREATE TABLE `oai_mods` (
    id` varchar(150) NOT NULL default '',
    timestamp  timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
    mods  mediumblob,
    PRIMARY KEY  (id),
    KEY timestamp (timestamp),
    KEY oai_time_id (timestamp,id));

We were finding that UMProvider was taking too long when responding to a request for marc and mods records, so we created these two tables to contain marc and mods records. In our nightly cron jobs that keep the oai tables current, we have all the marc and mods records placed in the oai table and also in one of these two tables depending on the format type of the record:

INSERT INTO oai_marc select id, times tamp, marc21 FROM oai WHERE marc21 is not null;

INSERT INTO oai_marc select id, times tamp, marc21 FROM oai WHERE marc21 is not null;

The data provider provides records from the oai table when a Dublin Core format type request comes in; from the oai_marc table when a marc format type request comes in; and, from oai_mods when a mods format request comes in.

[edit] Changed Files

provider/LoadDB.pl

  • Updated to trim set and id before storing record
  • Updated ConnectToDB to get database name from config xml
  • De-coupled from nameresolver so that it is optional to sync with nameresolver
  • new code for new tables oai_mods, and oai_marc

provider/GetNewCollections.pl

  • Fixed path for emailing report to look in subdir

provider/umprovider_flow_diagrams_and_examples.ppt

  • PowerPoint presentation for the workshop which includes example transformations and 3 flow charts

provider/ExtractHeaders.pl

  • Updated to get data dictionary from collmgr instead of constructing the path using the standard convention

provider/RunOaiConversion.pl

  • Updated call to LoadDB for DLPS classes

provider/exampleColls.xml

  • Updated to use sampleutf8_tc collection which is included in the DLXS release

provider/dlxs_to_oaidc_cron.pl

  • Cron job to include in DLXS 14 release which includes email addresses specified in oai.cfg

provider/dlps/text_ic_oai_cron.pl

  • Updated call to RunOaiTransformation

provider/dlps/modifiedDlpsColls.xml, provider/CollsAndTypesOfIDs.xls

  • Moved to dlps subdir

provider/dlps/modifiedSpoColls.xml

  • Moved to modified subdir

provider/dlps/RunDlpsOaiConversion.pl, provider/dlps/text_ic_oai_cron.pl

  • More specific version of old RunOaiConversion.pl script to be used for DLPS

provider/dlps/RunDlpsOaiConversion.pl

  • Had to move back to bin/o/oai/provider because of paths for scripts
  • File for running DLPS specific text class to oai_dc transformation. This is provided as an example for release 14 but most people can probably more easily modify RunOaiConversion.pl

provider/ExtractHeaders.pl

  • Updated to take xpat host as param

provider/GenerateReport.pl, provider/RunDlpsOaiConversion.pl, provider/RunOaiConversion.pl

  • Updated help option and call to ExtractHeaders
  • Updated path to colls.xml files

provider/GenerateReport.pl

  • Updated call to get DLXSROOT environment variable

provider/oai_update_history_text.txt

  • Example file for execution history

provider/exampleColls.xml

  • Updated with instructions about the possible attributes for each collection

provider/GetNewCollections.pl

  • Updated logic to send report with or without CC on email

provider/dlps/NewOAICollection.svg, provider/dlps/RunOaiConversion.svg, provider/dlps/UMProviderFlow.svg

  • SVG (Omnigraffle, Visio, gliffy) editable formats of the flow diagrams for UMProvider. The JPEG (uneditable) versions of these files are $DLXSROOT/bin/o/oai/provider.

ConfirmPublicDomain.pl

  • new set name, minor changes

filterMarc21.xsl

  • added new fields

provider/dlps/text_ic_oai_cron.pl

  • be more exact in the path.

provider/oai_update.pl

  • new code for new tables oai_marc and oai_mods
  • drop tables oai_copy and oaisets_copy in case connect error left them behind on previous run.

moveOaiTables.pl

  • new code for new tables oai_mods and oai_marc
  • code for the oai_marc and oai_mods tables.

provider/dlps/modifiedDlpsColls.xml, provider/dlps/modifiedSpoColls.xml, provider/dlps/oai_update_history_dlps.txt, provider/dlps/oai_update_history_spo.txt

  • these are changed by the cron jobs and should not be controlled.

provider/oai_new_coll_history.txt, provider/oai_update_history_text.txt

  • they are dynamic. no need for cvs control.

provider/oai_update.pl

  • insert deleted records into marc and mods table.

ExtractIdno.pl

  • new, for processing non oai items into nameresolver.

provider/GetNewCollections.pl, provider/dlxs_to_oaidc_cron.pl, provider/dlps/text_ic_oai_cron.pl

  • removed the Server from mail module so that email did not get sent to the server.

provider/textClassToDc.xsl

  • changes to support ca, icp, and tap.
  • added special condition for jsas spo collection.

oai.cfg

  • Added to request email addresses for reports
  • Updated instructions for email addresses
  • change question wording

UMProvider.pm

  • fix bug in GetRecord for bad ID values
  • minor bug in opt. SetSetsTableName() call
  • added support for deleting records at the metadata level
  • new tables oai_marc and oai_mods to optimize db.
  • added support for optional about container

oai

  • support YYYY-MM-DD request for ListRecords and ListIdentifiers.

[edit] IdResolver

  • added bin/n/nameresolver
    • cvstag.idresolver
  • new error message when nameresolver can't find an ID.
    • IDResolver.pm

[edit] Collmgr

Supports database version 8.0 for DLXS release 15.

collmgr-fields.html

  • Added info about recordcount and mediacount
  • Changed documentation for browsefields to include Findaid Class subject searching and to document that first field on browsefields list is used for default browse page in Text and Findaid Class
  • Documented field_rel_weight for relevance ranking
  • Corrected description of pageviewhost based on the changes to make pageview work more like pageturner.
  • More documentation for defatulpagesize.
  • New field for the image sizes to display.
  • Update secondarytitle documenation. This field only implemented in bibclass.
  • Updated collmgr-fields.html (collmgr documentation) for new field "quickbrowse"
  • New collmgr field to disable quickbrowse in dynamic browse page; fixed an authorization issue (related to reusing AUTHZD environment variable), so now picklists conditionally show PDF link; some SPO picklist customization (to work with PDF links)
  • Added customfallbackwebdirs.

addcoll.tpl, addfields.tpl, addgroup.tpl, badidwarning.tpl, checkinconfirm.tpl, checkingroupwarning.tpl, checkinwarning.tpl, checkoutlist.tpl, collmgr-dlxsadm.css, collmgr-user.css, collmgr.css, collmgrdown.tpl, contdeletefields.tpl, deletefields.tpl, displayclassesforrelease.tpl, displayclassselection.tpl, edit.fs.tpl, insertcollidwarning.tpl, insertwarning.tpl, login.tpl, mainmenu.tpl, removeconfirm.tpl, selectionwarning.tpl, updatecoll.tpl, updategroup.tpl, viewlist.tpl, viewreadonlycoll.tpl, viewreadonlylist.tpl

  • Make $gReleaseUserHost quod.lib.umich.edu for us and 0 for partners. Force $gLogin to dlxsadm on this host to support dlxsadm on production host (collmgr must be in the ACL for that host to protect access to collmgr to just those who can authenticate to a production host). Add color effects when running as dlxsadm.

collmgr.cfg

  • version 8.0
  • Added the functionality for a group to have hold capability.

collmgr

  • Fixed bug introduced during hold that was only one collid into the GroupColl table.
  • After 5 sconds of waiting if dbexist is still there remove it and go on.
  • Add debug=env

collmgr, collmgr.cfg, logout

  • Make $gReleaseUserHost quod.lib.umich.edu for us and 0 for partners. Force $gLogin to dlxsadm on this host to support dlxsadm on production host (collmgr must be in the ACL for that host to protect access to collmgr to just those who can authenticate to a production host). Add color effects when running as dlxsadm.

[edit] FindaidClass

browse.xsl

  • Added subject browse and TagCloudFilter for subject browse

langmap.en.xml

  • Added items for subject browse and TagCloud item count for subject browse

help/index.html

  • User now taken directly to relevant search page by FullTextAppXsltPIFiller::BuildHelpLink_XML.

help/bbag-holdings.html, help/bbag-intro.html, help/bbag-srch.html, help/newnav.html, help/res-intro.html, help/res-sort.html, help/srch-basic.html, help/srch-boolean.html, help/srch-intro.html, help/srch-tips.html, help/xc1res-intro.html, help/xc1srch-intro.html

  • Moved here from extraneous html/ subdir.

help/res-intro.html, help/res-sort.html, help/srch-basic.html, help/srch-boolean.html, help/srch-intro.html, help/srch-tips.html, help/xc1res-intro.html, help/xc1srch-intro.html

  • Renamed for consistency with textclass.

help/bbag-intro.html, help/bbag-srch.html, help/results-intro.html, help/results-sort.html, help/search-basic.html, help/search-boolean.html, help/search-intro.html, help/search-tips.html, help/xcresults-intro.html, help/xcsearch-intro.html, help/bbag-holdings.html

  • Files renamed for consistency with textclass; links updated.

dlxsclassglobals.xml, navheader.xsl

  • CacheWebPath

reslist.xsl

  • Added the sliceftr module, adding the results slices to the bottom of the page as in Text Class.

text.components.xsl

  • typo corrected: "Acquisition" now spelled right

FindaidClass/DemofaFC.pm

  • Improved comments and added back in commented out code

FindaidClass/BioghistfaFC.pm

  • Demo of using <bioghist><head> elements to label bioghist section

FindaidAppXsltPIFiller.pm

  • Added sub TagLink_XML to override superclass and include Findaid class specific region name "Subjects" .

findaidclass.cfg

  • Values used for context-sensitive search links.

findaidclass.cfg

  • $gHelpSubdir: more flexibility for location of help files.

[edit] Stats

  • Only count hits with HTTP status 200.
    • stats_driver.pl
  • Change to record stats by year/month rather than year/month/day, to reduce the number of rows in the database.
    • stats_driver.pl

[edit] SRU

  • No changes.

[edit] BibClass

  • No changes.

[edit] XClass

  • No changes.
Personal tools