Here at UC Irvine Libraries, we use a home-grown Hours system built on MSSQL/PHP. Each year, we load a new calendar year into our Hours database using data from three sources: a perpetual calendar database, a database of local academic calendar dates obtained from the Registrar, and a database of default hours for each of our libraries and service points. Once loaded, select staff from each library and service point are able to customize the hours data for their particular locations using a simple webform-based admin system. We typically load the default data a year in advance and previous years' data is retained and fully accessible as well. We find this set-up gives us maximum flexibility in feeding this data out in various formats for display in a variety of ways, including a daily hours display on our home page (http://www.lib.uci.edu/) and a full calendar display (http://www.lib.uci.edu/hours) as well as in widgets used by staff in various ways. The full database is also accessible via simple RESTful queries. The same database is used by various other in-house applications, including our catalog, that need to know hours of operation as part of their functional requirements.
Mark F. Vega
UC Irvine Libraries - Web Services
[log in to unmask]