koryagina.ru Опубликовано 24 Января 2009 Жалоба Поделиться Опубликовано 24 Января 2009 Мне надо чтобы было: за последние 24 часа, а не с 00-00 Заранее спасибо большое за подсказку. http://www.ibresource.ru/db/663/ Шаг 1 (добавляем шаблон в используемый скин): АДМИНЦЕНТР (ADMIN CP) >ВНЕШНИЙ ВИД (LooK &Feel) > менеджер стилей (Skin Sets) > используемый скин> Изменить HTML фрагменты (Edit Template HTML) >Board Index> Add Template Bit В открывшемся окошечке добавляем новый шаблон: Название фрагмента шаблона: online_today Входящие переменные: $data Содержание фрагмента шаблона: CODE <tr> <td class='formsubtitle' colspan='2'>{$this->ipsclass->lang['ot_title']}</td> </tr> <tr'> <td class='row1' width='1%'><{F_ACTIVE}></td> <td class='row2'> <span id='ot_list'>{$data['memstats']}<br /><div class="thin">{$data['members']}</div> <a href="java script:ShowHide('ot_list', 'ot_nolist');"><b>Скрыть список</b></a> </span> <span id='ot_nolist' style='display: none;'>{$data['memstats']}<br /><a href="java script:ShowHide('ot_list', 'ot_nolist');"><b>Показать список</b></a></span> </td> </tr> Шаг 2 (редактируем файл cache/lang_cache/ru/lang_boards.php ): Добавляем в любое место: CODE 'ot_title' => "Список пользователей посетивших форум сегодня", 'ot_data' => "<b>%s</b> пользователей посетило форум сегодня. Дата:<b>%s</b>", Шаг 3 (редактируем файл sources/lib/func_boardstats.php ): Находим: CODE return $this->ipsclass->compiled_templates['skin_boards']->ActiveUsers($active, $this->ipsclass->vars['au_cutoff']); Заменяем на: CODE $this->ipsclass->time_options['ONLINE_SHOW'] = "g:i A"; $data = array('memnum' => 0, 'members' => ''); $today = $this->ipsclass->get_time(time(), 'j-n-Y'); $this->ipsclass->DB->simple_construct(array('select' => 'id, name, members_display_name, last_activity, mgroup', 'from' => 'members', 'where' => "id>0 AND last_activity>'time()-86399'", 'order' => 'last_activity DESC')); $this->ipsclass->DB->simple_exec(); while ($row = $this->ipsclass->DB->fetch_row()) { $time = $this->ipsclass->get_time($row['last_activity'], 'j-n-Y'); if ($time == $today) { $data['members'][$row['id']] = "<a href='{$this->ipsclass->base_url}act=Profile&MID={$row['id']}' title='".$this->ipsclass->get_date($row['last_activity'], 'ONLINE_SHOW', 1)."'>{$this->ipsclass->cache['group_cache'][$row['mgroup']]['prefix']}{$row['members_display_name']} {$this->ipsclass->cache['group_cache'][$row['mgroup']]['suffix']}</a>"; $data['memnum']++; } } if (is_array($data['members'])) { $data['members'] = implode(', ', $data['members']); } $this->ipsclass->time_options['ONLINE'] = $this->ipsclass->vars['ot_date']; $data['memstats'] = sprintf($this->ipsclass->lang['ot_data'], $data['memnum'], $this->ipsclass->get_date(time(), 'ONLINE', 1)); $online_today = $this->ipsclass->compiled_templates['skin_boards']->online_today($data); return $this->ipsclass->compiled_templates['skin_boards']->ActiveUsers($active, $this->ipsclass->vars['au_cutoff']).$online_today; Шаг 4 (Добавляем настройку в "Формат даты и времени"("Tools and Setttings>Date&Time Format")): Название настройки: "Кто был сегодня" Описание настройки: Вписываете любой желаемый текст. Ключ настройки: ot_date Текущее значение и значение настройки по умолчанию: j.n.Y Мод установлен! Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 24 Января 2009 Жалоба Поделиться Опубликовано 24 Января 2009 Здесь и есть за последние 24 часа: AND last_activity>'time()-86399'Точнее, на 1 секунду меньше, чем 24 часа. Осталось лишь удалить условие:if ($time == $today) Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 24 Января 2009 Жалоба Поделиться Опубликовано 24 Января 2009 http://www.ibresource.ru/forums/index.php?...st&p=331121, ибо в этом условии постоянно ловятся глюки. Где-то была целая тема с объяснением, если интересно. Ссылка на комментарий Поделиться на других сайтах Прочее
koryagina.ru Опубликовано 24 Января 2009 Автор Жалоба Поделиться Опубликовано 24 Января 2009 http://www.ibresource.ru/forums/index.php?...st&p=331121, ибо в этом условии постоянно ловятся глюки. Где-то была целая тема с объяснением, если интересно. Спасибо )Действительно, по первой подсказке выдало весь список пользователей.Сейчас всё Ок. Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения