allow user properties in documentation files

This commit is contained in:
Evan Prodromou 2011-04-18 06:17:28 -04:00
parent ef67262a3f
commit e53edc2b6b

View File

@ -1933,12 +1933,40 @@ function common_confirmation_code($bits)
function common_markup_to_html($c) function common_markup_to_html($c)
{ {
$c = preg_replace('/%%user.(\w+)%%/e', "common_user_property('\\1')", $c);
$c = preg_replace('/%%action.(\w+)%%/e', "common_local_url('\\1')", $c); $c = preg_replace('/%%action.(\w+)%%/e', "common_local_url('\\1')", $c);
$c = preg_replace('/%%doc.(\w+)%%/e', "common_local_url('doc', array('title'=>'\\1'))", $c); $c = preg_replace('/%%doc.(\w+)%%/e', "common_local_url('doc', array('title'=>'\\1'))", $c);
$c = preg_replace('/%%(\w+).(\w+)%%/e', 'common_config(\'\\1\', \'\\2\')', $c); $c = preg_replace('/%%(\w+).(\w+)%%/e', 'common_config(\'\\1\', \'\\2\')', $c);
return Markdown($c); return Markdown($c);
} }
function common_user_property($property)
{
$profile = Profile::current();
if (empty($profile)) {
return null;
}
switch ($property) {
case 'profileurl':
case 'nickname':
case 'fullname':
case 'location':
case 'bio':
return $profile->$property;
break;
case 'avatar':
return $profile->getAvatar(AVATAR_STREAM_SIZE);
break;
case 'bestname':
return $profile->getBestName();
break;
default:
return null;
}
}
function common_profile_uri($profile) function common_profile_uri($profile)
{ {
if (!$profile) { if (!$profile) {