mirror of
https://github.com/claradex/nativegallery.git
synced 2025-02-23 12:12:11 +03:00
update js
This commit is contained in:
parent
83b0e8ccc9
commit
0581edcc3d
3 changed files with 39 additions and 41 deletions
|
@ -183,7 +183,42 @@ function LoadRecentPhotos()
|
||||||
.fail(function(jx) { if (jx.responseText != '') console.log(jx.responseText); });
|
.fail(function(jx) { if (jx.responseText != '') console.log(jx.responseText); });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function startCountdown(unixTimestamp) {
|
||||||
|
function padZero(num) {
|
||||||
|
return num < 10 ? '0' + num : num;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getWord(num, words) {
|
||||||
|
if (num % 10 === 1 && num % 100 !== 11) return words[0];
|
||||||
|
if (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)) return words[1];
|
||||||
|
return words[2];
|
||||||
|
}
|
||||||
|
|
||||||
|
function updateTimer() {
|
||||||
|
const now = Math.floor(Date.now() / 1000);
|
||||||
|
const diff = unixTimestamp - now;
|
||||||
|
|
||||||
|
if (diff <= 0) {
|
||||||
|
clearInterval(interval);
|
||||||
|
document.getElementById('countdown').textContent = "00 дней 00 часов 00 минут 00 секунд";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const days = Math.floor(diff / 86400);
|
||||||
|
const hours = Math.floor((diff % 86400) / 3600);
|
||||||
|
const minutes = Math.floor((diff % 3600) / 60);
|
||||||
|
const seconds = diff % 60;
|
||||||
|
|
||||||
|
document.getElementById('countdown').textContent =
|
||||||
|
`${padZero(days)} ${getWord(days, ['день', 'дня', 'дней'])} ` +
|
||||||
|
`${padZero(hours)} ${getWord(hours, ['час', 'часа', 'часов'])} ` +
|
||||||
|
`${padZero(minutes)} ${getWord(minutes, ['минута', 'минуты', 'минут'])} ` +
|
||||||
|
`${padZero(seconds)} ${getWord(seconds, ['секунда', 'секунды', 'секунд'])}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
updateTimer(); // сразу обновляем отображение
|
||||||
|
const interval = setInterval(updateTimer, 1000);
|
||||||
|
}
|
||||||
|
|
||||||
function LoadPubPhotos()
|
function LoadPubPhotos()
|
||||||
{
|
{
|
||||||
|
|
|
@ -118,7 +118,7 @@ $(document).ready(function()
|
||||||
if (vote != 0 && vote != 1 || $(this).is('.locked')) return false;
|
if (vote != 0 && vote != 1 || $(this).is('.locked')) return false;
|
||||||
|
|
||||||
var pid = $(this).closest('.vote').attr('pid');
|
var pid = $(this).closest('.vote').attr('pid');
|
||||||
|
var cid = $(this).closest('.vote').attr('cid');
|
||||||
var savedClass1 = $('.vote[pid="' + pid + '"] .konk_btn[vote="1"]').attr('class');
|
var savedClass1 = $('.vote[pid="' + pid + '"] .konk_btn[vote="1"]').attr('class');
|
||||||
var savedClass0 = $('.vote[pid="' + pid + '"] .konk_btn[vote="0"]').attr('class');
|
var savedClass0 = $('.vote[pid="' + pid + '"] .konk_btn[vote="0"]').attr('class');
|
||||||
|
|
||||||
|
@ -131,7 +131,7 @@ $(document).ready(function()
|
||||||
{
|
{
|
||||||
$(this).closest('.p20p').removeAttr('class').css('padding', '6px 6px 5px');
|
$(this).closest('.p20p').removeAttr('class').css('padding', '6px 6px 5px');
|
||||||
|
|
||||||
$.getJSON('/api/photo/vote', { action: 'vote-konk', pid: pid, vote: vote }, function (data)
|
$.getJSON('/api/photo/vote', { action: 'vote-konk', pid: pid, vote: vote, cid: cid }, function (data)
|
||||||
{
|
{
|
||||||
if (data && !data.errors)
|
if (data && !data.errors)
|
||||||
{
|
{
|
||||||
|
|
|
@ -128,44 +128,7 @@ LIMIT 10;');
|
||||||
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 550 211.2" width="550" height="211.2" style="opacity: 0.3; filter: grayscale(0);"><text x="0em" y="1em" font-size="88" transform="rotate(17 55 52.8)">🎁</text><text x="1.25em" y="2em" font-size="88" transform="rotate(17 165 140.8)">🎈</text><text x="2.5em" y="1em" font-size="88" transform="rotate(17 275 52.8)">🎀</text><text x="3.75em" y="2em" font-size="88" transform="rotate(17 385 140.8)">🎊</text><text x="5em" y="1em" font-size="88" transform="rotate(17 495 52.8)">🎉</text></svg>');
|
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 550 211.2" width="550" height="211.2" style="opacity: 0.3; filter: grayscale(0);"><text x="0em" y="1em" font-size="88" transform="rotate(17 55 52.8)">🎁</text><text x="1.25em" y="2em" font-size="88" transform="rotate(17 165 140.8)">🎈</text><text x="2.5em" y="1em" font-size="88" transform="rotate(17 275 52.8)">🎀</text><text x="3.75em" y="2em" font-size="88" transform="rotate(17 385 140.8)">🎊</text><text x="5em" y="1em" font-size="88" transform="rotate(17 495 52.8)">🎉</text></svg>');
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
|
||||||
function startCountdown(unixTimestamp) {
|
|
||||||
function padZero(num) {
|
|
||||||
return num < 10 ? '0' + num : num;
|
|
||||||
}
|
|
||||||
|
|
||||||
function getWord(num, words) {
|
|
||||||
if (num % 10 === 1 && num % 100 !== 11) return words[0];
|
|
||||||
if (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)) return words[1];
|
|
||||||
return words[2];
|
|
||||||
}
|
|
||||||
|
|
||||||
function updateTimer() {
|
|
||||||
const now = Math.floor(Date.now() / 1000);
|
|
||||||
const diff = unixTimestamp - now;
|
|
||||||
|
|
||||||
if (diff <= 0) {
|
|
||||||
clearInterval(interval);
|
|
||||||
document.getElementById('countdown').textContent = "00 дней 00 часов 00 минут 00 секунд";
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const days = Math.floor(diff / 86400);
|
|
||||||
const hours = Math.floor((diff % 86400) / 3600);
|
|
||||||
const minutes = Math.floor((diff % 3600) / 60);
|
|
||||||
const seconds = diff % 60;
|
|
||||||
|
|
||||||
document.getElementById('countdown').textContent =
|
|
||||||
`${padZero(days)} ${getWord(days, ['день', 'дня', 'дней'])} ` +
|
|
||||||
`${padZero(hours)} ${getWord(hours, ['час', 'часа', 'часов'])} ` +
|
|
||||||
`${padZero(minutes)} ${getWord(minutes, ['минута', 'минуты', 'минут'])} ` +
|
|
||||||
`${padZero(seconds)} ${getWord(seconds, ['секунда', 'секунды', 'секунд'])}`;
|
|
||||||
}
|
|
||||||
|
|
||||||
updateTimer(); // сразу обновляем отображение
|
|
||||||
const interval = setInterval(updateTimer, 1000);
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
<?php
|
<?php
|
||||||
if (DB::query('SELECT status FROM contests WHERE status=2')[0]['status'] === 2) {
|
if (DB::query('SELECT status FROM contests WHERE status=2')[0]['status'] === 2) {
|
||||||
$contest = DB::query('SELECT * FROM contests WHERE status=2')[0];
|
$contest = DB::query('SELECT * FROM contests WHERE status=2')[0];
|
||||||
|
@ -183,7 +146,7 @@ LIMIT 10;');
|
||||||
Начнётся через: <b id="countdown"></b><br>
|
Начнётся через: <b id="countdown"></b><br>
|
||||||
Тематика: <b>' . $theme['title'] . '</b><br>
|
Тематика: <b>' . $theme['title'] . '</b><br>
|
||||||
<b style="color: #412378;">Лучшие фотографии по мнению сообщества ' . NGALLERY['root']['title'] . ' будут отмечены</b><br><br>
|
<b style="color: #412378;">Лучшие фотографии по мнению сообщества ' . NGALLERY['root']['title'] . ' будут отмечены</b><br><br>
|
||||||
<a href="/voting/sendpretend" style="background-color: #37009D; color: #fff;" type="button">Участвовать!</a>
|
<a href="/voting/sendpretend" style="background-color: #37009D; color: #fff;" type="button">Участвовать!</a> <a href="/voting/waiting" style="background-color: #37009D; color: #fff;" type="button">Голосовать за претендентов</a>
|
||||||
<script>startCountdown(' . $contest['closepretendsdate'] . ');</script>';
|
<script>startCountdown(' . $contest['closepretendsdate'] . ');</script>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue