На стартовой странице моего веб-сайта у меня есть маска поиска, в которой пользователь выбирает разные критерии поиска. Если пользователь этого не сделает, для параметров поиска будут установлены значения по умолчанию.
Нажав на кнопку «Поиск», пользователь попадает на страницу предварительного просмотра, где у пользователя есть возможность снова уточнить параметры поиска. И там может быть много разных типов страниц предварительного просмотра. Например, если пользователи выполняют поиск в категории «Автомобили», страница предварительного просмотра будет другой, а маска поиска будет другой, как при поиске в категории «Мотоциклы».
Но опять же страница подробностей едина для всех видов товаров.
Теперь я хочу написать компонент, который может содержать параметры поиска начальной страницы и все виды обзорных страниц.
И я также хотел бы отслеживать эту информацию о том, с какой страницы предварительного просмотра я попал на страницу сведений, и когда пользователь возвращается со страницы сведений обратно на страницу предварительного просмотра, я должен был загрузить желаемую маску со значениями, которые уже уточнены пользователем.
Как лучше всего решить эту проблему и есть ли какой-либо шаблон проектирования для такой проблемы?
Большое спасибо.