Example #1
0
 private static function process($publication, $format, $serializer)
 {
     $record = new MARCRecord();
     // Set leader
     $record->setLeader(self::getLeader());
     // Add control fields
     // Add 007 if electronical publication
     if (self::isElectronical($format)) {
         $record->addControlField(new ControlField('007', self::getField007()));
     }
     // Add 008
     $record->addControlField(new ControlField('008', self::getField008($publication->language, $format, $publication->year)));
     // Add data fields
     // Add 020
     self::addField020($record, $publication, $format);
     // Add 024
     self::addField024($record, $publication, $format);
     // Add 040
     self::addField040($record);
     // Add 041
     self::addField041($record, $publication);
     // Add 100
     self::addField100($record, $publication);
     // Add 245
     self::addField245($record, $publication);
     // Add 250
     self::addField250($record, $publication);
     // Add 255
     self::addField255($record, $publication);
     // Add 263
     self::addField263($record, $publication);
     // Add 264 * 2
     self::addField264a($record, $publication);
     self::addField264b($record, $publication, $format);
     // Add 336
     self::addField336($record, $publication);
     // Add 337
     self::addField337($record, $format);
     // Add 338
     self::addField338($record, $format);
     // Add 490
     self::addField490($record, $publication);
     // Add 502
     self::addField502($record, $publication);
     // Add 530
     self::addField530($record, $publication, $format);
     // Add 594
     self::addField594($record, 1);
     self::addField594($record, 2);
     // Add 700
     self::addField700($record, $publication);
     // Add 776
     self::addField776($record, $publication, $format);
     // Serialize record
     return $serializer->serialize($record);
 }
Example #2
0
 private static function process($publication, $format, $serializer, $form, $publisher)
 {
     $record = new MARCRecord();
     // Set leader
     $record->setLeader(self::getLeader());
     // Add control fields
     // Add 007
     $record->addControlField(new ControlField('007', self::getField007($format)));
     // Add 008
     $record->addControlField(new ControlField('008', self::getField008($publication->language, $format, $publication->issued_from_year, $publication->frequency)));
     // Add data fields
     // Add 022
     self::addField022($record, $publication);
     // Add 040
     self::addField040($record);
     // Add 041
     self::addField041($record, $publication);
     // Add 222
     self::addField222($record, $publication, $format);
     // Add 245
     self::addField245($record, $publication, $publisher);
     // Add 263
     self::addField263($record, $publication);
     // Add 264 * 2
     self::addField264a($record, $publication, $form, $publisher);
     self::addField264b($record, $publication);
     // Add 310
     self::addField310($record, $publication);
     // Add 336
     self::addField336($record);
     // Add 337
     self::addField337($record, $format);
     // Add 338
     self::addField338($record, $format);
     // Add 362
     self::addField362($record, $publication);
     // Add 594
     self::addField594($record);
     // Add 710
     self::addField710($record, $form, $publisher);
     // Add 760
     self::addField760($record, $publication);
     // Add 762
     self::addField762($record, $publication);
     // Add 776
     self::addField776($record, $publication, $format);
     // Add 776
     self::addField780($record, $publication);
     // Add 856
     self::addField856($record, $publication, $format);
     // Add 935
     self::addField935($record);
     // Serialize record
     return $serializer->serialize($record);
 }