Merge lp:~sebastian-meyer/goobi-presentation/bug909379 into lp:goobi-presentation/1.1

Proposed by Sebastian Meyer
Status: Merged
Merged at revision: 74
Proposed branch: lp:~sebastian-meyer/goobi-presentation/bug909379
Merge into: lp:goobi-presentation/1.1
Diff against target: 1679 lines (+1298/-83)
20 files modified
dlf/common/class.tx_dlf_helper.php (+4/-0)
dlf/common/class.tx_dlf_indexing.php (+2/-2)
dlf/common/class.tx_dlf_mods.php (+0/-14)
dlf/common/class.tx_dlf_module.php (+14/-1)
dlf/ext_autoload.php (+3/-1)
dlf/ext_emconf.php (+1/-1)
dlf/ext_tables.php (+5/-0)
dlf/ext_tables_static+adt.sql (+1/-20)
dlf/hooks/class.tx_dlf_em.php (+5/-5)
dlf/modules/indexing/index.php (+0/-4)
dlf/modules/indexing/template.tmpl (+0/-32)
dlf/modules/newclient/conf.php (+35/-0)
dlf/modules/newclient/index.php (+518/-0)
dlf/modules/newclient/locallang.xml (+209/-0)
dlf/modules/newclient/locallang_mod.xml (+23/-0)
dlf/modules/newclient/metadata.inc.php (+227/-0)
dlf/modules/newclient/structures.inc.php (+215/-0)
dlf/modules/newclient/template.tmpl (+32/-0)
dlf/plugins/toolbox/tools/pdf/class.tx_dlf_toolsPdf.php (+1/-1)
dlf/tca.php (+3/-2)
To merge this branch: bzr merge lp:~sebastian-meyer/goobi-presentation/bug909379
Reviewer Review Type Date Requested Status
Sebastian Meyer Approve
Review via email: mp+104139@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Sebastian Meyer (sebastian-meyer) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'dlf/common/class.tx_dlf_helper.php'
2--- dlf/common/class.tx_dlf_helper.php 2012-03-30 09:14:14 +0000
3+++ dlf/common/class.tx_dlf_helper.php 2012-04-30 16:12:18 +0000
4@@ -479,6 +479,10 @@
5 *
6 * @access public
7 *
8+ * @param array $data: Data map
9+ * @param array $cmd: Command map
10+ * @param boolean $reverseOrder: Should the command map be processed first?
11+ *
12 * @return array Array of substituted "NEW..." identifiers and their actual UIDs.
13 */
14 public static function processDB(array $data = array (), array $cmd = array (), $reverseOrder = FALSE) {
15
16=== modified file 'dlf/common/class.tx_dlf_indexing.php'
17--- dlf/common/class.tx_dlf_indexing.php 2012-03-30 09:14:14 +0000
18+++ dlf/common/class.tx_dlf_indexing.php 2012-04-30 16:12:18 +0000
19@@ -396,7 +396,7 @@
20
21 // Get the metadata indexing options.
22 $_result = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
23- 'tx_dlf_metadata.index_name AS index_name,tx_dlf_metadata.tokenized AS tokenized,tx_dlf_metadata.stored AS stored,tx_dlf_metadata.indexed AS indexed,tx_dlf_metadata.is_sortable AS is_sortable,tx_dlf_metadata.is_facet AS is_facet,tx_dlf_metadata.boost AS boost',
24+ 'tx_dlf_metadata.index_name AS index_name,tx_dlf_metadata.tokenized AS tokenized,tx_dlf_metadata.stored AS stored,tx_dlf_metadata.indexed AS indexed,tx_dlf_metadata.is_sortable AS is_sortable,tx_dlf_metadata.is_facet AS is_facet,tx_dlf_metadata.is_listed AS is_listed,tx_dlf_metadata.boost AS boost',
25 'tx_dlf_metadata',
26 'tx_dlf_metadata.pid='.intval($pid).tx_dlf_helper::whereClause('tx_dlf_metadata'),
27 '',
28@@ -512,7 +512,7 @@
29
30 foreach ($metadata as $index_name => $data) {
31
32- if (strpos($index_name, '_sorting') === FALSE && !empty($data)) {
33+ if (!empty($data) && substr($index_name, -8) !== '_sorting') {
34
35 $suffix = (in_array($index_name, self::$tokenized) ? 't' : 'u');
36
37
38=== modified file 'dlf/common/class.tx_dlf_mods.php'
39--- dlf/common/class.tx_dlf_mods.php 2011-06-25 16:00:24 +0000
40+++ dlf/common/class.tx_dlf_mods.php 2012-04-30 16:12:18 +0000
41@@ -51,20 +51,6 @@
42
43 $xml->registerXPathNamespace('mods', 'http://www.loc.gov/mods/v3');
44
45- // Get "title" and "title_sorting".
46- if (($title = $xml->xpath('./mods:titleInfo/mods:title'))) {
47-
48- $metadata['title'][0] = $metadata['title_sorting'][0] = (string) $title[0];
49-
50- // Prepend any "nonSort" parts to the title.
51- if (($nonSort = $xml->xpath('./mods:titleInfo/mods:nonSort'))) {
52-
53- $metadata['title'][0] = (string) $nonSort[0].' '.$metadata['title'][0];
54-
55- }
56-
57- }
58-
59 // Get "author" and "author_sorting".
60 $authors = $xml->xpath('./mods:name[./mods:role/mods:roleTerm[@type="code"][@authority="marcrelator"]="aut"]');
61
62
63=== modified file 'dlf/common/class.tx_dlf_module.php'
64--- dlf/common/class.tx_dlf_module.php 2011-04-01 15:53:16 +0000
65+++ dlf/common/class.tx_dlf_module.php 2012-04-30 16:12:18 +0000
66@@ -127,6 +127,10 @@
67
68 $this->doc->backPath = $GLOBALS['BACK_PATH'];
69
70+ $this->doc->bodyTagAdditions = 'class="ext-dlf-modules"';
71+
72+ $this->doc->form = '<form action="" method="post" enctype="multipart/form-data">';
73+
74 $this->data = t3lib_div::_GPmerged($this->prefixId);
75
76 }
77@@ -173,6 +177,7 @@
78 */
79 protected function printContent() {
80
81+ // Add Javascript for function menu.
82 $this->doc->JScode .= '
83 <script type="text/javascript">
84 script_ended = 0;
85@@ -182,15 +187,23 @@
86 </script>
87 ';
88
89+ // Add Javascript for convenient module switch.
90 $this->doc->postCode .= '
91 <script type="text/javascript">
92 script_ended = 1;
93- if (top.fsMod) top.fsMod.recentIds["web"] = '.intval($this->id).';
94 </script>
95 ';
96
97+ // Render output.
98 $this->content .= $this->doc->startPage($GLOBALS['LANG']->getLL('title'));
99
100+ // Set defaults for buttons and menu.
101+ if (empty($this->buttonArray['RELOAD'])) {
102+
103+ $this->buttonArray['RELOAD'] = '<a href="'.$GLOBALS['MCONF']['_'].'" title="'.$GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:labels.reload', TRUE).'">'.t3lib_iconWorks::getSpriteIcon('actions-system-refresh').'</a>';
104+
105+ }
106+
107 if (empty($this->buttonArray['SHORTCUT'])) {
108
109 $this->buttonArray['SHORTCUT'] = $this->doc->makeShortcutIcon('id', implode(',', array_keys($this->MOD_MENU)), $this->MCONF['name']);
110
111=== modified file 'dlf/ext_autoload.php'
112--- dlf/ext_autoload.php 2011-08-27 16:52:55 +0000
113+++ dlf/ext_autoload.php 2012-04-30 16:12:18 +0000
114@@ -39,9 +39,11 @@
115 'tx_dlf_hacks' => $extensionPath.'hooks/class.tx_dlf_hacks.php',
116 'tx_dlf_tceforms' => $extensionPath.'hooks/class.tx_dlf_tceforms.php',
117 'tx_dlf_tcemain' => $extensionPath.'hooks/class.tx_dlf_tcemain.php',
118- 'tx_dlf_modindexing' => $extensionPath.'modules/indexing/index.php',
119+ 'tx_dlf_modIndexing' => $extensionPath.'modules/indexing/index.php',
120+ 'tx_dlf_modNewclient' => $extensionPath.'modules/newclient/index.php',
121 'tx_dlf_collection' => $extensionPath.'plugins/collection/class.tx_dlf_collection.php',
122 'tx_dlf_feeds' => $extensionPath.'plugins/feeds/class.tx_dlf_feeds.php',
123+ 'tx_dlf_listview' => $extensionPath.'plugins/listview/class.tx_dlf_listview.php',
124 'tx_dlf_metadata' => $extensionPath.'plugins/metadata/class.tx_dlf_metadata.php',
125 'tx_dlf_navigation' => $extensionPath.'plugins/navigation/class.tx_dlf_navigation.php',
126 'tx_dlf_oai' => $extensionPath.'plugins/oai/class.tx_dlf_oai.php',
127
128=== modified file 'dlf/ext_emconf.php'
129--- dlf/ext_emconf.php 2012-03-20 14:11:28 +0000
130+++ dlf/ext_emconf.php 2012-04-30 16:12:18 +0000
131@@ -39,7 +39,7 @@
132 'modify_tables' => '',
133 'clearCacheOnLoad' => FALSE,
134 'lockType' => '',
135- 'version' => '1.0.2',
136+ 'version' => '1.0.99',
137 'constraints' => array(
138 'depends' => array(
139 'php' => '5.3.0-',
140
141=== modified file 'dlf/ext_tables.php'
142--- dlf/ext_tables.php 2012-04-20 08:23:36 +0000
143+++ dlf/ext_tables.php 2012-04-30 16:12:18 +0000
144@@ -339,6 +339,11 @@
145
146 t3lib_extMgm::addLLrefForTCAdescr('_MOD_txdlfmodules_txdlfindexing','EXT:dlf/modules/indexing/locallang_mod.xml');
147
148+ // Module "newclient".
149+ t3lib_extMgm::addModule('txdlfmodules', 'txdlfnewclient', '', t3lib_extMgm::extPath($_EXTKEY).'modules/newclient/');
150+
151+ t3lib_extMgm::addLLrefForTCAdescr('_MOD_txdlfmodules_txdlfnewclient','EXT:dlf/modules/newclient/locallang_mod.xml');
152+
153 }
154
155 ?>
156\ No newline at end of file
157
158=== modified file 'dlf/ext_tables_static+adt.sql'
159--- dlf/ext_tables_static+adt.sql 2011-03-09 15:36:27 +0000
160+++ dlf/ext_tables_static+adt.sql 2012-04-30 16:12:18 +0000
161@@ -18,23 +18,4 @@
162 KEY parent (pid)
163 );
164
165-INSERT INTO tx_dlf_formats VALUES ('', '0', '0', '0', '0', '0', 'MODS', '0', 'mods', 'http://www.loc.gov/mods/v3', 'tx_dlf_mods');
166-
167---
168--- Table structure for table 'tx_dlf_solrcores'
169---
170-CREATE TABLE tx_dlf_solrcores (
171- uid int(11) NOT NULL auto_increment,
172- pid int(11) DEFAULT '0' NOT NULL,
173- tstamp int(11) DEFAULT '0' NOT NULL,
174- crdate int(11) DEFAULT '0' NOT NULL,
175- cruser_id int(11) DEFAULT '0' NOT NULL,
176- deleted tinyint(4) DEFAULT '0' NOT NULL,
177- label tinytext NOT NULL,
178- index_name tinytext NOT NULL,
179-
180- PRIMARY KEY (uid),
181- KEY parent (pid)
182-);
183-
184-INSERT INTO tx_dlf_solrcores VALUES ('', '0', '0', '0', '0', '0', 'Default Core', 'dlfCore0');
185+INSERT INTO tx_dlf_formats VALUES ('1', '0', '0', '0', '0', '0', 'MODS', '0', 'mods', 'http://www.loc.gov/mods/v3', 'tx_dlf_mods');
186
187=== modified file 'dlf/hooks/class.tx_dlf_em.php'
188--- dlf/hooks/class.tx_dlf_em.php 2012-03-29 08:32:14 +0000
189+++ dlf/hooks/class.tx_dlf_em.php 2012-04-30 16:12:18 +0000
190@@ -120,7 +120,7 @@
191 't3lib_FlashMessage',
192 sprintf($GLOBALS['LANG']->getLL('solr.error'), $url),
193 $GLOBALS['LANG']->getLL('solr.notConnected'),
194- t3lib_FlashMessage::ERROR,
195+ t3lib_FlashMessage::WARNING,
196 FALSE
197 );
198
199@@ -218,7 +218,7 @@
200 't3lib_FlashMessage',
201 $GLOBALS['LANG']->getLL('cliUserGroup.usrNotConfiguredMsg'),
202 $GLOBALS['LANG']->getLL('cliUserGroup.usrNotConfigured'),
203- t3lib_FlashMessage::WARNING,
204+ t3lib_FlashMessage::ERROR,
205 FALSE
206 );
207
208@@ -230,7 +230,7 @@
209 't3lib_FlashMessage',
210 $GLOBALS['LANG']->getLL('cliUserGroup.usrNotConfiguredMsg'),
211 $GLOBALS['LANG']->getLL('cliUserGroup.usrNotConfigured'),
212- t3lib_FlashMessage::WARNING,
213+ t3lib_FlashMessage::ERROR,
214 FALSE
215 );
216
217@@ -431,7 +431,7 @@
218 't3lib_FlashMessage',
219 $GLOBALS['LANG']->getLL('cliUserGroup.grpNotConfiguredMsg'),
220 $GLOBALS['LANG']->getLL('cliUserGroup.grpNotConfigured'),
221- t3lib_FlashMessage::WARNING,
222+ t3lib_FlashMessage::ERROR,
223 FALSE
224 );
225
226@@ -443,7 +443,7 @@
227 't3lib_FlashMessage',
228 $GLOBALS['LANG']->getLL('cliUserGroup.grpNotConfiguredMsg'),
229 $GLOBALS['LANG']->getLL('cliUserGroup.grpNotConfigured'),
230- t3lib_FlashMessage::WARNING,
231+ t3lib_FlashMessage::ERROR,
232 FALSE
233 );
234
235
236=== modified file 'dlf/modules/indexing/index.php'
237--- dlf/modules/indexing/index.php 2012-03-30 09:14:14 +0000
238+++ dlf/modules/indexing/index.php 2012-04-30 16:12:18 +0000
239@@ -87,8 +87,6 @@
240 );
241
242 // TODO: Ändern!
243- $this->doc->form = '<form name="'.$this->prefixId.'[form]" id="tx-dlf-modIndexing-form" action="" method="post">';
244-
245 $form = '<label for="tx-dlf-modIndexing-id">Kollektion:</label>';
246
247 $form .= '<select id="tx-dlf-modIndexing-collection" name="'.$this->prefixId.'[collection]">';
248@@ -141,8 +139,6 @@
249 );
250
251 // TODO: Ändern!
252- $this->doc->form = '<form name="'.$this->prefixId.'[form]" id="tx-dlf-modIndexing-form" action="" method="post">';
253-
254 $form = '<label for="tx-dlf-modIndexing-id">METS-Datei:</label>';
255
256 $form .= '<input type="text" id="tx-dlf-modIndexing-id" name="'.$this->prefixId.'[id]" value="" /><br />';
257
258=== added file 'dlf/modules/indexing/template.tmpl'
259--- dlf/modules/indexing/template.tmpl 1970-01-01 00:00:00 +0000
260+++ dlf/modules/indexing/template.tmpl 2012-04-30 16:12:18 +0000
261@@ -0,0 +1,32 @@
262+<!-- ###FULLDOC### begin -->
263+<div class="typo3-fullDoc">
264+ <!-- Page header with buttons, path details and csh -->
265+ <div id="typo3-docheader">
266+ <div id="typo3-docheader-row1">
267+ <div class="buttonsleft">###BUTTONLIST_LEFT###</div>
268+ <div class="buttonsright">###BUTTONLIST_RIGHT###</div>
269+ </div>
270+ <div id="typo3-docheader-row2">
271+ <div class="docheader-row2-left"><div class="docheader-funcmenu">###CSH### ###MOD_MENU###</div></div>
272+ <div class="docheader-row2-right">###PAGEPATH######PAGEINFO###</div>
273+ </div>
274+ </div>
275+ <!-- Content of module, for instance listing, info or editing -->
276+ <div id="typo3-docbody">
277+ <div id="typo3-inner-docbody">
278+ ###CONTENT###
279+ </div>
280+ </div>
281+</div>
282+<!-- ###FULLDOC### end -->
283+
284+<!-- ###BUTTON_GROUP_WRAP### -->
285+ <div class="buttongroup">###BUTTONS###</div>
286+<!-- ###BUTTON_GROUP_WRAP### -->
287+
288+<!-- ###BUTTON_GROUPS_LEFT### -->
289+<!-- ###BUTTON_GROUPS_LEFT### -->
290+
291+<!-- ###BUTTON_GROUPS_RIGHT### -->
292+<!-- ###BUTTON_GROUP1### -->###SHORTCUT###<!-- ###BUTTON_GROUP1### -->
293+<!-- ###BUTTON_GROUPS_RIGHT### -->
294\ No newline at end of file
295
296=== removed file 'dlf/modules/indexing/template.tmpl'
297--- dlf/modules/indexing/template.tmpl 2011-03-09 15:36:27 +0000
298+++ dlf/modules/indexing/template.tmpl 1970-01-01 00:00:00 +0000
299@@ -1,32 +0,0 @@
300-<!-- ###FULLDOC### begin -->
301-<div class="typo3-fullDoc">
302- <!-- Page header with buttons, path details and csh -->
303- <div id="typo3-docheader">
304- <div id="typo3-docheader-row1">
305- <div class="buttonsleft">###BUTTONLIST_LEFT###</div>
306- <div class="buttonsright">###BUTTONLIST_RIGHT###</div>
307- </div>
308- <div id="typo3-docheader-row2">
309- <div class="docheader-row2-left"><div class="docheader-csh">###CSH######MOD_MENU###</div></div>
310- <div class="docheader-row2-right">###PAGEPATH######PAGEINFO###</div>
311- </div>
312- </div>
313- <!-- Content of module, for instance listing, info or editing -->
314- <div id="typo3-docbody">
315- <div id="typo3-inner-docbody">
316- ###CONTENT###
317- </div>
318- </div>
319-</div>
320-<!-- ###FULLDOC### end -->
321-
322-<!-- ###BUTTON_GROUP_WRAP### -->
323- <div class="buttongroup">###BUTTONS###</div>
324-<!-- ###BUTTON_GROUP_WRAP### -->
325-
326-<!-- ###BUTTON_GROUPS_LEFT### -->
327-<!-- ###BUTTON_GROUPS_LEFT### -->
328-
329-<!-- ###BUTTON_GROUPS_RIGHT### -->
330-<!-- ###BUTTON_GROUP1### -->###SHORTCUT###<!-- ###BUTTON_GROUP1### -->
331-<!-- ###BUTTON_GROUPS_RIGHT### -->
332\ No newline at end of file
333
334=== added directory 'dlf/modules/newclient'
335=== added file 'dlf/modules/newclient/conf.php'
336--- dlf/modules/newclient/conf.php 1970-01-01 00:00:00 +0000
337+++ dlf/modules/newclient/conf.php 2012-04-30 16:12:18 +0000
338@@ -0,0 +1,35 @@
339+<?php
340+/***************************************************************
341+* Copyright notice
342+*
343+* (c) 2012 Sebastian Meyer <sebastian.meyer@slub-dresden.de>
344+* All rights reserved
345+*
346+* This script is part of the TYPO3 project. The TYPO3 project is
347+* free software; you can redistribute it and/or modify
348+* it under the terms of the GNU General Public License as published by
349+* the Free Software Foundation; either version 2 of the License, or
350+* (at your option) any later version.
351+*
352+* The GNU General Public License can be found at
353+* http://www.gnu.org/copyleft/gpl.html.
354+*
355+* This script is distributed in the hope that it will be useful,
356+* but WITHOUT ANY WARRANTY; without even the implied warranty of
357+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
358+* GNU General Public License for more details.
359+*
360+* This copyright notice MUST APPEAR in all copies of the script!
361+***************************************************************/
362+
363+$MCONF['name'] = 'txdlfmodules_txdlfnewclient';
364+
365+$MCONF['access'] = 'admin';
366+
367+$MCONF['script'] = '_DISPATCH';
368+
369+$MLANG['default']['tabs_images']['tab'] = '../../res/icon_txdlfnewclient.png';
370+
371+$MLANG['default']['ll_ref'] = 'LLL:EXT:dlf/modules/newclient/locallang_mod.xml';
372+
373+?>
374\ No newline at end of file
375
376=== added file 'dlf/modules/newclient/index.php'
377--- dlf/modules/newclient/index.php 1970-01-01 00:00:00 +0000
378+++ dlf/modules/newclient/index.php 2012-04-30 16:12:18 +0000
379@@ -0,0 +1,518 @@
380+<?php
381+/***************************************************************
382+* Copyright notice
383+*
384+* (c) 2012 Sebastian Meyer <sebastian.meyer@slub-dresden.de>
385+* All rights reserved
386+*
387+* This script is part of the TYPO3 project. The TYPO3 project is
388+* free software; you can redistribute it and/or modify
389+* it under the terms of the GNU General Public License as published by
390+* the Free Software Foundation; either version 2 of the License, or
391+* (at your option) any later version.
392+*
393+* The GNU General Public License can be found at
394+* http://www.gnu.org/copyleft/gpl.html.
395+*
396+* This script is distributed in the hope that it will be useful,
397+* but WITHOUT ANY WARRANTY; without even the implied warranty of
398+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
399+* GNU General Public License for more details.
400+*
401+* This copyright notice MUST APPEAR in all copies of the script!
402+***************************************************************/
403+
404+/**
405+ * [CLASS/FUNCTION INDEX of SCRIPT]
406+ */
407+
408+/**
409+ * Module 'newclient' for the 'dlf' extension.
410+ *
411+ * @author Sebastian Meyer <sebastian.meyer@slub-dresden.de>
412+ * @copyright Copyright (c) 2012, Sebastian Meyer, SLUB Dresden
413+ * @package TYPO3
414+ * @subpackage tx_dlf
415+ * @access public
416+ */
417+class tx_dlf_modNewclient extends tx_dlf_module {
418+
419+ protected $modPath = 'newclient/';
420+
421+ protected $buttonArray = array (
422+ 'SHORTCUT' => '',
423+ );
424+
425+ protected $markerArray = array (
426+ 'CSH' => '',
427+ 'MOD_MENU' => '',
428+ 'CONTENT' => '',
429+ );
430+
431+ /**
432+ * Add access rights
433+ *
434+ * @access protected
435+ *
436+ * @return void
437+ */
438+ protected function cmdAddAccessRights() {
439+
440+ // Get command line indexer's usergroup.
441+ $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
442+ 'uid,db_mountpoints',
443+ 'be_groups',
444+ 'title='.$GLOBALS['TYPO3_DB']->fullQuoteStr('_cli_dlf', 'be_groups').' AND '.$GLOBALS['TCA']['be_groups']['ctrl']['enablecolumns']['disabled'].'=0'.t3lib_BEfunc::deleteClause('be_groups')
445+ );
446+
447+ if ($GLOBALS['TYPO3_DB']->sql_num_rows($result)) {
448+
449+ $resArray = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($result);
450+
451+ // Add current page to mountpoints.
452+ if (!t3lib_div::inList($resArray['db_mountpoints'], $this->id)) {
453+
454+ $data['be_groups'][$resArray['uid']]['db_mountpoints'] = $resArray['db_mountpoints'].','.$this->id;
455+
456+ tx_dlf_helper::processDB($data);
457+
458+ // Fine.
459+ $_message = t3lib_div::makeInstance(
460+ 't3lib_FlashMessage',
461+ $GLOBALS['LANG']->getLL('flash.usergroupAddedMsg'),
462+ $GLOBALS['LANG']->getLL('flash.usergroupAdded', TRUE),
463+ t3lib_FlashMessage::OK,
464+ FALSE
465+ );
466+
467+ t3lib_FlashMessageQueue::addMessage($_message);
468+
469+ }
470+
471+ }
472+
473+ }
474+
475+ /**
476+ * Add metadata configuration
477+ *
478+ * @access protected
479+ *
480+ * @return void
481+ */
482+ protected function cmdAddMetadata() {
483+
484+ // Include metadata definition file.
485+ include_once(t3lib_extMgm::extPath($this->extKey).'modules/'.$this->modPath.'metadata.inc.php');
486+
487+ // Load table configuration array to get default field values.
488+ t3lib_div::loadTCA('tx_dlf_metadata');
489+
490+ // Build data array.
491+ foreach ($metadata as $index_name => $values) {
492+
493+ $data['tx_dlf_metadata'][uniqid('NEW')] = array (
494+ 'pid' => intval($this->id),
495+ 'label' => $GLOBALS['LANG']->getLL($index_name),
496+ 'index_name' => $index_name,
497+ 'xpath' => $values['xpath'],
498+ 'xpath_sorting' => $values['xpath_sorting'],
499+ 'default_value' => $values['default_value'],
500+ 'wrap' => (!empty($values['wrap']) ? $values['wrap'] : $GLOBALS['TCA']['tx_dlf_metadata']['columns']['wrap']['config']['default']),
501+ 'tokenized' => $values['tokenized'],
502+ 'stored' => $values['stored'],
503+ 'indexed' => $values['indexed'],
504+ 'boost' => $values['boost'],
505+ 'is_sortable' => $values['is_sortable'],
506+ 'is_facet' => $values['is_facet'],
507+ 'is_listed' => $values['is_listed'],
508+ );
509+
510+ }
511+
512+ $_ids = tx_dlf_helper::processDB($data);
513+
514+ // Check for failed inserts.
515+ if (count($_ids) == count($metadata)) {
516+
517+ // Fine.
518+ $_message = t3lib_div::makeInstance(
519+ 't3lib_FlashMessage',
520+ $GLOBALS['LANG']->getLL('flash.metadataAddedMsg'),
521+ $GLOBALS['LANG']->getLL('flash.metadataAdded', TRUE),
522+ t3lib_FlashMessage::OK,
523+ FALSE
524+ );
525+
526+ } else {
527+
528+ // Something went wrong.
529+ $_message = t3lib_div::makeInstance(
530+ 't3lib_FlashMessage',
531+ $GLOBALS['LANG']->getLL('flash.metadataNotAddedMsg'),
532+ $GLOBALS['LANG']->getLL('flash.metadataNotAdded', TRUE),
533+ t3lib_FlashMessage::ERROR,
534+ FALSE
535+ );
536+
537+ }
538+
539+ t3lib_FlashMessageQueue::addMessage($_message);
540+
541+ }
542+
543+ /**
544+ * Add Solr core
545+ *
546+ * @access protected
547+ *
548+ * @return void
549+ */
550+ protected function cmdAddSolrCore() {
551+
552+ // Build data array.
553+ $data['tx_dlf_solrcores'][uniqid('NEW')] = array (
554+ 'pid' => intval($this->id),
555+ 'label' => $GLOBALS['LANG']->getLL('solrcore').' (PID '.$this->id.')',
556+ 'index_name' => '',
557+ );
558+
559+ $_ids = tx_dlf_helper::processDB($data);
560+
561+ // Check for failed inserts.
562+ if (count($_ids) == 1) {
563+
564+ // Fine.
565+ $_message = t3lib_div::makeInstance(
566+ 't3lib_FlashMessage',
567+ $GLOBALS['LANG']->getLL('flash.solrcoreAddedMsg'),
568+ $GLOBALS['LANG']->getLL('flash.solrcoreAdded', TRUE),
569+ t3lib_FlashMessage::OK,
570+ FALSE
571+ );
572+
573+ } else {
574+
575+ // Something went wrong.
576+ $_message = t3lib_div::makeInstance(
577+ 't3lib_FlashMessage',
578+ $GLOBALS['LANG']->getLL('flash.solrcoreNotAddedMsg'),
579+ $GLOBALS['LANG']->getLL('flash.solrcoreNotAdded', TRUE),
580+ t3lib_FlashMessage::ERROR,
581+ FALSE
582+ );
583+
584+ }
585+
586+ t3lib_FlashMessageQueue::addMessage($_message);
587+
588+ }
589+
590+ /**
591+ * Add structure configuration
592+ *
593+ * @access protected
594+ *
595+ * @return void
596+ */
597+ protected function cmdAddStructure() {
598+
599+ // Include structure definition file.
600+ include_once(t3lib_extMgm::extPath($this->extKey).'modules/'.$this->modPath.'structures.inc.php');
601+
602+ // Build data array.
603+ foreach ($structures as $index_name => $values) {
604+
605+ $data['tx_dlf_structures'][uniqid('NEW')] = array (
606+ 'pid' => intval($this->id),
607+ 'toplevel' => $values['toplevel'],
608+ 'label' => $GLOBALS['LANG']->getLL($index_name),
609+ 'index_name' => $index_name,
610+ 'oai_name' => $values['oai_name']
611+ );
612+
613+ }
614+
615+ $_ids = tx_dlf_helper::processDB($data);
616+
617+ // Check for failed inserts.
618+ if (count($_ids) == count($structures)) {
619+
620+ // Fine.
621+ $_message = t3lib_div::makeInstance(
622+ 't3lib_FlashMessage',
623+ $GLOBALS['LANG']->getLL('flash.structureAddedMsg'),
624+ $GLOBALS['LANG']->getLL('flash.structureAdded', TRUE),
625+ t3lib_FlashMessage::OK,
626+ FALSE
627+ );
628+
629+ } else {
630+
631+ // Something went wrong.
632+ $_message = t3lib_div::makeInstance(
633+ 't3lib_FlashMessage',
634+ $GLOBALS['LANG']->getLL('flash.structureNotAddedMsg'),
635+ $GLOBALS['LANG']->getLL('flash.structureNotAdded', TRUE),
636+ t3lib_FlashMessage::ERROR,
637+ FALSE
638+ );
639+
640+ }
641+
642+ t3lib_FlashMessageQueue::addMessage($_message);
643+
644+ }
645+
646+ /**
647+ * Main function of the module
648+ *
649+ * @access public
650+ *
651+ * @return void
652+ */
653+ public function main() {
654+
655+ // Is the user allowed to access this page?
656+ $access = is_array($this->pageInfo) && $GLOBALS['BE_USER']->isAdmin();
657+
658+ if ($this->id && $access) {
659+
660+ // Check if page is sysfolder.
661+ if ($this->pageInfo['doktype'] != 254) {
662+
663+ $_message = t3lib_div::makeInstance(
664+ 't3lib_FlashMessage',
665+ $GLOBALS['LANG']->getLL('flash.wrongPageTypeMsg'),
666+ $GLOBALS['LANG']->getLL('flash.wrongPageType', TRUE),
667+ t3lib_FlashMessage::ERROR,
668+ FALSE
669+ );
670+
671+ t3lib_FlashMessageQueue::addMessage($_message);
672+
673+ $this->markerArray['CONTENT'] .= t3lib_FlashMessageQueue::renderFlashMessages();
674+
675+ $this->printContent();
676+
677+ return;
678+
679+ }
680+
681+ // Should we do something?
682+ if (!empty($this->CMD)) {
683+
684+ // Sanitize input...
685+ $_method = 'cmd'.ucfirst($this->CMD);
686+
687+ // ...and unset to prevent infinite looping.
688+ unset ($this->CMD);
689+
690+ if (method_exists($this, $_method)) {
691+
692+ $this->$_method();
693+
694+ }
695+
696+ }
697+
698+ // Check for existing structure configuration.
699+ $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
700+ 'uid',
701+ 'tx_dlf_structures',
702+ 'pid='.intval($this->id).tx_dlf_helper::whereClause('tx_dlf_structures')
703+ );
704+
705+ if ($GLOBALS['TYPO3_DB']->sql_num_rows($result)) {
706+
707+ // Fine.
708+ $_message = t3lib_div::makeInstance(
709+ 't3lib_FlashMessage',
710+ $GLOBALS['LANG']->getLL('flash.structureOkayMsg'),
711+ $GLOBALS['LANG']->getLL('flash.structureOkay', TRUE),
712+ t3lib_FlashMessage::OK,
713+ FALSE
714+ );
715+
716+ } else {
717+
718+ // Configuration missing.
719+ $_url = t3lib_div::locationHeaderUrl(t3lib_div::linkThisScript(array ('id' => $this->id, 'CMD' => 'addStructure')));
720+
721+ $_message = t3lib_div::makeInstance(
722+ 't3lib_FlashMessage',
723+ sprintf($GLOBALS['LANG']->getLL('flash.structureNotOkayMsg'), $_url),
724+ $GLOBALS['LANG']->getLL('flash.structureNotOkay', TRUE),
725+ t3lib_FlashMessage::ERROR,
726+ FALSE
727+ );
728+
729+ }
730+
731+ t3lib_FlashMessageQueue::addMessage($_message);
732+
733+ // Check for existing metadata configuration.
734+ $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
735+ 'uid',
736+ 'tx_dlf_metadata',
737+ 'pid='.intval($this->id).tx_dlf_helper::whereClause('tx_dlf_metadata')
738+ );
739+
740+ if ($GLOBALS['TYPO3_DB']->sql_num_rows($result)) {
741+
742+ // Fine.
743+ $_message = t3lib_div::makeInstance(
744+ 't3lib_FlashMessage',
745+ $GLOBALS['LANG']->getLL('flash.metadataOkayMsg'),
746+ $GLOBALS['LANG']->getLL('flash.metadataOkay', TRUE),
747+ t3lib_FlashMessage::OK,
748+ FALSE
749+ );
750+
751+ } else {
752+
753+ // Configuration missing.
754+ $_url = t3lib_div::locationHeaderUrl(t3lib_div::linkThisScript(array ('id' => $this->id, 'CMD' => 'addMetadata')));
755+
756+ $_message = t3lib_div::makeInstance(
757+ 't3lib_FlashMessage',
758+ sprintf($GLOBALS['LANG']->getLL('flash.metadataNotOkayMsg'), $_url),
759+ $GLOBALS['LANG']->getLL('flash.metadataNotOkay', TRUE),
760+ t3lib_FlashMessage::ERROR,
761+ FALSE
762+ );
763+
764+ }
765+
766+ t3lib_FlashMessageQueue::addMessage($_message);
767+
768+ // Check the access conditions for the command line indexer's user.
769+ $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
770+ 'uid,db_mountpoints',
771+ 'be_groups',
772+ 'title='.$GLOBALS['TYPO3_DB']->fullQuoteStr('_cli_dlf', 'be_groups').' AND '.$GLOBALS['TCA']['be_groups']['ctrl']['enablecolumns']['disabled'].'=0'.t3lib_BEfunc::deleteClause('be_groups')
773+ );
774+
775+ if ($GLOBALS['TYPO3_DB']->sql_num_rows($result)) {
776+
777+ $resArray = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($result);
778+
779+ if (t3lib_div::inList($resArray['db_mountpoints'], $this->id)) {
780+
781+ // Fine.
782+ $_message = t3lib_div::makeInstance(
783+ 't3lib_FlashMessage',
784+ $GLOBALS['LANG']->getLL('flash.usergroupOkayMsg'),
785+ $GLOBALS['LANG']->getLL('flash.usergroupOkay', TRUE),
786+ t3lib_FlashMessage::OK,
787+ FALSE
788+ );
789+
790+ } else {
791+
792+ // Configuration missing.
793+ $_url = t3lib_div::locationHeaderUrl(t3lib_div::linkThisScript(array ('id' => $this->id, 'CMD' => 'addAccessRights')));
794+
795+ $_message = t3lib_div::makeInstance(
796+ 't3lib_FlashMessage',
797+ sprintf($GLOBALS['LANG']->getLL('flash.usergroupNotOkayMsg'), $_url),
798+ $GLOBALS['LANG']->getLL('flash.usergroupNotOkay', TRUE),
799+ t3lib_FlashMessage::ERROR,
800+ FALSE
801+ );
802+
803+ }
804+
805+ } else {
806+
807+ // Usergoup missing.
808+ $_message = t3lib_div::makeInstance(
809+ 't3lib_FlashMessage',
810+ $GLOBALS['LANG']->getLL('flash.usergroupMissingMsg'),
811+ $GLOBALS['LANG']->getLL('flash.usergroupMissing', TRUE),
812+ t3lib_FlashMessage::ERROR,
813+ FALSE
814+ );
815+
816+ }
817+
818+ t3lib_FlashMessageQueue::addMessage($_message);
819+
820+ // Check for existing Solr core.
821+ $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
822+ 'uid,pid',
823+ 'tx_dlf_solrcores',
824+ 'pid IN ('.intval($this->id).',0)'.tx_dlf_helper::whereClause('tx_dlf_solrcores')
825+ );
826+
827+ if ($GLOBALS['TYPO3_DB']->sql_num_rows($result)) {
828+
829+ $resArray = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($result);
830+
831+ if ($resArray['pid']) {
832+
833+ // Fine.
834+ $_message = t3lib_div::makeInstance(
835+ 't3lib_FlashMessage',
836+ $GLOBALS['LANG']->getLL('flash.solrcoreOkayMsg'),
837+ $GLOBALS['LANG']->getLL('flash.solrcoreOkay', TRUE),
838+ t3lib_FlashMessage::OK,
839+ FALSE
840+ );
841+
842+ } else {
843+
844+ // Default core available, but this is deprecated.
845+ $_url = t3lib_div::locationHeaderUrl(t3lib_div::linkThisScript(array ('id' => $this->id, 'CMD' => 'addSolrcore')));
846+
847+ $_message = t3lib_div::makeInstance(
848+ 't3lib_FlashMessage',
849+ sprintf($GLOBALS['LANG']->getLL('flash.solrcoreDeprecatedMsg'), $_url),
850+ $GLOBALS['LANG']->getLL('flash.solrcoreDeprecatedOkay', TRUE),
851+ t3lib_FlashMessage::NOTICE,
852+ FALSE
853+ );
854+
855+ }
856+
857+ } else {
858+
859+ // Solr core missing.
860+ $_url = t3lib_div::locationHeaderUrl(t3lib_div::linkThisScript(array ('id' => $this->id, 'CMD' => 'addSolrcore')));
861+
862+ $_message = t3lib_div::makeInstance(
863+ 't3lib_FlashMessage',
864+ sprintf($GLOBALS['LANG']->getLL('flash.solrcoreMissingMsg'), $_url),
865+ $GLOBALS['LANG']->getLL('flash.solrcoreMissing', TRUE),
866+ t3lib_FlashMessage::WARNING,
867+ FALSE
868+ );
869+
870+ }
871+
872+ t3lib_FlashMessageQueue::addMessage($_message);
873+
874+ $this->markerArray['CONTENT'] .= t3lib_FlashMessageQueue::renderFlashMessages();
875+
876+ } else {
877+
878+ // TODO: Ändern!
879+ $this->markerArray['CONTENT'] .= 'You are not allowed to access this page or have not selected a page, yet.';
880+
881+ }
882+
883+ $this->printContent();
884+
885+ }
886+
887+}
888+
889+if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/dlf/modules/newclient/index.php']) {
890+ include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/dlf/modules/newclient/index.php']);
891+}
892+
893+$SOBE = t3lib_div::makeInstance('tx_dlf_modNewclient');
894+
895+$SOBE->main();
896+
897+?>
898\ No newline at end of file
899
900=== added file 'dlf/modules/newclient/locallang.xml'
901--- dlf/modules/newclient/locallang.xml 1970-01-01 00:00:00 +0000
902+++ dlf/modules/newclient/locallang.xml 2012-04-30 16:12:18 +0000
903@@ -0,0 +1,209 @@
904+<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
905+<T3locallang>
906+ <meta type="array">
907+ <type>module</type>
908+ <description>Language labels for module txdlfnewclient</description>
909+ </meta>
910+ <data type="array">
911+ <languageKey index="default" type="array">
912+ <label index="title">New Client</label>
913+ <label index="flash.wrongPageType">Page is no SysFolder!</label>
914+ <label index="flash.wrongPageTypeMsg">The configuration records of Goobi.Presentation need to be stored in a SysFolder.</label>
915+ <label index="flash.structureOkay">Structures found!</label>
916+ <label index="flash.structureOkayMsg">There are configuration records for structural metadata. They can be edited in die list module.</label>
917+ <label index="flash.structureNotOkay">No structures found!</label>
918+ <label index="flash.structureNotOkayMsg">There are no configuration records for structural metadata. A basic configuration can be added automatically.&lt;br /&gt;&lt;br /&gt;&lt;a href="%s"&gt;Add basic configuration!&lt;/a&gt;</label>
919+ <label index="flash.structureAdded">Basic configuration added!</label>
920+ <label index="flash.structureAddedMsg">Basic configuration records for structural metadata were added. The records should be checked in the list module!</label>
921+ <label index="flash.structureNotAdded">No configuration added!</label>
922+ <label index="flash.structureNotAddedMsg">While adding the configuration records an error occured. The records should be checked in the list module!</label>
923+ <label index="flash.metadataOkay">Metadata found!</label>
924+ <label index="flash.metadataOkayMsg">There are configuration records for bibliographic metadata. They can be edited in die list module.</label>
925+ <label index="flash.metadataNotOkay">No metadata found!</label>
926+ <label index="flash.metadataNotOkayMsg">There are no configuration records for bibliographic metadata. A basic configuration can be added automatically.&lt;br /&gt;&lt;br /&gt;&lt;a href="%s"&gt;Add basic configuration!&lt;/a&gt;</label>
927+ <label index="flash.metadataAdded">Basic configuration added!</label>
928+ <label index="flash.metadataAddedMsg">Basic configuration records for bibliographic metadata were added. The records should be checked in the list module!</label>
929+ <label index="flash.metadataNotAdded">No configuration added!</label>
930+ <label index="flash.metadataNotAddedMsg">While adding the configuration records an error occured. The records should be checked in the list module!</label>
931+ <label index="flash.usergroupOkay">Usergroup has access!</label>
932+ <label index="flash.usergroupOkayMsg">The usergroup "_cli_dlf" has access to this SysFolder.</label>
933+ <label index="flash.usergroupNotOkay">Usergroup has no access!</label>
934+ <label index="flash.usergroupNotOkayMsg">The usergroup "_cli_dlf" has no access to this SysFolder. Access can be granted automatically.&lt;br /&gt;&lt;br /&gt;&lt;a href="%s"&gt;Grant access!&lt;/a&gt;</label>
935+ <label index="flash.usergroupMissing">Usergroup not found!</label>
936+ <label index="flash.usergroupMissingMsg">The usergroup "_cli_dlf" does not exist. The usergroup has to be added in the Extension Manager!</label>
937+ <label index="flash.usergroupAdded">Access granted!</label>
938+ <label index="flash.usergroupAddedMsg">Access to this SysFolder was granted for usergroup "_cli_dlf".</label>
939+ <label index="flash.solrcoreOkay">Solr core found!</label>
940+ <label index="flash.solrcoreOkayMsg">There are configuration records for Solr cores. They can be edited in the list module.</label>
941+ <label index="flash.solrcoreDeprecated">Deprecated configuration found!</label>
942+ <label index="flash.solrcoreDeprecatedMsg">A common Solr core was found in the root-page. This is deprecated since Goobi.Presentation 1.1. Solr cores should be stored in the client's SysFolder instead. Move a Solr core to this SysFolder (manually) or create a new one automatically.&lt;br /&gt;&lt;br /&gt;&lt;a href="%s"&gt;Create new Solr core!&lt;/a&gt;</label>
943+ <label index="flash.solrcoreMissing">No Solr core found!</label>
944+ <label index="flash.solrcoreMissingMsg">There is no Solr core configured. For the search plugin at least one Solr core is needed. It can be created automatically.&lt;br /&gt;&lt;br /&gt;&lt;a href="%s"&gt;Create new Solr core!&lt;/a&gt;</label>
945+ <label index="flash.solrcoreAdded">Solr core created!</label>
946+ <label index="flash.solrcoreAddedMsg">A new Solr core was created. It can be edited in the list module.</label>
947+ <label index="flash.solrcoreNotAdded">No Solr core created!</label>
948+ <label index="flash.solrcoreNotAddedMsg">While creating a new Solr core an error occured. The record should be checked in the list module!</label>
949+ <label index="solrcore">Solr Core</label>
950+ <label index="additional">Additional</label>
951+ <label index="address">Address</label>
952+ <label index="annotation">Annotation</label>
953+ <label index="article">Article</label>
954+ <label index="binding">Binding</label>
955+ <label index="bookplate">Bookplate</label>
956+ <label index="chapter">Chapter</label>
957+ <label index="collation">Collation</label>
958+ <label index="colophon">Colophon</label>
959+ <label index="contained_work">Contained Work</label>
960+ <label index="contents">Table of Contents</label>
961+ <label index="corrigenda">Corrigenda</label>
962+ <label index="cover">Cover</label>
963+ <label index="dedication">Dedication</label>
964+ <label index="edge">Edge</label>
965+ <label index="endsheet">Endsheet</label>
966+ <label index="engraved_titlepage">Engraved Titlepage</label>
967+ <label index="entry">Entry</label>
968+ <label index="fascicle">Fascicle</label>
969+ <label index="fragment">Fragment</label>
970+ <label index="illustration">Illustration</label>
971+ <label index="imprint">Imprint</label>
972+ <label index="index">Index</label>
973+ <label index="initial_decoration">Initial Decoration</label>
974+ <label index="issue">Issue</label>
975+ <label index="manuscript">Manuscript</label>
976+ <label index="map">Map</label>
977+ <label index="monograph">Monograph</label>
978+ <label index="multivolume_work">Multivolume Work</label>
979+ <label index="musical_notation">Musical Notation</label>
980+ <label index="ornament">Ornament</label>
981+ <label index="paste_down">Paste Down</label>
982+ <label index="periodical">Periodical</label>
983+ <label index="preface">Preface</label>
984+ <label index="printers_mark">Printers Mark</label>
985+ <label index="privileges">Privileges</label>
986+ <label index="provenance">Provenance</label>
987+ <label index="scheme">Scheme</label>
988+ <label index="section">Section</label>
989+ <label index="spine">Spine</label>
990+ <label index="stamp">Stamp</label>
991+ <label index="table">Table</label>
992+ <label index="text">Text</label>
993+ <label index="title_page">Titlepage</label>
994+ <label index="verse">Verse</label>
995+ <label index="volume">Volume</label>
996+ <label index="prod_id">Goobi Process Number</label>
997+ <label index="record_id">OAI Identifier</label>
998+ <label index="opac_id">OPAC Identifier</label>
999+ <label index="union_id">Union Catalog ID</label>
1000+ <label index="urn">URN</label>
1001+ <label index="purl">PURL</label>
1002+ <label index="type">Type</label>
1003+ <label index="title">Title</label>
1004+ <label index="author">Author</label>
1005+ <label index="year">Year of Publication</label>
1006+ <label index="place">Place of Publication</label>
1007+ <label index="volume">Volume</label>
1008+ <label index="collection">Collection(s)</label>
1009+ <label index="owner">Owner</label>
1010+ </languageKey>
1011+ <languageKey index="de" type="array">
1012+ <label index="title">Neuer Mandant</label>
1013+ <label index="flash.wrongPageType">Seite ist kein SysOrdner!</label>
1014+ <label index="flash.wrongPageTypeMsg">Die Konfigurationsdatensätze von Goobi.Presentation müssen in SysOrdnern abgelegt werden.</label>
1015+ <label index="flash.structureOkay">Strukturdaten gefunden!</label>
1016+ <label index="flash.structureOkayMsg">Es ist eine Konfiguration für Strukturdaten vorhanden. Über das Listenmodul können neue Datensätze hinzugefügt und die vorhandenen editiert werden.</label>
1017+ <label index="flash.structureNotOkay">Keine Strukturdaten gefunden!</label>
1018+ <label index="flash.structureNotOkayMsg">Es wurde keine Konfiguration für Strukturdaten gefunden. Eine Grundkonfiguration kann automatisch angelegt werden.&lt;br /&gt;&lt;br /&gt;&lt;a href="%s"&gt;Grundkonfiguration jetzt anlegen!&lt;/a&gt;</label>
1019+ <label index="flash.structureAdded">Grundkonfiguration angelegt!</label>
1020+ <label index="flash.structureAddedMsg">Es wurde eine Grundkonfiguration für Strukturdaten angelegt. Die Datensätze sollten über das Listenmodul kontrolliert und ggf. angepasst werden!</label>
1021+ <label index="flash.structureNotAdded">Keine Grundkonfiguration angelegt!</label>
1022+ <label index="flash.structureNotAddedMsg">Beim Anlegen der Grundkonfiguration für Strukturdaten ist ein Fehler aufgetreten. Die Konfiguration wurde nicht oder unvollständig angelegt und sollte über das Listenmodul kontrolliert werden!</label>
1023+ <label index="flash.metadataOkay">Metadaten gefunden!</label>
1024+ <label index="flash.metadataOkayMsg">Es ist eine Konfiguration für Metadaten vorhanden. Über das Listenmodul können neue Datensätze hinzugefügt und die vorhandenen editiert werden.</label>
1025+ <label index="flash.metadataNotOkay">Keine Metadaten gefunden!</label>
1026+ <label index="flash.metadataNotOkayMsg">Es wurde keine Konfiguration für Metadaten gefunden. Eine Grundkonfiguration kann automatisch angelegt werden.&lt;br /&gt;&lt;br /&gt;&lt;a href="%s"&gt;Grundkonfiguration jetzt anlegen!&lt;/a&gt;</label>
1027+ <label index="flash.metadataAdded">Grundkonfiguration angelegt!</label>
1028+ <label index="flash.metadataAddedMsg">Es wurde eine Grundkonfiguration für Metadaten angelegt. Die Datensätze sollten über das Listenmodul kontrolliert und ggf. angepasst werden!</label>
1029+ <label index="flash.metadataNotAdded">Keine Grundkonfiguration angelegt!</label>
1030+ <label index="flash.metadataNotAddedMsg">Beim Anlegen der Grundkonfiguration für Metadaten ist ein Fehler aufgetreten. Die Konfiguration wurde nicht oder unvollständig angelegt und sollte über das Listenmodul kontrolliert werden!</label>
1031+ <label index="flash.usergroupOkay">Benutzergruppe hat Zugriffsrechte!</label>
1032+ <label index="flash.usergroupOkayMsg">Die Benutzergruppe "_cli_dlf" hat die nötigen Zugriffsrechte für diesen SysOrdner.</label>
1033+ <label index="flash.usergroupNotOkay">Benutzergruppe hat keine Zugriffsrechte!</label>
1034+ <label index="flash.usergroupNotOkayMsg">Der Benutzergruppe "_cli_dlf" fehlen die nötigen Zugriffsrechte für diesen SysOrdner. Die Rechte können automatisch erteilt werden.&lt;br /&gt;&lt;br /&gt;&lt;a href="%s"&gt;Zugriffsrechte jetzt erteilen!&lt;/a&gt;</label>
1035+ <label index="flash.usergroupMissing">Benutzergruppe nicht gefunden!</label>
1036+ <label index="flash.usergroupMissingMsg">Die Benutzergruppe "_cli_dlf" wurde nicht gefunden. Die Benutzergruppe muss über den Extension Manager angelegt werden!</label>
1037+ <label index="flash.usergroupAdded">Zugriffsrechte erteilt!</label>
1038+ <label index="flash.usergroupAddedMsg">Der Benutzergruppe "_cli_dlf" wurden die nötigen Zugriffsrechte für diesen SysOrdner erteilt.</label>
1039+ <label index="flash.solrcoreOkay">Solr Kern gefunden!</label>
1040+ <label index="flash.solrcoreOkayMsg">Es wurde die Konfiguration für einen Solr Kern gefunden. Über das Listenmodul können neue Datensätze hinzugefügt und die vorhandenen editiert werden.</label>
1041+ <label index="flash.solrcoreDeprecated">Veraltete Konfiguration gefunden!</label>
1042+ <label index="flash.solrcoreDeprecatedMsg">Es wurde ein allgemeiner Solr Kern in der Root-Page gefunden. Das entspricht dem Verhalten von Goobi.Presentation 1.0. Seit Version 1.1 sollten Solr Kerne im SysOrdner des jeweiligen Mandanten konfiguriert werden. Es sollte entweder einer der Solr Kerne aus der Root-Page in diesen SysOrdner verschoben werden (manuell) oder ein neuer Solr Kern angelegt werden.&lt;br /&gt;&lt;br /&gt;&lt;a href="%s"&gt;Neuen Solr Kern jetzt anlegen!&lt;/a&gt;</label>
1043+ <label index="flash.solrcoreMissing">Kein Solr Kern gefunden!</label>
1044+ <label index="flash.solrcoreMissingMsg">Es wurde kein Solr Kern gefunden. Ohne Solr Kern kann das Plugin zur Recherche in den Meta- und Strukturdaten nicht verwendet werden. Ein Solr Kern kann automatisch angelegt werden.&lt;br /&gt;&lt;br /&gt;&lt;a href="%s"&gt;Solr Kern jetzt anlegen!&lt;/a&gt;</label>
1045+ <label index="flash.solrcoreAdded">Solr Kern angelegt!</label>
1046+ <label index="flash.solrcoreAddedMsg">Es wurde ein Solr Kern angelegt. Über das Listenmodul können neue Datensätze hinzugefügt und die vorhandenen editiert werden.</label>
1047+ <label index="flash.solrcoreNotAdded">Kein Solr Kern angelegt!</label>
1048+ <label index="flash.solrcoreNotAddedMsg">Beim Anlegen eines Solr Kerns ist ein Fehler aufgetreten. Der Solr Kern wurde nicht oder unvollständig angelegt und sollte über das Listenmodul kontrolliert werden!</label>
1049+ <label index="solrcore">Solr Kern</label>
1050+ <label index="additional">Beilage</label>
1051+ <label index="address">Anrede</label>
1052+ <label index="annotation">Annotation</label>
1053+ <label index="article">Artikel</label>
1054+ <label index="binding">Einband</label>
1055+ <label index="bookplate">Exlibris</label>
1056+ <label index="chapter">Kapitel</label>
1057+ <label index="collation">Bogensignatur</label>
1058+ <label index="colophon">Kolophon</label>
1059+ <label index="contained_work">Enthaltenes Werk</label>
1060+ <label index="contents">Inhaltsverzeichnis</label>
1061+ <label index="corrigenda">Errata</label>
1062+ <label index="cover">Deckel</label>
1063+ <label index="dedication">Widmung</label>
1064+ <label index="edge">Schnitt</label>
1065+ <label index="endsheet">Vorsatz</label>
1066+ <label index="engraved_titlepage">Kupfertitel</label>
1067+ <label index="entry">Eintrag</label>
1068+ <label index="fascicle">Faszikel</label>
1069+ <label index="fragment">Fragment</label>
1070+ <label index="illustration">Illustration</label>
1071+ <label index="imprint">Impressum</label>
1072+ <label index="index">Register</label>
1073+ <label index="initial_decoration">Initialschmuck</label>
1074+ <label index="issue">Heft</label>
1075+ <label index="manuscript">Handschrift</label>
1076+ <label index="map">Karte</label>
1077+ <label index="monograph">Monographie</label>
1078+ <label index="multivolume_work">Mehrbändiges Werk</label>
1079+ <label index="musical_notation">Musiknotation</label>
1080+ <label index="ornament">Buchschmuck</label>
1081+ <label index="paste_down">Spiegel</label>
1082+ <label index="periodical">Peridica</label>
1083+ <label index="preface">Vorwort</label>
1084+ <label index="printers_mark">Druckermarke</label>
1085+ <label index="privileges">Privilegien</label>
1086+ <label index="provenance">Besitznachweis</label>
1087+ <label index="scheme">Schema</label>
1088+ <label index="section">Abschnitt</label>
1089+ <label index="spine">Rücken</label>
1090+ <label index="stamp">Stempel</label>
1091+ <label index="table">Tabelle</label>
1092+ <label index="text">Text</label>
1093+ <label index="title_page">Titelseite</label>
1094+ <label index="verse">Vers</label>
1095+ <label index="volume">Band</label>
1096+ <label index="prod_id">Goobi-Vorgangsnummer</label>
1097+ <label index="record_id">OAI-Identifier</label>
1098+ <label index="opac_id">OPAC-Identifier</label>
1099+ <label index="union_id">Verbund-Identifier</label>
1100+ <label index="urn">URN</label>
1101+ <label index="purl">PURL</label>
1102+ <label index="type">Strukturtyp</label>
1103+ <label index="title">Titel</label>
1104+ <label index="author">Autor</label>
1105+ <label index="year">Erscheinungsjahr</label>
1106+ <label index="place">Erscheinungsort</label>
1107+ <label index="volume">Band</label>
1108+ <label index="collection">Sammlung(en)</label>
1109+ <label index="owner">Besitzer</label>
1110+ </languageKey>
1111+ </data>
1112+</T3locallang>
1113\ No newline at end of file
1114
1115=== added file 'dlf/modules/newclient/locallang_mod.xml'
1116--- dlf/modules/newclient/locallang_mod.xml 1970-01-01 00:00:00 +0000
1117+++ dlf/modules/newclient/locallang_mod.xml 2012-04-30 16:12:18 +0000
1118@@ -0,0 +1,23 @@
1119+<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
1120+<T3locallang>
1121+ <meta type="array">
1122+ <type>module</type>
1123+ <description>Language labels for module txdlfnewclient</description>
1124+ </meta>
1125+ <data type="array">
1126+ <languageKey index="default" type="array">
1127+ <label index="mlang_tabs_tab">New Client</label>
1128+ <label index="mlang_labels_tabdescr">This module allows you to add a new client with some basic configuration.</label>
1129+ <label index="mlang_labels_tablabel">New Client</label>
1130+ <label index="csh.description">This module allows you to add a new client with some basic configuration.</label>
1131+ <label index="csh.alttitle">New Client</label>
1132+ </languageKey>
1133+ <languageKey index="de" type="array">
1134+ <label index="mlang_tabs_tab">Neuer Mandant</label>
1135+ <label index="mlang_labels_tabdescr">Dieses Modul erlaubt Ihnen das Hinzufügen eines neuen Mandanten mit einer Grundkonfiguration.</label>
1136+ <label index="mlang_labels_tablabel">Neuer Mandant</label>
1137+ <label index="csh.description">Dieses Modul erlaubt Ihnen das Hinzufügen eines neuen Mandanten mit einer Grundkonfiguration.</label>
1138+ <label index="csh.alttitle">Neuer Mandant</label>
1139+ </languageKey>
1140+ </data>
1141+</T3locallang>
1142\ No newline at end of file
1143
1144=== added file 'dlf/modules/newclient/metadata.inc.php'
1145--- dlf/modules/newclient/metadata.inc.php 1970-01-01 00:00:00 +0000
1146+++ dlf/modules/newclient/metadata.inc.php 2012-04-30 16:12:18 +0000
1147@@ -0,0 +1,227 @@
1148+<?php
1149+/***************************************************************
1150+* Copyright notice
1151+*
1152+* (c) 2012 Sebastian Meyer <sebastian.meyer@slub-dresden.de>
1153+* All rights reserved
1154+*
1155+* This script is part of the TYPO3 project. The TYPO3 project is
1156+* free software; you can redistribute it and/or modify
1157+* it under the terms of the GNU General Public License as published by
1158+* the Free Software Foundation; either version 2 of the License, or
1159+* (at your option) any later version.
1160+*
1161+* The GNU General Public License can be found at
1162+* http://www.gnu.org/copyleft/gpl.html.
1163+*
1164+* This script is distributed in the hope that it will be useful,
1165+* but WITHOUT ANY WARRANTY; without even the implied warranty of
1166+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1167+* GNU General Public License for more details.
1168+*
1169+* This copyright notice MUST APPEAR in all copies of the script!
1170+***************************************************************/
1171+
1172+// Define metadata elements.
1173+// @see http://dfg-viewer.de/en/profile-of-the-metadata/
1174+// TODO: Should not be hard-coded!
1175+$metadata = array (
1176+ 'prod_id' => array (
1177+ 'encoded' => 1,
1178+ 'xpath' => './mods:identifier[@type="goobi"]',
1179+ 'xpath_sorting' => '',
1180+ 'default_value' => '',
1181+ 'wrap' => '',
1182+ 'tokenized' => 0,
1183+ 'stored' => 0,
1184+ 'indexed' => 0,
1185+ 'boost' => 0.00,
1186+ 'is_sortable' => 0,
1187+ 'is_facet' => 0,
1188+ 'is_listed' => 0,
1189+ ),
1190+ 'record_id' => array (
1191+ 'encoded' => 1,
1192+ 'xpath' => './mods:recordInfo/mods:recordIdentifier',
1193+ 'xpath_sorting' => '',
1194+ 'default_value' => '',
1195+ 'wrap' => '',
1196+ 'tokenized' => 0,
1197+ 'stored' => 0,
1198+ 'indexed' => 1,
1199+ 'boost' => 1.00,
1200+ 'is_sortable' => 0,
1201+ 'is_facet' => 0,
1202+ 'is_listed' => 0,
1203+ ),
1204+ 'union_id' => array (
1205+ 'encoded' => 1,
1206+ 'xpath' => './mods:identifier[@type="ppn"]',
1207+ 'xpath_sorting' => '',
1208+ 'default_value' => '',
1209+ 'wrap' => '',
1210+ 'tokenized' => 0,
1211+ 'stored' => 0,
1212+ 'indexed' => 1,
1213+ 'boost' => 1.00,
1214+ 'is_sortable' => 0,
1215+ 'is_facet' => 0,
1216+ 'is_listed' => 0,
1217+ ),
1218+ 'opac_id' => array (
1219+ 'encoded' => 1,
1220+ 'xpath' => './mods:identifier[@type="opac"]',
1221+ 'xpath_sorting' => '',
1222+ 'default_value' => '',
1223+ 'wrap' => '',
1224+ 'tokenized' => 0,
1225+ 'stored' => 0,
1226+ 'indexed' => 1,
1227+ 'boost' => 1.00,
1228+ 'is_sortable' => 0,
1229+ 'is_facet' => 0,
1230+ 'is_listed' => 0,
1231+ ),
1232+ 'urn' => array (
1233+ 'encoded' => 1,
1234+ 'xpath' => './mods:identifier[@type="urn"]',
1235+ 'xpath_sorting' => '',
1236+ 'default_value' => '',
1237+ 'wrap' => "key.wrap = <dt>|</dt>\nvalue.setContentToCurrent = 1\nvalue.typolink.parameter.current = 1\nvalue.typolink.parameter.prepend = TEXT\nvalue.typolink.parameter.prepend.value = http://nbn-resolving.de/\nvalue.wrap = <dd>|</dd>",
1238+ 'tokenized' => 0,
1239+ 'stored' => 0,
1240+ 'indexed' => 1,
1241+ 'boost' => 1.00,
1242+ 'is_sortable' => 0,
1243+ 'is_facet' => 0,
1244+ 'is_listed' => 0,
1245+ ),
1246+ 'purl' => array (
1247+ 'encoded' => 1,
1248+ 'xpath' => './mods:identifier[@type="purl"]',
1249+ 'xpath_sorting' => '',
1250+ 'default_value' => '',
1251+ 'wrap' => "key.wrap = <dt>|</dt>\nvalue.setContentToCurrent = 1\nvalue.typolink.parameter.current = 1\nvalue.wrap = <dd>|</dd>",
1252+ 'tokenized' => 0,
1253+ 'stored' => 0,
1254+ 'indexed' => 0,
1255+ 'boost' => 1.00,
1256+ 'is_sortable' => 0,
1257+ 'is_facet' => 0,
1258+ 'is_listed' => 0,
1259+ ),
1260+ 'owner' => array (
1261+ 'encoded' => 1,
1262+ 'xpath' => './mods:name[./mods:role/mods:roleTerm="own"]/mods:displayForm',
1263+ 'xpath_sorting' => '',
1264+ 'default_value' => '',
1265+ 'wrap' => '',
1266+ 'tokenized' => 0,
1267+ 'stored' => 0,
1268+ 'indexed' => 1,
1269+ 'boost' => 1.00,
1270+ 'is_sortable' => 0,
1271+ 'is_facet' => 1,
1272+ 'is_listed' => 0,
1273+ ),
1274+ 'collection' => array (
1275+ 'encoded' => 1,
1276+ 'xpath' => './mods:relatedItem[@type="series"]/mods:titleInfo/mods:title',
1277+ 'xpath_sorting' => '',
1278+ 'default_value' => '',
1279+ 'wrap' => '',
1280+ 'tokenized' => 1,
1281+ 'stored' => 0,
1282+ 'indexed' => 1,
1283+ 'boost' => 1.00,
1284+ 'is_sortable' => 0,
1285+ 'is_facet' => 1,
1286+ 'is_listed' => 0,
1287+ ),
1288+ 'year' => array (
1289+ 'encoded' => 1,
1290+ 'xpath' => '',
1291+ 'xpath_sorting' => '',
1292+ 'default_value' => '',
1293+ 'wrap' => '',
1294+ 'tokenized' => 0,
1295+ 'stored' => 1,
1296+ 'indexed' => 1,
1297+ 'boost' => 1.00,
1298+ 'is_sortable' => 1,
1299+ 'is_facet' => 1,
1300+ 'is_listed' => 1,
1301+ ),
1302+ 'place' => array (
1303+ 'encoded' => 1,
1304+ 'xpath' => '',
1305+ 'xpath_sorting' => '',
1306+ 'default_value' => '',
1307+ 'wrap' => '',
1308+ 'tokenized' => 1,
1309+ 'stored' => 1,
1310+ 'indexed' => 1,
1311+ 'boost' => 1.00,
1312+ 'is_sortable' => 1,
1313+ 'is_facet' => 1,
1314+ 'is_listed' => 1,
1315+ ),
1316+ 'author' => array (
1317+ 'encoded' => 1,
1318+ 'xpath' => '',
1319+ 'xpath_sorting' => '',
1320+ 'default_value' => '',
1321+ 'wrap' => '',
1322+ 'tokenized' => 1,
1323+ 'stored' => 1,
1324+ 'indexed' => 1,
1325+ 'boost' => 2.00,
1326+ 'is_sortable' => 1,
1327+ 'is_facet' => 1,
1328+ 'is_listed' => 1,
1329+ ),
1330+ 'volume' => array (
1331+ 'encoded' => 1,
1332+ 'xpath' => './mods:part/mods:detail/mods:number',
1333+ 'xpath_sorting' => './mods:part[@type="host"]/@order',
1334+ 'default_value' => '',
1335+ 'wrap' => '',
1336+ 'tokenized' => 0,
1337+ 'stored' => 1,
1338+ 'indexed' => 0,
1339+ 'boost' => 1.00,
1340+ 'is_sortable' => 1,
1341+ 'is_facet' => 0,
1342+ 'is_listed' => 1,
1343+ ),
1344+ 'title' => array (
1345+ 'encoded' => 1,
1346+ 'xpath' => 'concat(./mods:titleInfo/mods:nonSort, " ", ./mods:titleInfo/mods:title)',
1347+ 'xpath_sorting' => './mods:titleInfo/mods:title',
1348+ 'default_value' => '',
1349+ 'wrap' => "key.wrap = <dt class=\"tx-dlf-metadata-title\">|</dt>\nvalue.wrap = <dd class=\"tx-dlf-metadata-title\">|</dd>",
1350+ 'tokenized' => 1,
1351+ 'stored' => 1,
1352+ 'indexed' => 1,
1353+ 'boost' => 2.00,
1354+ 'is_sortable' => 1,
1355+ 'is_facet' => 0,
1356+ 'is_listed' => 1,
1357+ ),
1358+ 'type' => array (
1359+ 'encoded' => 0,
1360+ 'xpath' => '',
1361+ 'xpath_sorting' => '',
1362+ 'default_value' => '',
1363+ 'wrap' => "key.wrap = <dt class=\"tx-dlf-metadata-type\">|</dt>\nvalue.wrap = <dd class=\"tx-dlf-metadata-type\">|</dd>",
1364+ 'tokenized' => 0,
1365+ 'stored' => 1,
1366+ 'indexed' => 0,
1367+ 'boost' => 1.00,
1368+ 'is_sortable' => 1,
1369+ 'is_facet' => 1,
1370+ 'is_listed' => 1,
1371+ ),
1372+);
1373+
1374+?>
1375\ No newline at end of file
1376
1377=== added file 'dlf/modules/newclient/structures.inc.php'
1378--- dlf/modules/newclient/structures.inc.php 1970-01-01 00:00:00 +0000
1379+++ dlf/modules/newclient/structures.inc.php 2012-04-30 16:12:18 +0000
1380@@ -0,0 +1,215 @@
1381+<?php
1382+/***************************************************************
1383+* Copyright notice
1384+*
1385+* (c) 2012 Sebastian Meyer <sebastian.meyer@slub-dresden.de>
1386+* All rights reserved
1387+*
1388+* This script is part of the TYPO3 project. The TYPO3 project is
1389+* free software; you can redistribute it and/or modify
1390+* it under the terms of the GNU General Public License as published by
1391+* the Free Software Foundation; either version 2 of the License, or
1392+* (at your option) any later version.
1393+*
1394+* The GNU General Public License can be found at
1395+* http://www.gnu.org/copyleft/gpl.html.
1396+*
1397+* This script is distributed in the hope that it will be useful,
1398+* but WITHOUT ANY WARRANTY; without even the implied warranty of
1399+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1400+* GNU General Public License for more details.
1401+*
1402+* This copyright notice MUST APPEAR in all copies of the script!
1403+***************************************************************/
1404+
1405+// Define structure elements.
1406+// @see http://dfg-viewer.de/en/structural-data-set/
1407+// TODO: Should not be hard-coded!
1408+$structures = array (
1409+ 'additional' => array (
1410+ 'toplevel' => 0,
1411+ 'oai_name' => ''
1412+ ),
1413+ 'address' => array (
1414+ 'toplevel' => 0,
1415+ 'oai_name' => ''
1416+ ),
1417+ 'annotation' => array (
1418+ 'toplevel' => 0,
1419+ 'oai_name' => ''
1420+ ),
1421+ 'article' => array (
1422+ 'toplevel' => 0,
1423+ 'oai_name' => ''
1424+ ),
1425+ 'binding' => array (
1426+ 'toplevel' => 0,
1427+ 'oai_name' => ''
1428+ ),
1429+ 'bookplate' => array (
1430+ 'toplevel' => 0,
1431+ 'oai_name' => ''
1432+ ),
1433+ 'chapter' => array (
1434+ 'toplevel' => 0,
1435+ 'oai_name' => ''
1436+ ),
1437+ 'collation' => array (
1438+ 'toplevel' => 0,
1439+ 'oai_name' => ''
1440+ ),
1441+ 'colophon' => array (
1442+ 'toplevel' => 0,
1443+ 'oai_name' => ''
1444+ ),
1445+ 'contained_work' => array (
1446+ 'toplevel' => 0,
1447+ 'oai_name' => ''
1448+ ),
1449+ 'contents' => array (
1450+ 'toplevel' => 0,
1451+ 'oai_name' => ''
1452+ ),
1453+ 'corrigenda' => array (
1454+ 'toplevel' => 0,
1455+ 'oai_name' => ''
1456+ ),
1457+ 'cover' => array (
1458+ 'toplevel' => 0,
1459+ 'oai_name' => ''
1460+ ),
1461+ 'dedication' => array (
1462+ 'toplevel' => 0,
1463+ 'oai_name' => ''
1464+ ),
1465+ 'edge' => array (
1466+ 'toplevel' => 0,
1467+ 'oai_name' => ''
1468+ ),
1469+ 'endsheet' => array (
1470+ 'toplevel' => 0,
1471+ 'oai_name' => ''
1472+ ),
1473+ 'engraved_titlepage' => array (
1474+ 'toplevel' => 0,
1475+ 'oai_name' => ''
1476+ ),
1477+ 'entry' => array (
1478+ 'toplevel' => 0,
1479+ 'oai_name' => ''
1480+ ),
1481+ 'fascicle' => array (
1482+ 'toplevel' => 0,
1483+ 'oai_name' => ''
1484+ ),
1485+ 'fragment' => array (
1486+ 'toplevel' => 1,
1487+ 'oai_name' => ''
1488+ ),
1489+ 'illustration' => array (
1490+ 'toplevel' => 0,
1491+ 'oai_name' => ''
1492+ ),
1493+ 'imprint' => array (
1494+ 'toplevel' => 0,
1495+ 'oai_name' => ''
1496+ ),
1497+ 'index' => array (
1498+ 'toplevel' => 0,
1499+ 'oai_name' => ''
1500+ ),
1501+ 'initial_decoration' => array (
1502+ 'toplevel' => 0,
1503+ 'oai_name' => ''
1504+ ),
1505+ 'issue' => array (
1506+ 'toplevel' => 0,
1507+ 'oai_name' => ''
1508+ ),
1509+ 'manuscript' => array (
1510+ 'toplevel' => 1,
1511+ 'oai_name' => ''
1512+ ),
1513+ 'map' => array (
1514+ 'toplevel' => 0,
1515+ 'oai_name' => ''
1516+ ),
1517+ 'monograph' => array (
1518+ 'toplevel' => 1,
1519+ 'oai_name' => ''
1520+ ),
1521+ 'multivolume_work' => array (
1522+ 'toplevel' => 1,
1523+ 'oai_name' => ''
1524+ ),
1525+ 'musical_notation' => array (
1526+ 'toplevel' => 0,
1527+ 'oai_name' => ''
1528+ ),
1529+ 'ornament' => array (
1530+ 'toplevel' => 0,
1531+ 'oai_name' => ''
1532+ ),
1533+ 'paste_down' => array (
1534+ 'toplevel' => 0,
1535+ 'oai_name' => ''
1536+ ),
1537+ 'periodical' => array (
1538+ 'toplevel' => 1,
1539+ 'oai_name' => ''
1540+ ),
1541+ 'preface' => array (
1542+ 'toplevel' => 0,
1543+ 'oai_name' => ''
1544+ ),
1545+ 'printers_mark' => array (
1546+ 'toplevel' => 0,
1547+ 'oai_name' => ''
1548+ ),
1549+ 'privileges' => array (
1550+ 'toplevel' => 0,
1551+ 'oai_name' => ''
1552+ ),
1553+ 'provenance' => array (
1554+ 'toplevel' => 0,
1555+ 'oai_name' => ''
1556+ ),
1557+ 'scheme' => array (
1558+ 'toplevel' => 0,
1559+ 'oai_name' => ''
1560+ ),
1561+ 'section' => array (
1562+ 'toplevel' => 0,
1563+ 'oai_name' => ''
1564+ ),
1565+ 'spine' => array (
1566+ 'toplevel' => 0,
1567+ 'oai_name' => ''
1568+ ),
1569+ 'stamp' => array (
1570+ 'toplevel' => 0,
1571+ 'oai_name' => ''
1572+ ),
1573+ 'table' => array (
1574+ 'toplevel' => 0,
1575+ 'oai_name' => ''
1576+ ),
1577+ 'text' => array (
1578+ 'toplevel' => 0,
1579+ 'oai_name' => ''
1580+ ),
1581+ 'title_page' => array (
1582+ 'toplevel' => 0,
1583+ 'oai_name' => ''
1584+ ),
1585+ 'verse' => array (
1586+ 'toplevel' => 0,
1587+ 'oai_name' => ''
1588+ ),
1589+ 'volume' => array (
1590+ 'toplevel' => 1,
1591+ 'oai_name' => ''
1592+ )
1593+);
1594+
1595+?>
1596\ No newline at end of file
1597
1598=== added file 'dlf/modules/newclient/template.tmpl'
1599--- dlf/modules/newclient/template.tmpl 1970-01-01 00:00:00 +0000
1600+++ dlf/modules/newclient/template.tmpl 2012-04-30 16:12:18 +0000
1601@@ -0,0 +1,32 @@
1602+<!-- ###FULLDOC### begin -->
1603+<div class="typo3-fullDoc">
1604+ <!-- Page header with buttons, path details and csh -->
1605+ <div id="typo3-docheader">
1606+ <div id="typo3-docheader-row1">
1607+ <div class="buttonsleft">###BUTTONLIST_LEFT###</div>
1608+ <div class="buttonsright">###BUTTONLIST_RIGHT###</div>
1609+ </div>
1610+ <div id="typo3-docheader-row2">
1611+ <div class="docheader-row2-left"><div class="docheader-funcmenu">###CSH### ###MOD_MENU###</div></div>
1612+ <div class="docheader-row2-right">###PAGEPATH######PAGEINFO###</div>
1613+ </div>
1614+ </div>
1615+ <!-- Content of module, for instance listing, info or editing -->
1616+ <div id="typo3-docbody">
1617+ <div id="typo3-inner-docbody">
1618+ ###CONTENT###
1619+ </div>
1620+ </div>
1621+</div>
1622+<!-- ###FULLDOC### end -->
1623+
1624+<!-- ###BUTTON_GROUP_WRAP### -->
1625+ <div class="buttongroup">###BUTTONS###</div>
1626+<!-- ###BUTTON_GROUP_WRAP### -->
1627+
1628+<!-- ###BUTTON_GROUPS_LEFT### -->
1629+<!-- ###BUTTON_GROUPS_LEFT### -->
1630+
1631+<!-- ###BUTTON_GROUPS_RIGHT### -->
1632+<!-- ###BUTTON_GROUP1### -->###RELOAD######SHORTCUT###<!-- ###BUTTON_GROUP1### -->
1633+<!-- ###BUTTON_GROUPS_RIGHT### -->
1634\ No newline at end of file
1635
1636=== modified file 'dlf/plugins/toolbox/tools/pdf/class.tx_dlf_toolsPdf.php'
1637--- dlf/plugins/toolbox/tools/pdf/class.tx_dlf_toolsPdf.php 2011-04-01 15:53:16 +0000
1638+++ dlf/plugins/toolbox/tools/pdf/class.tx_dlf_toolsPdf.php 2012-04-30 16:12:18 +0000
1639@@ -78,7 +78,7 @@
1640 //$this->loadDocument();
1641
1642 // TODO: Just a quick and dirty hack so far!
1643- $ppn = substr($this->cObj->data['record_id'], -9);
1644+ $ppn = str_replace('oai:de:slub-dresden:db:id-', '', $this->cObj->data['record_id']);
1645 $content = $this->cObj->substituteMarkerArray($this->template, array ('###LINK###' => '<a href="http://digital.slub-dresden.de/fileadmin/data/'.$ppn.'/'.$ppn.'_tif/jpegs/'.$ppn.'.pdf" target="_blank" title="PDF Download">PDF Download</a>'));
1646
1647 //}
1648
1649=== added file 'dlf/res/icon_txdlfnewclient.png'
1650Binary files dlf/res/icon_txdlfnewclient.png 1970-01-01 00:00:00 +0000 and dlf/res/icon_txdlfnewclient.png 2012-04-30 16:12:18 +0000 differ
1651=== modified file 'dlf/tca.php'
1652--- dlf/tca.php 2012-04-20 08:23:36 +0000
1653+++ dlf/tca.php 2012-04-30 16:12:18 +0000
1654@@ -394,7 +394,7 @@
1655 'type' => 'input',
1656 'size' => 30,
1657 'max' => 255,
1658- 'eval' => 'required,nospace',
1659+ 'eval' => 'required,nospace,alphanum_x',
1660 ),
1661 ),
1662 'oai_name' => array (
1663@@ -493,7 +493,7 @@
1664 'type' => 'input',
1665 'size' => 30,
1666 'max' => 255,
1667- 'eval' => 'required,nospace',
1668+ 'eval' => 'required,nospace,alphanum_x',
1669 ),
1670 ),
1671 'encoded' => array (
1672@@ -551,6 +551,7 @@
1673 'cols' => 48,
1674 'rows' => 20,
1675 'wrap' => 'off',
1676+ 'eval' => 'required,trim',
1677 'default' => "key.wrap = <dt>|</dt>\nvalue.wrap = <dd>|</dd>",
1678 ),
1679 'defaultExtras' => 'nowrap:fixed-font:enable-tab',

Subscribers

People subscribed via source and target branches

to all changes: