for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace SilverStripe\Comments\Tests\Stubs;
use SilverStripe\Comments\Extensions\CommentsExtension;
use SilverStripe\Control\Director;
use SilverStripe\Dev\TestOnly;
use SilverStripe\ORM\DataObject;
use SilverStripe\Security\Member;
use SilverStripe\Security\Permission;
class CommentableItem extends DataObject implements TestOnly
{
private static $db = array(
$db
'Title' => 'Varchar'
);
private static $extensions = array(
$extensions
CommentsExtension::class
private static $table_name = 'CommentableItem';
$table_name
public function RelativeLink()
return 'CommentableItemController';
}
public function canView($member = null)
return true;
// This is needed for canModerateComments
public function canEdit($member = null)
if ($member instanceof Member) {
$memberID = $member->ID;
} elseif (is_numeric($member)) {
$memberID = $member;
} else {
$memberID = Member::currentUserID();
SilverStripe\Security\Member::currentUserID()
If this is a false-positive, you can also ignore this issue in your code via the ignore-deprecated annotation
ignore-deprecated
$memberID = /** @scrutinizer ignore-deprecated */ Member::currentUserID();
This function has been deprecated. The supplier of the function has supplied an explanatory message.
The explanatory message should give you some clue as to whether and when the function will be removed and what other function to use instead.
if ($memberID && Permission::checkMember($memberID, array('ADMIN', 'CMS_ACCESS_CommentAdmin'))) {
return false;
public function Link()
return $this->RelativeLink();
public function AbsoluteLink()
return Director::absoluteURL($this->RelativeLink());