function _biblio_ris_parse_line in Bibliography Module 7
Same name and namespace in other branches
- 6.2 modules/RIS/biblio_ris.module \_biblio_ris_parse_line()
- 7.2 modules/RIS/biblio_ris.module \_biblio_ris_parse_line()
2 calls to _biblio_ris_parse_line()
- _biblio_ris_import in modules/
RIS/ biblio_ris.module - _biblio_ris_import_string in modules/
RIS/ biblio_ris.module
File
- modules/
RIS/ biblio_ris.module, line 362
Code
function _biblio_ris_parse_line($tag, $data, $node, &$unmapped) {
switch ($tag) {
case 'TY':
$node->biblio_type = _biblio_ris_type_map($data);
break;
case 'A1':
case 'AU':
$node->biblio_contributors[] = array(
'name' => $data,
'auth_category' => 1,
'auth_type' => _biblio_get_auth_type(1, $node->biblio_type),
);
break;
case 'DA':
if (!isset($node->biblio_year) || empty($node->biblio_year)) {
$node->biblio_year = ($end = strpos($data, "/")) ? substr($data, 0, $end) : $data;
}
$node->biblio_date = $data;
break;
case 'Y1':
case 'PY':
if (!isset($node->biblio_year) || empty($node->biblio_year)) {
$node->biblio_year = ($end = strpos($data, "/")) ? substr($data, 0, $end) : $data;
}
if (!isset($node->biblio_date) || empty($node->biblio_date)) {
$node->biblio_date = $data;
}
break;
case 'A2':
case 'ED':
$node->biblio_contributors[] = array(
'name' => $data,
'auth_category' => 2,
'auth_type' => _biblio_get_auth_type(2, $node->biblio_type),
);
break;
case 'KW':
$node->biblio_keywords[] = $data;
break;
case 'SP':
case 'EP':
if (!isset($node->biblio_pages)) {
$node->biblio_pages = '';
}
$node->biblio_pages .= $tag == "SP" ? $data : " - " . $data;
break;
case 'A3':
$node->biblio_contributors[] = array(
'name' => $data,
'auth_category' => 5,
'auth_type' => _biblio_get_auth_type(5, $node->biblio_type),
);
break;
case 'BT':
if ($node->biblio_type == 100) {
$node->title = $data;
}
else {
$node->biblio_secondary_title = $data;
}
break;
default:
if ($field = _biblio_ris_field_map($tag)) {
if (!isset($node->{$field})) {
$node->{$field} = '';
}
$node->{$field} .= $data;
}
else {
if (!in_array($tag, $unmapped)) {
$unmapped[] = $tag;
}
}
}
}