src/models/db/UserActiveRecord.php
UserActiveRecord
has 34 functions (exceeds 20 allowed). Consider refactoring. Open
Open
abstract class UserActiveRecord extends ActiveRecord implements IdentityInterface
{
/**
* Statuses.
*/
The class UserActiveRecord has an overall complexity of 57 which is very high. The configured complexity threshold is 50. Open
Open
abstract class UserActiveRecord extends ActiveRecord implements IdentityInterface
{
/**
* Statuses.
*/
- Exclude checks
The class UserActiveRecord has 23 public methods. Consider refactoring UserActiveRecord to keep number of public methods under 10. Open
Open
abstract class UserActiveRecord extends ActiveRecord implements IdentityInterface
{
/**
* Statuses.
*/
- Read upRead up
- Exclude checks
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
Open
abstract class UserActiveRecord extends ActiveRecord implements IdentityInterface
{
/**
* Statuses.
*/
- Read upRead up
- Exclude checks
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
Open
public function validatePassword($password)
{
$podium = Podium::getInstance();
if ($podium->userComponent !== true) {
$password_hash = empty($podium->userPasswordField) ? 'password_hash' : $podium->userPasswordField;
- Read upRead up
- Exclude checks
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();
}
}