Hi,
Whatever I did, I could not get Zend_Translate do translation in the
application.
Although it is not very much critical, I wanted to find out what I am
doing wrong.

language file: application/languages/en_US.php
        <?php
                return array(
                        'application' => 'application in english',
                );

application.ini - translation section:

        resources.translate.registry_key   = "Zend_Translate"
        resources.translate.adapter         = "array"
        resources.translate.data.directory  = APPLICATION_PATH "/languages/"
        resources.translate.disableNotices      = false
        resources.translate.options.scan    = "filename"
        resources.translate.options.logUntranslated = true
        resources.translate.data.fileExt        = "php"
        resources.translate.locale                      = "en_US"


bootstrap.php - _initTranslation() function:

                $this->bootstrap('translate');
                $tr = $this->getResource('translate');
                Zend_Registry::set('tr', $tr);
                Zend_Form::setDefaultTranslator($tr);
                
                

Now, the debug results (in _initTranslation function):
                //debug
                echo $tr->_('application');
                                returns application whereas it should return 
"application in english"

                print_r($tr->getList());
                                Array
                                (
                                    [en_US] => en_US
                                )

                print_r($tr->getMessageIds());
                Array
                (
                    [0] => directory
                    [1] => fileExt
                )
                        

                echo ( ($tr->isAvailable("en_US")) ? 'language exists' : 'not 
existing' );
                                returns "language exists"



If I do not use application.ini config and try to setup Zend_Translate
directly in bootstrap:

        $tr = new Zend_Translate('array', APPLICATION_PATH .
'/languages/', 'en_US', array('scan'=>'filename'));

everything works fine and it translates the string ("application"
gives "application in english").


Any comment?

Thanks,
scs

Reply via email to