show profile flag form when showing profile list or profile page

This commit is contained in:
Evan Prodromou 2009-11-01 15:13:11 -05:00
parent 7701bc2e56
commit f72857d73e
1 changed files with 41 additions and 10 deletions

View File

@ -98,24 +98,55 @@ class UserFlagPlugin extends Plugin
return true; return true;
} }
function onAutoload($cls) function onAutoload($cls)
{ {
switch ($cls) switch ($cls)
{ {
case 'FlagnoticeAction': case 'FlagnoticeAction':
case 'FlagprofileAction': case 'FlagprofileAction':
case 'AdminnoticeflagAction': case 'AdminnoticeflagAction':
case 'AdminprofileflagAction': case 'AdminprofileflagAction':
require_once(INSTALLDIR.'/plugins/UserFlag/' . strtolower(mb_substr($cls, 0, -6)) . '.php'); require_once(INSTALLDIR.'/plugins/UserFlag/' . strtolower(mb_substr($cls, 0, -6)) . '.php');
return false; return false;
case 'User_flag_notice': case 'FlagProfileForm':
case 'Notice_flag': require_once(INSTALLDIR.'/plugins/UserFlag/' . strtolower($cls . '.php'));
case 'User_flag_profile': return false;
case 'Profile_flag': case 'User_flag_notice':
case 'Notice_flag':
case 'User_flag_profile':
case 'Profile_flag':
require_once(INSTALLDIR.'/plugins/UserFlag/'.$cls.'.php'); require_once(INSTALLDIR.'/plugins/UserFlag/'.$cls.'.php');
return false; return false;
default: default:
return true; return true;
} }
} }
function onEndProfilePageActionsElements(&$action, $profile)
{
$user = common_current_user();
if (!empty($user)) {
$form = new FlagProfileForm($action, $profile);
$form->show();
}
return true;
}
function onEndProfileListItemActionElements($item)
{
$user = common_current_user();
if (!empty($user)) {
$form = new FlagProfileForm($item->action, $item->profile);
$form->show();
}
return true;
}
} }