Dołącz do zespołu ekspertów! Backend lub Frontend Developer?

Sprawdź najnowsze oferty pracy naszego partnera - 8lines.io!

Modyfikacja pluginu oceny postów

Założony przez  Mevi100.

wersja skryptu MyBB: 1.8

Witam. Mam do was pytanie, odnośnie udostępnienia widoczności pluginu dla grupy niezarejestrowanej. Posiadam na swoim forum plugin XEM Fast Reputation i aktywny on jest jedynie dla grupy zarejestrowanej. Gdzie i jak można zmienić, aby plugin był dostępny dla niezarejestrowanych (najlepiej jak widoczna była by tylko sama ocena)?

[Obrazek: aXM3ZqY.png]
Link do forum?
zmodyfikuj funkcje w kodzie php

system ten jest dostępny tylko i wyłącznie jesli użytkownik może odpowiadać w danym temacie
Pomoże mi ktoś wykryć linijkę odpowiedzialną za tą funkcję?

Wklejam tutaj kawałek kodu, w którym myślę że ta funkcja występuje, ewentualnie dodaje plik .php do załącznika.

private static function getuser_permissions($post)
    {
        global $mybb, $db;

        if(!is_array($post))
        {
            $get_post = $db->simple_select('posts', '*', 'pid='.$post);
            $post = $db->fetch_array($get_post);
        }

        $user = get_user($post['uid']);
        $user_permissions = user_permissions($uid);

        if($post)
        {
            $thread = get_thread($post['tid']);
            $forum = get_forum($thread['fid']);
            $forumpermissions = forum_permissions($forum['fid']);

            if(($post['visible'] == 0 && !is_moderator($forum['fid'], "canviewunapprove")) || $post['visible'] < 0)
            {
                $permissions = false;
            }
            elseif(($thread['visible'] == 0 && !is_moderator($forum['fid'], "canviewunapprove")) || $thread['visible'] < 0)
            {
                $permissions = false;
            }
            elseif($forumpermissions['canview'] == 0 || $forumpermissions['canpostreplys'] == 0 || $mybb->user['suspendposting'] == 1)
            {
                $permissions = false;
            }
            elseif(isset($forumpermissions['canonlyviewownthreads']) && $forumpermissions['canonlyviewownthreads'] == 1 && $thread['uid'] != $mybb->user['uid'])
            {
                $permissions = false;
            }
            else
            {
                $permissions = true;
            }
        }
        else
        {
            $permissions = false;
        }

        if($user_permissions['usereputationsystem'] != 1 || !$user || !$permissions)
        {
            return false;
        }

        return true;
    }

}


Załączone pliki
  xem_fast_rep.php (Rozmiar: 19,47 KB / Pobrań: 207)
Zamień:
if($user_permissions['usereputationsystem'] != || !$user || !$permissions)
        {
            return 
false;
        } 
Na
if($user_permissions['usereputationsystem'] != || !$user || !$permissions)
        {
            return 
false;
        }
        if(
$mybb->user['usergroup'] == 1)
            return 
true
Dzięki fastlone, ale gdy tak podmieniłem w obydwu przypadkach mi się teraz nic nie wyświetla, postaram się pokombinować z tą linijką kodu, dzięki bardzo.
zamiana trzech lini z tego warunku nie wystarczy, poźniej mamy jeszcze np

elseif($forumpermissions['canview'] == || $forumpermissions['canpostreplys'] == || $mybb->user['suspendposting'] == 1)
            {
                
$permissions false;
            } 
@Mevi100 Sprawdź załączoną przeze mnie wersję pliku.


Załączone pliki
  xem_fast_rep.php (Rozmiar: 19,53 KB / Pobrań: 214)
Dziękuję bardzo, wszystko działa jak należy.



Użytkownicy przeglądający ten wątek:

1 gości