Seite 1 von 1

Buddylist MOD - seitenabhängige Online/Offline Anzeige

Verfasst: 12.05.2007 07:49
von d23
Guten Morgen,

ich bastel gerade an meiner Forum rum, und passe alles so an wie ich brauche...

Jetzt bin ich gerade an der Buddyliste angekommen, was ich persönlich einen sehr praktischen MOD finde...

Folgendes Problem:

Die vollständige Liste ist in einem Portal Block eingebunden, und wird damit sehr lange, wenn man viele Freunde hat :-) Da ich das ganze nicht mit einem Frame in eine feste Höhe binden will (dann müsste man scrollen), habe ich mir überlegt, im Portal nur die Freunde einzublenden, die online sind. Damit entfällt allerdings jede Möglichkeit zur direkten Verwaltung der gesamten Liste, also habe ich eine neue Datei erstellt, die ebenfalls die Freundesliste anzeigt, sowohl online als auch offline Benutzer...
Diese Datei verwendet die selbe PHP- als auch Template-Datei wie der Portal Block...

Ich möchte es nun irgendwie hinbekommen, dass im Portal nur die online-User angezeigt werden, in der neuen Datei aber alle...

Ich dachte eigentlich, dass müsste gehen, in dem ich in der portal.php eine Variable $portal_buddy setze, und dann in der includes/functions_buddylist.php den Code für das Anzeigen der Offline-Benutzer nur dann ausführen lasse, wenn $buddy_portal nicht gesetzt oder gleich 0 ist...

Ging aber nicht, da $portal_buddy in der functions_buddylist.php nicht funktioniert, sprich, obwohl die Variable vor dem include gesetzt wird, ist sie in der Datei nicht mehr verfügbar...

Ich nehme an, ich mach da irgendeinen primitiven Denkfehler....

Der include für die Funktionen der buddylist findet in der common.php statt, dieser Block hier wird auf allen Seiten eingebaut, die die Buddylist anzeigen können sollen (also bei mir z.B. die portal.php)

Code: Alles auswählen

//
// Buddylist actions
//
$buddy_id = ( isset($HTTP_GET_VARS['b']) ) ? intval($HTTP_GET_VARS['b']) : 0;
$buddy_action = ( isset($HTTP_GET_VARS['buddy']) ) ? $HTTP_GET_VARS['buddy'] : '';
if( $buddy_id && $buddy_action != '' )
{
  if( $buddy_action == 'add' )
  {
    add_buddy($userdata['user_id'], $buddy_id);
  }
  else if( $buddy_action == 'remove' )
  {
    remove_buddy($userdata['user_id'], $buddy_id);
  }
}


//
// END: Buddylist actions
// 

...

Am Ende der Datei vor $template->pparse('body');

get_buddies($userdata); 

Und das ist hier ist die includes/functions_buddylist.php

functions_buddylist.php

ich habe in der portal.php vor dem include(...bla...'common.php') $portal_buddy = 1; gesetzt, und dann versucht, dass per echo über die includes/functions_buddylist.php ausgeben zu lassen...

hat nicht funktioniert... warum ?

;)

Danke

Verfasst: 14.05.2007 12:39
von d23
*up*

Verfasst: 18.05.2007 07:11
von d23
*up*

Verfasst: 19.05.2007 14:25
von d23
*seufz*

Verfasst: 21.05.2007 20:07
von d23
*grunz*

Verfasst: 23.05.2007 01:30
von metty84
machs dir nicht so schwer! es gibt den mod "ECP / Buddy list" da hast du die box die du überall leicht per include einbinden kannst und komplet unabhängig davon eine seite zum verwalten der buddys. da must du nur im template für die box den teil für die offlineuser auskommentieren und fertig bist du

mfg metty

Verfasst: 23.05.2007 10:16
von d23
Ich find dazu nichts außer den ECP Profile Mod 0.20.... und da sind die Downloads nicht mehr verfügbar.

Außerdem würde der eh nicht funktionieren, da ich schon einen Mod für das Benutzerprofil / CP drin habe....

Verfasst: 23.05.2007 15:08
von metty84
ne ist ne reine budyliste mit extra seite zum verwalten der user
und das einzige was du dan ändern must ist der link zur verwaltungsseite dan setzt du den eben nicht ins ecp sondern in den header oder ins portal oder wo auch immer du den haben willst den abgesehen davon dürfte es keine probs geben.

gib mir mal deine emailadresse dan schick ich dir den mod per mail da man ja hier nix anhängen kann