forked from GNUsocial/gnu-social
[UserFlag] Increase strict typing of main file
Run php-cs-fixer Correct case of class name onDeleteRelated event handlers
This commit is contained in:
parent
871f3c4bfe
commit
67780ca4a9
@ -21,12 +21,13 @@
|
||||
*
|
||||
* @category Plugin
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2009 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
exit(1);
|
||||
}
|
||||
@ -36,9 +37,11 @@ if (!defined('STATUSNET')) {
|
||||
*
|
||||
* @category Plugin
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*/
|
||||
class UserFlagPlugin extends Plugin
|
||||
{
|
||||
@ -55,9 +58,9 @@ class UserFlagPlugin extends Plugin
|
||||
* Ensures that the user_flag_profile table exists
|
||||
* and has the right columns.
|
||||
*
|
||||
* @return boolean hook return
|
||||
* @return bool hook return
|
||||
*/
|
||||
function onCheckSchema()
|
||||
public function onCheckSchema(): bool
|
||||
{
|
||||
$schema = Schema::get();
|
||||
|
||||
@ -71,9 +74,9 @@ class UserFlagPlugin extends Plugin
|
||||
*
|
||||
* @param URLMapper $m URL mapper for this hit
|
||||
*
|
||||
* @return boolean hook return
|
||||
* @return bool hook return
|
||||
*/
|
||||
public function onRouterInitialized(URLMapper $m)
|
||||
public function onRouterInitialized(URLMapper $m): bool
|
||||
{
|
||||
$m->connect('main/flag/profile', ['action' => 'flagprofile']);
|
||||
$m->connect('main/flag/clear', ['action' => 'clearflag']);
|
||||
@ -84,16 +87,19 @@ class UserFlagPlugin extends Plugin
|
||||
/**
|
||||
* Add a 'flag' button to profile page
|
||||
*
|
||||
* @param Action $action The action being called
|
||||
* @param Action $action The action being called
|
||||
* @param Profile $profile Profile being shown
|
||||
*
|
||||
* @return boolean hook result
|
||||
* @return bool hook result
|
||||
*/
|
||||
function onEndProfilePageActionsElements($action, $profile)
|
||||
public function onEndProfilePageActionsElements(Action $action, Profile $profile): bool
|
||||
{
|
||||
$this->showFlagButton($action, $profile,
|
||||
array('action' => 'showstream',
|
||||
'nickname' => $profile->nickname));
|
||||
$this->showFlagButton(
|
||||
$action,
|
||||
$profile,
|
||||
['action' => 'showstream',
|
||||
'nickname' => $profile->nickname, ]
|
||||
);
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -103,12 +109,12 @@ class UserFlagPlugin extends Plugin
|
||||
*
|
||||
* @param ProfileListItem $item item being shown
|
||||
*
|
||||
* @return boolean hook result
|
||||
* @return bool hook result
|
||||
*/
|
||||
function onEndProfileListItemActionElements($item)
|
||||
public function onEndProfileListItemActionElements(ProfileListItem $item): bool
|
||||
{
|
||||
list($action, $args) = $item->action->returnToArgs();
|
||||
$args['action'] = $action;
|
||||
$args['action'] = $action;
|
||||
$this->showFlagButton($item->action, $item->profile, $args);
|
||||
|
||||
return true;
|
||||
@ -118,16 +124,15 @@ class UserFlagPlugin extends Plugin
|
||||
* Actually output a flag button. If the target profile has already been
|
||||
* flagged by the current user, a null-action faux button is shown.
|
||||
*
|
||||
* @param Action $action
|
||||
* @param Action $action
|
||||
* @param Profile $profile
|
||||
* @param array $returnToArgs
|
||||
* @param array $returnToArgs
|
||||
*/
|
||||
protected function showFlagButton($action, $profile, $returnToArgs)
|
||||
protected function showFlagButton(Action $action, Profile $profile, array $returnToArgs): array
|
||||
{
|
||||
$user = common_current_user();
|
||||
|
||||
if (!empty($user) && ($user->id != $profile->id)) {
|
||||
|
||||
$action->elementStart('li', 'entity_flag');
|
||||
|
||||
if (User_flag_profile::exists($profile->id, $user->id)) {
|
||||
@ -149,13 +154,13 @@ class UserFlagPlugin extends Plugin
|
||||
* We define extra rights; this function checks to see if a
|
||||
* user has one of them.
|
||||
*
|
||||
* @param User $user User being checked
|
||||
* @param string $right Right we're checking
|
||||
* @param boolean &$result out, result of the check
|
||||
* @param User $user User being checked
|
||||
* @param string $right Right we're checking
|
||||
* @param bool &$result out, result of the check
|
||||
*
|
||||
* @return boolean hook result
|
||||
* @return bool hook result
|
||||
*/
|
||||
function onUserRightsCheck($user, $right, &$result)
|
||||
public function onUserRightsCheck(User $user, string $right, bool &$result): bool
|
||||
{
|
||||
switch ($right) {
|
||||
case self::REVIEWFLAGS:
|
||||
@ -175,13 +180,14 @@ class UserFlagPlugin extends Plugin
|
||||
* @param User $user User doing the block
|
||||
* @param Profile $profile Profile being blocked
|
||||
*
|
||||
* @return boolean hook result
|
||||
* @return bool hook result
|
||||
*/
|
||||
function onEndBlockProfile($user, $profile)
|
||||
public function onEndBlockProfile(User $user, Profile $profile): bool
|
||||
{
|
||||
if ($this->flagOnBlock && !User_flag_profile::exists($profile->id,
|
||||
$user->id)) {
|
||||
|
||||
if ($this->flagOnBlock && !User_flag_profile::exists(
|
||||
$profile->id,
|
||||
$user->id
|
||||
)) {
|
||||
User_flag_profile::create($user->id, $profile->id);
|
||||
}
|
||||
return true;
|
||||
@ -193,14 +199,14 @@ class UserFlagPlugin extends Plugin
|
||||
* This prevents breakage of the admin profile flag UI.
|
||||
*
|
||||
* @param Profile $profile
|
||||
* @param array &$related list of related tables; entries
|
||||
* with matching profile_id will be deleted.
|
||||
* @param array &$related list of related tables; entries
|
||||
* with matching profile_id will be deleted.
|
||||
*
|
||||
* @return boolean hook result
|
||||
* @return bool hook result
|
||||
*/
|
||||
function onProfileDeleteRelated($profile, &$related)
|
||||
public function onProfileDeleteRelated(Profile $profile, array &$related): bool
|
||||
{
|
||||
$related[] = 'user_flag_profile';
|
||||
$related[] = 'User_flag_profile';
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -208,15 +214,15 @@ class UserFlagPlugin extends Plugin
|
||||
* Ensure that flag entries created by a user are deleted
|
||||
* when that user gets deleted.
|
||||
*
|
||||
* @param User $user
|
||||
* @param User $user
|
||||
* @param array &$related list of related tables; entries
|
||||
* with matching user_id will be deleted.
|
||||
* with matching user_id will be deleted.
|
||||
*
|
||||
* @return boolean hook result
|
||||
* @return bool hook result
|
||||
*/
|
||||
function onUserDeleteRelated($user, &$related)
|
||||
public function onUserDeleteRelated(User $user, array &$related): bool
|
||||
{
|
||||
$related[] = 'user_flag_profile';
|
||||
$related[] = 'User_flag_profile';
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -227,19 +233,18 @@ class UserFlagPlugin extends Plugin
|
||||
*
|
||||
* @param array &$versions array of version data arrays; see EVENTS.txt
|
||||
*
|
||||
* @return boolean hook value
|
||||
* @return bool hook value
|
||||
*/
|
||||
public function onPluginVersion(array &$versions): bool
|
||||
{
|
||||
$url = GNUSOCIAL_ENGINE_REPO_URL . 'tree/master/plugins/UserFlag';
|
||||
|
||||
$versions[] = array('name' => 'UserFlag',
|
||||
'version' => self::PLUGIN_VERSION,
|
||||
'author' => 'Evan Prodromou',
|
||||
'homepage' => $url,
|
||||
'rawdescription' =>
|
||||
// TRANS: Plugin description.
|
||||
_m('This plugin allows flagging of profiles for review and reviewing flagged profiles.'));
|
||||
$versions[] = ['name' => 'UserFlag',
|
||||
'version' => self::PLUGIN_VERSION,
|
||||
'author' => 'Evan Prodromou',
|
||||
'homepage' => $url,
|
||||
'rawdescription' => // TRANS: Plugin description.
|
||||
_m('This plugin allows flagging of profiles for review and reviewing flagged profiles.'), ];
|
||||
|
||||
return true;
|
||||
}
|
||||
|
@ -6,9 +6,11 @@
|
||||
*
|
||||
* @category Action
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2009, StatusNet, Inc.
|
||||
@ -26,7 +28,6 @@
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
exit(1);
|
||||
}
|
||||
@ -36,23 +37,25 @@ if (!defined('STATUSNET')) {
|
||||
*
|
||||
* @category Action
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*/
|
||||
class AdminprofileflagAction extends Action
|
||||
{
|
||||
var $page = null;
|
||||
var $profiles = null;
|
||||
public $page;
|
||||
public $profiles;
|
||||
|
||||
/**
|
||||
* Take arguments for running
|
||||
*
|
||||
* @param array $args $_REQUEST args
|
||||
*
|
||||
* @return boolean success flag
|
||||
* @return bool success flag
|
||||
*/
|
||||
function prepare(array $args = array())
|
||||
public function prepare(array $args = [])
|
||||
{
|
||||
parent::prepare($args);
|
||||
|
||||
@ -77,7 +80,7 @@ class AdminprofileflagAction extends Action
|
||||
// Cookie theft is too easy; we require automatic
|
||||
// logins to re-authenticate before admining the site
|
||||
common_set_returnto($this->selfUrl());
|
||||
if (Event::handle('RedirectToLogin', array($this, $user))) {
|
||||
if (Event::handle('RedirectToLogin', [$this, $user])) {
|
||||
common_redirect(common_local_url('login'), 303);
|
||||
}
|
||||
}
|
||||
@ -107,7 +110,7 @@ class AdminprofileflagAction extends Action
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function handle()
|
||||
public function handle()
|
||||
{
|
||||
parent::handle();
|
||||
|
||||
@ -119,7 +122,7 @@ class AdminprofileflagAction extends Action
|
||||
*
|
||||
* @return string Title of the page
|
||||
*/
|
||||
function title()
|
||||
public function title()
|
||||
{
|
||||
// TRANS: Title for page with a list of profiles that were flagged for review.
|
||||
return _m('Flagged profiles');
|
||||
@ -130,7 +133,7 @@ class AdminprofileflagAction extends Action
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function showContent()
|
||||
public function showContent()
|
||||
{
|
||||
$pl = new FlaggedProfileList($this->profiles, $this);
|
||||
|
||||
@ -145,7 +148,7 @@ class AdminprofileflagAction extends Action
|
||||
*
|
||||
* @return Profile $profile Profile query results
|
||||
*/
|
||||
function getProfiles()
|
||||
public function getProfiles()
|
||||
{
|
||||
$ufp = new User_flag_profile();
|
||||
|
||||
@ -158,12 +161,12 @@ class AdminprofileflagAction extends Action
|
||||
$ufp->groupBy('profile_id');
|
||||
$ufp->orderBy('flag_count DESC, profile_id DESC');
|
||||
|
||||
$offset = ($this->page-1) * PROFILES_PER_PAGE;
|
||||
$offset = ($this->page - 1) * PROFILES_PER_PAGE;
|
||||
$limit = PROFILES_PER_PAGE + 1;
|
||||
|
||||
$ufp->limit($offset, $limit);
|
||||
|
||||
$profiles = array();
|
||||
$profiles = [];
|
||||
|
||||
if ($ufp->find()) {
|
||||
while ($ufp->fetch()) {
|
||||
@ -187,9 +190,11 @@ class AdminprofileflagAction extends Action
|
||||
*
|
||||
* @category Widget
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*/
|
||||
class FlaggedProfileList extends ProfileList
|
||||
{
|
||||
@ -200,7 +205,7 @@ class FlaggedProfileList extends ProfileList
|
||||
*
|
||||
* @return ProfileListItem newly-created item
|
||||
*/
|
||||
function newListItem(Profile $profile)
|
||||
public function newListItem(Profile $profile)
|
||||
{
|
||||
return new FlaggedProfileListItem($profile, $this->action);
|
||||
}
|
||||
@ -211,23 +216,25 @@ class FlaggedProfileList extends ProfileList
|
||||
*
|
||||
* @category Widget
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*/
|
||||
class FlaggedProfileListItem extends ProfileListItem
|
||||
{
|
||||
const MAX_FLAGGERS = 5;
|
||||
|
||||
var $user = null;
|
||||
var $r2args = null;
|
||||
public $user;
|
||||
public $r2args;
|
||||
|
||||
/**
|
||||
* Overload parent's action list with our own moderation-oriented buttons
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function showActions()
|
||||
public function showActions()
|
||||
{
|
||||
$this->user = common_current_user();
|
||||
|
||||
@ -236,7 +243,7 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
$this->r2args['action'] = $action;
|
||||
|
||||
$this->startActions();
|
||||
if (Event::handle('StartProfileListItemActionElements', array($this))) {
|
||||
if (Event::handle('StartProfileListItemActionElements', [$this])) {
|
||||
$this->out->elementStart('li', 'entity_moderation');
|
||||
// TRANS: Header for moderation menu with action buttons for flagged profiles (like 'sandbox', 'silence', ...).
|
||||
$this->out->element('p', null, _m('Moderate'));
|
||||
@ -247,7 +254,7 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
$this->showClearButton();
|
||||
$this->out->elementEnd('ul');
|
||||
$this->out->elementEnd('li');
|
||||
Event::handle('EndProfileListItemActionElements', array($this));
|
||||
Event::handle('EndProfileListItemActionElements', [$this]);
|
||||
}
|
||||
$this->endActions();
|
||||
}
|
||||
@ -257,7 +264,7 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function showSandboxButton()
|
||||
public function showSandboxButton()
|
||||
{
|
||||
if ($this->user->hasRight(Right::SANDBOXUSER)) {
|
||||
$this->out->elementStart('li', 'entity_sandbox');
|
||||
@ -277,7 +284,7 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function showSilenceButton()
|
||||
public function showSilenceButton()
|
||||
{
|
||||
if ($this->user->hasRight(Right::SILENCEUSER)) {
|
||||
$this->out->elementStart('li', 'entity_silence');
|
||||
@ -297,9 +304,8 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function showDeleteButton()
|
||||
public function showDeleteButton()
|
||||
{
|
||||
|
||||
if ($this->user->hasRight(Right::DELETEUSER)) {
|
||||
$this->out->elementStart('li', 'entity_delete');
|
||||
$df = new DeleteUserForm($this->out, $this->profile, $this->r2args);
|
||||
@ -313,7 +319,7 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function showClearButton()
|
||||
public function showClearButton()
|
||||
{
|
||||
if ($this->user->hasRight(UserFlagPlugin::CLEARFLAGS)) {
|
||||
$this->out->elementStart('li', 'entity_clear');
|
||||
@ -328,7 +334,7 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function endProfile()
|
||||
public function endProfile()
|
||||
{
|
||||
$this->showFlaggersList();
|
||||
parent::endProfile();
|
||||
@ -339,9 +345,9 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function showFlaggersList()
|
||||
public function showFlaggersList()
|
||||
{
|
||||
$flaggers = array();
|
||||
$flaggers = [];
|
||||
|
||||
$ufp = new User_flag_profile();
|
||||
|
||||
@ -354,7 +360,7 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
while ($ufp->fetch()) {
|
||||
$user = User::getKV('id', $ufp->user_id);
|
||||
if (!empty($user)) { // XXX: this would also be unusual
|
||||
$flaggers[] = clone($user);
|
||||
$flaggers[] = clone $user;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -367,15 +373,14 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
$others = $cnt - self::MAX_FLAGGERS;
|
||||
}
|
||||
|
||||
$lnks = array();
|
||||
$lnks = [];
|
||||
|
||||
foreach ($flaggers as $flagger) {
|
||||
|
||||
$url = common_local_url('showstream',
|
||||
array('nickname' => $flagger->nickname));
|
||||
['nickname' => $flagger->nickname]);
|
||||
|
||||
$lnks[] = XMLStringer::estring('a', array('href' => $url,
|
||||
'class' => 'flagger'),
|
||||
$lnks[] = XMLStringer::estring('a', ['href' => $url,
|
||||
'class' => 'flagger', ],
|
||||
$flagger->nickname);
|
||||
}
|
||||
|
||||
@ -392,7 +397,7 @@ class FlaggedProfileListItem extends ProfileListItem
|
||||
$text .= sprintf(_m('Flagged by %s'), $flagging_users);
|
||||
}
|
||||
|
||||
$this->out->elementStart('p', array('class' => 'flaggers'));
|
||||
$this->out->elementStart('p', ['class' => 'flaggers']);
|
||||
$this->out->raw($text);
|
||||
$this->out->elementEnd('p');
|
||||
}
|
||||
|
@ -19,11 +19,11 @@
|
||||
*
|
||||
* @category Action
|
||||
* @package GNUsocial
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2009 StatusNet, Inc.
|
||||
* @license https://www.gnu.org/licenses/agpl.html GNU AGPL v3 or later
|
||||
*/
|
||||
|
||||
defined('GNUSOCIAL') || die();
|
||||
|
||||
/**
|
||||
@ -31,6 +31,7 @@ defined('GNUSOCIAL') || die();
|
||||
*
|
||||
* @category Action
|
||||
* @package GNUsocial
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license https://www.gnu.org/licenses/agpl.html GNU AGPL v3 or later
|
||||
*/
|
||||
@ -41,7 +42,7 @@ class ClearflagAction extends ProfileFormAction
|
||||
*
|
||||
* @param array $args $_REQUEST args
|
||||
*
|
||||
* @return boolean success flag
|
||||
* @return bool success flag
|
||||
*/
|
||||
public function prepare(array $args = [])
|
||||
{
|
||||
|
@ -6,9 +6,11 @@
|
||||
*
|
||||
* @category Action
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2009, StatusNet, Inc.
|
||||
@ -26,7 +28,6 @@
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
exit(1);
|
||||
}
|
||||
@ -36,9 +37,11 @@ if (!defined('STATUSNET')) {
|
||||
*
|
||||
* @category Action
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*/
|
||||
class FlagprofileAction extends ProfileFormAction
|
||||
{
|
||||
@ -47,9 +50,9 @@ class FlagprofileAction extends ProfileFormAction
|
||||
*
|
||||
* @param array $args $_REQUEST args
|
||||
*
|
||||
* @return boolean success flag
|
||||
* @return bool success flag
|
||||
*/
|
||||
function prepare(array $args = array())
|
||||
public function prepare(array $args = [])
|
||||
{
|
||||
if (!parent::prepare($args)) {
|
||||
return false;
|
||||
@ -73,7 +76,7 @@ class FlagprofileAction extends ProfileFormAction
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function handle()
|
||||
public function handle()
|
||||
{
|
||||
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
|
||||
$this->handlePost();
|
||||
@ -88,7 +91,7 @@ class FlagprofileAction extends ProfileFormAction
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function handlePost()
|
||||
public function handlePost()
|
||||
{
|
||||
$user = common_current_user();
|
||||
|
||||
@ -115,7 +118,7 @@ class FlagprofileAction extends ProfileFormAction
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function ajaxResults()
|
||||
public function ajaxResults()
|
||||
{
|
||||
$this->startHTML('text/xml;charset=utf-8');
|
||||
$this->elementStart('head');
|
||||
|
@ -19,11 +19,11 @@
|
||||
*
|
||||
* @category Data
|
||||
* @package GNUsocial
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2009 StatusNet, Inc.
|
||||
* @license https://www.gnu.org/licenses/agpl.html GNU AGPL v3 or later
|
||||
*/
|
||||
|
||||
defined('GNUSOCIAL') || die();
|
||||
|
||||
/**
|
||||
@ -33,14 +33,15 @@ defined('GNUSOCIAL') || die();
|
||||
*
|
||||
* @category Action
|
||||
* @package GNUsocial
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2009 StatusNet, Inc.
|
||||
* @license https://www.gnu.org/licenses/agpl.html GNU AGPL v3 or later
|
||||
*/
|
||||
class User_flag_profile extends Managed_DataObject
|
||||
{
|
||||
###START_AUTOCODE
|
||||
/* the code below is auto generated do not remove the above tag */
|
||||
//##START_AUTOCODE
|
||||
// the code below is auto generated do not remove the above tag
|
||||
|
||||
public $__table = 'user_flag_profile'; // table name
|
||||
public $profile_id; // int(11) primary_key not_null
|
||||
@ -49,39 +50,39 @@ class User_flag_profile extends Managed_DataObject
|
||||
public $created; // datetime()
|
||||
public $modified; // timestamp() not_null
|
||||
|
||||
/* the code above is auto generated do not remove the tag below */
|
||||
###END_AUTOCODE
|
||||
// the code above is auto generated do not remove the tag below
|
||||
//##END_AUTOCODE
|
||||
|
||||
public static function schemaDef()
|
||||
{
|
||||
return array(
|
||||
'fields' => array(
|
||||
'profile_id' => array('type' => 'int', 'not null' => true, 'description' => 'profile id flagged'),
|
||||
'user_id' => array('type' => 'int', 'not null' => true, 'description' => 'user id of the actor'),
|
||||
'cleared' => array('type' => 'datetime', 'description' => 'when flag was removed'),
|
||||
'created' => array('type' => 'datetime', 'description' => 'date this record was created'),
|
||||
'modified' => array('type' => 'timestamp', 'not null' => true, 'description' => 'date this record was modified'),
|
||||
),
|
||||
'primary key' => array('profile_id', 'user_id'),
|
||||
'indexes' => array(
|
||||
'user_flag_profile_cleared_idx' => array('cleared'),
|
||||
'user_flag_profile_created_idx' => array('created'),
|
||||
),
|
||||
);
|
||||
return [
|
||||
'fields' => [
|
||||
'profile_id' => ['type' => 'int', 'not null' => true, 'description' => 'profile id flagged'],
|
||||
'user_id' => ['type' => 'int', 'not null' => true, 'description' => 'user id of the actor'],
|
||||
'cleared' => ['type' => 'datetime', 'description' => 'when flag was removed'],
|
||||
'created' => ['type' => 'datetime', 'description' => 'date this record was created'],
|
||||
'modified' => ['type' => 'timestamp', 'not null' => true, 'description' => 'date this record was modified'],
|
||||
],
|
||||
'primary key' => ['profile_id', 'user_id'],
|
||||
'indexes' => [
|
||||
'user_flag_profile_cleared_idx' => ['cleared'],
|
||||
'user_flag_profile_created_idx' => ['created'],
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a flag exists for given profile and user
|
||||
*
|
||||
* @param integer $profile_id Profile to check for
|
||||
* @param integer $user_id User to check for
|
||||
* @param int $profile_id Profile to check for
|
||||
* @param int $user_id User to check for
|
||||
*
|
||||
* @return boolean true if exists, else false
|
||||
* @return bool true if exists, else false
|
||||
*/
|
||||
public static function exists($profile_id, $user_id)
|
||||
{
|
||||
$ufp = User_flag_profile::pkeyGet(array('profile_id' => $profile_id,
|
||||
'user_id' => $user_id));
|
||||
$ufp = self::pkeyGet(['profile_id' => $profile_id,
|
||||
'user_id' => $user_id, ]);
|
||||
|
||||
return !empty($ufp);
|
||||
}
|
||||
@ -89,14 +90,14 @@ class User_flag_profile extends Managed_DataObject
|
||||
/**
|
||||
* Create a new flag
|
||||
*
|
||||
* @param integer $user_id ID of user who's flagging
|
||||
* @param integer $profile_id ID of profile being flagged
|
||||
* @param int $user_id ID of user who's flagging
|
||||
* @param int $profile_id ID of profile being flagged
|
||||
*
|
||||
* @return boolean success flag
|
||||
* @return bool success flag
|
||||
*/
|
||||
public static function create($user_id, $profile_id)
|
||||
{
|
||||
$ufp = new User_flag_profile();
|
||||
$ufp = new self();
|
||||
|
||||
$ufp->profile_id = $profile_id;
|
||||
$ufp->user_id = $user_id;
|
||||
|
@ -21,12 +21,13 @@
|
||||
*
|
||||
* @category Form
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2009 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
exit(1);
|
||||
}
|
||||
@ -38,9 +39,11 @@ require_once INSTALLDIR . '/lib/util/form.php';
|
||||
*
|
||||
* @category Form
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*/
|
||||
class ClearFlagForm extends ProfileActionForm
|
||||
{
|
||||
@ -50,7 +53,7 @@ class ClearFlagForm extends ProfileActionForm
|
||||
*
|
||||
* @return string class of the form
|
||||
*/
|
||||
function formClass()
|
||||
public function formClass()
|
||||
{
|
||||
return 'form_user_clearflag';
|
||||
}
|
||||
@ -60,7 +63,7 @@ class ClearFlagForm extends ProfileActionForm
|
||||
*
|
||||
* @return string Name of the action, lowercased.
|
||||
*/
|
||||
function target()
|
||||
public function target()
|
||||
{
|
||||
return 'clearflag';
|
||||
}
|
||||
@ -70,7 +73,7 @@ class ClearFlagForm extends ProfileActionForm
|
||||
*
|
||||
* @return string Title of the form, internationalized
|
||||
*/
|
||||
function title()
|
||||
public function title()
|
||||
{
|
||||
// TRANS: Form title for action on a profile.
|
||||
return _m('Clear');
|
||||
@ -81,8 +84,7 @@ class ClearFlagForm extends ProfileActionForm
|
||||
*
|
||||
* @return string description of the form, internationalized
|
||||
*/
|
||||
|
||||
function description()
|
||||
public function description()
|
||||
{
|
||||
// TRANS: Form description for clearing flags from a profile.
|
||||
return _m('Clear all flags');
|
||||
|
@ -21,12 +21,13 @@
|
||||
*
|
||||
* @category Form
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2009 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
exit(1);
|
||||
}
|
||||
@ -40,9 +41,11 @@ require_once INSTALLDIR . '/lib/util/form.php';
|
||||
*
|
||||
* @category Form
|
||||
* @package StatusNet
|
||||
*
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see http://status.net/
|
||||
*/
|
||||
class FlagProfileForm extends ProfileActionForm
|
||||
{
|
||||
@ -52,7 +55,7 @@ class FlagProfileForm extends ProfileActionForm
|
||||
*
|
||||
* @return string class of the form
|
||||
*/
|
||||
function formClass()
|
||||
public function formClass()
|
||||
{
|
||||
return 'form_entity_flag ajax';
|
||||
}
|
||||
@ -62,7 +65,7 @@ class FlagProfileForm extends ProfileActionForm
|
||||
*
|
||||
* @return string Name of the action, lowercased.
|
||||
*/
|
||||
function target()
|
||||
public function target()
|
||||
{
|
||||
return 'flagprofile';
|
||||
}
|
||||
@ -72,7 +75,7 @@ class FlagProfileForm extends ProfileActionForm
|
||||
*
|
||||
* @return string Title of the form, internationalized
|
||||
*/
|
||||
function title()
|
||||
public function title()
|
||||
{
|
||||
// TRANS: Form title for flagging a profile for review.
|
||||
return _m('Flag');
|
||||
@ -83,7 +86,7 @@ class FlagProfileForm extends ProfileActionForm
|
||||
*
|
||||
* @return string description of the form, internationalized
|
||||
*/
|
||||
function description()
|
||||
public function description()
|
||||
{
|
||||
// TRANS: Form description.
|
||||
return _m('Flag profile for review.');
|
||||
|
Loading…
Reference in New Issue
Block a user