Bestimmte Code-Teile einer *.tpl soll nicht geladen werden

Du suchst einen bestimmten Mod, weißt aber nicht genau wo bzw. ob er überhaupt existiert? Wenn dir dieser Artikel nicht weiterhilft, kannst du hier den von dir gewünschten/gesuchten Mod beschreiben ...
Falls ein Mod-Autor eine der Anfragen hier aufnimmt um einen neuen Mod zu entwicklen, geht's in phpBB 2.0: Mods in Entwicklung weiter.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Bruth
Mitglied
Beiträge: 22
Registriert: 09.10.2003 16:44

Bestimmte Code-Teile einer *.tpl soll nicht geladen werden

Beitrag von Bruth »

Hi,

ich habe mal eine kleine code frage.
ist es ein großer aufwand, bestimmten Code aus einer *.tpl-Datei für z.B. nicht registrierte User oder nur für eine bestimmte Gruppe anzuzeigen.

Wenn es nicht zu schwer ist, würde ich mich über ein weg freuen, da ich keine anhung habe, wo man anfangen soll dafür....
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Code: Alles auswählen

<!-- BEGIN switch_user_logged_in -->
<!-- END switch_user_logged_in -->
Wenn du den tpl-Teil damit umschliesst, sehen nur eingeloggte, registrierte User den Bereich.

Code: Alles auswählen

<!-- BEGIN switch_user_logged_out -->
<!-- END switch_user_logged_out -->
..damit nur ausgeloggte User (oder Gäste).

Es liessen sich noch andere Sachen definieren (obiges ist bereits Standard), z.B. ob Admins, Mods usw.

Code: Alles auswählen

<!-- BEGIN switch_user_is_authorized -->
<!-- BEGIN switch_user_is_authorized -->
Dies müsstest du dann noch in der page_header.php definieren (blau is neu).
}

if( $userdata['user_level'] == ADMIN )
{
$template->assign_block_vars('switch_user_is_authorized', array());
}

// Add no-cache control for cookies if they are set
Das ist jetzt natürlich nur ein Beispiel; da gibt´s verschiedenste Varianten.

Mit Gruppen ist dies natürlich auch möglich (s. Beispiel).
Bruth
Mitglied
Beiträge: 22
Registriert: 09.10.2003 16:44

Beitrag von Bruth »

thx, genau das wollte ich haben :grin: :grin:
Bruth
Mitglied
Beiträge: 22
Registriert: 09.10.2003 16:44

Beitrag von Bruth »

Doch noch zwei fragen

du hast ja im link dies gemeint

Code: Alles auswählen

$allowed_u = array();
$allowed_u[] = 'g3'; // <-- ID der Gruppe eintragen

$access_allowed = false;
if( in_array($userdata['user_id'],$allowed_u))
{
        $access_allowed = true;
}

else
{
        $sql = "SELECT g.group_id, g.group_name
                FROM " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g
                WHERE ug.user_id = '" . $userdata['user_id'] . "'
                        AND g.group_id = ug.group_id";
        if ( !($result = $db->sql_query($sql)) )
        {
                message_die(GENERAL_ERROR, 'Could not get user group.', '', __LINE__, __FILE__, $sql);
        }
        $access_allowed = false;
        while( list($group_id, $group_name) = $db->sql_fetchrow($result) )
        {
                if( in_array('g' . $group_id[group_id],$allowed_u ))
                {
                         $access_allowed = true;
                         break;
                }
                if( in_array('g' . $group_name[group_name],$allowed_u))
                {
                         $access_allowed = true;
                         break;
                }
        }
        if( !$access_allowed )
        {
                 $template->assign_block_vars('switch_zahlende_user', array()); 
        }
}
meine erste frage.im andeem post, war es ja für zugriffverweigerung. wenn ich es umgekehrt machen will, dann muss ich doch bei der variable "$access_allowed" alles einfach umdrehen, also was true ist wird false und was false ist wird true oder????

meine zweite besieht sich eher aufs verstehen, als nur anwenden. ich verstehe die else sache nicht, wann kommt es vor, wenn der inhalt vor dem else rankommt und wenn der else inhalt rankommt?? könntest du mir bitte dies erklären
Antworten

Zurück zu „phpBB 2.0: Mod Suche/Anfragen“