Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

(OV23) Reports as Topics v1.1 - dublowanie raportów itp.


Rekomendowane odpowiedzi

Opublikowano

Witam,

Zainstalowałem na forum modyfikację (OV23) Reports as Topics v1.1. Działa całkiem sprawnie, ale gdy np. dwie osoby raportują daną wypowiedź to modyfikacja tworzy dwa tematy z info o raporcie. Czyli po prostu brakuje tak jakby funkcji która zablokowałaby możliwość raportowania tych wypowiedzi przez kilka osób.

czy ktoś spotkał się z podobnym problemem? Co z tym można zrobić?

Moje forum komputerowe ForumPC.pl korzysta z hostingu w Progreso.pl - w trakcie zamówienia serwera podaj kod FORUMPC a otrzymasz miesiąc abonamentu gratis.

Opublikowano

Witam,

Widzę, że ja ostatnio najpierw działam, potem znajduje fix :-) Oto moja propozycja:

Otwórz: sources/action_public/misc/contact_member.php

Znajdź:

$post = $this->ipsclass->DB->fetch_row();

Dodaj poniżej:

            /* Small fix to stop multiple reports! */
                if ( $post['is_reported'] )
                {
                    $this->ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'rt_already_rep') );  
                }

Znajdź:

$this->api->create_new_topic();

Dodaj poniżej:

        //----------------------------------------
            // Update posts flag
            //----------------------------------------

            $this->ipsclass->DB->do_update( 'posts', array( 'is_reported' => 1 ), 'pid='.$pid );

Otwórz: sources/action_public/topics.php

Znajdź:

        $row['report_link']   = (($this->ipsclass->vars['disable_reportpost'] != 1) and ( $this->ipsclass->member['id'] ))
                                  ? $this->ipsclass->compiled_templates['skin_topic']->report_link($row)
                                  : '';

Zamień na:

        $row['report_link']   = (($this->ipsclass->vars['disable_reportpost'] != 1) and ( $this->ipsclass->member['id'] ) and ( $row['is_reported'] != 1 ))
                                  ? $this->ipsclass->compiled_templates['skin_topic']->report_link($row)
                                  : '';

Otwórz: cache/lang_cache/X/lang_emails.php:

Znajdź:

);

Dodaj powyżej:

'rt_already_rep'  => "Przepraszamy, ale podany post został zgłoszony i oczekuje na akcję moderatorów!",

Wykonaj w SQL Toolbox lub PHPMyAdmin:

ALTER TABLE ibf_posts ADD is_reported tinyint(1) NOT NULL DEFAULT '0'

Dodałem fix, aby user znający się na tym nie uparł się i dodatkowo zabzpieczyłem to po stronie PHP :-) Szkoda, że nie poszukałem o raportach, a sam się za to wziąłem :-)

Pozdrawiam,

Largo

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.