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

vpktz
#1 28.04.2024 19:43

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

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

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

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

Kort
#2 29.04.2024 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 - создание сайтов, разработка плагинов и тем для Котонти
Отредактировано: Kort (29.04.2024 05:22, 1 месяц назад)
vpktz
#3 29.04.2024 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 29.04.2024 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 29.04.2024 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 29.04.2024 08:59
admin/config?n=edit&o=core&p=sessions

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

SED.by - создание сайтов, разработка плагинов и тем для Котонти
vpktz
#7 29.04.2024 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 -->

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

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

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

Отредактировано: vpktz (04.05.2024 20:23, 4 недели назад)