Вообще кто то заметил, что с некоторых пор (обновление Веб-кита?) в админке на множестве страниц по нажатию кнопки submit , происходит запуск всех форм сразу? От версии не зависит, почему - станет понятно ниже... итак, пару примеров:
1 - на странице admin/index.php?route=tool/backup у нас 2 формы, и отдельно от форм 2 кнопки - экспорт и импорт, при нажатии любой из них, происходит отправка сразу обеих форм, причем одна из них обязательно отменяется (фото 1). В разных браузерах отменяется разные запросы. В случае как на скрине в Хроме по нажатию Импорт - импорт отменяется, а экспорт проходит и грузит бэкап. Что экспорт, что импорт грузят бэкап :). В опере отмена рендомная.
2. Страница /admin/index.php?route=design/custommenu. Аналогичная ситуация, и в виде награды - отключается использование в виде главного меню, хотя выбор был "использовать".
Проблему я нашел и для себя исправил, в принципе ничего сложного - просто браузеры перестали замечать тире в id формы, то есть в первом случаем нажимая одну из кнопок:
<button type="submit" form="form-backup" data-toggle="tooltip" title="" class="btn btn-default" data-original-title="Экспорт"><i class="fa fa-download"></i></button>
<button type="submit" form="form-restore" data-toggle="tooltip" title="" class="btn btn-default" data-original-title="Импорт"><i class="fa fa-upload"></i></button>
запускаются обе формы формы к, так как будто обе они id="form" (на самом деле id="form-backup" и id="form-restore")
То есть убираем пробел как в id формы, так и в кнопке, и все начинает работать, но есть одно большое НО!!!
Таких форм и кнопок с пробелами в id Opencart просто завален, PHP-шторм показывает 100+ примеров. И самое интерестное - в сети молчание. Никто не заметил, или просто не успели написать? Кто то придумал как решить проблему глобально?
З.Ы. Проверял на разных браузерах на локалке и на работающем сайте, просил знакомого зайти и пепероверить - все как описано.
З.З.Ы. Тире в id форм опенкарт использует наверное с первых версий, поэтомуя и писал, что от версии не зависит.