We have a third party vendor that is working on fixing an extension that has been problematic from the beginning. The extension works fine on their staging server but when I upload it to QA it on our main stage it has issues. This vendor says that they traced the issue back to modifications to one of the core files by the company that built and hosts the site for us. This is the path to the file:
app/code/core/Mage/Core/Model/Config.php
The change they point to is here:
foreach ($events as $event) {
$eventName = strtolower($event->getName());
This is the original code:
foreach ($events as $event) {
$eventName = $event->getName();
Apparently the modified version causes all JavaScript events to be converted to lower case (hence the strtolower function) which would definitely create problems for any function or variable that wasn't strictly lower case. That all seems to make sense, but it seems odd that after a full year of the site being live this is the first time it's been an issue. We've had a few other vendors work on projects for us and it hasn't come up. Obviously, core file changes are rarely a good thing and this definitely seems like it could be an issue moving forward.
So my question is:
- How significant is this alteration? Will it have an impact on future updates or new extension installations?
- Is changing a core file like this a totally unacceptable solution or is there a justifiable reason to do so in this case?
- Anyone care to speculate on what could have been the reason this change was made?
(I realize this is partially a subjective response and doesn't completely fit the mission statement of this site but I don't know where else to pose this question.)
Thanks in advance...