MainAero/yii2-gtm-widget

View on GitHub

Showing 62 of 62 total issues

Multi-line function call not indented correctly; expected 8 spaces but found 6
Open

      );
Severity: Minor
Found in tests/widget/GTMTest.php by phpcodesniffer

Line indented incorrectly; expected at least 8 spaces, found 6
Open

      $session->remove(self::SESSION_KEY);
Severity: Minor
Found in src/widget/GTM.php by phpcodesniffer

Multi-line function call not indented correctly; expected 16 spaces but found 14
Open

              [
Severity: Minor
Found in tests/widget/GTMTest.php by phpcodesniffer

Multi-line function call not indented correctly; expected 12 spaces but found 10
Open

          $values

Multi-line function call not indented correctly; expected 12 spaces but found 10
Open

          ),
Severity: Minor
Found in tests/widget/GTMTest.php by phpcodesniffer

Multi-line function call not indented correctly; expected 12 spaces but found 10
Open

          [
Severity: Minor
Found in tests/widget/GTMTest.php by phpcodesniffer

Multi-line function call not indented correctly; expected 12 spaces but found 8
Open

        ),
Severity: Minor
Found in tests/widget/GTMTest.php by phpcodesniffer

Line indented incorrectly; expected at least 8 spaces, found 6
Open

      if ($id == 'session')

Multi-line function call not indented correctly; expected 12 spaces but found 8
Open

        GTM::widget(['type' => 'dataLayerPush'])
Severity: Minor
Found in tests/widget/GTMTest.php by phpcodesniffer

Multi-line function call not indented correctly; expected 12 spaces but found 10
Open

          GTM::SESSION_KEY,

Multi-line function call not indented correctly; expected 14 spaces but found 12
Open

            'src/widget/views/noscript.php',
Severity: Minor
Found in tests/widget/GTMTest.php by phpcodesniffer

Multi-line function call not indented correctly; expected 8 spaces but found 6
Open

      );
Severity: Minor
Found in tests/widget/GTMTest.php by phpcodesniffer

Add curly braces around the nested statement(s).
Open

        if ($this->type == self::TYPE_PUSH)
Severity: Critical
Found in src/widget/GTM.php by sonar-php

While not technically incorrect, the omission of curly braces can be misleading, and may lead to the introduction of errors during maintenance.

Noncompliant Code Example

if (condition)  // Noncompliant
  executeSomething();

Compliant Solution

if (condition) {
  executeSomething();
}

See

  • MISRA C:2004, 14.8 - The statement forming the body of a switch, while, do ... while or for statement shall be a compound statement
  • MISRA C:2004, 14.9 - An if (expression) construct shall be followed by a compound statement. The else keyword shall be followed by either a compound statement, or another if statement
  • MISRA C++:2008, 6-3-1 - The statement forming the body of a switch, while, do ... while or for statement shall be a compound statement
  • MISRA C++:2008, 6-4-1 - An if (condition) construct shall be followed by a compound statement. The else keyword shall be followed by either a compound statement, or another if statement
  • MISRA C:2012, 15.6 - The body of an iteration-statement or a selection-statement shall be a compound-statement
  • CERT, EXP19-C. - Use braces for the body of an if, for, or while statement
  • CERT, EXP52-J. - Use braces for the body of an if, for, or while statement

Add curly braces around the nested statement(s).
Open

      if (empty($dataLayerPushItems))
Severity: Critical
Found in src/widget/GTM.php by sonar-php

While not technically incorrect, the omission of curly braces can be misleading, and may lead to the introduction of errors during maintenance.

Noncompliant Code Example

if (condition)  // Noncompliant
  executeSomething();

Compliant Solution

if (condition) {
  executeSomething();
}

See

  • MISRA C:2004, 14.8 - The statement forming the body of a switch, while, do ... while or for statement shall be a compound statement
  • MISRA C:2004, 14.9 - An if (expression) construct shall be followed by a compound statement. The else keyword shall be followed by either a compound statement, or another if statement
  • MISRA C++:2008, 6-3-1 - The statement forming the body of a switch, while, do ... while or for statement shall be a compound statement
  • MISRA C++:2008, 6-4-1 - An if (condition) construct shall be followed by a compound statement. The else keyword shall be followed by either a compound statement, or another if statement
  • MISRA C:2012, 15.6 - The body of an iteration-statement or a selection-statement shall be a compound-statement
  • CERT, EXP19-C. - Use braces for the body of an if, for, or while statement
  • CERT, EXP52-J. - Use braces for the body of an if, for, or while statement

Define a constant instead of duplicating this literal "gtm_env" 6 times.
Open

        'gtm_env' => '&gtm_auth=<TOKEN>w&gtm_preview=<ENV_ID>&gtm_cookies_win=x',
Severity: Critical
Found in tests/widget/GTMTest.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 "&gtm_auth=<token>w&amp;gtm_preview=<env_id>&amp;gtm_cookies_win=x" 4 times.</env_id></token>
Open

        'gtm_env' => '&gtm_auth=<TOKEN>w&gtm_preview=<ENV_ID>&gtm_cookies_win=x',
Severity: Critical
Found in tests/widget/GTMTest.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 "gtm_id" 6 times.
Open

        'gtm_id' => '1A2B3CD'
Severity: Critical
Found in tests/widget/GTMTest.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 "value" 6 times.
Open

        $expected = [['event' => 'value']];
Severity: Critical
Found in tests/component/DataLayerPushTest.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 "event" 6 times.
Open

        $expected = [['event' => 'value']];
Severity: Critical
Found in tests/component/DataLayerPushTest.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.

Add curly braces around the nested statement(s).
Open

        if ($this->paramMissing($params))
Severity: Critical
Found in src/widget/GTM.php by sonar-php

While not technically incorrect, the omission of curly braces can be misleading, and may lead to the introduction of errors during maintenance.

Noncompliant Code Example

if (condition)  // Noncompliant
  executeSomething();

Compliant Solution

if (condition) {
  executeSomething();
}

See

  • MISRA C:2004, 14.8 - The statement forming the body of a switch, while, do ... while or for statement shall be a compound statement
  • MISRA C:2004, 14.9 - An if (expression) construct shall be followed by a compound statement. The else keyword shall be followed by either a compound statement, or another if statement
  • MISRA C++:2008, 6-3-1 - The statement forming the body of a switch, while, do ... while or for statement shall be a compound statement
  • MISRA C++:2008, 6-4-1 - An if (condition) construct shall be followed by a compound statement. The else keyword shall be followed by either a compound statement, or another if statement
  • MISRA C:2012, 15.6 - The body of an iteration-statement or a selection-statement shall be a compound-statement
  • CERT, EXP19-C. - Use braces for the body of an if, for, or while statement
  • CERT, EXP52-J. - Use braces for the body of an if, for, or while statement
Severity
Category
Status
Source
Language