bizley/yii2-podium

View on GitHub
src/models/db/UserActiveRecord.php

Summary

Maintainability
B
4 hrs
Test Coverage

UserActiveRecord has 34 functions (exceeds 20 allowed). Consider refactoring.
Open

abstract class UserActiveRecord extends ActiveRecord implements IdentityInterface
{
    /**
     * Statuses.
     */
Severity: Minor
Found in src/models/db/UserActiveRecord.php - About 4 hrs to fix

    The class UserActiveRecord has an overall complexity of 57 which is very high. The configured complexity threshold is 50.
    Open

    abstract class UserActiveRecord extends ActiveRecord implements IdentityInterface
    {
        /**
         * Statuses.
         */
    Severity: Minor
    Found in src/models/db/UserActiveRecord.php by phpmd

    The class UserActiveRecord has 23 public methods. Consider refactoring UserActiveRecord to keep number of public methods under 10.
    Open

    abstract class UserActiveRecord extends ActiveRecord implements IdentityInterface
    {
        /**
         * Statuses.
         */
    Severity: Minor
    Found in src/models/db/UserActiveRecord.php by phpmd

    TooManyPublicMethods

    Since: 0.1

    A class with too many public methods is probably a good suspect for refactoring, in order to reduce its complexity and find a way to have more fine grained objects.

    By default it ignores methods starting with 'get' or 'set'.

    Example

    Source https://phpmd.org/rules/codesize.html#toomanypublicmethods

    The class UserActiveRecord has a coupling between objects value of 13. Consider to reduce the number of dependencies under 13.
    Open

    abstract class UserActiveRecord extends ActiveRecord implements IdentityInterface
    {
        /**
         * Statuses.
         */
    Severity: Minor
    Found in src/models/db/UserActiveRecord.php by phpmd

    CouplingBetweenObjects

    Since: 1.1.0

    A class with too many dependencies has negative impacts on several quality aspects of a class. This includes quality criteria like stability, maintainability and understandability

    Example

    class Foo {
        /**
         * @var \foo\bar\X
         */
        private $x = null;
    
        /**
         * @var \foo\bar\Y
         */
        private $y = null;
    
        /**
         * @var \foo\bar\Z
         */
        private $z = null;
    
        public function setFoo(\Foo $foo) {}
        public function setBar(\Bar $bar) {}
        public function setBaz(\Baz $baz) {}
    
        /**
         * @return \SplObjectStorage
         * @throws \OutOfRangeException
         * @throws \InvalidArgumentException
         * @throws \ErrorException
         */
        public function process(\Iterator $it) {}
    
        // ...
    }

    Source https://phpmd.org/rules/design.html#couplingbetweenobjects

    The variable $password_hash is not named in camelCase.
    Open

        public function validatePassword($password)
        {
            $podium = Podium::getInstance();
            if ($podium->userComponent !== true) {
                $password_hash = empty($podium->userPasswordField) ? 'password_hash' : $podium->userPasswordField;
    Severity: Minor
    Found in src/models/db/UserActiveRecord.php by phpmd

    CamelCaseVariableName

    Since: 0.2

    It is considered best practice to use the camelCase notation to name variables.

    Example

    class ClassName {
        public function doSomething() {
            $data_module = new DataModule();
        }
    }

    Source

    There are no issues that match your filters.

    Category
    Status