Список пользователей, посетивших трекер за 24 часа

Тема в разделе "Модификации для TorrentPier (архив)", создана пользователем XANDER-CAGE, 18 сен 2011.

  1. XANDER-CAGE

    XANDER-CAGE Пользователь

    Сообщения:
    123
    Симпатии:
    23
    ##############################################################
    ## Название: Список юзверей, посетивших трекер за 24 часа
    ## Автор: Вертос
    ## Адаптация: XANDER-CAGE
    ## Описание: По названию и так все ясно, не так ли?
    ## Сложность: Легкая
    ##############################################################
    [​IMG]

    PHP:
    ALTER TABLE `bb_usersADD `last_visitINT11 NOT NULL
    открыть ajax.php

    [НАЙТИ]
    PHP:
    'birthday_list'    => array('guest'),
    после вставить
    PHP:
    'users_today'      => array('user'),
    найти последнюю скобку "}", и перед вставить

    PHP:
    function users_today()
        {
            
    $now time();
            
    $time_h = (int)date('H',$now);
            
    $time_m = (int)date('i',$now);
            
    $time_s = (int)date('s',$now);
            
    $day $now - ($time_h 60 60) - ($time_m 60) - $time_s;
            
    $get_users DB()->sql_query("SELECT username, user_id, user_level
                                      FROM  bb_users
                                      WHERE  last_visit > 
    $day
                                      AND    user_active = 1
                                      ORDER BY username
                                    "
    );
            
    $users_count DB()->num_rows($get_users);
            
    $day date('d.m.y',$day);
            
    $visitors '';
            
    $user_count 0;
            while (
    $u_db DB()->sql_fetchrow($get_users))
            {
                
    $user_count++;
                if (
    $u_db['user_level'] == ADMIN)
                {
                    
    $color '<span class="colorAdmin small">';
                    
    $color_end '</span>';
                }
                elseif (
    $u_db['user_level'] == MOD)
                {
                    
    $color '<span class="colorMod small">';
                    
    $color_end '</span>';
                }
                else
                {
                    
    $color '<span class="colorNick small">';
                    
    $color_end '</span>';
                }
            
    $visitors .= '<a href=profile.php?mode=viewprofile&u='.$u_db['user_id'].' >'.$color.$u_db['username'].$color_end.'</a>, ';
            }
            
    $visitors substr($visitors0, -2);
            
    $USERS_TODAY $user_count.''.$visitors;
            
    $this->response['html'] = '
            <table class="w100 row6 ratio small">
              <tr>
                <td>'
    .$visitors.'</td>
              </tr>
            </table>'
    ;
        }
    открыть page_header.php

    [НАЙТИ]
    PHP:
        'U_SEARCH_SELF_BY_LAST' => "search.php?uid={$userdata['user_id']}&amp;o=5",
    ));
    [ВСТАВИТЬ ПОСЛЕ]
    PHP:
    if (!empty($userdata['username']))
    {
      
    $userrr mysql_escape_string($userdata['username']);
      
    DB()->sql_query("UPDATE bb_users SET last_visit = ".time()." WHERE username = '".$userrr."'");
    }
    открыть index.tpl

    [НАЙТИ]
    <p>{NEWEST_USER}</p>

    Код:
    после вставить
    
        <hr>
        <script type="text/javascript">
        f_list = false;
        function users_today() {
          $('#users_today').toggle();
          if (!f_list) ajax.users_today();
          return false;
        }
        ajax.users_today = function() {
          ajax.exec({
            action  : 'users_today'
          });
        };
        ajax.callback.users_today = function(data){
          $('#users_today td').html(data.html);
          f_list = true;
        };
        </script>
        <span class="clickable" style="margin: 5px 0 4px;" onclick="return users_today()" title="Нажмите для просмотра">Пользователи, посетившие <b>Мой ресурс</b> сегодня (нажмите для просмотра)</span>
        <span id="users_today" style="display:none"><table><td class="row1"><b>...Загрузка...</b></td></table></span>
    
    
     
    REVOLUTiON нравится это.
  2. ChazychaZ

    ChazychaZ Пользователь

    Сообщения:
    96
    Симпатии:
    8
    точку с запятой в конце забыл)
     
  3. Lange

    Lange Пользователь

    Сообщения:
    1.791
    Симпатии:
    143
    Версия TP:
    2.2.1
    XANDER-CAGE, работу под хромом хорошо проверил?
     
  4. ChazychaZ

    ChazychaZ Пользователь

    Сообщения:
    96
    Симпатии:
    8
    у меня под хромом на ура катит...только одна печаль...в ТП 1 в этом моде писало количество посетителей в скобочках, а сейчас к сожалению нет...мб это как то можно исправить?:)
     
  5. _Xz_

    _Xz_ Пользователь

    Сообщения:
    370
    Симпатии:
    236
    Версия TP:
    иная
    сувать запрос на все страницы да ещё и новое поле делать под эту фигню, когда в бд есть user_lastvisit и user_session_time ещё делать свою собственную окраску когда она уже встроена в движок, это ли не тупость?
     
  6. vater55

    vater55 Пользователь

    Сообщения:
    14
    Симпатии:
    0
    В корне не согласен! Это мод, и ни кто не просит вшивать его в движок. Я не встречал ни одного трекера который работал бы на голом движке. А ставить или нет, я думаю пусть выбирают сами.
     
  7. _Xz_

    _Xz_ Пользователь

    Сообщения:
    370
    Симпатии:
    236
    Версия TP:
    иная
    мы о разных вещах видимо говорим, хотите засирать свой трекер лишним мусором пожалуйста, это дело каждого, никого я не принуждаю НЕ ставить данный мод, просто указал на глупость половины кода
     
  8. XANDER-CAGE

    XANDER-CAGE Пользователь

    Сообщения:
    123
    Симпатии:
    23
    _Xz_, как видишь, код писал не я, я его адаптировал по просьбе одно человека и решил кинуть в паб, у себя же - стоит самопис + кэш, если вечером не забуду - то выложу свой код.
     
  9. ChazychaZ

    ChazychaZ Пользователь

    Сообщения:
    96
    Симпатии:
    8
    будем очень благодарны)
     
  10. _Xz_

    _Xz_ Пользователь

    Сообщения:
    370
    Симпатии:
    236
    Версия TP:
    иная
    какой кеш? зачем он нужен в аяксе?) что этот список смотрят ежесекундно 1000 человек?)
     

Поделиться этой страницей