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

vpktz
#1 28. April 2024, 19:43

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

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

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

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

Kort
#2 29. April 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 - создание сайтов, разработка плагинов и тем для Котонти

Dieser Beitrag wurde von Kort (am 29. April 2024, 05:22, vor 1 Jahr) bearbeitet
vpktz
#3 29. April 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. April 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. April 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. April 2024, 08:59
admin/config?n=edit&o=core&p=sessions

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

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

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

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

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


Dieser Beitrag wurde von vpktz (am 4. Mai 2024, 20:23, vor 1 Jahr) bearbeitet