From: Andrew N. <and...@vi...> - 2008-08-13 18:25:58
|
Steve - thanks for the patch! The reason for this is due to the new importer. The new importer stores the MARC record in the index as binary marc rather than flat text. I have implemented your changes into the code. Thanks Andrew From: vuf...@li... [mailto:vuf...@li...] On Behalf Of Steve Richardson Sent: Wednesday, August 06, 2008 8:51 PM To: vuf...@li... Subject: Re: [VuFind-Tech] HELP! problem with fullrecord conversion via MARCFlat We had the same problem. The marc record stored in solr has changed from a tagged format to regular marc. We changed 3 files 1. Changed the _decode function in MARCFLAT.php to this private function _decode($text) { $text = trim($text); $text = preg_replace('/#31;/', "\x1F", $text); $text = preg_replace('/#30;/', "\x1E", $text); $marcfile = new File_MARC($text, File_MARC::SOURCE_STRING); $mymarc = $marcfile->next(); return $mymarc; } 2. Change /vufind/web/services/Record/Record.php to fix the leader >From $this->record['LEADER'] = str_replace('LEADER', '', $marcRecord->getLeader()); To $this->record['LEADER'] = $marcRecord->getLeader(); 3. And /vufind/web/services/Record/xsl/record-marc.xsl Change style sheet to fix leader <td colspan="3"><xsl:value-of select="marc:leader"/></td> Hope this helps. Cheers Steve |