getResources. Исключение вывода по пустому TV
        Доброго времени суток. Требуется помощь светлых умов по следующей проблеме.
На сайте используются таймеры «До конца акции осталось», для каждого товара свой, но в идеале его может и не быть (вот здесь и возникает проблема).
Кстати говоря я рылся по сети, когда начинал реализовывать сам таймер и ничего похожего не нашел, так что возможно сама реализация может и пригодится кому-нить. Простенько и работает =)
Целевая дата задается в TV, коих 3 — день, месяц, час. Всё отлично работает, но если, предположим, убрать значения в этих tv (т.е. на этот товар нету акции, а значит и целевой даты) перестают работать все таймеры, т.к. генерируемые (с помощью getResources) строки скрипта для этих товаров имеют пустые значения, что и ломает работу сего скрипта.
Как бы это придумать такое условие, чтоб при отсутствии значения у ресурса в таком-то tv (ну или например при его значении равном нулю) гетРесурсез его игнорировал?
Теперь ближе к телу (коду =) ).
1. Внутри генерируются переменные и их значения, для последующего использования таймеров на странице.
2. Содержимое чанка dates_in
3. Содержимое чанка dates_class
Буду премного благодарен за любые мысли и подсказки.
    
    
                                                                                
            На сайте используются таймеры «До конца акции осталось», для каждого товара свой, но в идеале его может и не быть (вот здесь и возникает проблема).
Кстати говоря я рылся по сети, когда начинал реализовывать сам таймер и ничего похожего не нашел, так что возможно сама реализация может и пригодится кому-нить. Простенько и работает =)
Целевая дата задается в TV, коих 3 — день, месяц, час. Всё отлично работает, но если, предположим, убрать значения в этих tv (т.е. на этот товар нету акции, а значит и целевой даты) перестают работать все таймеры, т.к. генерируемые (с помощью getResources) строки скрипта для этих товаров имеют пустые значения, что и ломает работу сего скрипта.
Как бы это придумать такое условие, чтоб при отсутствии значения у ресурса в таком-то tv (ну или например при его значении равном нулю) гетРесурсез его игнорировал?
Теперь ближе к телу (коду =) ).
1. Внутри генерируются переменные и их значения, для последующего использования таймеров на странице.
<script>
		$(function () {	
[[!getResources? &parents=`2,3,15,16,12` &limit=`50` &tpl=`dates_in` &includeTVs=`1` &processTVs=`1` &includeTVList=`day,hour,month` &processTVList=`day,hour,month`  &sortdir=`ASC` &depth=`0` &sortby=`id` ]]
var arr = ['<i>лет</i>', '<i>мес.</i>', '<i>нед.</i>', '<i>дней</i>', '<i>час.</i>', '<i>мин.</i>', '<i>сек.</i>'];	
[[!getResources? &parents=`2,3,15,16,12` &limit=`50` &tpl=`dates_class` &includeTVs=`1` &processTVs=`1` &includeTVList=`day,hour,month` &processTVList=`day,hour,month`  &sortdir=`ASC` &depth=`0` &sortby=`id` ]]
		});
	</script>2. Содержимое чанка dates_in
var newYear_[[+id]] = new Date(2013, [[+tv.month]] - 1, [[+tv.day]], [[+tv.hour]], 0, 0);//вот если значение какого-либо из этих tv пустое у одного из ресурсов перестает работать скрипт3. Содержимое чанка dates_class
$('.countdown_[[+id]]').countdown({
				until: newYear_[[+id]],
				serverSync: true,
				format: 'DHMS',
				labels: arr,
				labels1: arr
			});4. Ну и собственно вызов таймеров на странице<article class="timer">
						<b class="_1">:</b>
						<b class="_2">:</b>
						<b class="_3">:</b>
						<section class="countdown countdown_[[+id]]"></section>
					</article>Буду премного благодарен за любые мысли и подсказки.
Комментарии: 3
                Ахахах, ребят, решение элементарное))
&tvFilters=`day!=0,hour!=0,month!=0`
не понимаю как раньше до меня не дошло)
                    &tvFilters=`day!=0,hour!=0,month!=0`
не понимаю как раньше до меня не дошло)
                3 ТВ параметра для хранения одной даты? Советую переделать на split.
Будет работать быстрее, проверять нужно будет всего один ТВ, а в админке его будет удобнее вводить через календарик.
                    Будет работать быстрее, проверять нужно будет всего один ТВ, а в админке его будет удобнее вводить через календарик.
                Спасибо за подсказку)            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.