EscolaLMS/H5P

View on GitHub

Showing 54 of 62 total issues

File H5PRepository.php has 678 lines of code (exceeds 250 allowed). Consider refactoring.
Open

<?php
 
namespace EscolaLms\HeadlessH5P\Repositories;
 
use EscolaLms\HeadlessH5P\Exceptions\H5PException;
Severity: Major
Found in src/Repositories/H5PRepository.php - About 1 day to fix

    File HeadlessH5PService.php has 606 lines of code (exceeds 250 allowed). Consider refactoring.
    Open

    <?php
     
    namespace EscolaLms\HeadlessH5P\Services;
     
    use EscolaLms\HeadlessH5P\Exceptions\H5PException;
    Severity: Major
    Found in src/Services/HeadlessH5PService.php - About 1 day to fix

      H5PRepository has 65 functions (exceeds 20 allowed). Consider refactoring.
      Confirmed

      class H5PRepository implements H5PFrameworkInterface
      {
       
      private H5PLibraryLanguageRepositoryContract $h5PLibraryLanguageRepository;
       
       
      Severity: Major
      Found in src/Repositories/H5PRepository.php - About 1 day to fix

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

        class HeadlessH5PService implements HeadlessH5PServiceContract
        {
        private H5PFrameworkInterface $repository;
        private H5PFileStorage $fileStorage;
        private H5PCore $core;
        Severity: Minor
        Found in src/Services/HeadlessH5PService.php - About 4 hrs to fix

          Function createExportFile has a Cognitive Complexity of 29 (exceeds 5 allowed). Consider refactoring.
          Open

          public function createExportFile($content) {
          // Get path to temporary folder, where export will be contained
          $tmpPath = $this->h5pC->fs->getTmpPath();
          Storage::createDirectory($tmpPath);
           
           
          Severity: Minor
          Found in src/Services/H5PExportService.php - About 4 hrs to fix

          Method getEditorSettings has 100 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

          public function getEditorSettings($content = null): array
          {
          $lang = config('hh5p.language');
           
          $config = $this->getConfig();
          Severity: Major
          Found in src/Services/HeadlessH5PService.php - About 4 hrs to fix

            Function fixContentParamsMetadataLibraryTitle has a Cognitive Complexity of 27 (exceeds 5 allowed). Consider refactoring.
            Open

            private function fixContentParamsMetadataLibraryTitle($content)
            {
            $defaultTitle = isset($this->mainData['title']) ? $this->mainData['title'] : 'New Content (from file)';
             
            if (is_array($content['library'])) {
            Severity: Minor
            Found in src/Repositories/H5PRepository.php - About 3 hrs to fix

            Method createExportFile has 91 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

            public function createExportFile($content) {
            // Get path to temporary folder, where export will be contained
            $tmpPath = $this->h5pC->fs->getTmpPath();
            Storage::createDirectory($tmpPath);
             
             
            Severity: Major
            Found in src/Services/H5PExportService.php - About 3 hrs to fix

              Function fixCaseKeysArray has a Cognitive Complexity of 25 (exceeds 5 allowed). Consider refactoring.
              Open

              public static function fixCaseKeysArray($keys, $array)
              {
              if (is_object($array)) {
              $row = $array;
              foreach ($keys as $key) {
              Severity: Minor
              Found in src/Helpers/Helpers.php - About 3 hrs to fix

              Method getContentSettings has 88 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

              public function getContentSettings($id, ?string $token = null): array
              {
              $lang = config('hh5p.language');
               
              // READ this https://h5p.org/creating-your-own-h5p-plugin
              Severity: Major
              Found in src/Services/HeadlessH5PService.php - About 3 hrs to fix

                File h5p.js has 305 lines of code (exceeds 250 allowed). Consider refactoring.
                Open

                H5PEditor.language.core = {
                missingTranslation: '[Brakujące tłumaczenie :key]',
                loading: 'Wczytywanie proszę czekać...',
                selectLibrary: 'Wybierz typ zasobu, którego chcesz użyć.',
                unknownFieldPath: 'Nie można odnaleźć ":path".',
                Severity: Minor
                Found in resources/lang/pl/h5p.js - About 3 hrs to fix

                  Function filterParameters has a Cognitive Complexity of 23 (exceeds 5 allowed). Consider refactoring.
                  Open

                  public function filterParameters(&$content)
                  {
                  if (!empty($content['filtered']) &&
                  (!$this->exportEnabled ||
                  ($content['slug'] &&
                  Severity: Minor
                  Found in src/Services/H5PCoreService.php - About 3 hrs to fix

                  H5PLibrary has 23 functions (exceeds 20 allowed). Consider refactoring.
                  Open

                  class H5PLibrary extends Model
                  {
                  use HasFactory, QueryCacheable;
                   
                  protected $table = 'hh5p_libraries';
                  Severity: Minor
                  Found in src/Models/H5PLibrary.php - About 2 hrs to fix

                    Method run has 55 lines of code (exceeds 25 allowed). Consider refactoring.
                    Open

                    public function run(HeadlessH5PServiceContract $hh5pService)
                    {
                    $addContent = true;
                     
                    $this->hh5pService = $hh5pService;
                    Severity: Major
                    Found in database/seeders/ContentLibrarySeeder.php - About 2 hrs to fix

                      Method fixContentParamsMetadataLibraryTitle has 55 lines of code (exceeds 25 allowed). Consider refactoring.
                      Open

                      private function fixContentParamsMetadataLibraryTitle($content)
                      {
                      $defaultTitle = isset($this->mainData['title']) ? $this->mainData['title'] : 'New Content (from file)';
                       
                      if (is_array($content['library'])) {
                      Severity: Major
                      Found in src/Repositories/H5PRepository.php - About 2 hrs to fix

                        Method handle has 54 lines of code (exceeds 25 allowed). Consider refactoring.
                        Open

                        public function handle(HeadlessH5PServiceContract $hh5pService)
                        {
                        $addContent = $this->option('addContent');
                         
                        $this->hh5pService = $hh5pService;
                        Severity: Major
                        Found in src/Commands/H5PSeedCommand.php - About 2 hrs to fix

                          Method filterParameters has 51 lines of code (exceeds 25 allowed). Consider refactoring.
                          Open

                          public function filterParameters(&$content)
                          {
                          if (!empty($content['filtered']) &&
                          (!$this->exportEnabled ||
                          ($content['slug'] &&
                          Severity: Major
                          Found in src/Services/H5PCoreService.php - About 2 hrs to fix

                            Function addMoreHtmlTags has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                            Open

                            private function addMoreHtmlTags($semantics)
                            {
                            foreach ($semantics as $field) {
                            while ($field->type === 'list') {
                            $field = $field->field;
                            Severity: Minor
                            Found in src/Services/HeadlessH5PService.php - About 1 hr to fix

                            Function reinstallLibraryDependencies has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                            Open

                            public function reinstallLibraryDependencies(string $machineName): void
                            {
                            if (
                            !$this->editor->ajaxInterface->getContentTypeCache($machineName) ||
                            !$this->callHubEndpoint(H5PHubEndpoints::CONTENT_TYPES . $machineName) ||
                            Severity: Minor
                            Found in src/Services/HeadlessH5PService.php - About 1 hr to fix

                            Method toArray has 34 lines of code (exceeds 25 allowed). Consider refactoring.
                            Open

                            public function toArray($request = null): array
                            {
                            return [
                            'id' => $this->resource->id,
                            'name' => $this->resource->name,
                            Severity: Minor
                            Found in src/Http/Resources/LibraryResource.php - About 1 hr to fix
                              Severity
                              Category
                              Status
                              Source
                              Language