EscolaLMS/H5P

View on GitHub

Showing 62 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

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

        'content' => [
        'creator' => 'Kreator',
        'created_at' => 'Utworzony w',
        'title' => 'Tytuł',
        'content_type' => 'Typ zawartości',
        Severity: Major
        Found in resources/lang/pl/h5p.php and 1 other location - About 5 hrs to fix
        resources/lang/en/h5p.php on lines 10..47

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

        'content' => [
        'creator' => 'Creator',
        'created_at' => 'Created At',
        'title' => 'Title',
        'content_type' => 'Content Type',
        Severity: Major
        Found in resources/lang/en/h5p.php and 1 other location - About 5 hrs to fix
        resources/lang/pl/h5p.php on lines 10..47

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

        'library' => [
        'title' => 'Tytuł',
        'name' => 'Nazwa',
        'version' => 'Wersja',
        'restricted' => 'Restricted',
        Severity: Major
        Found in resources/lang/pl/h5p.php and 1 other location - About 4 hrs to fix
        resources/lang/en/h5p.php on lines 48..82

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

        'library' => [
        'title' => 'Title',
        'name' => 'Name',
        'version' => 'Version',
        'restricted' => 'Restricted',
        Severity: Major
        Found in resources/lang/en/h5p.php and 1 other location - About 4 hrs to fix
        resources/lang/pl/h5p.php on lines 48..82

        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
                          Severity
                          Category
                          Status
                          Source
                          Language