Contactlist und Profileguestbook [Ignor einbinden?]

Support zum phpBB2 und zu MODs anderer Autoren.

Moderator: Supporter

Contactlist und Profileguestbook [Ignor einbinden?]

Beitragvon V4Mp » 16. Aug 2007 14:32

Hi,
ich nutze die Contactlist und das Profileguestbook (beide Dateien habe ich angehängt).
Diese sind beider wirklich sehr sehr gut!
Nichts gegen die Nickpage, aber wer nicht das ganze Userprofil ändern möchte, hat damit eine tolle Alternative.

Nun zu meinem Anliegen.
In der Contactlist kann man User ignorieren und komplett verbieten.
Wenn ein User jemanden auf z.B. ignor hat, kann dieser User im keine PN schicken (finde ich super).

Nun würde ich aber auch gerne haben, dass ein ignorierter User dann auch keine Einträge im Guestbook des Users machen kann.

Kann mir da einer helfen???
In der Anleitung der Contactliste muss man in die primsg.php folgendes machen:
Code: Alles auswählen
#
#-----[ OPEN ]------------------------------------------
#
privmsg.php

#
#-----[ FIND ]------------------------------------------
#

//
// Var definitions
//

#
#-----[ BEFORE, ADD ]------------------------------------------
#

//------------------------------------------------------------------------
// Contact List - Begin Code Addition
//

include_once(CONTACT_PATH . 'contact_common.' . $phpEx);

//
// Contact List - End Code Addition
//------------------------------------------------------------------------

#
#-----[ FIND ]------------------------------------------
#

      $privmsg_subject = trim(strip_tags($HTTP_POST_VARS['subject']));

#
#-----[ BEFORE, ADD ]------------------------------------------
#

//------------------------------------------------------------------------
// Contact List - Begin Code Addition
//
      if( $to_userdata['user_id'] )
      {
         if( $contact_list->check_user($to_userdata['user_id'], $userdata['user_id'], 'ignore') )
         {
            $error = TRUE;
            $error_msg = $lang['User_ignoring_you'];
         }
         elseif( $contact_list->check_user($to_userdata['user_id'], $userdata['user_id'], 'disallow') )
         {
            $error = TRUE;
            $error_msg = $lang['User_not_want_contact'];
         }
      }
//
// Contact List - End Code Addition
//------------------------------------------------------------------------

#
#-----[ FIND ]------------------------------------------
#

      'U_SEARCH_USER' => append_sid("search.$phpEx?mode=searchuser"),

#
#-----[ BEFORE, ADD ]------------------------------------------
#

//------------------------------------------------------------------------
// Contact List - Begin Code Addition
//
      'L_BUDDIES' => $lang['Buddies'],
      'U_CONTACT' => append_sid(CONTACT_URL . '?simple=1&mode=popup'),
//
// Contact List - End Code Addition
//------------------------------------------------------------------------


Ich denke, dass man diese Teile wohl auch irgendwie in die functions_guestbook.php vom Profilguestbook einfügen muss?! Oder nicht? und wenn... wo?! :roll:
Dateianhänge
buddy-ignor-disalow-list.zip
Die ContactList
(178 KiB) 466-mal heruntergeladen
profileguestbook1.0.8a.zip
Das ProfileGuestbook...
(43.4 KiB) 569-mal heruntergeladen
V4Mp
 
Beiträge: 22
Registriert: 4. Jun 2007 22:32
Wohnort: Osna

Beitragvon Sorren » 16. Aug 2007 19:45

Also ich hab mich da ma bissle rein gedacht ... und gleich mal ne änderung in der functions_guestbook.php gemacht.

Also du willst wenn jetzt ein anderer User der auf "Ignor" steht, dass dieser nicht posten kann. Daraufhin habe ich in der functions_guestbook.php die function zum posten gesucht.

1. Änderung:
Code: Alles auswählen

#-----[ OPEN ]------------------------------------------ 

functions_guestbook.php


#-----[ FIND ]------------------------------------------ 
#
      if($board_config['allow_guests_gb'] == 0 && !$userdata['session_logged_in'])
      {
         message_die(GENERAL_MESSAGE,sprintf($lang['gb_no_per'],$lang['post_pro']));
      }
      elseif($board_config['gb_posts'] > 0 && $userdata['user_posts'] <= $board_config['gb_posts'])
      {
         message_die(GENERAL_MESSAGE,sprintf($lang['gb_posts_not'],$board_config['gb_posts']));
      }

#-----[ AFTER, ADD ]---------------------------------------------
#

//------------------------------------------------------------------------ 
// Contact List - Begin Code Addition 
// 
      if( $to_userdata['user_id'] ) 
      { 
         if( $contact_list->check_user($to_userdata['user_id'], $userdata['user_id'], 'ignore') ) 
         { 
            $error = TRUE; 
            $error_msg = $lang['User_ignoring_you']; 
         } 
         elseif( $contact_list->check_user($to_userdata['user_id'], $userdata['user_id'], 'disallow') ) 
         { 
            $error = TRUE; 
            $error_msg = $lang['User_not_want_contact']; 
         } 
      } 
// 
// Contact List - End Code Addition 
//------------------------------------------------------------------------


so nun ist bei den Abfragen ob gepostet werden darf die für den contact list mod dazu gekommen.

Probier das aus. Vielleicht muss beim Anfang der function vielleicht noch die contact_common.php included werden.
Benutzeravatar
Sorren
User
 
Beiträge: 40
Registriert: 4. Jun 2006 12:01
Wohnort: Nürtingen

Beitragvon V4Mp » 18. Aug 2007 11:41

Hab das ganze eingefügt und auch genau an der Stelle... keine Reaktion bzw. geht nicht.
Ich bekomme keine Fehlermeldung (im Script) und der Post geht ganz normal... :?:

An der Stelle hatte ich es nämlich auch schon einmal eingefügt...
Hab auch die common eingefügt mit include_once... auch keine Reaktion des Scriptes. :x
V4Mp
 
Beiträge: 22
Registriert: 4. Jun 2007 22:32
Wohnort: Osna

Beitragvon AmigaLink » 18. Aug 2007 19:58

Also ich kenne weder die Kontakt-Liste, noch das Gästebuch. Aber so wie ich den Code von sorren sehe, arbeitet die Kontakt-Liste mit Klassen.
Wenn der Code aus Beitrag #2 Funktionieren soll, muss also vorher erst noch die entsprechende Klasse eingebunden und initialisiert werden.
Außerdem muss der Array $to_userdata irgendwo definiert werden.
Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
Benutzeravatar
AmigaLink
Administrator
 
Beiträge: 3987
Registriert: 11. Aug 2004 01:06
Wohnort: NRW

Beitragvon Sorren » 19. Aug 2007 12:20

ja des stimmt, jetzt ist halt die frage wo das eingefügt wird:
Code: Alles auswählen
//------------------------------------------------------------------------ 
// Contact List - Begin Code Addition 
// 

include_once(CONTACT_PATH . 'contact_common.' . $phpEx); 

// 
// Contact List - End Code Addition 
//------------------------------------------------------------------------ 


ich würde sagen bei der usercp_viewprofile.php nach dieser stelle:
Code: Alles auswählen
include($phpbb_root_path . 'includes/page_header.'.$phpEx);


das Array $to_userdata wird in der klasse class_contact deklariert.


diese angaben kannst dann so wie sie dasthen in der usercp_viewprofile machen:
Code: Alles auswählen
#
#-----[ FIND ]------------------------------------------ 


#       'U_SEARCH_USER' => append_sid("search.$phpEx?mode=searchuser"), 


#-----[ BEFORE, ADD ]------------------------------------------ 


//------------------------------------------------------------------------ 
// Contact List - Begin Code Addition 
// 
      'L_BUDDIES' => $lang['Buddies'], 
      'U_CONTACT' => append_sid(CONTACT_URL . '?simple=1&mode=popup'), 
// 
// Contact List - End Code Addition 
//------------------------------------------------------------------------ 
Benutzeravatar
Sorren
User
 
Beiträge: 40
Registriert: 4. Jun 2006 12:01
Wohnort: Nürtingen

Beitragvon V4Mp » 23. Aug 2007 10:58

Öhm... sorry, aber den Post habe ich nicht ganz verstanden. :?
V4Mp
 
Beiträge: 22
Registriert: 4. Jun 2007 22:32
Wohnort: Osna

Beitragvon AmigaLink » 23. Aug 2007 11:29

Code: Alles auswählen
#
#-----[ OPEN ]----------------------------------------------------------------
#

includes/usercp_viewprofile.php

#
#-----[ FIND ]----------------------------------------------------------------
#

include($phpbb_root_path . 'includes/page_header.'.$phpEx);

#
#-----[ AFTER, ADD ]----------------------------------------------------------
#

include_once(CONTACT_PATH . 'contact_common.' . $phpEx);

#
#-----[ FIND ]----------------------------------------------------------------
#

       'U_SEARCH_USER' => append_sid("search.$phpEx?mode=searchuser"), 

#
#-----[ BEFORE, ADD ]---------------------------------------------------------
#

      'L_BUDDIES' => $lang['Buddies'], 
      'U_CONTACT' => append_sid(CONTACT_URL . '?simple=1&mode=popup'), 

#
#-----[ OPEN ]----------------------------------------------------------------
#

includes/functions_guestbook.php

#
#-----[ FIND ]----------------------------------------------------------------
#

   function post($mode)
   {
      global $board_config,$userdata,$lang,$HTTP_POST_VARS,$phpbb_root_path,$phpEx,$db,$HTTP_GET_VARS,$unhtml_specialchars_replace,$unhtml_specialchars_match,$html_entities_match,$html_entities_replace;

#
#-----[ IN-LINE FIND ]--------------------------------------------------------
#

,$userdata

#
#-----[ IN-LINE AFTER, ADD ]--------------------------------------------------
#

,$to_userdata

#
#-----[ FIND ]----------------------------------------------------------------
#

      if($board_config['allow_guests_gb'] == 0 && !$userdata['session_logged_in'])
      {
         message_die(GENERAL_MESSAGE,sprintf($lang['gb_no_per'],$lang['post_pro']));
      }
      elseif($board_config['gb_posts'] > 0 && $userdata['user_posts'] <= $board_config['gb_posts'])
      {
         message_die(GENERAL_MESSAGE,sprintf($lang['gb_posts_not'],$board_config['gb_posts']));
      }

#
#-----[ AFTER, ADD ]----------------------------------------------------------
#

      if( $to_userdata['user_id'] ) 
      { 
         if( $contact_list->check_user($to_userdata['user_id'], $userdata['user_id'], 'ignore') ) 
         { 
            $error = TRUE; 
            $error_msg = $lang['User_ignoring_you']; 
         } 
         elseif( $contact_list->check_user($to_userdata['user_id'], $userdata['user_id'], 'disallow') ) 
         { 
            $error = TRUE; 
            $error_msg = $lang['User_not_want_contact']; 
         } 
      } 

#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------------
#
# EoM
Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
Benutzeravatar
AmigaLink
Administrator
 
Beiträge: 3987
Registriert: 11. Aug 2004 01:06
Wohnort: NRW

Beitragvon V4Mp » 29. Aug 2007 17:33

Hab die Eintragungen genauso gemacht... aber es geht leider nicht.
Wohl doch zu komplex für mich :cry:
V4Mp
 
Beiträge: 22
Registriert: 4. Jun 2007 22:32
Wohnort: Osna

Beitragvon AmigaLink » 29. Aug 2007 18:03

geht leider nicht
Dann muss ich leider passen. :(
Denn um das Problem näher zu Analysieren müsste ich mir beide MODs in eins meiner Testboards einbauen. :?
Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
Benutzeravatar
AmigaLink
Administrator
 
Beiträge: 3987
Registriert: 11. Aug 2004 01:06
Wohnort: NRW


Zurück zu phpBB2 Support



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 23 Gäste

cron