Изначально:
- На странице есть <div class=«comments»>...</div> с комментариями.
- К этому блоку привязан pollForComments, который делает ajaxGet с параметрами {comment_object=x, after=y}.
- Если к этому объёкту есть новые комметарии, view возвращает {result='OK', comments=comments}.
- comments в ответе содержит комментарии отрендеренные по шаблонам, которые используются для отрисовки самой страницы. То есть достаточно просто comments.appendTo($(«div.comments»)).
- Если результат pollForComment == OK, ставим pollForComments в таймаут на перезапуск. В противном случае показываем ошибку и больше не перезапускаем.
Дилемма:
Появились страницы, ны которых комментарии отрисовываются другим шаблоном, более простым. Как малой кровью модифицировать pollForComments и view для него, чтоб на таких страницах pollForComments возвращал комментарии, отрисованные другим шаблоном.
Варианты:
- В ajax запросе передавать ещё и тип отрисовки комментариев. Прим.: 'mini', 'default'.
- В json возвращать только данные, на клиенте держать нужный шаблон. Очень не хочется дублировать.
- Ваш вариант, мысли по этому поводу...
Что делать?
P.S.: Трусы снял, бочку сделал.