Forums / National / Russian / Был на сайте столько-то времени назад ...

vpktz
#1 2024-04-28 19:43

Использую для вывода статуса онлайн например в users.tpl

            <!-- IF {USERS_ROW_ONLINETITLE} == 1 -->
            online
            <!-- ENDIF -->

 Это видимо коренная функция котонти.

Есть ли возможность выводить информацию. "Был на сайте ... времени назад"?

Kort
#2 2024-04-29 04:23

Если речь о дате последней авторизации, то это будет

<!-- BEGIN: USERS_ROW -->
...
{USERS_ROW_LASTLOG}
...
<!-- END: USERS_ROW -->

Если надо вывести сколько чего-то нам назад, то надо сделать миниплагин. Я думаю, нет смысла отсчтывать часы и минуты. Достаточно будет вариантов "сегодня" и "ХХ дней назад".

P.S. Сори, не нужно плагинов)

<!-- BEGIN: USERS_ROW -->
...
<!-- IF {USERS_ROW_LOGCOUNT} -->
{USERS_ROW_LASTLOG_STAMP|cot_build_timeago($this)}
<!-- ELSE -->
Never
<!-- ENDIF -->
...
<!-- END: USERS_ROW -->

Проверка нужна для неутвержденных аккаунтов.

SED.by - создание сайтов, разработка плагинов и тем для Котонти
This post was edited by Kort (2024-04-29 05:22, 2 weeks ago)
vpktz
#3 2024-04-29 08:21
#48000 Kort:

Если речь о дате последней авторизации, то это будет

<!-- BEGIN: USERS_ROW -->
...
{USERS_ROW_LASTLOG}
...
<!-- END: USERS_ROW -->

Если надо вывести сколько чего-то нам назад, то надо сделать миниплагин. Я думаю, нет смысла отсчтывать часы и минуты. Достаточно будет вариантов "сегодня" и "ХХ дней назад".

P.S. Сори, не нужно плагинов)

<!-- BEGIN: USERS_ROW -->
...
<!-- IF {USERS_ROW_LOGCOUNT} -->
{USERS_ROW_LASTLOG_STAMP|cot_build_timeago($this)}
<!-- ELSE -->
Never
<!-- ENDIF -->
...
<!-- END: USERS_ROW -->

Проверка нужна для неутвержденных аккаунтов.

 

 

Точно,  я же видел этот тег на форуме, забыл про него. 

{USERS_ROW_LASTLOG_STAMP|cot_build_timeago($this)}

 

Его одного хватает даже

Я сделал так

                    <!-- IF {PRJ_ROW_OWNER_LASTLOG_STAMP|cot_build_timeago($this)} == "только что" -->

                    <!-- ELSE -->
                    Был(а) {PRJ_ROW_OWNER_LASTLOG_STAMP|cot_build_timeago($this)}
                    <!-- ENDIF -->

Что бы не выводил "только что" если онлайн.

Выводит только время когда был что бы логичнее читалось

Спасибо!enlightened

Kort
#4 2024-04-29 08:33

Тогда проще будет

<!-- IF {PRJ_ROW_OWNER_LASTLOG_STAMP|cot_build_timeago($this)} != "только что" -->
Был(а) {PRJ_ROW_OWNER_LASTLOG_STAMP|cot_build_timeago($this)}
<!-- ENDIF -->
SED.by - создание сайтов, разработка плагинов и тем для Котонти
vpktz
#5 2024-04-29 08:53
#48002 Kort:

Тогда проще будет

<!-- IF {PRJ_ROW_OWNER_LASTLOG_STAMP|cot_build_timeago($this)} != "только что" -->
Был(а) {PRJ_ROW_OWNER_LASTLOG_STAMP|cot_build_timeago($this)}
<!-- ENDIF -->

Да точно yes

 

 

Попутная проблема  возникла. 

Инфо "Был(а) время назад"  выходит практически сразу после закрытия браузера,

а статус меняется только по истечению 20 минут 

Я где то помню, крутил таймаут по истечению которого меняется статус,  а где не могу найти. Вроде все модули и плагины уже перерыл, не вижу

Kort
#6 2024-04-29 08:59
admin/config?n=edit&o=core&p=sessions

Там выставить задержку ожидания в секундах. Но умолчанию и есть 20 минут.

SED.by - создание сайтов, разработка плагинов и тем для Котонти
vpktz
#7 2024-04-29 09:31
#48004 Kort:
admin/config?n=edit&o=core&p=sessions

Там выставить задержку ожидания в секундах. Но умолчанию и есть 20 минут.

 

выставил задержку 60 сек так как минимально Инфо "Был(а) время назад"  выходит через 1 минуту.

И еще заметил что не четко срабатывает статус в сети, и получается что некоторое время, и статус онлай нет, и  Инфо "Был(а) время назад"  нет.

Сделал так 

<!-- IF {PRJ_ROW_OWNER_ONLINETITLE} == 1 -->
   на сайте
<!-- ELSE -->
      <!-- IF {PRJ_ROW_OWNER_LASTLOG_STAMP|cot_build_timeago($this)} != "только что" -->
        был {PRJ_ROW_OWNER_LASTLOG_STAMP|cot_build_timeago($this)}
      <!-- ELSE -->
          только что вышел
       <!-- ENDIF -->
<!-- ENDIF -->

То есть в случае когда нет статуса и нет "Был(а) время назад" то выводит  "только что вышел".

В итоге сдел, если нет ни статуса ни времени когда вышел, вывести записть "только что вышел"

Не много по тестил вроде работает так как надо

This post was edited by vpktz (2024-05-04 20:23, 1 week ago)