function biblio_style_ieee in Bibliography Module 6
Same name and namespace in other branches
- 5 biblio_style_ieee.inc \biblio_style_ieee()
- 6.2 styles/biblio_style_ieee.inc \biblio_style_ieee()
- 7 styles/biblio_style_ieee.inc \biblio_style_ieee()
- 7.2 styles/biblio_style_ieee.inc \biblio_style_ieee()
Apply a bibliographic style to the node
Parameters
$node: An object containing the node data to render
$base: The base URL of the biblio module (defaults to /biblio)
$inline: A logical value indicating if this is being rendered within the Drupal framwork (FALSE) or we are just passing back the html (TRUE)
Return value
The styled biblio entry
File
- ./biblio_style_ieee.inc, line 49 
Code
function biblio_style_ieee($node, $base = 'biblio', $inline = FALSE) {
  $output = '';
  $author_options = biblio_style_ieee_author_options();
  $authors = theme('biblio_format_authors', $node->biblio_contributors[1], $author_options, $inline);
  if (!empty($node->biblio_citekey) && variable_get('biblio_display_citation_key', 0)) {
    $output .= '[' . check_plain($node->biblio_citekey) . '] ';
  }
  $output .= '<span class="biblio-authors">' . $authors . ", </span> \n";
  switch ($node->biblio_type) {
    default:
      $url = biblio_get_title_url_info($node, $base, $inline);
      if (!empty($node->biblio_secondary_title)) {
        $output .= '<span class="biblio-title">"';
        $output .= l($node->title, $url['link'], $url['options']);
        //$output .= $inline ? l("$node->title", "$base/viewinline/$node->nid") : l("$node->title", "node/$node->nid");
        $output .= "", </span> \n";
        $output .= '<i>' . check_plain($node->biblio_secondary_title) . '</i>';
      }
      else {
        $output .= '<span class="biblio-title"><i>';
        $output .= l($node->title, $url['link'], $url['options']);
        $output .= ", </i></span> \n";
      }
      if (!empty($node->biblio_edition)) {
        $output .= ', ' . check_plain($node->biblio_edition);
      }
      if (!empty($node->biblio_volume)) {
        $output .= ', vol. ' . check_plain($node->biblio_volume);
      }
      if (!empty($node->biblio_issue)) {
        $output .= ', issue ' . check_plain($node->biblio_issue);
      }
      if (!empty($node->biblio_number)) {
        $output .= ', no. ' . check_plain($node->biblio_number);
      }
      if (!empty($node->biblio_place_published)) {
        $output .= ', ' . check_plain($node->biblio_place_published);
      }
      if (!empty($node->biblio_publisher)) {
        $output .= check_plain($node->biblio_place_published) ? ', ' : ': ';
        $output .= check_plain($node->biblio_publisher);
      }
      // if a single page instead of a range, should use 'p.' instead of 'pp.'  -- ignoring
      if (!empty($node->biblio_pages)) {
        $output .= ', pp. ' . check_plain($node->biblio_pages);
      }
      // if it is a book, year should go before pages instead -- ignoring
      // for non-books, should also include month of publication (e.g. "Mar. 2006") -- use date instead of year if available
      if (!empty($node->biblio_date)) {
        $output .= ', ' . check_plain($node->biblio_date);
      }
      if (!empty($node->biblio_year) && !empty($node->biblio_date) && !strstr($node->biblio_date, $node->biblio_year) || !empty($node->biblio_year) && empty($node->biblio_date)) {
        $output .= ', ' . check_plain($node->biblio_year);
      }
      $output .= ".\n";
      break;
  }
  /*  if ($node->biblio_date) $output .= ', '. check_plain($node->biblio_date);
   */
  return filter_xss($output, biblio_get_allowed_tags());
}