oc-shopaholic/oc-shopaholic-plugin

View on GitHub
models/Price.php

Summary

Maintainability
A
0 mins
Test Coverage

Define a constant instead of duplicating this literal "item_id" 3 times.
Open

        'item_id'   => 'required',
Severity: Critical
Found in models/Price.php by sonar-php

Duplicated string literals make the process of refactoring error-prone, since you must be sure to update all occurrences.

On the other hand, constants can be referenced from many places, but only need to be updated in a single place.

Noncompliant Code Example

With the default threshold of 3:

function run() {
  prepare('action1');                              // Non-Compliant - 'action1' is duplicated 3 times
  execute('action1');
  release('action1');
}

Compliant Solution

ACTION_1 = 'action1';

function run() {
  prepare(ACTION_1);
  execute(ACTION_1);
  release(ACTION_1);
}

Exceptions

To prevent generating some false-positives, literals having less than 5 characters are excluded.

Define a constant instead of duplicating this literal "price_type_id" 3 times.
Open

        'price_type_id',
Severity: Critical
Found in models/Price.php by sonar-php

Duplicated string literals make the process of refactoring error-prone, since you must be sure to update all occurrences.

On the other hand, constants can be referenced from many places, but only need to be updated in a single place.

Noncompliant Code Example

With the default threshold of 3:

function run() {
  prepare('action1');                              // Non-Compliant - 'action1' is duplicated 3 times
  execute('action1');
  release('action1');
}

Compliant Solution

ACTION_1 = 'action1';

function run() {
  prepare(ACTION_1);
  execute(ACTION_1);
  release(ACTION_1);
}

Exceptions

To prevent generating some false-positives, literals having less than 5 characters are excluded.

Define a constant instead of duplicating this literal "item_type" 3 times.
Open

        'item_type' => 'required',
Severity: Critical
Found in models/Price.php by sonar-php

Duplicated string literals make the process of refactoring error-prone, since you must be sure to update all occurrences.

On the other hand, constants can be referenced from many places, but only need to be updated in a single place.

Noncompliant Code Example

With the default threshold of 3:

function run() {
  prepare('action1');                              // Non-Compliant - 'action1' is duplicated 3 times
  execute('action1');
  release('action1');
}

Compliant Solution

ACTION_1 = 'action1';

function run() {
  prepare(ACTION_1);
  execute(ACTION_1);
  release(ACTION_1);
}

Exceptions

To prevent generating some false-positives, literals having less than 5 characters are excluded.

Variable "price_value" is not in valid camel caps format
Open

            $fPrice = PriceHelper::round($this->old_price_value - $this->price_value);
Severity: Minor
Found in models/Price.php by phpcodesniffer

Variable "old_price_value" is not in valid camel caps format
Open

            $fPrice = PriceHelper::round($this->old_price_value - $this->price_value);
Severity: Minor
Found in models/Price.php by phpcodesniffer

Variable "old_price_value" is not in valid camel caps format
Open

        if ($this->old_price_value > 0) {
Severity: Minor
Found in models/Price.php by phpcodesniffer

There are no issues that match your filters.

Category
Status