/*
-** $Id: client.js,v 1.18 2007-04-16 20:23:25 quinn Exp $
+** $Id: client.js,v 1.22 2007-04-30 14:28:09 quinn Exp $
** MasterKey - pazpar2's javascript client .
*/
/* start with creating pz2 object and passing it event handlers*/
-var my_paz = new pz2( { "onshow": my_onshow,
+var my_paz = new pz2({
+ "onshow": my_onshow,
//"showtime": 1000,
//"onstat": my_onstat,
"onterm": my_onterm,
"termlist": "xtargets,subject,author,date",
//"onbytarget": my_onbytarget,
- "onrecord": my_onrecord } );
+ "onrecord": my_onrecord,
+ "errorhandler": my_errorhandler
+ });
/* some state variable */
var currentSort = 'relevance';
curQuery.clearFilter();
fireSearch();
drawBreadcrumb();
+ $('div.motd').empty();
$('div.content').show();
$("div.leftbar").show();
return false;
** pz2 Event Handlers ***********************************************************
*********************************************************************************
*/
+function my_errorhandler(err)
+{
+ switch (err.message)
+ {
+ case 'QUERY': alert("Your query was not understood. Please rephrase."); break;
+ default: alert(err.message);
+ }
+}
/*
** data.hits["md-title"], data.hits["md-author"], data.hits.recid, data.hits.count
if( author ) {
recBody.append('<i> by </i>');
$('<a name="author" class="recAuthor">'+author+'</a>\n').click(function(){
- refine(this.name, this.firstChild.nodeValue) }).appendTo(recBody);
+ refine("authoronly", this.firstChild.nodeValue) }).appendTo(recBody);
}
if( currentDetailedId == id ) {
var hdtarget;
if( recLocation ) {
- hdtarget = $('<tr><td class="item">Available at:</td></tr>');
+ hdtarget = $('<tr><td class="item" align="right">Available at: </td></tr>');
detailTable.append(hdtarget);
for(var i=0; i < recLocation.length; i++)
hdtarget = $('<tr><td class="item"> </td></tr>').appendTo(detailTable);
var url = recLocation[i]["md-url"];
var description = recLocation[i]["md-description"];
+ var date = recLocation[i]["md-date"];
+ var citation = recLocation[i]["md-citation"];
hdtarget.append('<td><b>'+recLocation[i].name+'</b></td>');
+ if (date)
+ detailTable.append($('<tr><td align="right">Date: </td><td>'+date+'</td></tr>'));
+ if (citation)
+ detailTable.append($('<tr><td align="right" valign="top">Citation: </td><td>'+citation+'</td></tr>'));
if (description)
detailTable.append($('<tr><td> </td><td>'+description+'</td></tr>'));
if (url) {
function refine(field, value, opt)
{
switch(field) {
+ case "authoronly": curQuery.reset(); curQuery.addTerm('au', value); break;
case "author": curQuery.addTerm('au', value); break;
case "title": curQuery.addTerm('ti', value); break;
case "date": curQuery.addTerm('date', value); break;