Issues (1783)

src/helpers/Permission.php (21 issues)

1
<?php
2
/**
3
 * Retour plugin for Craft CMS
4
 *
5
 * Retour allows you to intelligently redirect legacy URLs, so that you don't
6
 * lose SEO value when rebuilding & restructuring a website
7
 *
8
 * @link      https://nystudio107.com/
0 ignored issues
show
The tag in position 1 should be the @copyright tag
Loading history...
9
 * @copyright Copyright (c) 2018 nystudio107
0 ignored issues
show
@copyright tag must contain a year and the name of the copyright holder
Loading history...
10
 */
0 ignored issues
show
PHP version not specified
Loading history...
Missing @category tag in file comment
Loading history...
Missing @package tag in file comment
Loading history...
Missing @author tag in file comment
Loading history...
Missing @license tag in file comment
Loading history...
11
12
namespace nystudio107\retour\helpers;
13
14
use Craft;
15
use yii\web\ForbiddenHttpException;
16
17
/**
0 ignored issues
show
Missing short description in doc comment
Loading history...
18
 * @author    nystudio107
0 ignored issues
show
The tag in position 1 should be the @package tag
Loading history...
Content of the @author tag must be in the form "Display Name <[email protected]>"
Loading history...
Tag value for @author tag indented incorrectly; expected 2 spaces but found 4
Loading history...
19
 * @package   Retour
0 ignored issues
show
Tag value for @package tag indented incorrectly; expected 1 spaces but found 3
Loading history...
20
 * @since     3.0.0
0 ignored issues
show
The tag in position 3 should be the @author tag
Loading history...
Tag value for @since tag indented incorrectly; expected 3 spaces but found 5
Loading history...
21
 */
0 ignored issues
show
Missing @category tag in class comment
Loading history...
Missing @license tag in class comment
Loading history...
Missing @link tag in class comment
Loading history...
22
class Permission
23
{
24
    // Constants
25
    // =========================================================================
26
27
    // Public Methods
28
    // =========================================================================
29
30
    /**
0 ignored issues
show
Missing short description in doc comment
Loading history...
31
     * @param string $permission
0 ignored issues
show
Missing parameter comment
Loading history...
32
     *
33
     * @throws ForbiddenHttpException
34
     */
0 ignored issues
show
Missing @return tag in function comment
Loading history...
35
    public static function controllerPermissionCheck(string $permission): void
36
    {
37
        if (($currentUser = Craft::$app->getUser()->getIdentity()) === null) {
38
            throw new ForbiddenHttpException('Your account has no identity.');
39
        }
40
41
        if (!$currentUser->can($permission)) {
0 ignored issues
show
The method can() does not exist on yii\web\IdentityInterface. It seems like you code against a sub-type of yii\web\IdentityInterface such as craft\elements\User. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

41
        if (!$currentUser->/** @scrutinizer ignore-call */ can($permission)) {
Loading history...
42
            throw new ForbiddenHttpException("Your account doesn't have permission to assign access this resource.");
43
        }
44
    }
45
46
    // Protected Static Methods
47
    // =========================================================================
48
}
49