Seite 1 von 1

Special User Mod

Verfasst: 24.02.2004 22:33
von blink18-2
Hi,

ich habe in meinem Forum werbeeinblendungen und will diese für zahlende Mitglieder wegfallen lassen. gibt es da einen Mod für?

Mfg

Verfasst: 25.02.2004 00:18
von Acid
hmm.. wie definierst du denn diese zahlenden Mitglieder ? Wenn du dir die Namen einfach nur auf´n Zettel schreibst, könntest du es über folgende Methode machen.
Du steckst diese User in eine versteckte Gruppe, nutzt dann die genannte Methode um diese Werbeeinblendungen dann mit einer Abfrage zu deklarieren. Einfach ausgedrückt..
if ( user is mitglied ) { keine Werbung } else { Werbung }

Verfasst: 25.02.2004 12:51
von blink18-2
ja also ich habe in der index.php einen popup code eingebaut. ich stelle mir das so vor:

also User1 (zahlender User) loggt sich über die Page ein, habe das Loginfeld aus PHPBB rausgeschrieben, und es wird index2.php aufgerufen, dort ist der Popupcode nicht enthalten.

User2 (zahlt nicht) loggt sich ein und kommt auf index.php und das Werbefenster öffnet sich.

Verfasst: 28.02.2004 12:03
von Acid
Dennoch müsstest du irgendwie definieren, ob der User einer von der zahlenden Sorte ist oder nicht.. (s. o.g. Methode). Und imho wären dann index.php/index2.php unnötig, es reicht eine index.php, in der der Werbe-Code speziell definiert ist.
Wo wird die Werbung angezeigt? Nur auf dem Index?
Die Werbung ist reines HTML bzw. JavaScript oder?

Du erstellst eine versteckte Gruppe und steckst die User dort hinein.

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());  
        } 
} 
Diesen Code oberhalb von $template->pparse('body'); in die index.php einfügen. Bei $allowed_u[] die ID der Gruppe eintragen.
Dann kannst du den Werbe-Code in der index_body.tpl platzieren und mit folgendem umschliessen.

Code: Alles auswählen

<!-- BEGIN switch_zahlende_user -->
        Werbecode
<!-- END switch_zahlende_user -->