diff --git a/actions/showstream.php b/actions/showstream.php index 7e887a9d9e..c98c8b6be1 100644 --- a/actions/showstream.php +++ b/actions/showstream.php @@ -47,7 +47,7 @@ class ShowstreamAction extends StreamAction { # Looks like we're good; show the header - common_show_header($profile->nickname); + common_show_header($profile->nickname, array($this, 'show_header'), $user); $cur = common_current_user(); @@ -62,6 +62,14 @@ class ShowstreamAction extends StreamAction { common_show_footer(); } + function show_header($user) { + common_element('link', array('rel' => 'alternate', + 'href' => common_local_url('rss10', array('nickname' => + $user->nickname)), + 'type' => 'application/rdf+xml', + 'title' => _t('Notice feed for ') . $user->nickname)); + } + function no_such_user() { common_user_error('No such user'); } diff --git a/lib/util.php b/lib/util.php index 31bf0de1f7..9635c1abbd 100644 --- a/lib/util.php +++ b/lib/util.php @@ -82,7 +82,7 @@ function common_end_xml() { $xw->flush(); } -function common_show_header($pagetitle) { +function common_show_header($pagetitle, $callable=NULL, $data=NULL) { global $config, $xw; header('Content-Type: application/xhtml+xml'); @@ -112,6 +112,13 @@ function common_show_header($pagetitle) { 'type' => 'text/css', 'href' => $config['site']['path'] . 'theme/default/style/print.css', 'media' => 'print')); + if ($callable) { + if ($data) { + call_user_func($callable, $data); + } else { + call_user_func($callable); + } + } common_element_end('head'); common_element_start('body'); common_element_start('div', array('id' => 'wrapper'));