Code Duplication    Length = 44-73 lines in 2 locations

src/Chamilo/CourseBundle/Manager/SettingsManager.php 1 location

@@ 50-93 (lines=44) @@
47
    /**
48
     * {@inheritdoc}
49
     */
50
    public function load($schemaAlias, $namespace = null, $ignoreUnknown = true)
51
    {
52
        /*blog_management
53
        blog
54
        course_maintenance //maintenance
55
        course_setting settings*/
56
57
58
        $schemaAlias = 'chamilo_course.settings.'.$schemaAlias;
59
60
        /** @var SchemaInterface $schema */
61
        $schema = $this->schemaRegistry->get($schemaAlias);
62
63
        /** @var SettingsResolverInterface $resolver */
64
        $resolver = $this->resolverRegistry->get($schemaAlias);
65
66
        // try to resolve settings for schema alias and namespace
67
        $settings = $resolver->resolve($schemaAlias, $namespace);
68
69
        if (!$settings) {
70
            $settings = $this->settingsFactory->createNew();
71
            $settings->setSchemaAlias($schemaAlias);
72
        }
73
74
         // We need to get a plain parameters array since we use the options resolver on it
75
        $parameters = $settings->getParameters();
76
77
        $settingsBuilder = new SettingsBuilder();
78
        $schema->buildSettings($settingsBuilder);
79
80
        // Remove unknown settings' parameters (e.g. From a previous version of the settings schema)
81
        if (true === $ignoreUnknown) {
82
            foreach ($parameters as $name => $value) {
83
                if (!$settingsBuilder->isDefined($name)) {
84
                    unset($parameters[$name]);
85
                }
86
            }
87
        }
88
89
        $parameters = $settingsBuilder->resolve($parameters);
90
        $settings->setParameters($parameters);
91
92
        return $settings;
93
    }
94
95
    /**
96
     * {@inheritdoc}

src/Chamilo/SettingsBundle/Manager/SettingsManager.php 1 location

@@ 634-706 (lines=73) @@
631
    /**
632
     * {@inheritdoc}
633
     */
634
    public function load($schemaAlias, $namespace = null, $ignoreUnknown = true)
635
    {
636
        /*$schema = $this->schemaRegistry->get($schemaAlias);
637
        $resolver = $this->resolverRegistry->get($schemaAlias);
638
639
        // try to resolve settings for schema alias and namespace
640
        $settings = $resolver->resolve($schemaAlias, $namespace);
641
642
        $parameters = $this->getParameters($namespace);
643
644
        $schema = $this->schemaRegistry->get($namespace);
645
646
        $settingsBuilder = new SettingsBuilder();
647
        $schema->buildSettings($settingsBuilder);
648
649
        foreach ($settingsBuilder->getTransformers() as $parameter => $transformer) {
650
            if (array_key_exists($parameter, $parameters)) {
651
                $parameters[$parameter] = $transformer->reverseTransform($parameters[$parameter]);
652
            }
653
        }
654
        $parameters = $settingsBuilder->resolve($parameters);
655
656
        return $this->resolvedSettings[$namespace] = new Settings($parameters);*/
657
658
        /*$schema = $this->schemaRegistry->get($schemaAlias);
659
        $resolver = $this->resolverRegistry->get($schemaAlias);
660
661
        // try to resolve settings for schema alias and namespace
662
        $settings = $resolver->resolve($schemaAlias, $namespace);
663
664
        if (!$settings) {
665
            $settings = $this->settingsFactory->createNew();
666
            $settings->setSchemaAlias($schemaAlias);
667
        }*/
668
669
        //$schemaAlias = 'chamilo_core.settings.'.$schemaAlias;
670
671
        $schemaAlias = 'chamilo_core.settings.'.$schemaAlias;
672
673
        /** @var SchemaInterface $schema */
674
        $schema = $this->schemaRegistry->get($schemaAlias);
675
676
        /** @var SettingsResolverInterface $resolver */
677
        $resolver = $this->resolverRegistry->get($schemaAlias);
678
679
        // try to resolve settings for schema alias and namespace
680
        $settings = $resolver->resolve($schemaAlias, $namespace);
681
682
        if (!$settings) {
683
            $settings = $this->settingsFactory->createNew();
684
            $settings->setSchemaAlias($schemaAlias);
685
        }
686
687
         // We need to get a plain parameters array since we use the options resolver on it
688
        $parameters = $settings->getParameters();
689
690
        $settingsBuilder = new SettingsBuilder();
691
        $schema->buildSettings($settingsBuilder);
692
693
        // Remove unknown settings' parameters (e.g. From a previous version of the settings schema)
694
        if (true === $ignoreUnknown) {
695
            foreach ($parameters as $name => $value) {
696
                if (!$settingsBuilder->isDefined($name)) {
697
                    unset($parameters[$name]);
698
                }
699
            }
700
        }
701
702
        $parameters = $settingsBuilder->resolve($parameters);
703
        $settings->setParameters($parameters);
704
705
        return $settings;
706
    }
707
708
    /**
709
     * {@inheritdoc}