# $URL$ # $Id$ drilldownFieldNames = { 'drilldown.norm.date.year': {'en':'Year', 'nl':'Jaar'}, 'drilldown.norm.date.decennium': {'en':'Decennium', 'nl':'Decennium'}, 'drilldown.norm.date.centennium': {'en':'Centennium', 'nl':'Centennium'}, 'drilldown.norm.name.oneinitial': {'en':'Name', 'nl':'Naam'}, 'drilldown.norm.name.lastname': {'en':'Top 10 Names', 'nl':'Top 10 Namen'}, 'drilldown.meta.repository.id': {'en':'Repository', 'nl':'Repository'}, 'drilldown.meta.repository.repositoryGroupId': {'en':'Source', 'nl':'Bron'}, 'drilldown.mods.classification': {'en':'Classification', 'nl':'Classificatie'}, 'drilldown.mods.genre': {'en':'Genre', 'nl':'Genre'}, 'drilldown.mods.language.languageTerm': {'en':'Language', 'nl':'Taal'}, 'drilldown.mods.relatedItem.titleInfo.title': {'en':'Journal/series', 'nl':'Tijdschrift/reeks'}, 'drilldown.mods.subject.topic': {'en':'Subject', 'nl':'Onderwerp'} } drilldownFields = [ #####(field, number, sorted)##### ##### number == 0: all items? ('drilldown.mods.genre', 0, True), ('drilldown.mods.subject.topic', 10, True), #('drilldown.mods.name.namePart', 20, False), #('drilldown.norm.name.oneinitial', 20, False), #('drilldown.meta.repository.id', 10, False), ('drilldown.meta.repository.repositoryGroupId', 10, True), ('drilldown.mods.classification', 10, True), ('drilldown.mods.language.languageTerm', 10, True), ('drilldown.mods.relatedItem.titleInfo.title', 10, True) ] drilldownFieldsNoMultiLevel = [] drilldownFieldsNoMultiLevel.extend(drilldownFields) drilldownFieldsNoMultiLevel.insert(0, ('drilldown.norm.name.lastname', 10, False)) drilldownFieldsNoMultiLevel.insert(0, ('drilldown.norm.date.centennium', 10, False)) groupName = { 'ir-uvt-nl': {'en': 'Tilburg University Repository', 'nl': 'Tilburg University Repository'}, 'kuleuven-be': {'en': 'EO: KU Leuven', 'nl': 'EO: KU Leuven'}, 'lse-ac-uk': {'en': 'EO: London School of Economics', 'nl': 'EO: London School of Economics'}, 'opc-uvt-nl': {'en': 'Catalogue', 'nl': 'Catalogus'}, 'repec-org': {'en': 'RePEc', 'nl': 'RePEc'}, 'repub-eur-nl': {'en': 'EO: Erasmus University Rotterdam', 'nl': 'EO: Erasmus Universiteit Rotterdam'}, 'tilburguniversity-nl': {'en': 'EO: Tilburg University', 'nl': 'EO: Universiteit van Tilburg'}, 'ulb-ac-be': {'en': 'EO: Universite Libre de Bruxelles', 'nl': 'EO: Universite Libre de Bruxelles'}, 'unimaas-nl': {'en': 'EO: Maastricht University', 'nl': 'EO: Universiteit Maastricht'}, } space = " " def fieldAndTermSplit(fieldAndTerm): return fieldAndTerm.split(':', 1) def fieldAndTermJoin(field, term): return '%s:%s' % (field, term) def shrink(aString, maxLength=160): if len(aString) > maxLength: return aString[:maxLength] + '...' return aString def createDrilldownQuery(drilldownArgs, httpQuery): newArguments = [('query', httpQuery)] for existing in drilldownArgs: newArguments.append(('drilldown', existing)) return urlencode(newArguments) def displayTerm(term, fieldName, language, maxLength=25): if fieldName == 'drilldown.mods.genre': term = term.replace('info:eu-repo/semantics/', '') elif (fieldName == 'drilldown.meta.repository.repositoryGroupId'): term = groupName.get(term, {'en':term, 'nl':term})[language] return shrink(term, maxLength) def main(hits, httpQuery, arguments, path='', *args, **kwargs): language = path.startswith('/en/') and 'en' or 'nl' yield '\n' + space + '
%s
' % {'nl':'Geselecteerde facetten', 'en':'Selected Facets'}[language] yield '\n%s
' % label yield '\n' + space + '%s
' % label yield '\n' + space + '