phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

FAQFAQ - PIERWSZA POMOC!!  regulaminREGULAMIN  SzukajSZUKAJ  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload  katalog Forów DyskusyjnychKatalog Forów   FAQ Video tutoriale

Poprzedni temat «» Następny temat
Przesunięty przez: Woytec
07-03-2013, 20:28
[poprawka] Ignorowanie u?ytkowników
Autor Wiadomość
Woytec


Pomógł: 2596 razy
Posty: 7676
Wysłany: 23-10-2010, 19:34   [poprawka] Ignorowanie użytkowników

Poprawka ta wyłącza oznaczanie jako nieczytanych postów, które napisał ignorowany użytkownik(dokonaj edycji includes/read_history.php z poniższej instrukcji) oraz wyłącza wyświetlanie informacji w miejscu wiadomości napisanej przez tego użytkownika(dokonaj edycji viewtopic.php z poniższej instrukcji)

viewtopic.php (jeżeli chcesz wyłączyć wyświetlanie informacji o ukrytej wiadomości w miejscu posta napisanego przez ignorowanego)
[usuń]
Kod:
if ( $board_config['cignore'] && $userdata['cignore'] )
    {
        if ( $user_id != ANONYMOUS )
        {
            $post_ignored = (in_array($poster_id, $ignored_users)) ? 1 : 0;
        }
        else
        {
            $post_ignored = 0;
        }
    }

    $ignore_this_post = (($post_ignored > 0) && ($poster_id != ANONYMOUS) && ($post_bypass != $postrow_post_id) && ($poster_level != ADMIN) && !$poster_is_mod ) ? true : false;

[Znajdź]
Kod:
for($i = 0; $i < $total_posts; $i++)

[Przed, dodaj]
Kod:
for($i = 0; $i < $total_posts; $i++)
{
$poster_id = $postrow[$i]['user_id'];
$poster_level = $postrow[$i]['user_level'];
$postrow_post_id = $postrow[$i]['post_id'];
    if ( $poster_level != ANONYMOUS && $poster_level != ADMIN && $poster_level == MOD )
    {
        if ( in_array($poster_id, $mods_ids) )
        {
            $poster_is_mod = true;
        }
        else
        {
            $poster_is_mod = false;
        }
    }
    if ( $board_config['cignore'] && $userdata['cignore'] )
    {
        if ( $poster_id != ANONYMOUS )
        {
            $post_ignored = (in_array($poster_id, $ignored_users)) ? 1 : 0;
        }
        else
        {
            $post_ignored = 0;
        }
    }
    $ignore_this_post = (($post_ignored > 0) && ($poster_id != ANONYMOUS) && ($post_bypass != $postrow_post_id) && ($poster_level != ADMIN) && !$poster_is_mod ) ? true : false;
    if($ignore_this_post)
    {
    $ignored[] = $i;
    unset($postrow[$i]);
    }
}

[Znajdź]
Kod:
for($i = 0; $i < $total_posts; $i++)
{

[Po, dodaj]
Kod:
  if(is_array($ignored))
  {
    while((!in_array($i, array_keys($postrow)) || in_array($i, $ignored)) && $i<$total_posts-1)
    {
    $i = $i+1;
    }
 
      if(in_array($i, $ignored)) break;
  }

[Znajdź]
Kod:
if ( $ignore_this_post || (!$show_post && ($userdata['user_id'] != $poster_id || $poster_id == ANONYMOUS)) )

[Zamień na]
Kod:
if ((!$show_post && ($userdata['user_id'] != $poster_id || $poster_id == ANONYMOUS)) )

Dla wyłączenia oznaczania jako nieprzeczytane postów ignorowanych użytkowników:
include/read_history.php

[Znajdź]
Kod:
$ignore_topics_table = $ignore_topics_sql = '';
        if ( $board_config['ignore_topics'] && $userdata['session_logged_in'] )
        {
            $ignore_topics_table = "LEFT JOIN " . TOPICS_IGNORE_TABLE . " i ON (i.topic_id = p.topic_id AND i.user_id = " . $userdata['user_id'] . ")";
            $ignore_topics_sql = "AND i.topic_id IS NULL";
        }

[Po, dodaj]
Kod:
        if ( $board_config['cignore'] && $userdata['session_logged_in'] )
        {
        $ignores = '';
        $sql = "SELECT * from ".IGNORE_TABLE ." where user_id = '".$userdata['user_id']."'";
          if ( !($result = $db->sql_query($sql)) )
          {
            message_die(GENERAL_ERROR, 'Could not query new topic information', '', __LINE__, __FILE__, $sql);
          }
         
            while( $row = $db->sql_fetchrow($result) )
          {
          $ignores[] = $row['user_ignore'];
          }
           
          if(is_array($ignores))
          {
          $ignores = implode(", ", $ignores);
          $ignore_users_sql = "AND p.poster_id NOT IN($ignores)";
          }
        }

[Znajdź]
Kod:
$ignore_topics_sql

[Pod, dodaj]
Kod:

$ignore_users_sql
 
     
Gadatliwa Kasia 

   
Cassino

Pomógł: 34 razy
Posty: 787
Wysłany: 23-10-2010, 21:30   

Nigdy nie zwracałem na to uwagę, ale pomyślane... według mnie powinno być to w standardzie :)
_________________
hehe
 
     
Myszoor


Posty: 42
Wysłany: 23-11-2012, 14:25   

czy mogę prosić o rzut okiem na załącznik?

wprowadziłem zmiany do tych dwóch plików, ale zmian nie ma, w sensie, że przeczytanych już postów danego usera nie chce ukryć :|

ignore.rar
Pobierz Plik ściągnięto 490 raz(y) 24,4 KB

 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Kopiowanie wszelkich treści zawartych na forum, modyfikacji oraz instrukcji bez zgody administracji i autorów tematów/postów zabronione!

Powered by phpBB modified by Przemo © 2003 phpBB
Strona wygenerowana w 0,07 sekundy. Zapytań do SQL: 16
Polecane serwisy

Najlepsze oprogramowanie do prowadzenia sklepu internetowegoNajlepszy program do sklepu firmowany przez Przem'a

Sklep z gadżetami

Design Cart - Tworzenie sklepu internetowego

iRonin.IT

• Zamów reklamę