Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 5 Gast/Gäste
[G] Probleme mit Sekundäre Benutzergruppe
#1
Question 
Folgendes Problem:
Ich habe ein Forenkategorie mit Unterforen erstellt und möchte jetzt dass in diese Forenkategorie nur Benutzer aus einer bestimmten Benutzergruppe rein schauen dürfen.
Beispiel:
Benutzer1 Primäregruppe Mitglieder (darf nicht reinschauen)
Benutzer2 Primäregruppe Mitglieder Sekundäre Benutzergruppe Test (darf reinschauen weil gehört der Gruppe Test an)

Wenn ich dies so wie oben mache bekommt Benutzer 1 das Forum nicht zu sehen ( das ist auch gut so ) aber Benutzer zwei sieht auch nichts??

Warum ist das so kann mir jemand Helfen??

Danke Belzebub


#2
Ich kann den Fehler nachvollziehen und habe ihn an die Entwickler weitergegeben. Bis zum Erscheinen eines Patches musst du hier leider mit den primären Benutzergruppen arbeiten, damit funktioniert es.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#3
Den Fehler habe ich auch seit dem Update auf 1.0 (Final)
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#4
Es gibt im Moment eine Diskussion, wie die Benutzergruppen gehandhabt werden sollen, siehe auch: http://community.mybboard.net/showthread...1#pid35061

Es gibt einen Patch, der allerdings nicht von der MyBB Group selbst stammt. Ob er das Problem löst, kann ich nicht sagen.

Patch:
Datei inc/functions.php öffnen und suchen:
PHP-Code:
//
// Perform inheritance scheme for forum permissions
//
function fetch_forum_permissions($fid$gid$groupperms)
{
    global 
$groupscache$forumcache$fpermcache$mybb;
    
$groups explode(","$gid);
    if(!
$fpermcache[$fid]) // This forum has no custom or inherited permisssions so lets just return the group permissions
    
{
        return 
$groupperms;
    }
    else 
// Okay, we'll do it the hard way because this forum must have some custom or inherited permissions
    
{
        foreach(
$groups as $gid)
        {
            if(
$gid && $groupscache[$gid])
            {
                if(!
is_array($fpermcache[$fid][$gid]))
                {
                    continue;
                }
                foreach(
$fpermcache[$fid][$gid] as $perm => $access)
                {
                    if(
$perm != "fid" && $perm != "gid" && $perm != "pid")
                    {
                        
$permbit $forumpermissions[$perm];
                        if(
$access $permbit || ($access == "yes" && $permbit == "no") || !$permbit)
                        {
                            
$forumpermissions[$perm] = $access;
                        }
                    }
                }
            }
        }
    }
    if(!isset(
$forumpermissions))
    {
        
$forumpermissions $groupperms;
    }
    return 
$forumpermissions;

Ersetzen durch:
PHP-Code:
//
// Perform inheritance scheme for forum permissions
//

// Assume "No, can't do it, unless otherwise specified"

function fetch_forum_permissions($fid$gid$groupperms)
{
    global $groupscache$forumcache$fpermcache$mybb;

    $groups explode(','$gid);

    if(!$fpermcache[$fid]) // This forum has no custom or inherited permisssions so lets just return the group permissions
    {
    return $groupperms;
    }

    // Okay, we'll do it the hard way because this forum must have some custom or inherited permissions
    $forumpermissions = array('canview' => 'no''canviewthreads' => 'no''candlattachments' => 'no''canpostthreads' => 'no',
'canpostreplys' => 'no''canpostattachments' => 'no''candeletethreads' => 'no''canratethreads' => 'no',
'caneditposts' => 'no''candeleteposts' => 'no''cansearch' => 'no''caneditattachments' => 'no',
'canpostpolls' => 'no''canvotepolls' => 'no'); 

    foreach($groups as $gid)
    {

        if($gid && $groupscache[$gid])
        {
        $p is_array($fpermcache[$fid][$gid]) ? $fpermcache[$fid][$gid] : $groupperms;

            if ($p == NULL)
            {
                foreach($forumpermissions as $k => $v)
                {
                $forumpermissions[$k] = 'yes'// no inherited group, assume one has access
                }
            }
            else
            
{
                foreach($p as $perm => $access)
                {
                    if (isset($forumpermissions[$perm]) && $access == 'yes')
                    {
                    $forumpermissions[$perm] = $access;
                    }
                }
            }
        }
    }
    return $forumpermissions;


Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#5
Herzlichen Dank!
Es geht genau wie es soll!!Big Grin
#6
Kann es sein das bei der aktuellen ver. (1.04) das Problem immer noch besteht und die oben aufgeführte Lösung nicht funktioniert?
MyBBoard.de jetzt auf YouTube!
Fehlender Plan wird durch Wahnsinn ersetzt!!Toungue
Gruß Krafdi    www.krafdi.de
#7
Das Problem dürfte in der aktuellen Version noch bestehen. Die aktuellen Updates sind nur Sicherheitsupdates, die Bugs werden mit Version 1.1/1.2 behoben.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#8
Also gibt es im Moment keine Lösung für das Problem??
MyBBoard.de jetzt auf YouTube!
Fehlender Plan wird durch Wahnsinn ersetzt!!Toungue
Gruß Krafdi    www.krafdi.de
#9
Eigentlich sollte oben gennanter Fix das Problem beheben. Funktioniert das nicht?

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#10
Nö finde ein der inc/functions.php die Stelle nicht? Sad

Oder sitze ich schon wider zu lange am PC??????
MyBBoard.de jetzt auf YouTube!
Fehlender Plan wird durch Wahnsinn ersetzt!!Toungue
Gruß Krafdi    www.krafdi.de