Uploaded image for project: 'eZ Publish / Platform'
  1. eZ Publish / Platform
  2. EZP-25827

Legacy settings loading wrong values

    XMLWordPrintable

Details

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: High High
    • None
    • 5.4.6
    • Legacy stack
    • None

    Description

      eZINI:instance seems bugged when $rootDir parameter is used

      The 7th parameter ($addArrayDefinition) passed to this method is marked as deprecated since 4.5, but in 5.4 we are able to verify that setting it largely changes the way in which $rootDir parameter is handled.

      Consider the following example

      • In an updated installation of eZPublish 5.4, with demo content, setup SiteURL in ezdemo_site_user and ezdemo_site_admin, so that each siteaccess has it's own siteURL
      • Create a script and place it in ezplublish_legacy/bin/php
        <?php
        require_once 'autoload.php';
        
        $helper = new eZCacheHelper(
            $cli = eZCLI::instance(),
            $script = eZScript::instance(
                array(
                    'description' => "Tester for legacy CS\n" .
                                     "./bin/php/initester.phpt",
                    'use-session' => false,
                    'use-modules' => false,
                    'use-extensions' => true
                )
            )
        );
        
        $script->startup();
        $script->initialize();
        
        $ini = eZINI::instance( 'site.ini', 'settings/siteaccess/ezdemo_site_user');
        $param = $ini->variable('SiteSettings', 'SiteURL');
        $cli->output( "SiteURL: $param" );
        
        $ini = eZINI::instance( 'site.ini.append.php', 'settings/siteaccess/ezdemo_site_user');
        $param = $ini->variable('SiteSettings', 'SiteURL');
        $cli->output( "SiteURL: $param" );
        
        $ini = eZINI::instance( 'site.ini', 'settings/siteaccess/ezdemo_site_user', null, null, false, true );
        $param = $ini->variable('SiteSettings', 'SiteURL');
        $cli->output( "SiteURL: $param" );
        
        $ini = eZINI::instance( 'site.ini.append.php', 'settings/siteaccess/ezdemo_site_user', null, null, false, true );
        $param = $ini->variable('SiteSettings', 'SiteURL');
        $cli->output( "SiteURL: $param" );
        
        $ini = eZINI::instance( 'site.ini', 'settings/siteaccess/ezdemo_site_user', null, null, false, false );
        $param = $ini->variable('SiteSettings', 'SiteURL');
        $cli->output( "SiteURL: $param" );
        
        $ini = eZINI::instance( 'site.ini.append.php', 'settings/siteaccess/ezdemo_site_user', null, null, false, false );
        $param = $ini->variable('SiteSettings', 'SiteURL');
        $cli->output( "SiteURL: $param" );
        
        $cli->output( 'execution done' );
        $script->shutdown();
        

      Execute the script, from EZROOT, with the following command

      php ezpublish/console --env=prod --siteaccess=ezdemo_site_admin ezpublish:legacy:script bin/php/initester.php
      

      The expected result would be to see the SiteURL defined for ezdemo_site_user outputted in all cases, but when $addArrayDefinition is left as false (default value), $fileName needs to be set to site.ini.append.php in order for the proper value to be assumed. (otherwise value from default eng siteaccess is echoed

      Attachments

        Activity

          People

            Unassigned Unassigned
            joaquim.cavalleri-obsolete@ez.no Joaquim Cavalleri (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: