X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=www%2Fmasterkey%2Fjs%2Fclient.js;h=648c7389b20d363ee04badbfdb3ad49e943af875;hb=606fdfa493ec8360a2a43b4bd396e8f891defc63;hp=6a8683db4b6fed8a3b34dc9540a22a6cef780877;hpb=ee6170fc31c80c61c67cdf7a6fbc42b85593acfd;p=pazpar2-moved-to-github.git diff --git a/www/masterkey/js/client.js b/www/masterkey/js/client.js index 6a8683d..648c738 100644 --- a/www/masterkey/js/client.js +++ b/www/masterkey/js/client.js @@ -1,5 +1,5 @@ /* -** $Id: client.js,v 1.10 2007-04-02 15:50:27 jakub Exp $ +** $Id: client.js,v 1.16 2007-04-14 23:59:20 quinn Exp $ ** MasterKey - pazpar2's javascript client . */ @@ -15,12 +15,8 @@ var my_paz = new pz2( { "onshow": my_onshow, /* some state variable */ var currentSort = 'relevance'; var currentResultsPerPage = 20; -/*var currentQuery = null; -var currentQueryArr = new Array();*/ var currentPage = 0; var curQuery = new pzQuery(); -/*var currentFilter = undefined;*/ -/*var currentFilterName = null;*/ var currentDetailedId = null; var currentDetailedData = null; @@ -131,10 +127,10 @@ function my_onstat(data){} */ function my_onterm(data) { - var termLists = $("#termlists"); - if(termStartup) { + var termLists = $("#termlists"); + for(var key in data){ if (key == "activeclients") continue; @@ -165,8 +161,7 @@ function my_onterm(data) for(var i = 0; i < data[key].length; i++) { if (key == "xtargets"){ - var listItem = $(''+data[key][i].name - /*+' ('+data[key][i].freq+')'*/+''); + var listItem = $(''+data[key][i].name +' ('+data[key][i].freq+')'+''); listItem.click(function(){ refine(this.name, this.attributes[0].nodeValue, this.firstChild.nodeValue) }); listItem.appendTo(listEntries); @@ -187,12 +182,11 @@ function my_onterm(data) if (key == "activeclients") continue; var listEntries = $('#term_'+key).children('.termEntries'); - listEntries.empty() + if( data[key].length ) listEntries.empty(); for(var i = 0; i < data[key].length; i++){ if (key == "xtargets"){ - var listItem = $(''+data[key][i].name - /*+' ('+data[key][i].freq+')'*/+'').click(function(){ + var listItem = $(''+data[key][i].name+' ('+data[key][i].freq+')'+'').click(function(){ refine(this.name, this.attributes[0].nodeValue, this.firstChild.nodeValue) }); listItem.appendTo(listEntries); } else { @@ -230,6 +224,7 @@ function fireSearch() $('div.showing').empty().text('No records to show.'); $('div.pages').empty().html(' '); $('div.records').empty(); + currentDetailedId = null; if( !curQuery.totalLength() ) return false; my_paz.search(curQuery.toCCL(), currentResultsPerPage, currentSort, curQuery.getFilterString() ); @@ -256,22 +251,34 @@ function drawDetailedRec(detailBox) if( detailBox == undefined ) detailBox = $('
').appendTo($('#rec_'+currentDetailedId)); - detailBox.append('Details:
'); var detailTable = $('
'); - var recDate = currentDetailedData["md-date"]; - var recSubject = currentDetailedData["md-subject"]; var recLocation = currentDetailedData["location"]; - if( recDate ) - detailTable.append('Published:'+recDate+''); - if( recSubject ) - detailTable.append('Subject:'+recSubject+''); - if( recLocation ) - detailTable.append('Available at: '); - - for(var i=0; i < recLocation.length; i++) - { - detailTable.append(' '+recLocation[i].name+''); + var hdtarget; + if( recLocation ) { + hdtarget = $('Available at:'); + detailTable.append(hdtarget); + + for(var i=0; i < recLocation.length; i++) + { + if (!hdtarget) + hdtarget = $(' ').appendTo(detailTable); + var url = recLocation[i]["md-url"]; + var description = recLocation[i]["md-description"]; + hdtarget.append(''+recLocation[i].name+''); + if (url) { + var tline = $(' '); + var td = $('').appendTo(tline); + var tlink = $('Go to resource'); + tlink.attr('href', url);; + tlink.attr('target', '_blank'); + tlink.appendTo(td); + detailTable.append(tline); + } + if (description) + detailTable.append($(' '+description+'')); + hdtarget = undefined; + } } detailTable.appendTo(detailBox); @@ -320,10 +327,10 @@ function loadFormFieldsFromQuery() { switch( curQuery.getTermFieldByIdx(i) ) { - case "au": document.search.author.value += curQuery.getTermValueByIdx(i) + ';'; break; - case "ti": document.search.title.value += curQuery.getTermValueByIdx(i) + ';'; break; - case "date": document.search.date.value += curQuery.getTermValueByIdx(i) + ';'; break; - case "su": document.search.subject.value += curQuery.getTermValueByIdx(i) + ';'; break; + case "au": document.search.author.value += curQuery.getTermValueByIdx(i) + '; '; break; + case "ti": document.search.title.value += curQuery.getTermValueByIdx(i) + '; '; break; + case "date": document.search.date.value += curQuery.getTermValueByIdx(i) + '; '; break; + case "su": document.search.subject.value += curQuery.getTermValueByIdx(i) + '; '; break; } } }