View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006923 | OXID eShop (all versions) | 4.07. Source code, Test | public | 2018-11-22 13:14 | 2024-06-05 10:37 |
Reporter | mario_lorenz | Assigned To | |||
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | won't fix | ||
Product Version | 6.1.1 | ||||
Summary | 0006923: Backend PopUp Ajax Controller in Camelcase | ||||
Description | i cant call Backend PopUp Ajax Controller in CamelCase-Spelling. They need the old spelling (lowercase with underline). | ||||
Steps To Reproduce | * create a module with a Backend PopUp Ajax Controller * gave the Controller-Call the exact name from the class and Filename e.g.: 'MyControllerAjax' => \ MyVendor \ Application \ Controller \ Admin \ MyControllerAjax :: class * try to call the PopUp * The PopUp has no Data inside. | ||||
Additional Information | I write my own OXID6-Moduls strict in CamelCase-Notation. I use this Camelcase-Controller-Calls allthough in my templates. I have no problems so far. Now I wanted to create a Backend PopUp Ajax Controller. For example, my controller is called "MyControllerAjax" and the file name is also "MyControllerAjax.php". I was wondering why the two pop-up windows did not fill up with the data. According to Errorlog, OXID tried to call the controller like this: "MyController_ajax" instead of "MyControllerAjax". The cause lies in In [OXID6.1.1] \ source \ admin \ oxajax.php line 45. Attempting to append the appropriate controller by appending "_ajax" here. Now I've looked at an original OXID6 controller, for example. "ActionArticleAjax". Unfortunately, the controller in the ... \ Vendor \ oxide esales \ oxides shop-ce \ source \ Core \ Routing \ ShopControllerMapProvider.php so routed: 'actions_article_ajax' => \ OxideEsales \ Eshop \ Application \ Controller \ Admin \ ActionsArticleAjax :: class instead of writing here in Camelcase. I thing there is an extra mapper, there can do this in the old version: \ Vendor \ oxide esales \ oxides shop-ce \ source \ Core \ Autoload \ BackwardsCompatibilityClassMap.php which would allow both spellings ... In my templates I use Camelcase everywhere and only in one place, in my controller configuration in the metadata.php I write now: 'MyController_ajax' => \ MyVendor \ Application \ Controller \ Admin \ MyControllerAjax :: class This is a mistake. | ||||
Tags | Admin, AJAX, Module | ||||
Theme | Not defined | ||||
Browser | Not defined | ||||
PHP Version | Not defined | ||||
Database Version | Not defined | ||||