utility function for getting a profile URI
I added a utility function for getting a profile URI. At some point we need to push commonalities between Remote_profile and User into the Profile class; single-table inheritance. We do a lot of switching around for no good reason on users and profiles. darcs-hash:20080716152511-84dde-6f73d947d11083e7235756fde635e145f02e2483.gz
This commit is contained in:
parent
9b0ae9dd82
commit
eb9715992c
@ -117,12 +117,7 @@ class Rss10Action extends Action {
|
||||
function show_item($notice) {
|
||||
$profile = Profile::staticGet($notice->profile_id);
|
||||
$nurl = common_local_url('shownotice', array('notice' => $notice->id));
|
||||
$user = User::staticGet($profile->id);
|
||||
if ($user) {
|
||||
$creator_url = $user->uri;
|
||||
} else {
|
||||
$creator_url = $profile->profile_url;
|
||||
}
|
||||
$creator_uri = common_profile_uri($profile);
|
||||
common_element_start('item', array('rdf:about' => $notice->uri));
|
||||
$title = $profile->nickname . ': ' . $notice->content;
|
||||
common_element('title', NULL, $title);
|
||||
@ -133,7 +128,7 @@ class Rss10Action extends Action {
|
||||
common_element('sioc:has_creator', array('rdf:resource' => $creator_url));
|
||||
common_element('cc:licence', array('rdf:resource' => common_config('license', 'url')));
|
||||
common_element_end('item');
|
||||
$this->creators[$creator_url] = $profile;
|
||||
$this->creators[$creator_uri] = $profile;
|
||||
}
|
||||
|
||||
function show_creators() {
|
||||
|
16
lib/util.php
16
lib/util.php
@ -1293,3 +1293,19 @@ function common_profile_avatar_url($profile, $size=AVATAR_PROFILE_SIZE) {
|
||||
}
|
||||
}
|
||||
|
||||
function common_profile_uri($profile) {
|
||||
if (!$profile) {
|
||||
return NULL;
|
||||
}
|
||||
$user = User::staticGet($profile->id);
|
||||
if ($user) {
|
||||
return $user->uri;
|
||||
}
|
||||
|
||||
$remote = Remote_profile::staticGet($profile->id);
|
||||
if ($remote) {
|
||||
return $remote->uri;
|
||||
}
|
||||
# XXX: this is a very bad profile!
|
||||
return NULL;
|
||||
}
|
Loading…
Reference in New Issue
Block a user