Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Locale error in Magento 2.0.2 #3243

Closed
jstuardo opened this issue Feb 1, 2016 · 6 comments
Closed

Locale error in Magento 2.0.2 #3243

jstuardo opened this issue Feb 1, 2016 · 6 comments

Comments

@jstuardo
Copy link

jstuardo commented Feb 1, 2016

Hello...

I have probems saving Home Page in Magento 2.0.2 When I try to save it, I got this error and stack trace. It is related to localization of dates. apparently:

Notice: Uninitialized string offset: 0 in /home/depasa/public_html/vendor/magento/zendframework1/library/Zend/Locale/Format.php on line 261
#0 /home/depasa/public_html/vendor/magento/zendframework1/library/Zend/Locale/Format.php(261): Magento\Framework\App\ErrorHandler->handler(8, 'Uninitialized s...', '/home/depasa/pu...', 261, Array)
#1 /home/depasa/public_html/vendor/magento/zendframework1/library/Zend/Filter/LocalizedToNormalized.php(101): Zend_Locale_Format::getNumber('', Array)
#2 /home/depasa/public_html/vendor/magento/framework/Stdlib/DateTime/Filter/Date.php(55): Zend_Filter_LocalizedToNormalized->filter('')
#3 /home/depasa/public_html/vendor/magento/zendframework1/library/Zend/Filter.php(114): Magento\Framework\Stdlib\DateTime\Filter\Date->filter('')
#4 /home/depasa/public_html/vendor/magento/zendframework1/library/Zend/Filter/Input.php(722): Zend_Filter->filter('')
#5 /home/depasa/public_html/vendor/magento/zendframework1/library/Zend/Filter/Input.php(701): Zend_Filter_Input->_filterRule(Array)
#6 /home/depasa/public_html/vendor/magento/zendframework1/library/Zend/Filter/Input.php(785): Zend_Filter_Input->_filter()
#7 /home/depasa/public_html/vendor/magento/zendframework1/library/Zend/Filter/Input.php(381): Zend_Filter_Input->_process()
#8 /home/depasa/public_html/vendor/magento/module-cms/Controller/Adminhtml/Page/PostDataProcessor.php(54): Zend_Filter_Input->getUnescaped()
#9 /home/depasa/public_html/vendor/magento/module-cms/Controller/Adminhtml/Page/Save.php(47): Magento\Cms\Controller\Adminhtml\Page\PostDataProcessor->filter(Array)
#10 /home/depasa/public_html/var/generation/Magento/Cms/Controller/Adminhtml/Page/Save/Interceptor.php(24): Magento\Cms\Controller\Adminhtml\Page\Save->execute()
#11 /home/depasa/public_html/vendor/magento/framework/App/Action/Action.php(102): Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor->execute()
#12 /home/depasa/public_html/vendor/magento/module-backend/App/AbstractAction.php(226): Magento\Framework\App\Action\Action->dispatch(Object(Magento\Framework\App\Request\Http))
#13 [internal function]: Magento\Backend\App\AbstractAction->dispatch(Object(Magento\Framework\App\Request\Http))
#14 /home/depasa/public_html/vendor/magento/framework/Interception/Interceptor.php(74): call_user_func_array(Array, Array)
#15 /home/depasa/public_html/vendor/magento/framework/Interception/Chain/Chain.php(70): Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor->___callParent('dispatch', Array)
#16 /home/depasa/public_html/vendor/magento/framework/Interception/Chain/Chain.php(63): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\Cms\Con...', 'dispatch', Object(Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor), Array, 'adminAuthentica...')
#17 /home/depasa/public_html/vendor/magento/module-backend/App/Action/Plugin/Authentication.php(143): Magento\Framework\Interception\Chain\Chain->Magento\Framework\Interception\Chain{closure}(Object(Magento\Framework\App\Request\Http))
#18 [internal function]: Magento\Backend\App\Action\Plugin\Authentication->aroundDispatch(Object(Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))
#19 /home/depasa/public_html/vendor/magento/framework/Interception/Chain/Chain.php(68): call_user_func_array(Array, Array)
#20 /home/depasa/public_html/vendor/magento/framework/Interception/Chain/Chain.php(63): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\Cms\Con...', 'dispatch', Object(Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor), Array, 'designLoader')
#21 /home/depasa/public_html/vendor/magento/framework/App/Action/Plugin/Design.php(39): Magento\Framework\Interception\Chain\Chain->Magento\Framework\Interception\Chain{closure}(Object(Magento\Framework\App\Request\Http))
#22 [internal function]: Magento\Framework\App\Action\Plugin\Design->aroundDispatch(Object(Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))
#23 /home/depasa/public_html/vendor/magento/framework/Interception/Chain/Chain.php(68): call_user_func_array(Array, Array)
#24 /home/depasa/public_html/vendor/magento/framework/Interception/Interceptor.php(136): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\Cms\Con...', 'dispatch', Object(Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor), Array, 'adminMassaction...')
#25 /home/depasa/public_html/vendor/magento/module-backend/App/Action/Plugin/MassactionKey.php(33): Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Framework\App\Request\Http))
#26 [internal function]: Magento\Backend\App\Action\Plugin\MassactionKey->aroundDispatch(Object(Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))
#27 /home/depasa/public_html/vendor/magento/framework/Interception/Interceptor.php(141): call_user_func_array(Array, Array)
#28 /home/depasa/public_html/var/generation/Magento/Cms/Controller/Adminhtml/Page/Save/Interceptor.php(39): Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor->___callPlugins('dispatch', Array, Array)
#29 /home/depasa/public_html/vendor/magento/framework/App/FrontController.php(55): Magento\Cms\Controller\Adminhtml\Page\Save\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))
#30 [internal function]: Magento\Framework\App\FrontController->dispatch(Object(Magento\Framework\App\Request\Http))
#31 /home/depasa/public_html/vendor/magento/framework/Interception/Interceptor.php(74): call_user_func_array(Array, Array)
#32 /home/depasa/public_html/vendor/magento/framework/Interception/Chain/Chain.php(70): Magento\Framework\App\FrontController\Interceptor->___callParent('dispatch', Array)
#33 /home/depasa/public_html/vendor/magento/framework/Interception/Interceptor.php(136): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\Framewo...', 'dispatch', Object(Magento\Framework\App\FrontController\Interceptor), Array, 'install')
#34 /home/depasa/public_html/vendor/magento/framework/Module/Plugin/DbStatusValidator.php(69): Magento\Framework\App\FrontController\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Framework\App\Request\Http))
#35 [internal function]: Magento\Framework\Module\Plugin\DbStatusValidator->aroundDispatch(Object(Magento\Framework\App\FrontController\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))
#36 /home/depasa/public_html/vendor/magento/framework/Interception/Interceptor.php(141): call_user_func_array(Array, Array)
#37 /home/depasa/public_html/var/generation/Magento/Framework/App/FrontController/Interceptor.php(26): Magento\Framework\App\FrontController\Interceptor->___callPlugins('dispatch', Array, Array)
#38 /home/depasa/public_html/vendor/magento/framework/App/Http.php(115): Magento\Framework\App\FrontController\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))
#39 /home/depasa/public_html/vendor/magento/framework/App/Bootstrap.php(258): Magento\Framework\App\Http->launch()
#40 /home/depasa/public_html/index.php(39): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http))
#41 {main}

@ortega-io
Copy link

I have exactly the same issue. Did you manage to find a solution?

@jaimestuardo
Copy link

Unfortunately there is no solution yet. For some minor changes in CMS, I have changed database directly. I think you can insist in a solution to this here in Github, since as I have realized, there is no assignee yet.

I think you can test by changing locale to English and try to save. This should work, because I am sure the problem we are having is related to Spanish locale, in this case.

I am developing a new theme so I am very busy with it, however, when finished it, I will continue fighting with this issue. I hope a solution will exist at that time :-)

@ortega-io
Copy link

I figured it out.

The key was on line #1 of the calls stack: Zend_Locale_Format::getNumber('', Array)

It's an unhandled case when an empty string is passed to the "getNumber" function.

Replacing:

if (!is_string($input)){

With:

if (!is_string($input) || empty($input)) {

On line 250 of: vendor/magento/zendframework1/library/Zend/Locale/Format.php fixes it.

@jaimestuardo
Copy link

Thanks! that solved the problem. I hope Magento developers include this fix in the oficial release.

@veloraven
Copy link
Contributor

@jstuardo is this issue still actual?
If it is could you please provide exact and detailed steps as I was not able to reproduce this issue.

@veloraven
Copy link
Contributor

According to contributor guide, tickets without response for two weeks should be closed.
If this issue still reproducible please feel free to create the new one: format new issue according to the Issue reporting guidelines: with steps to reproduce, actual result and expected result and specify Magento version.

magento-engcom-team pushed a commit that referenced this issue Oct 3, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants