Делаем правильное многоуровневое меню неограниченной вложенности в Default шаблоне Datalife Engine (DLE)

В стандартных шаблонах DataLife Engine идущих в комплекте с движком почему-то нет поддержки многоуровневого меню. На мой взгляд такое меню обязательно должно быть и давайте попробуем исправить это и сделать так, как показано на главном скриншоте выше. Последующие изменения и код будут работать на версиях DataLife 10.2, 10.3, 10.4, 10.5, а номера строк для его вставки я приведу для версии 10.5. Приступим: