Лень читать все это, но по вопросу в заголовке - активный таб можно сохранить разными способами:
hash в адресной строке, при смене таба меняем и hash ( location.hash , если не хотите загнать это в историю, то location.replace() )
еще вариант с JS - (local | session)Storage
Можно сохранить в СЕССИИ выбранный таб(если идет перезагрузка страницы).
А если нет, то можно и в куки, при смене таба загоняем название или id выбранного таба в куки и все.
А что именно у вас не получается-то? Ищите по-отдельности , а потом соедините все воедино, а если не получается, то учите или готовьте $$ для тех кто учил