Commit 9a368e56 authored by ssp's avatar ssp
Browse files

Merge branch 'neuerwerbungen-hack'

Conflicts:
	Resources/Private/XSL/pz2-to-bibtex.xsl
	Resources/Private/XSL/pz2-to-ris.xsl
	Resources/Public/convert-pazpar2-record.php
	Resources/Public/pz2-neuerwerbungen.js
parents aa5f9ebd 57e3c668
[submodule "Resources/Public/flot"]
path = Resources/Public/flot
url = git://github.com/ssp/flot.git
[submodule "Resources/Public/pz2-client"]
path = Resources/Public/pz2-client
url = git://github.com/ssp/pazpar2-js-client.git
......@@ -468,7 +468,7 @@ class Tx_Pazpar2_Domain_Model_Pazpar2neuerwerbungen extends Tx_Extbase_DomainObj
$leadingZero = '0';
}
return $year . '-' . $leadingZero . $month;
return $year . $leadingZero . $month;
}
......
......@@ -1016,7 +1016,7 @@ private function dataConversionForm ($locations, $exportFormat, $labelFormat) {
if ($XMLString) {
$form = $this->doc->createElement('form');
$form->setAttribute('method', 'POST');
$scriptPath = 'typo3conf/ext/pazpar2/Resources/Public/convert-pazpar2-record.php';
$scriptPath = 'typo3conf/ext/pazpar2/Resources/Public/pz2-client/converter/convert-pazpar2-record.php';
$scriptGetParameters = Array('format' => $exportFormat);
if ($GLOBALS['TSFE']->lang) {
$scriptGetParameters['language'] = $GLOBALS['TSFE']->lang;
......
......@@ -42,11 +42,11 @@ plugin.tx_pazpar2 {
}
showKVKLink = 1
CSSPath = EXT:pazpar2/Resources/Public/pz2.css
pz2JSPath = EXT:pazpar2/Resources/Public/pz2.js
pz2-clientJSPath = EXT:pazpar2/Resources/Public/pz2-client.js
flotJSPath = EXT:pazpar2/Resources/Public/flot/jquery.flot.js
flotSelectionJSPath = EXT:pazpar2/Resources/Public/flot/jquery.flot.selection.js
CSSPath = EXT:pazpar2/Resources/Public/pz2-client/pz2.css
pz2JSPath = EXT:pazpar2/Resources/Public/pz2-client/pz2.js
pz2-clientJSPath = EXT:pazpar2/Resources/Public/pz2-client/pz2-client.js
flotJSPath = EXT:pazpar2/Resources/Public/pz2-client/flot/jquery.flot.js
flotSelectionJSPath = EXT:pazpar2/Resources/Public/pz2-client/flot/jquery.flot.selection.js
useSortMenu = 0
sortOrder {
......@@ -69,8 +69,8 @@ plugin.tx_pazpar2 {
}
plugin.tx_pazpar2_pazpar2neuerwerbungen.settings {
pz2-neuerwerbungenJSPath = EXT:pazpar2/Resources/Public/pz2-neuerwerbungen.js
pz2-neuerwerbungenCSSPath = EXT:pazpar2/Resources/Public/pz2-neuerwerbungen.css
pz2-neuerwerbungenJSPath = EXT:pazpar2/Resources/Public/pz2-client/pz2-neuerwerbungen.js
pz2-neuerwerbungenCSSPath = EXT:pazpar2/Resources/Public/pz2-client/pz2-neuerwerbungen.css
neuerwerbungen-subjects =
useAtomFeed = 1
numberOfMonths = 13
......
......@@ -45,7 +45,7 @@ For the pazpar2-neuerwerbungen plug-in to be useful you additionally need:
* nkwgok extension
* subject hierarchies that are children of the PPN »NE« imported into the nkwgok extension
** The extension is designed primarily for the case where just two levels of hierarchy exist. The elements on level 1 provide grouping with a label, those on level two the child elements of a group. If the parent element has a blank search query, its search query is generated by OR-ing the queries of all child elements together. To avoid having complex queries, a simpler query giving the same result set can be explicitly provided. Child elements may not have exactly the same search query as their parent element.
* if you want to provide RSS feeds for new acquisitions, a script accepting queries in the »q« parameter is expected at the path /opac.atom. See the [https://github.com/ssp/Opac-2-Atom Opac-2-Atom] project for an example script converting Göttingen’s Pica Opac output to Atom.
* if you want to provide RSS feeds for new acquisitions, a script accepting queries in the »q« parameter is expected at the path /opac.atom. See the [Opac-2-Atom](https://github.com/ssp/Opac-2-Atom) project for an example script converting Göttingen’s Pica Opac output to Atom.
......@@ -57,7 +57,7 @@ Fields of the flexform for the content element in the backend offers the followi
* pazpar2 service ID [serviceID]: needs to be the name of a service set up on your pazpar2 server or empty if there is only a single unnamed service running
* Google Books [useGoogleBooks]: Choose whether the extension should try to look up all records with ISBN and OCLC numbers on Google books once the full record is revealed and try to display the cover art and offer the book preview if possible. If this option is turned on, the plug-in will load and run a JavaScript from Google’s servers on the page the content element is inserted in.
* Journals Online & Print [useZDB]: Choose whether the extension should try to look up all records with ISSN numbers using ZDB’s Journals Online & Print (JOP) service. If this option is turned on, the plug-in will load information about journal availability from the ZDB Proxy on your server(see the next option) to display the availability of the journal.
* Journals Online & Print [useZDB]: Choose whether the extension should try to look up all records with ISSN numbers using ZDB’s Journals Online & Print (JOP) service. If this option is turned on, the plug-in will load information about journal availability from the ZDB Proxy on your server(see the next option) to display the availability of the journal.
* ZDB Proxy [ZDBIP]: You can set up two distinct proxies for the ZDB JOP service if you plan to use it. The one available at the path /zdb/ on your server should pass the user’s IP address to the ZDB JOP service, thus returning the journal availability for the user’s current location. The one available at /zdb-local/ will do the lookup for the server’s IP address – with the intention to provide availability information for the institution running the server. This option lets you pick which of the proxies will be used for the ZDB JOP lookup. [[Apache configuration file for setting up the proxies](https://raw.github.com/ssp/pazpar2-extras/master/fileadmin/apache/zdb.conf)]
* Histogram [useHistogramForYearFacets]: The extension displays year facets if results from more than a few years are displayed. Choose whether the year facets should be displayed graphically using a histogram rather than as an (incomplete) list of year numbers in modern browsers. Activating this option will load the [flot][] JavaScript library from your server on the relevant pages.
* Subjects for pazpar2 Neuerwerbungen [neuerwerbungen-subjects]: A subject has to be picked in the popup menu if you want to use the pazpar2 Neuerwerbungen plug-in. The popup menu is populated using child elements of the PPN »NA« in the subject hierarchy of the nkwgok extension. This is probably useful for SUB Göttingen use only.
......@@ -82,16 +82,16 @@ In addition to the options exposed in the flexform, a number of additional optio
* preferSUBOpac [0]: if 1, links to GVK catalogue pages are mapped to the SUB Göttingen Opac for people with 134.76.* IP addresses, to provide greater convenience for Göttingen user
* useKeywords [0]: if 1, the Keywords search field is offered in extended search and keywords are displayed in result details, each linking to a search for the keyword in question; requires pazpar2’s targets to be configured for keyword searches on the »subject« index
* included files:
* CSSPath [EXT:pazpar2/Resources/Public/pz2.css]: CSS file included to style the search form and search results
* pz2JSPath [EXT:pazpar2/Resources/Public/pz2.js]: Indexdata’s [pz2.js](http://git.indexdata.com/?p=pazpar2.git;a=blob_plain;f=js/pz2.js;hb=HEAD) library to communicate with the pazar2 service
* pz2-clientJSPath [EXT:pazpar2/Resources/Public/pz2-client.js]: JavaScript handling the user interaction and display of results; a lot of the customisation is in here
* flotJSPath [EXT:pazpar2/Resources/Public/flot/jquery.flot.js]: flot graphing library
* flotSelectionJSPath [EXT:pazpar2/Resources/Public/flot/jquery.flot.selection.js]: selection component of flot graphing library
* CSSPath [EXT:pazpar2/Resources/Public/pz2-client/pz2.css]: CSS file included to style the search form and search results
* pz2JSPath [EXT:pazpar2/Resources/Public/pz2-client/pz2.js]: Indexdata’s [pz2.js](http://git.indexdata.com/?p=pazpar2.git;a=blob_plain;f=js/pz2.js;hb=HEAD) library to communicate with the pazar2 service
* pz2-clientJSPath [EXT:pazpar2/Resources/Public/pz2-client/pz2-client.js]: JavaScript handling the user interaction and display of results; a lot of the customisation is in here
* flotJSPath [EXT:pazpar2/Resources/Public/pz2-client/flot/jquery.flot.js]: flot graphing library
* flotSelectionJSPath [EXT:pazpar2/Resources/Public/pz2-client/flot/jquery.flot.selection.js]: selection component of flot graphing library
* tx_pazpar2_pazpar2-neuerwerbungen
* useAtomFeed [1]: if 1, a link to an Atom feed is displayed along with the Neuwerbungen form and inserted into the page’s <head>
* useAtomFeed [1]: if 1, a link to an Atom feed is displayed along with the Neuerwerbungen form and inserted into the page’s <head>
* numberOfMonths [13]: the number of months to display in the popup menu for date selection
* pz2-neuerwerbungenCSSPath [EXT:pazpar2/Resources/Public/pz2-neuerwerbungen.css]: Additional CSS file included if the pazpar2-neuerwerbungen plug-in is used
* pz2-neuerwerbungenJSPath [EXT:pazpar2/Resources/Public/pz2-neuerwerbungen.js]: Additional JavaScript included if the pazpar2-neuerwerbungen plug-in is used
* pz2-neuerwerbungenCSSPath [EXT:pazpar2/Resources/Public/pz2-client/pz2-neuerwerbungen.css]: Additional CSS file included if the pazpar2-neuerwerbungen plug-in is used
* pz2-neuerwerbungenJSPath [EXT:pazpar2/Resources/Public/pz2-client/pz2-neuerwerbungen.js]: Additional JavaScript included if the pazpar2-neuerwerbungen plug-in is used
......@@ -173,11 +173,11 @@ To get a better idea of the general setup, take a look at [our setup files](http
## Bibliographic data export
To create proper downloads these are created in a slightly involved way by sending the pazpar2 metadata back to server where the script Resources/Public/convert-pazpar2-record.php is run.
To create proper downloads these are created in a slightly involved way by sending the pazpar2 metadata back to server where the script Resources/Public/pz2-client/converter/convert-pazpar2-record.php is run.
Conversions done by that script use the stylesheets in Resources/Private/XSL. The conversion quality achieved by those scripts is somewhat limited on a syntactic level due to the inadequacies (RIS is defined to be [non-Unicode](http://www.refman.com/support/risformat_fields_02.asp) but we, like many others, send UTF-8 to accomodate non-Latin references as well) or complexities (getting BibTeX escaping right is a major effort [and occasionally undesirable as some mathematical sites includ TeX code which benefits from not being escaped] so the lazy compromise is to send UTF-8 as well).
Conversions done by that script use the stylesheets in Resources/Public/pz2-client/converter. The conversion quality achieved by those scripts is somewhat limited on a syntactic level due to the inadequacies (RIS is defined to be [non-Unicode](http://www.refman.com/support/risformat_fields_02.asp) but we, like many others, send UTF-8 to accomodate non-Latin references as well) or complexities (getting BibTeX escaping right is a major effort [and occasionally undesirable as some mathematical sites includ TeX code which benefits from not being escaped] so the lazy compromise is to send UTF-8 as well).
Support for additional formats can be added to the extension by adding a stylesheet to the Resources/Private/XSL folder, registering it for a format name in the Array the beginning of Resources/Public/convert-pazpar2-record.php and adding the display strings for that format to Resources/Public/pz2-client.js as well as to Resources/Private/Language/locallang.xml
Support for additional formats can be added to the extension by adding an XSL file to the Resources/Public/pz2-client/converter folder, registering it for a format name in the Array the beginning of Resources/Public/pz2-client/converter/convert-pazpar2-record.php and adding the display strings for that format to Resources/Public/pz2-client/pz2-client.js as well as to Resources/Private/Language/locallang.xml
## Acknowledgements ##
......
<?xml version="1.0" encoding="UTF-8"?>
<location id="goedoc.uni-goettingen.de:8080/SRW/search/DSpace" name="GoeScholar">
<md-id>http://resolver.sub.uni-goettingen.de/purl?goescholar/4143</md-id>
<md-eissn>1432-1297</md-eissn>
<md-pissn>0020-9910</md-pissn>
<md-doi>10.1007/s00222-009-0214-6</md-doi>
<md-author>Böhning, Christian</md-author>
<md-author>Graf von Bothmer, Hans-Christian</md-author>
<md-date>2009</md-date>
<md-title>Rationality of the moduli spaces of plane curves of sufficiently large degree</md-title>
<md-medium>article</md-medium>
<md-publication-name>Springer-Verlag</md-publication-name>
<md-description>Abstract
We prove that the moduli space of plane curves of degree d is rational for all sufficiently large d</md-description>
<md-description>publishedVersion</md-description>
<md-electronic-url fulltextfile="true">http://goedoc.uni-goettingen.de/goescholar/bitstream/handle//222_2009_Article_214.pdf</md-electronic-url>
<md-journal-title>Inventiones mathematicae</md-journal-title>
<md-journal-subpart>Vol. 179, No. 1 (2009), 159-173</md-journal-subpart>
<md-journal-volume>179</md-journal-volume>
<md-journal-issue>1</md-journal-issue>
<md-journal-pages>159-173</md-journal-pages>
<md-catalogue-url>http://resolver.sub.uni-goettingen.de/purl?goescholar/4143</md-catalogue-url>
</location>
\ No newline at end of file
<location id="sru.gbv.de/olcssg-ang" name="Anglistik Aufsätze">
<md-id>1835405150</md-id>
<md-issn>0028-792x</md-issn>
<md-date>2010</md-date>
<md-title>THE TALK OF THE TOWN - Edwidge Danticat on Haiti; Lady Gaga; rent party; bedbugs</md-title>
<md-medium>article</md-medium>
<md-journal-title>The New Yorker</md-journal-title>
<md-journal-subpart>(2010), p. 19-24</md-journal-subpart>
<md-pages-number>19-24</md-pages-number>
<md-catalogue-url>http://gso.gbv.de/DB=2.75/PPNSET?PPN=1835405150</md-catalogue-url>
</location>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<location id="sru.gbv.de/opac-de-7" name="SUB Göttingen">
<md-language>ger</md-language>
<md-id>581166205</md-id>
<md-isbn>978-3-05-004174-2</md-isbn>
<md-author>Marx, Karl</md-author>
<md-author>Engels, Friedrich</md-author>
<md-other-person>Ōmura, Izumi</md-other-person>
<md-date>2008</md-date>
<md-title>Gesamtausgabe</md-title>
<md-title-remainder>: (MEGA)</md-title-remainder>
<md-title-responsibility>Karl Marx; Friedrich Engels. Hrsg. von der Internationalen Marx-Engels-Stiftung Amsterdam</md-title-responsibility>
<md-title-number-section>Abt. 2: &quot;Das @Kapital&quot; und Vorarbeiten. Bd. 13: Das @Kapital, Kritik der politischen Ökonomie, Zweiter Band, Hamburg 1885. Apparat: [...]</md-title-number-section>
<md-medium>book</md-medium>
<md-publication-place>Berlin</md-publication-place>
<md-publication-name>Akad.-Verl</md-publication-name>
<md-physical-extent>S. 493 - 795</md-physical-extent>
<md-description>Internationale Marx-Engels-Stiftung</md-description>
<md-electronic-url name="Inhaltsverzeichnis">http://www.gbv.de/dms/weimar/toc/581166205_toc.pdf</md-electronic-url>
<md-electronic-url name="Rezension">http://www.gbv.de/dms/faz-rez/FD1200807021799467_1.pdf</md-electronic-url>
<md-catalogue-url>http://opac.sub.uni-goettingen.de/DB=1/PPNSET?PPN=581166205</md-catalogue-url>
</location>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<location id="sru.gbv.de/gvk" name="GVK">
<md-language>eng</md-language>
<md-id>651757959</md-id>
<md-author>Basedau, Matthias</md-author>
<md-author>Strüver, Georg</md-author>
<md-author>Vüllers, Johannes</md-author>
<md-date>2011</md-date>
<md-title>Cutting bread or cutting throats?</md-title>
<md-title-remainder>findings from a new database on religion, violence and peace in sub-Saharan Africa, 1990 to 2008</md-title-remainder>
<md-title-responsibility>Matthias Basedau, Georg Strüver and Johannes Vüllers</md-title-responsibility>
<md-medium>book</md-medium>
<md-publication-place>Hamburg</md-publication-place>
<md-publication-name>GIGA</md-publication-name>
<md-physical-extent>31 S</md-physical-extent>
<md-series-title>GIGA working papers ; 159</md-series-title>
<md-description>Zsfassung in dt. Sprache</md-description>
<md-catalogue-url>http://gso.gbv.de/DB=2.1/PPNSET?PPN=651757959</md-catalogue-url>
</location>
\ No newline at end of file
Subproject commit e3eda220e13f5be35be45186651d7c3a94ad05de
Subproject commit 18b6296937d0ea19e253ffac4388431e7d9a86ff
This diff is collapsed.
.pz2-fieldsets {
margin-top: 1em;
}
.pz2-fieldsets fieldset {
position: relative;
}
.pz2-fieldsets ul {
list-style-type: none;
margin: 0 0 0 0.5em;
padding: 0;
}
.pz2-fieldsets li.inline {
display: inline;
}
.pz2-fieldsets li.indent input {
margin-left: 1em;
}
.pz2-fieldsets legend {
font-weight: bold;
}
.pz2-fieldsets label {
margin-right: 0.5em;
display: inline;
}
.pz2-months {
font-size: 133%;
}
#pazpar2 a {
text-decoration: none;
}
#pazpar2 ol {
margin: 0px;
}
.pz2-clear {
display: block;
height: 0;
clear: both;
}
/* SEARCH FORM */
.pz2-mainForm {
line-height: 150%;
}
.pz2-fieldContainer {
float: left;
clear: left;
}
.pz2-searchField {
display: block;
float: left;
margin: 0px 6px 2px 0px;
padding: 2px;
color: #333333;
background: #f3f5f9;
border-style: solid;
border-width: 1px;
border-color: #b3b3b3 #d2d2d2 #d2d2d2 #b3b3b3;
}
/* set placeholder colour for Mozilla as it defaults to black, WebKit’s default is fine */
.pz2-searchField:-moz-placeholder {
color: #999;
}
.pz2-basic .pz2-searchField {
width: 400px;
height: 22px;
padding: 4px;
}
.pz2-searchForm.pz2-basic .pz2-field-all .pz2-searchField {
font-size: 133%;
}
.pz2-extended .pz2-searchField {
width: 250px; /* 400px - 130px - 20px to end up at the same total width as basic search */
margin-left: 20px;
}
.pz2-mainForm label {
display: none;
}
.pz2-extended .pz2-mainForm label.pz2-textFieldLabel {
display: block;
float: left;
width: 130px;
text-align: right;
}
.pz2-checkbox,
.pz2-extraFields {
display: none;
}
.pz2-extended .pz2-extraFields {
display: block;
}
.pz2-extended .pz2-checkbox,
.pz2-extended .pz2-checkbox label {
display: inline;
}
.pz2-submitButton {
display: block;
float: left;
height: 23px;
background: url(button_shade_small.png) repeat-x scroll 0 100% #f3f6fb;
border-style: solid;
border-width: 1px;
border-color: #d4d4d4 #b4b4b4 #b4b4b4 #d4d4d4;
border-radius: 3px 3px 3px 3px;
border-right: 1px solid #b4b4b4;
color: #555555;
font-weight: bold;
line-height: 100%;
padding: 3px 12px;
margin-top: -1px;
text-align: center;
text-decoration: none;
text-shadow: 0 1px rgba(255, 255, 255, 0.75);
text-transform: uppercase;
}
.pz2-basic .pz2-submitButton,
.pz2-extended .pz2-submitButton {
margin-top: 0px;
}
.pz2-submitButton:active {
background-image: url(button_shade_small_click.png);
background-color: #e7e9ed;
}
.pz2-basic .pz2-submitButton {
height: 32px;
background-image: url(button_shade_large.png);
}
.pz2-basic .pz2-submitButton:active {
background-image: url(button_shade_large_click.png);
}
.pz2-extendedLink {
display: block;
float: left;
line-height: 33px;
margin-left: 0.5em;
}
.pz2-searchForm.pz2-extended {
line-height: 25px;
}
.pz2-form-animating .pz2-extraFields {
display:block;
}
/* RESULTS */
.pz2-ranking {
display: none;
}
#pz2-navi {
margin-bottom: 1em;
}
#pz2-recordView {
padding-top: 20px;
}
.pz2-recordLink {
display: block;
}
.pz2-recordLink:after {
font-family: Helvetica, Arial, sans-serif;
content:'\0000bb';
margin-left: 0.33em;
}
.pz2-recordLink:hover:after {
color: #00247d;
}
.pz2-detailsVisible .pz2-recordLink:after {
display: none;
}
#pz2-results {
margin-right: 220px;
}
#pz2-results ol.pz2-resultList {
padding-left: 35px;
list-style-type: none;
float: left; /* required so we don't clear the sidebar/faceting when clearing our <li>s */
}
#pz2-results ol.pz2-resultList li {
margin-bottom: 0.5em;
padding-left: 5px;
position: relative;
clear: both;
border-left: 1px solid transparent;
}
#pz2-results ol.pz2-resultList li.pz2-detailsVisible {
border-left: 1px solid #eee;
}
#pazpar2 a img {
border: 0px transparent none;
}
.pz2-JSNote {
margin-bottom: 1em;
}
#pz2-stat {
clear: both;
}
/* FACETS */
#pz2-termLists {
float:right;
width: 200px;
}
#pz2-termLists h4 {
display: none;
}
.pz2-termList {
margin-bottom: 1em;
}
.pz2-termList h5 {
text-transform: uppercase;
font-size: 100%;
font-weight: bold;
margin-bottom: 0.25em;
}
.pz2-termList ol {
list-style-type: none;
margin-bottom: 1em;
padding: 0;
}
.pz2-termList li a {
position: relative;
display: block;
padding-left: 1em;
text-indent: -1em;
font-weight: normal;
}
.pz2-termList-author ol {
text-transform: capitalize;
}
.pz2-termList-medium li a span.pz2-facetName {
margin-left: 25px;
position: relative;
line-height: 19px;
}
.pz2-termList-medium .pz2-mediaIcon {
position: absolute;
top: -1px;
left: -2px;
}
.pz2-facetCount {
color: #999;
margin-left: 0.4em;
}
.pz2-facet-hidden {
display: none;
}
.pz2-facet-showAll a {
color: #999;
font-style: italic;
}
.pz2-activeFacet .pz2-facetName {
font-weight: bold;
}
.pz2-termList a.pz2-facetCancel {
color: #f00;
font-weight: bold;
}
.pz2-termList span {
position: relative;
}
.pz2-histogramContainer {
margin-left: -18px;
}
#pz2-histogram-tooltip {
font-weight: bold;
font-size: 71%;
background: #fff;
border: 1px solid #f6f3ff;
padding: 2px;
background-color: #fff;
opacity: 0.8;
}
/* PROGRESS INDICATOR */
.pz2-progressIndicator {
position: absolute;
display: block;
top: 0px;
bottom: 0px;
left: 0px;
background: #f6f3ff;
}
/* PAGER */
.pz2-pager {
padding-top: 20px;
position: relative;
}
.pz2-pager.pz2-bottom {
clear: both;
padding-bottom: 20px;
}
.pz2-pager .pz2-pageNumbers {
position: relative;
margin-right: 240px;
text-align: center;
}
.pz2-next, .pz2-prev {
position: relative;
font-family: Helvetica, Arial, sans-serif;
}
.pz2-pageCount-0 {
visibility: hidden;
}
.pz2-pager ol {
list-style-type: none;
padding: 0px;
display: inline;
}
.pz2-pager li {
display: inline;
}
.pz2-pager a, .pz2-prev, .pz2-next {
padding: 0 0.3em;
}
.pz2-pager .pz2-currentPage {
font-weight: bold;
padding: 0.3em;
}
.pz2-recordCount {
position: absolute;
top: 20px;
right: 0px;
}
.pz2-recordCount:hover {
font-weight: normal;