4.1.1 2018 May 18
CORE IMPROVEMENTS
- On Metadata Tool, do not list temp resources that haven't yet
been saved
CORE IMPROVEMENTS (Internal)
- Added configuration settings to specify MySQL/MariaDB slow query
thresholds for foreground and background execution
- Revamped background task management, to increase task throughput
- Add support for Height and Width parameters in FormUI
- Add TabbedContentUI utility class for displaying content in tabs
- Add PRIV_ISLOGGEDIN Pseudo-privilege for use in Schema/Field
permissions
- Export Users: add support for exporting users with a given privilege
CORE BUGFIXES
- Fixed bug that prevented page cache expiration time from
being changed.
- Do not cache Search Results pages that displayed a
'please do not spider' message
- Fix bug in handling of BMP images
- When queuing search index rebuilds after upgrade, use the
configured priority, rather than 'background'
- After editing field and schema permissions, clear the caches
used to store resource visibility
- Do not cache 404 pages in the static page cache
- Do not allow users to disable fields that are checked by permissions
- Fix bug that prevented Controlled Names from being deleted if
they were in use
- Fix bug preventing 'Populate Field' from functioning for fields
from non-default schemas
- BrowseResources: Fix bug that would only display published resources,
even when a user was logged in
PLUGIN IMPROVEMENTS
- CalendarEvents: Normalize field in the Events schema to match
those in the Resource schema where appropriate
- ResourceExporter: Extend to allow users to save sets of export
settings for later re-use
- UrlChecker: Do not queue tasks to check Urls on Resources from
schemas that have no URL fields, improving throughput
- MetricsRecorder: Add SQL index to improve run time of
CleanBotFromMetrics() tasks
- Mailer: Add a 'Delete All Shown' button to the approval queue
- GoogleMaps: Add URL fingerprinting to the generated KML pages,
allowing site admins to specify how often Google should re-fetch
these pages
PLUGIN BUGFIXES
- GoogleMaps: Fix bug in CleanCaches() that could cause callbacks
information to be prematurely deleted
- Mailer: On approval queue, make message search settings persistent
after View/Delete/Send of individual messages
- BatchEdit: Remove fields that cannot be edited from configuration
of fields allowed for batch editing
- FieldRedactor: fix bugs that prevented Title, Screenshot,
Added By Id, or Cumulative Rating from being redacted
- Folders: Fix incremental search for users in Transfer Folder
- OAIPMHServer: Fix bug in creation of oai_dc format that could
cause it not to have a dc:title element
4.1.0 2018 Feb 8
CORE IMPROVEMENTS
- Many HTML and CSS changes to bring the default CWIS interface
into WCAG 2.0 AA compliance
- Searching for "^XYZ --" will now find XYZ and all its child
classifications
- Moved "Help" pages out of interface files and in to Pages pages,
allowing users to edit and extend them
- Added support for autocomplete dropdowns on FormUI User fields
- Numeric usernames are now forbidden, to avoid ambiguity between a
numeric username and a user ID
- Require secure login over plain HTTP, but do not use it over
HTTPS (which is already secure)
CORE IMPROVEMENTS (Internal)
- Extended FieldEditingUI to support X-DATE-X and X-TIME-X in date
and timestamp fields (used for setting UrlChecker actions and in
BatchEdit)
- Added ItemListUI::AddTopCheckbox(), for easily adding a checkbox to
the top of lists
- Revised table creation SQL to be compatible with new requirements
introduced in MySQL 5.7.x
- Meta tag for site keywords is now added automatically by the core
software (rather than in StdPageStart.html)
- Improved compatibility with PHP 7.2.x
- Refactored Qualifier and ControlledName to be based on Item
- Added PieChart helper to generate pie charts
- Added BarChart helper to generate bar charts
- Added support for PSR-4 PHP class autoloading
- In PrivilegeSet, GetCanonicalFieldIdentifier() is now used to
locate fields
- Dropped support for legacy Local_ functions
- AxisPHP library is no longer used (necessary classes have been
migrated into into the ScoutLib library)
- Deprecated include/StdLib.php (some functions moved into StdLib
class in ScoutLib)
- Whether downloaded files display in the browser or save to file
is now controlled by the browser, rather than being forced to
save to file)
CORE BUGFIXES
- Fixed SavedSearch creation to properly load default values
- Fixed bug in redirect after creating a new saved search
- On EditForum, an error message is now reported when invalid
forum ID is supplied
- Fixed bug with session handling that could caused users to be
unexpectedly logged out during a long session
PLUGIN IMPROVEMENTS
- BotDetector: Split cleaning bots from metrics data into one task
per bot-IP, avoiding orphaned tasks
- DBCleanup: Added cleaning of Saved Searches owned by
non-existent users
- Developer: Extended to support overriding ApplicationFramework
settings via developer.ini
- Mailer: Added outgoing mail approval queue
- Mailer: Added outgoing mail log
- Mailer: Added support for specifying that mail generated for a
template requires manual confirmation before sending
- Pages: Last modification info now displayed at page bottom
- Rules: Added a link to matching resources on the EditRule screen
- UrlChecker: Added tracking of previous check times, use this to
decide how many URLs to check in a background task
PLUGIN BUGFIXES
- Blog: print entries with class="blog-entry" rather than
id="blog-entry", avoiding duplicate ids on pages showing more
than one entry
- MailIt: Send email immediately rather than queuing a task to do
it, making the "Email successfully sent" message more true
- MySearches: Fix handling of searches containing deleted fields
4.0.1 2017 Sep 17
CORE IMPROVEMENTS
- Extended SearchEngine to support 'user is not' searches
- Added help text to all settings on System Configuration
and Advanced System Configuration pages
- Any errors reported by enabled plugins are now displayed on
the Administration page (as well as the Plugins page)
- Added "uadd" command to cwis command line utility.
CORE IMPROVEMENTS (Internal)
- Revised string handling code so that the mbstring extension
is no longer required (though it will be used if available)
- MetadataSchema: clean up and unify caches
- PrivilegeSet::MeetsCondition() refactored for clarity and to
add caching of field values
- ResourceFactory::ImportResourcesFromXml() added to simplify
installation
- Session cookies now have the Secure and HttpOnly flags set
when appropriate, to help minimize the possibility of XSS
attacks
CORE BUGFIXES
- Updated database table definitions to avoid "max key length"
error encountered in some newer default configurations
of MariaDB and MySQL
- Fixed the Currently Logged In and Recently Logged In lists
on the Administration page, so they show the correct
last location for users loading pages via clean URLs.
- On ResetPassword, when a user who never activated their account
successfully resets their password, implicitly activate their
account.
- Fixed issue that prevented AWStats client characteristics
tracker script from being loaded
NEW PLUGINS
- SavedSearchMailings: replaces the saved search mailing
feature previously in the core software, and adds support
for saved search emails for search results from non-default
schemas (e.g. blog posts, events, pages, etc)
PLUGIN IMPROVEMENTS
- DrupalSync: Better error reporting when login sync fails
- MLPHPList: Add local cache of user information to speed up
generating Mailing List Metrics page
- BotDetector: Do not assume that any IP listed by httpBL as
"suspicious" is a bot (as this includes many IPs that are
just part of public wifi networks)
PLUGIN BUGFIXES
- Rules: do not send email for new matches when editing an
existing rule
4.0.0 2017 May 31
CORE IMPROVEMENTS
- In PrivilegeSet, remove the somewhat confusing "Checking
Resource" condition
- On SearchResults, use BotDetector to discourage bots from
spidering search results pages
- Add configurable password complexity rules.
- Added "config", "dumpdb", "list", "loadresources", "mysql",
"mysqlargs", "tdel", "trun", and "userui" commands to cwis
command line utility
CORE IMPROVEMENTS (Internal)
- Significantly extended FormUI class and revamped forms
in many areas to use FormUI
- Create SearchParameterSetEditingUI, for easy embedding of search
parameter sets into other pages (e.g. Rules editing)
- Extend PrivilegeEditingUI and PrivilegeSet to accept fields from
multiple schemas in the same privilege set
- Add "Context Filtering" in ApplicationFramework, which prevents
variables from unintentionally leaking between PHP and HTML
templates
- Store standard field mappings persistently in the database
- Allow standard field mappings to be specified in XML Metadata
Schema descriptions
- Allow schema-level privilege settings to be specified in XML
Metadata Schema descriptions
- Remove all hardcoded references to the "Release Flag" field
- Replace the "Release Flag" in new installs with a more flexible
"Record Status" field
- Added support to ApplicationFramework for user interface
inheritance
- Many, many cleanups of global variable usage
- Upgraded included jQuery UI to 1.12.1
- Upgraded included CKEditor to 4.6.2
- Upgraded included PHPMailer library to 5.2.21
CORE BUGFIXES
- Add missing UserCanView() checks to DisplayReferenceField() on
FullRecord
- Many other minor bug fixes
PLUGIN IMPROVEMENTS
- Developer: Added support for conditional setting sections
in developer.ini (See install/EXAMPLE-developer.ini)
- Developer: Added support for overriding system configuration
values via developer.ini
- DrupalSync: Rewrite to use a REST API to communicate with the
companion Drupal plugin, rather than using access to a shared
database
- Pages: Add summary information in search results
- MetricsReporter: Make all reports available in JSON format for
easier ingestion by other software
- Rules: Completely refactored to use an IF/THEN model
and support complex search parameters in the IF
section and complex email recipient selection parameters
in the THEN section
PLUGIN BUGFIXES
- GoogleMaps: fix incorrect usage of BaseUrl() when generating
KML
3.9.1 2016 Aug 25 (BETA RELEASE)
CORE IMPROVEMENTS
- Searching for when a field was last modified is now
supported ("@" operator -- see new entry in Tips block
on default Advanced Search page)
- User fields can now be configured for automatic updates
when records are changed
- Background tasks can now be explicitly triggered by loading
SITE/runtasks
- Added new "cwis" command line utility (can be found in
"install" directory)
CORE IMPROVEMENTS (Internal)
- Resource and Classification classes are now based off of
a new Item class, and now use a separate Create()
method and throw an exception in the constructor when
passed a bad ID, rather than setting an error code
(IDs can be checked before calling a construct via the
static Item::ItemExists() method)
- Locking has been implemented to prevent multiple simultaneous
invocations of long-running plugin installs or upgrades
- Session start handling has been refactored to better
handle corrupt or missing session IDs
- Connections to the database server are now retried if they
initially fail
- New StdLib class to provide standard utility functions
and constants
- Added code to prevent probability of PHP session garbage
collection from dropping too low
- Made PHP session cleanup more tolerant of extremely full
directories
- FormUI helper object extended with URL field type
CORE BUGFIXES
- Fixed issue with plugin event hooks not being unhooked
when the plugin is disabled
- Miscellaneous fixes to improve PHP 7 compatibility
NEW PLUGINS
- Piwik: adds tracking code for the Piwik web analytics
tool to the HTML header
PLUGIN IMPROVEMENTS
- BrowserCapabilities: refactored to no longer be based off
of Browscap library
- Developer: added support for developer.ini file to force
plugin configuration settings to specific values (see
install/EXAMPLE-developer.ini) and to force plugins to
be enabled/disabled
- Mailer: in-use templates can no longer be deleted.
- MetricsReporter: search log page now part of MetricsReporter
- Pages: EVENT_RESOURCE_MODIFY is now signaled when a page
is edited
- Pages: content excerpts are now generated and stored and
displayed as part of search results
- ResourceExporter: now handles multiple schemas
PLUGIN BUGFIXES
- Mailer: plaintext-only templates should now work correctly
3.9.0 2016 May 20 (BETA RELEASE)
CORE IMPROVEMENTS (Interface)
- Replaced all CSS with SCSS in default interface
- Refactored StdPageStart and StdPageEnd to be easier to understand
and customize, with more and better inline documentation
- Added support for searching across all item types (resources,
pages, blog posts, events, etc)
- Administration page: When log entries contain a URL, they are
now clickable
- Added system configuration option to show metadata field group
names on the FullRecord page
- Search pages were completely rewritten: fielded searches are now
entered on AdvancedSearch, search results displayed on SearchResults,
and the confusingly-named Advanced page no longer exists
- Generalized FullRecord page to work with Resources from
non-default Schemas
- Refactored interface code to make more use of jQueryUI
CORE IMPROVEMENTS (Internal)
- Extended User fields to support multiple values
- Removed numerous deprecated and unused variables that had been
retained for compatibility with much older CWIS versions
(older than 2.0.0).
- When enabling a plugin, any other plugins on which the selected
plugin depends will now be automatically enabled
- Revised logic used to determine plugin initialization order to
be more robust
- Caller information is now included in more exceptions for easier
debugging
- Administration page: Smarter loading of log entries, preventing
OOM errors when cwis.log grows very large
- Added per-metadata-field SearchGroupLogic setting, used when
multiple facets are selected
- Added support for specifying a link target for image fields
- Refactored all plugins and rest of core software to make use of
SearchParameterSet rather than legacy format array encoding
- Added ability to specify priviliges by name (rather than numeric
ID) when loading metdata fields from XML files
- Added support for prefix and suffix operators (^ and $) when
searching text fields
- Added caller context to logged error messages
- Significantly improved compliance with Scout coding standards
(including object and method documentation) in all code
- Updated to be compatible with PHP 7
CORE BUGFIXES
- Fixed bug preventing uninstallation of disabled plugins
- Fixed field permission checking on search pages so that users
cannot search against fields they are not allowed to view
- Updated ImportUsers/ImportUsersExecute to properly use CWUser
rather than directly manipulating Axis--User which would result
in half-created but unusable users
- DownloadFile: prevent Apache from enabling transparent
compression on already compressed files, which can cause issues
with MS Office XML files
- Updated to use Microsoft's recommended MIME types for Office
XML documents
- Fixed bug preventing CKEditor from properly loading CSS for
paragraph fields where rich text editing is enabled
PLUGIN IMPROVEMENTS
- BatchEdit: extended to handle multiple schemas (types of items)
- Blog: extended to allow sending of confirmation message on
unsubscription to email notifications
- CalendarEvents: added support for user-owned events
- Folders: extended to support transferring folders between users
- Folders: extended to be able to contain multiple types of items
- GoogleMaps: now exposes more of the fine-grained address data
provided by Google
- MailIt: added new template keyword for recipient's email address
- MetricsReporter: added tracking of Blog subscriber stats
- UserCreator: extended to prompt for custom User schema fields when
new users are created
PLUGIN BUGFIXES
- UrlChecker: display correct count for 'Permission Denied' errors
- UrlChecker: don't attempt to check URLs from deleted fields
- Pages: added support for specifying which tab should be selected
in the URL
3.2.0 2015 Jun 11
NEW PLUGINS
- new plugin: BatchEdit, allows modifications to groups
of resources
- new plugin: MailIt, allows users to send resource
summaries to themselves or others via email
- new plugin: MySearches, displays recent searches conducted
by the user
- new plugin: PHPList, supports integration with PHPList
as another option for announcement lists
- new plugin: XML Sitemaps, to provide search crawlers
with a directory of pages to be indexed
PLUGIN IMPROVEMENTS
- Blog plugin: added support for multiple blogs and replaced
older 'Site News' functionality with a Blog
- Folders plugin: revised to add/remove items from folders
via AJAX (no page reloads)
- Developer plugin: added support for automagically prepending
a specified URL prefix to missing files/images to fetch
them from an external site
- Developer plugin: added ability to configure which
privilege flags are required to see page load info
- Developer plugin: added email whitelist support, to prevent
email being inadvertently sent to end users when testing
with a copy of a production site
- GoogleMaps plugin: added support for customization of
which UI controls are displayed
- Mailer plugin: new X-RESOURCEVIEWURL-X keyword
- Mailman plugin split into MailingList and Mailman plugins,
the former providing generic support for integration with
any mailing list platform
- Pages plugin: added support for rich text editing
- Pages plugin: added support for uploading and inserting
images and downloaded files into a page
- Pages plugin: now stores data in a separate metadata
schema (with accompanying full privilege customization
support)
- UrlChecker plugin: more flexible configuration of what
actions should be taken when 'withhold' and 'release'
buttons are used
CORE IMPROVEMENTS
- server-side caching of generated HTML for logged-out or
anonymous users
- added support for URL fingerprinting of static assets
(images, css, javascript), so that far-future cache
expiration times can be used
- added automatic minimization of javascript files
- classification editing can now search for matching terms
to edit, simplifying management of large vocabularies
- installation: improved checking for required PHP extensions
and better error reporting when they are missing
- use HTTP response codes to redirect to a CleanURL when
one is available for a given page
- added a per-metadata field CopyOnResourceDuplication
option
- refactored to use PHP mysqli_ functions rather than the
(soon-to-be-deprecated) mysql_ functions
- revise database schema to provide defaults for all columns
resolving installation problems when STRICT_TRANS_TABLES
mode is enabled in MySQL
- improved logic used in determining which resources
match a saved search (previously only newly released
resources could match)
- added far-future expiration times in default .htaccess
to make better use of client-side caching
- updated the sample records to better showcase features
like faceted searching
- replaced internal JavaScript code with jQueryUI usage
where applicable
- added display of recent log messages to Administration page
- added option to generate compact CSS from SCSS code
3.1.1 2014 Oct 20
- added support for SCSS (SASS CSS extension language)
- fixed bug in resource creation where flags with a
default value of "Off" would not explicitly be set by
PHP (though they were still set by MySQL)
- fixed issues with Classifications that start with a
punctuation character
- removed display of "()" on resource editing complete
page, for fields with item-level qualifiers and items
that have no qualifier set
- improved sorting of AJAX dropdown search results on
resource edit page for controlled vocabularies that
have terms like "Science--Study" (the lack of spaces
around "--" was previously problematic)
- fixed upgrade issue where fields from non-Resource
schemas could be displayed on the EditResource page
- fixed a problem with the current folder being reset to
"Main" upon folder deletion when the current folder
was not the one being deleted
- fixed problem with missing Accessibility Wizard method
being called from legacy interfaces
- added additional diagnostic output upon image upload
failure
- other minor bug fixes
3.1.0 2014 Sep 5
- revamped and extended permission/privilege system to
support more complex workflows and separate out
per-schema and per-field permssions configurations
- moved Google Analytics support to plugin and added
support for Google site verification code
- moved RSS feed support to plugin (RSSExport) and added
ability to create RSS feeds on any page using items
from any schema type (resources, events, blog posts)
- moved metadata export to plugin (ResourceExporter),
which includes the ability to export selected fields
from resources gathered into a selected folder
- added plugins for exporting resource metadata in XML
(REFormatXml) and tab-delimited form (REFormatTsv)
- added display of most frequently used terms at the top
of the AJAX dropdowns for Tree and Controlled Name
fields when editing resources
- updated included files for Cancore, Dublin Core, NSDL,
and USGS vocabularies to correspond with the latest
revision of those vocabularies
- added Advanced System Configuration page (reachable off
of the main System Configuration page) that now
contains the more seldom-used technical settings
- fixed bug that munged relative paths in interface files
that begin with slashes when loading from a clean URL
- made numerous small fixes for better HTML standards
compliance
- BotDetector plugin: improved overall detection of bots,
including explicit support for detecting bots that do
not load appropriate CSS or JS files
- BotDetector plugin: added support for Project Honeypot's
http:BL service for enhanced detection
- BrowserCapabilities plugin: changed phpbrowscap
handling to reduce memory usage issues
- CalendarEvents plugin: added searching to event list
- Developer plugin: revised Variable Monitor to display
all POST values instead of just "F_" variables
- Folders plugin: added pagination to folder contents
and greatly increased the number of items that can
be placed in a single folder
- Mailer plugin: mail is no longer sent to users with
disabled accounts
- MetricsReporter plugin: added interactive tabular and
graphical displays of collected metrics data
- OAI-PMH Server plugin: added support for specifying
default values for fields
- UrlChecker plugin: improved loading speed of results
page when there are a large number of broken URLs
- many minor and a few not-so-minor bug fixes
3.0.2 2014 Apr 16
- added support for allowing HTML in forum posts
- added support for WYSIWYG editing in forums posts
- fixed installation bugs in Tags, Blog, MetricsRecorder,
and CalendarEvents plugins
- fixed bug where disabled fields would be displayed on
MetadataFieldOrdering page if they were in a group
- fixed bug where folder buttons would not reliably display
when CleanURLs were used
- tweaked URL Checker plugin to display the broken URL,
rather than the primary URL field
- changed feedback form to skip validation when Cancel
button is pushed
- fixed a race condition that only allowed one temporary
resource to be edited at a time
- fixed a bug with caching of resource counts that would
always grey out the very first menu entry on the
AdvancedSearch page
3.0.1 2014 Feb 10
- added setting of default database storage engine during
installation
- added ability to change login prompt text
- updated login to more reliably return users to the page
they were browsing prior to logging in
- fixed a bug that prevented an Advanced Search from
working on Reference fields
- updated faceted search to properly display tree fields
where no top-level values are assigned to resources
- added several modifications and additions to
significantly decrease page load times
- improved task crash info display
- added option to log slow page loads
- GoogleMaps: revised so that when two map markers have
the exact same geographical locations, one of them
will be shifted slightly so that both will be visible
- AutoScreenshots: fixed a bug preventing plugin from
working with multiple image support
- several significant performance optimizations
- some other minor bug fixes
3.0.0 2013 Nov 26
- added support for faceted searching
- added support for custom user information fields
- added support for multiple uploads to Image fields
- added support for incremental keyword searching
- added support for e-mail notification subscriptions to
blog entries
- updated the URL checker task queuing mechanism to be far
more efficient and capable of checking more URLs per day
- reorganized plugin file structure
- revamped default schema, qualifiers, and sample resources
to load from XML file
- removed vestigial NetPBM image support
- moved most remaining CWIS 1.x backward-compatibility
measures to BackwardCompatibility plugin
- further expanded developer documentation
- many minor and a few not-so-minor bug fixes
2.9.0 2013 Sep 30
- alpha release (pre-3.0)
- added new conditional privilege system for metadata
schemas and fields
- added internal support for multiple metadata schemas
- added incremental keyword search (disabled by default)
- added the ability to use Mailer (plugin) templates for
saved search mailings
- added Periodic Events list to Task Queue page
- completely revamped user help
- CleanURLs plugin added (provides SEO-friendly clean URLs
for resource browsing and full record pages)
- CalendarEvents plugin added (provides configurable
full-featured events calendar)
- Blog plugin added (provides blog support)
- MobileUISwitcher plugin added (provides the ability to
automatically switch to a particular user interface if
a mobile device is detected)
- SocialMedia plugin added (provides social-media-friendly
data in resource full record pages to make them
more easily shareable via social media)
- UserCreator plugin added (provides the ability to create
new user accounts on the fly when editing resource
records)
- moved all customizations and dynamic file storage under
"local" tree
- many CWIS 1.x compatibility measures moved into
BackwardCompatibility plugin (and some dropped)
- added support for using minimized JavaScript
- updated CKEditor
- significantly expanded developer documentation
- many minor and a few not-so-minor bug fixes
2.4.1 2013 Jun 10
- fixed searching for controlled names shorter than the
SQL full-text minimum word length
- HTML is now allowed in announcements on the home page
- many fixes focusing on e-mail, including character
encodings, line endings, and plain text alternatives
- more robust database upgrades
- many other bug fixes
2.4.0 2012 Nov 20
- revamped the metadata field ordering functionality
- added the ability to group metadata fields primarily to
show/hide many at a time
- updated the metadata field editor interface
- added "Requeue All" option for orphaned tasks in
task queue
- added "Recently Added Records" display to Metadata
Tool home page
- added server load average display to Administration page
- added support for using SMTP for email delivery
- added Pages plugin (add and edit non-resource pages with
a WYSIWYG interface)
- added Developer plugin (displays additional info useful
for development and debugging)
- added Backward Compatibility plugin (encapsulates
some of the CWIS 1.x backward compatibility code)
- Folders plugin: Added the ability to add search results
to the currently selected folder
- GoogleMaps plugin: improved KML 2.2 schema compliance
- MailMan plugin: one-click unsubscription mechnaism
- DrupalSync plugin: added automatic propagation from
CWIS to Drupal for CWIS accounts that predate
CWIS/Drupal synchronization
- AutoScreenshot plugin: improved error handling and
added support for wkhtmltoimage-amd64 for 64 bit
servers
2.3.1 2012 Jun 7
- limited release
- introduced completely revamped Metadata Field Editor
main page interface
- added Folders plugin
- added email test functionality to Mailer plugin
- modified various internal URL-generation functions to
work correctly on completely HTTPS-based installations
- added hooks for modifying resource editing privileges
- added hooks for modifying authoring/editing/viewing
privileges on a per-field basis
- added installation log
- added distribution integrity check during installation
- added option to pause background task execution
2.3.0 2012 Feb 28
- added AutoScreenshot plugin for automatic screenshot
generation
- added caching for statistics displayed on the Metadata
Tool home page
- added Instructions support for metadata fields
- added multiple defaults for option lists
- incorporated a WYSIWYG editor
- added revamped user list interface with sorting and
searching capabilities
- added UI file location caching to reduce server load
- added Metrics Reporter stats to full record page
- many minor and a few not-so-minor bug fixes
2.2.4 2012 Jan 11
- limited release
- added support for specifying User field settings as
metadata field access privileges
- added support for editing User fields
- added support for setting specific privilege sets that
limit the legal values for a User field
- added internal tracking of metadata field modification
times on a per-resource basis
- added Mailer plugin for creating and sending generalized
email notifications
- added Rules plugin for setting up metadata change
conditions that will trigger email notifications
2.2.3 2012 Jan 5
- added Tags plugin for Flickr-style tagging
- refactored search result page internal structure
- many minor and a few not-so-minor bug fixes
2.2.2 2011 Oct 21
- added support for CAPTCHA during new user signup
- added support for remapping controlled name fields
- added Author Autofill plugin for automatically copying
author information into specified metadata fields
- added User Account Pruner plugin for automatically
pruning unactivated and unused user accounts
- added Field Redacter plugin for redacting values of
specific metadata fields for anonymous users
- added preliminary version of Metrics Reporter plugin
- added support for plugin configuration instructions
- a few minor bug fixes
2.2.1 2011 Sep 7
- Image fields can now be configured to require a user
privilege to preview
- images (including preview and thumbnail versions) are
now resized when the dimensions for the associated
Image field change
- Tree fields can now be configured to require a user
privilege to browse with them
- whether metadata fields show up as options for sorting
search results is now configurable
- the default sort option for search results is now
configurable
- privilege set assigned to new users can now be configured
- display of qualifiers on the full record page is now
configurable on a per-field basis
- user interfaces can now include a REQUIRES file that
lists which CSS files they require loaded
- OAIPMHServer plugin: an XSLT file can now be uploaded
to be applied to the OAI-PMH XML before it is output
- OAIPMHServer plugin: OAI elements can now be mapped
to be filled in with the full record page URL
- OAIPMHServer plugin: can now auto-generate XSD for
custom formats
- added compatibility updates for MySQL 5.5 (MaxValue
is now escaped to avoid conflict with new keyword
and default storage engine is now forced to MyISAM
for new installations)
- many minor and a a few not-so-minor bug fixes
2.2.0 2011 Jun 23
- complete revamp of CSS usage in all included UIs
- added MyForumPosts plugin for displaying user's recent
forum posts or resource comments
- added DBCleanUp plugin to clean up stray database
entries resluting from debugging or development
- added Mailman plugin to provide functionality to
implement Mailman mailing list subscription management
- added AddThis plugin to provide interface to AddThis
sharing service
- added OpenIdServer plugin to provide support for using
CWIS as an OpenID server
- added NavEditor plugin to provide web interface for
modifying main and secondary site navigation options
- added BotDetector plugin to provide internal service
for trying to determine whether or not user is a bot
- added MyResourceViews plugin for displaying list of
resources user has recently viewed
- added option to specify whether HTML is allowed in
text or paragraph metadata fields
- added support for stemming of search terms
- added default search synonym list for new installations
- added non-UTF8 handling of incoming and exported RSS
- forms revamped to improve accessibility
- HTML5 input elements added to improve performance with
mobile user agents
- many minor and a a few not-so-minor bug fixes
2.1.2 2011 Mar 8
- added usage display to Option List editing page
- added CAPTCHA to feedback page
- many minor and a couple of not-so-minor bug fixes
2.1.1 2010 Dec 22
- revamped full record page layout in default UI
- added support for mixed file/link resource collections
- expanded developer documentation
- added CAPTCHA and OpenId plugins to default
distribution package
- several minor bug fixes
2.1.0 2010 Oct 20
- added Google Maps plugin
- added phpBB login synchronization plugin
- added OpenID single-sign-on plugin
- replaced internal OAI-PMH server support with plugin
that supports user configurable metadata formats
- added CAPTCHA plugin to protect against spambots
- enhanced URL checker plugin
- added background rebuilding of search and recommender
databases
- added support for secure logins
- added "Recent User Logins" display
- added "Recently Modified Records" display
- added options to jump to beginning/end and in 20%
increments to search results interface
- added toggle for search result ordering
- added confirmation of user email address changes
- made search result settings and Advanced Search
field selections persistent
- added "Auto-Submitted" and "Precedence" lines to
default saved search email template to reduce
responses from vacation programs
- added many new event hooks (for plugins or other
customization)
- fixes for compatibility with PHP 5.3
- several minor and a few major bug fixes
2.0.4 2010 Mar 10
- several minor and one major bug fix
2.0.3 2010 Feb 26
- removed "Optional" setting for Flag fields
- added USGS Thesaurus vocabulary
- added toggle for Advanced Search limit display default
- added auto-reload of Task Queue page
- several minor and a few major bug fixes
2.0.2 2010 Jan 5
- fixed three minor but significant bugs
2.0.1 2009 Dec 31
- added login and logout return address events
- added initial interface implementation doc
- several minor and a few major bug fixes
2.0.0 2009 Dec 18
- production release
- Drupal Synchronization plugin added
- URL Checker plugin added
- Latitude/Longitude Points plugin
- many minor and a few major bug fixes
1.9.3 2009 Nov 9
- beta release
- added many new hookable events
- added comment spam cleanup option
- PHP strict conformance cleanup
- many minor and several major bug fixes
1.9.2 2009 Sep 30
- alpha release
- added "Point" base metadata field type
- improved plugin error checking
- enhanced plugin subsystem
- added task queue display
- further expanded developer documentation
- some minor bug fixes
1.9.1 2009 Sep 18
- alpha release
- added event subsystem
- added plugin subsystem
- added "URL" base metadata field type
- expanded developer documentation
- many minor and several major bug fixes
1.9.0 2009 Aug 17
- alpha release
- moved to Scout application framework
- refactored internal structure
- converted all themes to interfaces
- added "http://mysite.edu/rNNNN" full record shortURL
- added "http://mysite.edu/bNNNN" browse shortURL
- added "http://mysite.edu/s=keywords" search shortURL
- added online class documentation
- added search result sorting
- many minor bug fixes
1.5.2 2009 May 29 21:00 GMT (CWIS-only release)
- bug fixes (many security-related)
1.5.1 2009 Jan 23 17:00 GMT (CWIS-only release)
- 100% web-based installation and upgrade
- many minor and a few not-so-minor bug fixes
1.5.0 2008 Mar 31 22:00 GMT (CWIS-only release)
- new XML-based controlled vocabulary import support
- new OAI harvest log display
- new "Refine Search" option on search results page
- new Search Log display
- new Failed Search Log display
- 100% web-based installation (beta)
- many minor and a few not-so-minor bug fixes
1.4.2 2007 Nov 1 22:30 GMT (CWIS-only release)
- beta release
- added support for per-field permissions
- added new resource editor
- added new Collection Administrator user role
- sepearated Admin interface into Collection/User/System
- added event logging
- added custom privilege flags
- revamped Advanced Search interface to reduce complexity
- added simple resource suggestion interface
- added "Recent Searches" box
- added resource record problem reporting
- IMPORTANT: minimum MySQL version is now 4.1
1.4.1 2007 May 30 23:30 GMT (CWIS-only release)
- beta release
- PHP 5 and MySQL 5 compatible
- added support for synonyms in search
- converted to use superglobals (PHP 4.1.0 or later now
required)
- completely revamped new account signup and "forgotten
password" mechanisms
- added anti-spam protection to feedback form
- greatly sped up advanced searches that have limits
- added new "File" base metadata field type
- added new AJAX-style quicksearch in Metadata Tool for
Tree fields with more than 250 values
- incorporated all outstanding security patches
- various minor bug fixes
1.4.0 2006 Jan 25 20:00 GMT
- completely overhauled search top-level infrastructure
- introduced new "include/SPT--Local.php" file that can
be used to define specific user-coded functions (see
include/SPT--Local--EXAMPLE.php)
- all searches are now linkable and bookmarkable
- added support for defining saved search e-mail header
values (see SPT--SearchMailTemplate--Body.txt)
- field lists in Advanced Search are now alphabetical
- revised fielded searching mechanism (OSMASE) to reduce
memory usage
- new "My Searches" box now available (CWIS UI only)
- added site keyword configuration (for Google and
other search engines to pick up when spidering)
- updated OAI-SQ support to match full protocol extension
- added accessibility metadata fields to default CWIS
schema and Access Match feature to hilight resources
where those fields match Accessibility preferences
as determined for user via mini-wizard
- added capability to add parameters to filter records
available for OAI (see SPT--Local--EXAMPLE.php)
- added RSS feed importing and display capabilities
(CWIS UI only)
- added PHP configuration display option
- user is now returned to current page when logging in
if appropriate
- added RSS feed indicator for RSS-aware browsers
- "Test OAI" link updated
- various minor bug fixes
1.3.1 2004 Oct 27 16:00 GMT
- added accessibility "mini-wizard" as partial support
for ACCLIP
- added support for OAI-SQ (OAI search query extension)
- added ability to page through user list
- added support for removing user forum posting access
from within forums
- added ability to delete Tree field values that have
child values or have resources assigned to them
- added support for searching controlled name variants
- expanded number of date entry formats supported
- various minor bug fixes
1.3.0 2004 Aug 6 20:00 GMT
- beta release
- synchronized SPT and CWIS version numbers
- added support for OAI sets
- added ability to export Tree, Controlled Name, and
Option fields via the Metadata Field Editor
- replaced integrated search engine with OSMASE version
of engine (adds improved internal query support)
- increased field size for adding/editing classifications
to 120 characters
- importing of data will now translate \t and \n (tab
and newline) to literal values
- added support for customizable templates for saved
search e-mails
- added an optional unique field for data import
- replaced most application-level SQL direct queries with
calls to object methods
- fixed more E_NOTICE warning messages
- fixed bug that generated htmlspecialchars() error
- various minor bug fixes
1.2.3 / 1.1.1 2004 Apr 28 18:00 GMT
- added new "Personal Resource Administrator" user
privilege flag that only allows entering new resources
and editing resources you have entered
- new interface for assigning controlled names and
classifications if the there are less than 250
- "Records Per Page" on Advanced Search now remembers
the value you entered
- improved handling of diacritics (Unicode)
- eliminated obsolete ClassificationTypes and
ControlledNameTypes tables
- importing users now supports user privileges
- added new DateOfRecordRelease field
- fixed bug where multi-word controlled name or
classification fields didn't work
- fixed many E_NOTICE warning messages
- various minor bug fixes
1.2.2 / 1.1.0 2004 Feb 11 20:30 GMT
- added support for multiple tree (classification) fields
- added ability to populate tree fields with prepackaged
GEM subject taxonomy
- added support for unicode UTF-8 character coding
- improved import and export utilities
- revamped saved search (user agent) feature
- fixed import user bug which created empty user accounts
- various minor bug fixes
1.2.1 / 1.0.1 2003 Nov 26 18:30 GMT
- revised resource summary display (in SPT--Common.php)
to reduce system load
- various minor bug fixes
1.2.0 / 1.0.0 2003 Nov 14 20:00 GMT
- added RSS and OAI links and test buttons to admin page
- added registration capability on admin menu
- purge sample records now also purges controlled names
- can now specify administrator's email during install
- user account management has been improved
- metadata tool page now reports accurate number of
controlled names
- various minor bug fixes
1.1.8 / 0.9.4 2003 Oct 30 20:00 GMT (CWIS-only release)
- added "newinterface" script to create new UI to use as
starting point for customization
- added instructions for creating and customizing a new UI
- added low vision / CSS user interface
- added ability to search for user accounts
- added ability to delete users
- added permission flags to control whether a user can
post resource comments or post to forums
- various minor bug fixes
1.1.7 / 0.9.3 2003 Sep 26 18:00 GMT
- fixed upgrade-related bug that could initially leave
users with non-functional UI setting
- CWIS-only release
1.1.6 / 0.9.2 2003 Sep 23 20:30 GMT (CWIS-only release)
- first beta release of CWIS
- revamped OAI configuration interface
- added user interface themes [CWIS only]
- added capability to specify display and editing order
of metadata fields
- added specification of administrator login and password
during installation
- revamped default metadata schema to include all fields
supported under nsdl_dc [CWIS only]
- added initialization of OAI configuration to plausible
values during installation
- fixed various minor bugs
1.1.5 / 0.9.1 2003 Sep 16 02:30 GMT (CWIS-only release)
- added support for OAI harvesting of nsdl_dc format
- updated help
- revised OAI field mapping mechanisms
- added support for OAI harvesting of qualified metadata
- tweaked sample data to demonstrate greater variety
- revised default schema to contain all fields supported
by nsdl_dc harvesting format
- added notes clarifying DC encoding scheme usage
- added specific support for allowing and displaying
non-destructive HTML tags within text and paragraph
field data and user comments
- added support for administrator editing of About content
- fixed various minor bugs
1.1.4 / 0.9.0 2003 Sep 4 00:30 GMT (CWIS-only release)
- first (alpha) release of CWIS
- added support for qualifiers
- added additional stats to MT home page [CWIS only]
- revised (internal) image storage format
- revised (internal) Metadata Tool infrastructure
- added option to disable announcements
- fixed various minor bugs
1.1.3 2003 May 23 14:30 GMT (SPT-only release)
- fixed bug that prevented dates containing full month
names from being parsed correctly
- fixed bug that could cause server log error messages
when controlled name field had no names entered
- fixed bug that could cause searches to fail where a
possessive word form is followed by a word that
begins with an upper case letter
- fixed bug where editing or searching for a controlled
name that contained special characters (quotes, etc)
could cause an SQL error
- fixed bug that could cause the word "Array" to appear at
the top of the Edit Resource or Preferences pages
- fixed bug that could cause Next Results to not display
the correct resources in the Edit Resource search
- fixed bug that could cause Previous Results in search
to give you the same page of results
- Date Issued is no longer a Required by SPT field
- fixed bug that could prevent flag fields whose default
was True from being disabled
- option lists in Add/Edit Resource are now sorted
alphabetically
- changed "Image" metadata field type to "StillImage" to
comply with DCMI
- fixed bug that could cause searches for Added By and
Last Modified By to not work correctly
- Added By and Last Modified By now appear in the full
record display if the user has RESOURCE_ADMIN privs
- added System Configuration flags for disabling updating
of the search and recommender databases to speed up
adds, updates, and deletes of resources
- added check in Metadata Field Editor to prevent adding
two fields with the same name, which could create a
database inconsistency
- added full support for searching Date and TimeStamp
fields (may enter date ranges and dates in various
formats)
- revised Help layout and content
1.1.2 2003 Mar 13 22:00 GMT (SPT-only release)
- code cleanup to better support register_globals = OFF
- fixed bug where full page display only displayed one
classification
- fixed bug where sql errors occurred in RedHat 8 when
assigned controlled names
- fixed bug where option fields were not being displayed
in full record
- the title on full record display is now hyperlinked to
the url
- fixed bug where classification label was being displayed
on full record display even if no classification
existed
- fixed bug where purged records would display as empty
records if searched for
- fix bug where import would fail if the import file
contained more than 500 lines
- changed Add New Record to display default values for
all fields prior to adding record
- fixed bug where selected option values were not being
displayed on full record display
- fixed bug that could cause image thumbnails to not be
displayed under certain circumstances
- fixed bug that could cause phrase searching to fail when
image fields are included in searchable field list
1.1.1 2003 Feb 27 22:30 GMT (SPT-only release)
- made Url metadata field no longer required by SPT
- fixed various bugs related to interface customization
- added legal notice in system configuration
- dates with format MM/DD/YY are now supported
- fixed full record links on Recommendation Sources screen
- Date Issued, Url, and Description are no longer required
on import
- help is now displayed more consistently
- fixed bug where Image title was always Image Url in RSS
- fixed bug where disabled controlled names where
still displayed in the full record
- fixed bug where export would not export records that
did not have an assigned controlled name or
classification
- simplified and improved data export and import
- added ability to export all resource records
- improved logo file upload error handling
- improved image upload error handling
1.1.0 2003 Feb 11 20:30 GMT (SPT-only release)
- reworked many parts to run better under PHP safe_mode
- added image field type and the ability to upload images
to a resource record
- added support for customization of colors and logo in
default user interface (now called "SPT Blue")
- revised recommender system DB rebuild to reduce memory
usage for larger collections
- fixed bug that caused recommender system manual DB
rebuild to fail on some systems
- fixed bug which caused an SQL error when assigning a
classification using Linux 8.x
- added ability to browse and upload an import file
- added the number of resources associated with a
classification on the Assign Classifications page
- when clicking on the name of a person posting to a
forum, SPT now launches an e-mail compose page
with the subject line filled in from the message
- fixed various display bugs in the Clean Orange interface
- fixed bug where previous "edited by" comment and forum
messages where editable
- added distinct Release Flag privilege
- added distinct Edit User Account privilege
- fixed various bugs associated with Apache safe-mode
- changed Date Issued to no longer be a required field
- fixed bug where invalid Date Issued values were not
handled correctly
- fixed bug where the moderator was not being set
correctly when adding a new forum
- fixed bug where user searches were not being save
correctly
- fixed bug where user agents would not always run
- fixed bug where exported files were not always getting
generated
- import and export files are now created in a local
/TempStorage directory instead of /tmp
- changed option list default values to be used for
adding new resources instead of advanced search
- changed User Agent handling on the preferencs screen
to suppress the Save User Agents button when
no saved searches existed
- only one header bar is now displayed in forums when
there are no messages associated with a topic
1.0.2 2003 Jan 3 21:30 GMT (SPT-only release)
- fixed bug where assigned classifications would replicate
prior to adding the record
- fixed bug where assigning a classification that already
exited would cause a syntax error
- fixed bug where rebuilding the search DB would cause an
infinite loop
- added ability to page through old (older than 30 days)
news items
- fixed bug where new controlled name types were getting
added with the wrong ControlledNameTypeId
- added ability to search by Last Modified By in the
metadata tool
- fixed bug where you could get to preferences via help
if not logged in
- fixed bug that prevented SQL commands from being run in
certain situations during an upgrade installation
- revised home page generation to allow HTML tags in
announcement headings and text
- fixed various issues with RSS export to comply with RSS
2.0 standard
1.0.1 2002 Nov 20 20:00 GMT (SPT-only release)
- reduced install execution time to help avoid exceeding
default 30-second limit imposed by PHP
- added work-around for PHP config value register_globals
being set to OFF
- fixed bug with resumption tokens in OAI 2.0 support
- added additional exception checking to OAI 2.0 support
- fixed bug with permission checking in Metadata Tool
1.0.0 2002 Nov 15 19:00 GMT (SPT-only release)
- added resource comments
- added support for OAI 2.0 harvesting (export)
- added support for filtering searches based on their
cumulative user rating
- fixed bug that could prevent Advanced Search from
working on imported data
- added ability to import user accounts
- added e-mail links to resource editors in Metadata Tool
- added dynamically-generated metadata field help in
Metadata Tool based on local field definitions
- fixed various minor bugs
0.9.7 2002 Oct 17 20:30 GMT (SPT-only release)
- added metadata field editor, which allows all types of
fields to be added, deleted, or disabled,and
gives control over field labels, search weighting,
and much more
- revised many of the system internals to accomodate the
greatly increased flexibility introduced by the
metadata field editor
- added system configuration parameter to set the maximum
number of "News & Announcements" entries to be
displayed on the front page
- install now creates installation directory if it doesn't
already exist
- revised User Agent e-mail message format to include the
portal name (as defined in System Configuration)
- added option for resource administrators to have a User
Agent check for new resources every hour
- added option to e-mail password to user if forgotten
- improved date entry, so most common date formats can be
entered
- fixed various minor bugs
0.9.6 2002 Jul 26 02:00 GMT (SPT-only release)
- added import of sample resource data during installation
- an option is provided to purge sample resource data and
classifications from the database
- a bug with resource record ID assignment was fixed
- an initial message must be posted as part of adding a
new forum topic
- a bug that made the Forum and Topic title bars invisible
has been fixed
- an option for exporting resource data in a tab-delimited
format is now provided
- searching for controlled names and clasifications in the
Metadata Tool has been made more consistent with
resource searching
- fixed various minor bugs
0.9.5 2002 Jun 26 22:00 GMT (SPT-only release)
- added Forums (bulletin boards)
- added Recommendations (content-based recommender system)
including a "Why was this resource recommended to
me?" feature
- added display of resource ratings on front page, while
browsing, and in search results
- revised classification and controlled name handling in
Metadata Tool
- added option to set default release flag status
- fixed various minor bugs
0.9.4 2002 May 21 20:30 GMT (SPT-only release)
- added resource rating
- added ability for user to save Advanced Search settings
- added "user agents" to run preset searches at specified
time and mail results to user (allows users to be
automatically notified of new resources)
- added RSS 0.9.2 export (allows other sites to display
new headlines (resource titles) from your site)
- revised Advanced Search to support result ranking by
relevance
- added support for Google-style "and" searching (all
terms required in all search results)
- added option for administrator to specify default
search term handling ("and" or "or")
- expanded online help
0.9.3 2002 Apr 5 20:30 GMT (SPT-only release)
- added support for prepending words with "-" to exclude
them from a search
- added capability to add and remove controlled name types
- added support for allowing users to select between
different portal user interfaces at will
- added "Clean Orange" second user interface for portal
0.9.2 2002 Mar 6 20:30 GMT (SPT-only release)
- revised and expanded metadata fields to bring default
configuration into compliance with Dublin Core
- further separated HTML and PHP to support customization
of interface
- added hooks to support site-specific selection of
announcements and resources on home page
- revised keyword search to support relevance ranking of
results
- made keyword search result pages bookmark-able (search
encoded in URL)
- added page generation time to bottom of pages displayed
when logged in with an account with System Admin
privileges
- added search time to keyword search results
- added hooks to support site-specific filtering of search
results
- added "active user interface" support, that allows
switching between multiple user interfaces within
a single SPT installation on-the-fly
0.9.1 2002 Feb 7 20:15 GMT (SPT-only release)
- added support for upgrade installation
- changed destination directory for installation to
directory specified by installer, instead of
directory specified by installer plus "/SPT/"
- added new browsing interface with dynamically-generated
navigation links that adapt to broad or deep
classification schemes
- added check to block access to web install interface
after installation is complete
- added capability to delete classifications
- added SPT Revision History display option
- added check to prevent a system administrator from
accidentally revoking their own sys admin privileges
- announcements can now be deleted
- a release flag has been added to resource records to
indicate whether they are approved for viewing or not
- when browsing resources, the title is now linked to
the site URL rather than the full resource record,
and a Full Record link follows the description
- adding controlled names in the metadata tool has been
improved
- searching for words of three letters or less is now
supported
- a bug has been fixed that could, under some conditions,
force the re-entry of data when adding a new resource
record and assigning controlled names or
classifications to that record
- the workflow when deleting a duplicated record has been
improved
- searching and sorting resources by the resource creator
is now supported
- added support for specifying portal name
- added capability to configure number of classifications
per page in resource browsing interface
- added support for specifying administrator email address
- added HTML page titles to most user-visible pages
- added support for editing text of e-mail message sent to
new users containing their password
- added user feedback submission screen
0.9.0 2001 Nov 27 19:40 GMT (SPT-only release)
- initial beta release of Scout Portal Toolkit