Seite 14 von 29

Verfasst: 24.08.2006 21:31
von Tissot
FRAGE:

Gibt es eine Möglichkeit anstelle des Links in der Renommee-Anzeige unterhalb des Avatars zusätzlich einen Button als Link hinzuzufügen?

Verfasst: 28.08.2006 21:34
von Siegfried_Thorson
Erstmal schönen Dank für die Entwicklung dieses Mods.

Nun habe ich allerdings ein Problem, was anscheinend viele haben, die es installiert haben, nämlich es öffnet sich kein Popup, wenn man auf den grünen Punkt klickt, sondern das Thema öffnet sich neu.

habe schon den gesamten Thread durchsucht und auch schon einige Dinge gamcht wie die renommee.php geändert, aber ich werde dieses Problem nicht los.

Deswegen nocheinmal die Frage: Wie löst man es?

Eventuell bin ich blind und dumm, dies bitte ich zu entschuldigen, aber trotzdem möchte ich gerne Hilfe.


MfG
Siegfried.

Verfasst: 29.08.2006 00:58
von Thomas W.
mir ist dein Phänomen bei einem funktionierendem Renommeemod passiert, nachdem ich das Update von 2.0.19 auf 2.0.20 installiert habe.

bei einer gewissenhaften Wiederholung der Modifikationen (also alles nochmal von vorn) war dann alles OK... WO der Flüchtigkeitsfehler war kann ich dir leider nicht sagen - nur daß es nicht am Mod liegt :-)

Verfasst: 16.09.2006 15:11
von bgx
Sehr schöner Mod!

Hab ihn gleich eingebaut, nur ist euch schon mal aufgefallen das dann gleich bis zu ca. 100 Queries mehr laufen?

Ich hab da mal nen Cache für geschrieben, denn ein Großteil der Queries ist total unnötig!

Bei interresse gebe ich ihn gern weiter.

Verfasst: 16.09.2006 18:29
von Thomas W.
klar :-) will sehen

hast du (bgx) dir schon meine "kranken" Erweiterungen angesehen

Hilfe - Smilie Creator macht Problem

Verfasst: 28.09.2006 01:15
von hackepeter13
Hi, ich wollte mir soeben den Mod einbauen (ohja Nachts ^^), aber ich hab da ein Problem und so wie es aussieht durch den Smilie Creator.

Wenn ich das Profil eines Members anzeigen lassen will (profile.php?mode=viewprofile&u=x), kommt folgende Fehlermeldung:
Fatal error: Cannot redeclare phpbb_schild() (previously declared in /www/htdocs/w00631f9/includes/bbcode.php:34) in /www/htdocs/w00631f9/includes/bbcode.php on line 34
In der bbcode.php ab Zeile 34 steht folgendes:

Code: Alles auswählen

function phpbb_schild($smilie, $parameter, $text)
{
	$text = trim(urlencode($text));
	$fontcolor = '000000';
	$shadowcolor = "";
	$shieldshadow = '1';

	$parameter = trim($parameter);
	if ( !empty($parameter) )
	{
		$parameter = explode(' ', $parameter);
		$parameter2 = array();

		if ( !empty($parameter) )
		{
			reset($parameter);
			while ( list( , $line) = each($parameter) )
			{
				if ( ( $pos = strpos(' ' . $line, '=') ) )
				{
					$name = substr($line, 0, $pos - 1);
					$value = substr($line, $pos);
					$parameter2[$name] = $value;
				}
			}

			if ( !empty($parameter2['fontcolor']) )
			{
				$fontcolor = $parameter2['fontcolor'];
			}

			if ( !empty($parameter2['shadowcolor']) )
			{
				$shadowcolor = $parameter2['shadowcolor'];
			}

			if ( $parameter2['shieldshadow'] == '0' )
			{
				$shieldshadow = '0';
			}
			else
			{
				if ( !empty($parameter2['shieldshadow']) )
				{
					$shieldshadow = $shieldshadow;
				}
			}
		}
	}
	return "text2schild.php?smilie=$smilie&fontcolor=$fontcolor&shadowcolor=$shadowcolor&shieldshadow=$shieldshadow&text=$text";
}
Es liegt wirklich nur an diesem Installationspunkt vom Renommee Mod 0.2.2:

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------------
#
includes/usercp_viewprofile.php
#
#-----[ FIND ]------------------------------------------------
#
$search = '<a href="' . $temp_url . '">' . sprintf($lang['Search_user_posts'], $profiledata['username']) . '</a>';
#
#-----[ AFTER, ADD ]------------------------------------------
#
//
// Start -> Renommee - Mod 
//
               
include_once('includes/bbcode.php');


// Auslesen der Konfigurationsdaten

$sql = "SELECT * FROM " . RENOMMEE_KONFIG;

if ( !$result = $db->sql_query($sql) )
{
     message_die(CRITICAL_ERROR, "Could not query information", "", __LINE__, __FILE__, $sql);
}
else
{
     while( $row = $db->sql_fetchrow($result) )
     {
          $config_name = $row['name'];
          $config_value = $row['wert'];
     
	     $renommee_konfig[$config_name] = $config_value;
     }
}


// Auslesen der Renommee -  Daten

$sql = "SELECT * FROM " . RENOMMEE . " WHERE ziel_id = '$profiledata[user_id]' ORDER BY datum DESC LIMIT 0, " . $renommee_konfig[beitrags_anzahl];

if ( !$result = $db->sql_query($sql) )
{
     message_die(CRITICAL_ERROR, "Could not query information", "", __LINE__, __FILE__, $sql);
}
else
{
     while( $row = $db->sql_fetchrow($result) )
     {
          $renommee_rowset[] = $row;
          $total_bewertungen++;
	}
}  

// Bestimmen der Rechte für Renommee - Ansicht und Aufbereitung der Daten

if ( (isset($userdata['session_logged_in']) AND $userdata['user_id'] == $profiledata['user_id']) OR ($userdata['user_level'] >= 1) )
{
     $template->assign_block_vars('renommee_anzeige', array(
     
               "GESAMT_RENOMMEE" => $profiledata['renommee_gesamt']
               
               )
          ); 


     for ( $i = 0; $i < $total_bewertungen; $i++ )
     {

          $sql = "SELECT u.username, u.user_id, t.topic_title
                  FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p, " . TOPICS_TABLE . " t
                  WHERE u.user_id = '" . $renommee_rowset[$i]['quell_id'] . "' AND p.post_id = '" . $renommee_rowset[$i]['post_id'] . "' AND t.topic_id = p.topic_id";
    
          if ( !$result = $db->sql_query($sql) )
          {
               message_die(CRITICAL_ERROR, "Could not query information", "", __LINE__, __FILE__, $sql);
          }
          else
          {
               while ( $row = $db->sql_fetchrow($result) )
               {
               $bewerter_daten = $row;
               }
          }


          // Löschen von Bewertungen dürfen nur Moderatoren und Admins. Erstere aber nicht die eigenen.
     
          if ( ($userdata['user_level'] == 2 AND $userdata['user_id'] != $profiledata['user_id']) OR $userdata['user_level'] == 1 )
          {
               $loeschen = '<a href="#" alt="' . $lang['renommee_delete'] . '" title="' . $lang['renommee_delete'] . '" onclick="return renommee_del(' . $renommee_rowset[$i]['id'] . ')" target="' . $lang['renommee_delete'] . '" class="nav"><img src="images/icon_delete.gif" alt="' . $lang['renommee_delete'] . '" title="' . $lang['renommee_delete'] . '" border=0></a>';
          }
          else
          {
               $loeschen = '&nbsp;';
          }  
      
          $p = $renommee_rowset[$i]['post_id'];
     
     
          if ( $bewerter_daten['topic_title'] != "" )
          {
               $link = '<a href="' . append_sid("viewtopic." . $phpEx . "?p=" . $p . "#" . $p) . '">' . $bewerter_daten['topic_title'] . '</a>';
          }
          else
          {
               $link = '<span class="negative"><b>' . $lang['renommee_posting_deleted'] . '</b></span>';
          }
     
     
          $datum = date("d.m.Y, H:i", $renommee_rowset[$i]['datum']);
          $autor = '<a href="profile.php?mode=viewprofile&u=' . $bewerter_daten['user_id'] . '">' . $bewerter_daten['username'] . '</a>';

          if ( $renommee_rowset[$i]['renommee_wert'] == 0 )
          {
               $bild = '<img src="images/renommee_grau.gif" alt="' . $lang['renommee_neutral_reputation'] . '" title="' . $lang['renommee_neutral_reputation'] . '">';
          }
          elseif ($renommee_rowset[$i]['renommee_wert'] > 0)
          {  
               $bild = '<img src="images/renommee_gruen.gif" alt="' . $lang['renommee_positive_reputation'] . '" title="' . $lang['renommee_positive_reputation'] . '">';
          }
          else
          {  
               $bild = '<img src="images/renommee_rot.gif" alt="' . $lang['renommee_negative_reputation'] . '" title="' . $lang['renommee_negative_reputation'] . '">';
          }


          $kommentar = $renommee_rowset[$i]['kommentar'];
          
          if ( $board_config['allow_smilies'] )
          {
               $kommentar = smilies_pass($renommee_rowset[$i]['kommentar']);
          }
          
          
          $template->assign_block_vars('renommee_anzeige.renommeerow', array(

               'AUTOR' => $autor,
               'KOMMENTAR' => $kommentar,
               'DATUM' => $datum,
               'LINK' => $link,
               'BILD' => $bild,
               'LOESCHEN' => $loeschen
	
               )
          );   
   
     }

     // Standardbewertung etwas in die Liste geschummelt
     
     if ( $total_bewertungen < $renommee_konfig['beitrags_anzahl'] )
     {
          
          $template->assign_block_vars('renommee_anzeige.renommeerow', array(

               'AUTOR' => $lang['renommee_system'],
               'KOMMENTAR' => $lang['renommee_standard_points'],
               'DATUM' => '',
               'LINK' => '<a href="#">' . $board_config['sitename'] . '</a>',
               'BILD' => '<img src="images/renommee_gruen.gif" alt="' . $lang['renommee_positive_reputation'] . '" title="' . $lang['renommee_positive_reputation'] . '">',
               'LOESCHEN' => ''
	
               )
          );

     }

}
		
//
// End -> Renommee - Mod
//
Alles andere geht ohne Probleme.

Hat jemand eine Idee, was man da machen kann, ich selber hab keine Lösung gefunden.

Verfasst: 28.09.2006 12:42
von darkon
bgx hat geschrieben: Ich hab da mal nen Cache für geschrieben, denn ein Großteil der Queries ist total unnötig!

Bei interresse gebe ich ihn gern weiter.
Mach das doch bitte.

Re: Hilfe - Smilie Creator macht Problem

Verfasst: 28.09.2006 12:46
von darkon
hackepeter13 hat geschrieben:Hi, ich wollte mir soeben den Mod einbauen (ohja Nachts ^^), aber ich hab da ein Problem und so wie es aussieht durch den Smilie Creator.

Wenn ich das Profil eines Members anzeigen lassen will (profile.php?mode=viewprofile&u=x), kommt folgende Fehlermeldung:
Fatal error: Cannot redeclare phpbb_schild() (previously declared in /www/htdocs/w00631f9/includes/bbcode.php:34) in /www/htdocs/w00631f9/includes/bbcode.php on line 34

Diese function ist eindeutig von einem anderen Mod, vermutlich dem Smiliecreator.

Guck mal nach ob du diese Function noch einmal in der bbcode.php hast, der Fehlermeldung nach wird sie doppelt bestimmt.

Verfasst: 28.09.2006 13:50
von hackepeter13
Hi darkon
Den Smilie Creator hab ich ja auch schon im Verdacht, hatte auch schon in der bbcode.php nach einer zweiten Stelle mit "phpbb_schild" gesucht, aber nix gefunden.

Das komische ist, das der Renommee mit diesen Teil "phpbb_schild" überhaubt nicht verwendet.

Ich in der Nacht noch etwas rumprobiert und bin zu folgendem Ergebniss gekommen:

Ich hatte mich gefragt, warum der Renommee Mod in der user_viewportal.php das hier braucht:

Code: Alles auswählen

// 
// Start -> Renommee - Mod 
// 
                
include_once('includes/bbcode.php'); 


// Auslesen der Konfigurationsdaten 

...
Sicherlich nur für das hier:

Code: Alles auswählen

$kommentar = $renommee_rowset[$i]['kommentar']; 
          
          if ( $board_config['allow_smilies'] ) 
          { 
               $kommentar = smilies_pass($renommee_rowset[$i]['kommentar']); 
          }
Sprich für Smilies, die in Renommee-Kommentare angezeigt werden sollen.
Da ich aber auf Smilies im Kommentar gerne verzichten kann, hab ich also folgendes getan:

Das hier:

Code: Alles auswählen

include_once('includes/bbcode.php');
hab ich aus dem Renommee Block entfernt.
Damit funktionierten schonmal wieder die Profilanzeige, aber nur solange es keine Bewertungen für diesen User, also sprich im Profil gibt.
Da es aber zu einer neuen Fehlermeldung kam, sobald eine User eine Bewertung drin stehen hatt, hab noch folgendes in der user_viewprofile.php im Renommee-Block geändert:

Code: Alles auswählen

if ( $board_config['allow_smilies'] ) 
          { 
               $kommentar = smilies_pass($renommee_rowset[$i]['kommentar']); 
          }
geändert in:

Code: Alles auswählen

if ( $board_config['allow_smilies'] ) 
          { 
               $kommentar = $renommee_rowset[$i]['kommentar']; 
          }
So funktioniert das alles jetzt wunderbar, auch wenn ich jetzt wahrscheinlich keine Smilies mehr in den Kommentaren angezeigt werden, aber wie gesagt, darauf kann ich auch gut und gerne verzichten :wink:

Verfasst: 13.10.2006 22:21
von Lohgock-Trainer
Ist es möglich nicht mehr die Renommee Bilder anzuzeigen sondern ein +, neutral oder- anzeigen zu lassen?

Außerdem habe ich jetzt vor {postrow.POSTER_RENOMMEE} Karma hingeschrieben. Das sieht jetzt so aus:

Code: Alles auswählen

Karma: {postrow.POSTER_RENOMMEE}
Jetzt möchte ich aber gern den Link zum Bewerten nicht auf dem Renommee-Bild haben sondern auf dem Karma.