Форуми / National / Russian / Тег cotonti в php код который на tpl странице

vpktz
#47982 22.04.2024 19:09
#47980 Kort:

Тебе же готовый скрипт дан. Сформируй дату завершения проекта, добавь ее в кастомный атрибут тега чтобы можно было считать его javascript и все.

Примерно так:

<div id="clock" data-expires="{PRJ_ROW_EXPIRED|cot_date('m/d/Y H:i +0300', $his)}"></div>

https://jsfiddle.net/Rackne/2x1rdgzy/3/

Добавлено 1 минута спустя:

#47978 Kopusha:

Смутило "конечно". Обычно оставляю единичные не используемые более нигде скрипты в теле. Вынести всегда успею. Особенно при разработке в теле норм.

А ты не смущайся. Кто как хочет, конечно, но в итоге все же желательно убирать все в js.

 

 

Не работает.

1) Я не понимаю как скрипт будет работать если у него по дефолту прописанны параметры

<script type="text/javascript">
                    StartCountDown("clock","4/25/2024 19:00 +0300") 
                    function StartCountDown(myDiv,myTargetDate) {
                        var dthen   = new Date(myTargetDate);
                        var dnow    = new Date();
                        ddiff       = new Date(dthen-dnow);
                        gsecs       = Math.floor(ddiff.valueOf()/1000);
                        CountBack(myDiv,gsecs);
                    }
                    function Calcage(secs, num1, num2) {
                        s = ((Math.floor(secs/num1))%num2).toString();
                        if (s.length < 2) {
                            s = "0" + s;
                        }
                        return (s);
                    }
                    function CountBack(myDiv, secs) {
                        var DisplayStr;
                        var DisplayFormat = "%%D%% Days %%H%%:%%M%%:%%S%%";
                        DisplayStr = DisplayFormat.replace(/%%D%%/g,    Calcage(secs,86400,100000));
                        DisplayStr = DisplayStr.replace(/%%H%%/g,       Calcage(secs,3600,24));
                        DisplayStr = DisplayStr.replace(/%%M%%/g,       Calcage(secs,60,60));
                        DisplayStr = DisplayStr.replace(/%%S%%/g,       Calcage(secs,1,60));
                        if (secs > 0) {
                            document.getElementById(myDiv).innerHTML = DisplayStr;
                            setTimeout("CountBack('" + myDiv + "'," + (secs-1) + ");", 990);
                        } else {
                            document.getElementById(myDiv).innerHTML = "Auction Over";
                        }
                    }
                    </script>

Соответственно при вводе  

<div id="clock" data-expires="{PRJ_ROW_EXPIRED|cot_date('m/d/Y H:i +0300', $his)}"></div>

он выводит эти дефолтные значения, то есть отсчет начинается от 4/25/2024 19:00 +0300 и даже {PRJ_ROW_EXPIRED|cot_date('m/d/Y H:i +0300', $his)} не влияет..