static function get_informations_from_unimarc($fields, $from_subcollection = false, $import_subcoll = false) { $data = array(); if (!$from_subcollection) { $data['name'] = $fields['200'][0]['a'][0]; if (count($fields['200'][0]['i'])) { foreach ($fields['200'][0]['i'] as $value) { $data['name'] .= ". " . $value; } } if (count($fields['200'][0]['e'])) { foreach ($fields['200'][0]['e'] as $value) { $data['name'] .= " : " . $value; } } $data['issn'] = $fields['011'][0]['a'][0]; if ($fields['312']) { for ($i = 0; $i < count($fields['312']); $i++) { for ($j = 0; $j < count($fields['312'][$i]['a']); $j++) { if ($data['comment'] != "") { $data['comment'] .= "\n"; } $data['comment'] .= $fields['312'][$i]['a'][$j]; } } } $data['publisher'] = editeur::get_informations_from_unimarc($fields); if ($import_subcoll) { $data['subcollections'] = subcollection::get_informations_from_unimarc($fields, true); } } else { $data['name'] = $fields['410'][0]['t'][0]; $data['issn'] = $fields['410'][0]['x'][0]; $data['authority_number'] = $fields['410'][0]['3'][0]; $data['publisher'] = editeur::get_informations_from_unimarc($fields); } return $data; }
public function get_specifics_informations() { $this->specifics_data = array(); switch ($this->type) { case "collection": $this->specifics_data = collection::get_informations_from_unimarc($this->fields, false, $this->import_subcoll); break; case "subcollection": $this->specifics_data = subcollection::get_informations_from_unimarc($this->fields); break; case "serie": //$this->specifics_data = serie::get_informations_from_unimarc($this->fields); break; default: break; } }