packbackbooks/lti-1-3-php-library

View on GitHub

Showing 10 of 13 total issues

Similar blocks of code found in 2 locations. Consider refactoring.
Open

public function __construct(?array $grade = null)
{
$this->score_given = $grade['scoreGiven'] ?? null;
$this->score_maximum = $grade['scoreMaximum'] ?? null;
$this->comment = $grade['comment'] ?? null;
Severity: Major
Found in src/LtiGrade.php and 1 other location - About 5 hrs to fix
src/LtiLineitem.php on lines 20..31

File LtiMessageLaunch.php has 389 lines of code (exceeds 250 allowed). Consider refactoring.
Open

<?php
 
namespace Packback\Lti1p3;
 
use Exception;
Severity: Minor
Found in src/LtiMessageLaunch.php - About 5 hrs to fix

    LtiMessageLaunch has 39 functions (exceeds 20 allowed). Consider refactoring.
    Open

    class LtiMessageLaunch
    {
    public const TYPE_DEEPLINK = 'LtiDeepLinkingRequest';
    public const TYPE_SUBMISSIONREVIEW = 'LtiSubmissionReviewRequest';
    public const TYPE_RESOURCELINK = 'LtiResourceLinkRequest';
    Severity: Minor
    Found in src/LtiMessageLaunch.php - About 5 hrs to fix

      LtiGrade has 21 functions (exceeds 20 allowed). Consider refactoring.
      Open

      class LtiGrade
      {
      use JsonStringable;
      private $score_given;
      private $score_maximum;
      Severity: Minor
      Found in src/LtiGrade.php - About 2 hrs to fix

        LtiLineitem has 21 functions (exceeds 20 allowed). Consider refactoring.
        Open

        class LtiLineitem
        {
        use JsonStringable;
        private $id;
        private $score_maximum;
        Severity: Minor
        Found in src/LtiLineitem.php - About 2 hrs to fix

          Method getAccessToken has 32 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

          public function getAccessToken(ILtiRegistration $registration, array $scopes): string
          {
          // Get a unique cache key for the access token
          $accessTokenKey = $this->getAccessTokenCacheKey($registration, $scopes);
          // Get access token from cache if it exists
          Severity: Minor
          Found in src/LtiServiceConnector.php - About 1 hr to fix

            Function getPublicKey has a Cognitive Complexity of 11 (exceeds 5 allowed). Consider refactoring.
            Open

            private function getPublicKey(): Key
            {
            $request = new ServiceRequest(
            ServiceRequest::METHOD_GET,
            $this->registration->getKeySetUrl(),
            Severity: Minor
            Found in src/LtiMessageLaunch.php - About 1 hr to fix

            Method getPublicKey has 29 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

            private function getPublicKey(): Key
            {
            $request = new ServiceRequest(
            ServiceRequest::METHOD_GET,
            $this->registration->getKeySetUrl(),
            Severity: Minor
            Found in src/LtiMessageLaunch.php - About 1 hr to fix

              Method sign has 5 arguments (exceeds 4 allowed). Consider refactoring.
              Open

              public function sign(string $deploymentId, string $iss, string $clientId, string $exp, string $nonce): string
              Severity: Minor
              Found in src/Lti1p1Key.php - About 35 mins to fix

                Function getGroupsBySet has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
                Open

                public function getGroupsBySet(): array
                {
                $groups = $this->getGroups();
                $sets = $this->getSets();
                 
                 
                Severity: Minor
                Found in src/LtiCourseGroupsService.php - About 35 mins to fix
                Severity
                Category
                Status
                Source
                Language