Benutzername    Passwort    Autologin    
  Passwort vergessen       Registrieren  
beeForum Foren-übersicht » hal9000 » mod support
Neues Thema eröffnen   Neue Antwort erstellen Hervorhebung entfernen


Snippet: Plätze in der Rangliste des WM Tipp MOD korrigieren
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
boris



Beiträge: 11190

Titel: Snippet: Plätze in der Rangliste des WM Tipp MOD korrigieren
Verfasst am: So, 11 Jun 2006, 19:48
Beitrag
Antworten mit Zitat

Die Plätze in der Rangliste des WM Tipp MOD sehen normalerweise so aus:

Code:
Platz    User    Punkte
 1       user1    10
 2       user2    10
 3       user3     9
 4       user4     8
 5       user5     8
 6       user6     7
(usw.)

allerdings ist "user2" in Wirklichkeit NICHT auf Platz zwei, sondern nur aufgrund der alphabetischen Sortierung da gelandet. "user2" ist ebenfalls auf Platz 1, die "richtige" Tabelle sollte also so aussehen:

Code:
Platz    User    Punkte
 1       user1    10
         user2    10
 2       user3     9
 3       user4     8
         user5     8
 4       user6     7
(usw.)


Folgender Code korrigiert diese Darstellung:

Code:
#
#-----[ OPEN ]------------------------------------------
#
wm_stats.php

#
#-----[ FIND ]------------------------------------------
#
// Users loop
for ( $i = 0; $i < count($wm_users_data); $i++ ) {

    // Group loop switches
    $template->assign_block_vars('userrow', array(
                        'USER_POS'          => $i+1,
              'USER_NAME'         => $all_user_data[$wm_users_data[$i]['tipp_user']],
              'USER_PROFILE_LINK' => append_sid("profile.".$phpEx."?mode=viewprofile&u=".$wm_users_data[$i][  'tipp_user']),
              'USER_WM_TIPP'      => ( array_key_exists($wm_users_data[$i]['tipp_user'] , $champion_tips) ) ? "<a href=\"" . $team_data[$champion_tips[$wm_users_data[$i]['tipp_user']]]['team_link'] . "\" target=\"_blank\">" . $team_data[$champion_tips[$wm_users_data[$i]['tipp_user']]]['team_name'] . "</a>" : $lang['l_wm_winner_not_set'],
                        'USER_WM_MADE'      => $wm_users_data[$i]['user_total_tipps'],
                        'USER_POINTS'       => $wm_users_data[$i]['user_points'])
    );


}

#
#-----[ REPLACE WITH ]------------------------------------------
#
// Users loop
$int_userpkt = -1;
$int_userpos = 0;

for ( $i = 0; $i < count($wm_users_data); $i++ )
{
   $int_userposalt = $int_userpos;
   $int_userpos = ($int_userpkt != $wm_users_data[$i]['user_points']) ? $int_userpos + 1 : $int_userpos;

   // Group loop switches
   $template->assign_block_vars('userrow', array(
      'USER_POS'         => ($int_userpos != $int_userposalt) ? $int_userpos : '',
      'USER_NAME'         => $all_user_data[$wm_users_data[$i]['tipp_user']],
      'USER_PROFILE_LINK'   => append_sid("profile.".$phpEx."?mode=viewprofile&u=".$wm_users_data[$i][  'tipp_user']),
      'USER_WM_TIPP'      => ( array_key_exists($wm_users_data[$i]['tipp_user'] , $champion_tips) ) ? "<a href=\"" . $team_data[$champion_tips[$wm_users_data[$i]['tipp_user']]]['team_link'] . "\" target=\"_blank\">" . $team_data[$champion_tips[$wm_users_data[$i]['tipp_user']]]['team_name'] . "</a>" : $lang['l_wm_winner_not_set'],
      'USER_WM_MADE'      => $wm_users_data[$i]['user_total_tipps'],
      'USER_POINTS'      => $wm_users_data[$i]['user_points'])
   );

   $int_userpkt = $wm_users_data[$i]['user_points'];
}


Für die Benutzer von WMNotify (v0.2, spätere Versionen werden den Fix direkt beinhalten) ist dieser Code noch anzuwenden (die Anzahl der Tipper in der Liste wird dadurch nicht verändert !):

Code:
#
#-----[ OPEN ]------------------------------------------
#
includes/wm_notify.php

#
#-----[ FIND ]------------------------------------------
#
         // Users loop
         for($i=0;$i<min($int_topnumber,count($wm_users_data));$i++)
         {
            $str_message .= str_repeat(" ",3-strlen($i+1)).($i+1);
            $str_message .= str_repeat(" ",strlen($lang['l_wm_stats_pos'])+3).$wm_users_data[$i]['user_points']  ;
            $str_message .= str_repeat(" ",strlen($lang['l_wm_stats_points'])-strlen($wm_users_data[$i]['user_po  ints'])+2).$all_user_data[$wm_users_data[$i]['tipp_user']].'
';
         }

#
#-----[ REPLACE WITH ]------------------------------------------
#
         // Users loop
         $int_userpkt = -1;
         $int_userpos = 0;

         for($i=0;$i<min($int_topnumber,count($wm_users_data));$i++)
         {
            $int_userposalt = $int_userpos;
            $int_userpos = ($int_userpkt != $wm_users_data[$i]['user_points']) ? $int_userpos + 1 : $int_userpos;

            $str_message .= str_repeat(" ",3-strlen($int_userpos));
            $str_message .= ($int_userpos != $int_userposalt) ? $int_userpos : str_repeat(" ",strlen($int_userpos));
            $str_message .= str_repeat(" ",strlen($lang['l_wm_stats_pos'])+3).$wm_users_data[$i]['user_points']  ;
            $str_message .= str_repeat(" ",strlen($lang['l_wm_stats_points'])-strlen($wm_users_data[$i]['user_po  ints'])+2).$all_user_data[$wm_users_data[$i]['tipp_user']].'
';

            $int_userpkt = $wm_users_data[$i]['user_points'];
         }


____________
beehave - home of humbug ... [we can't afford to be neutral]

Nach oben
Private Nachricht senden Website dieses Benutzers besuchen Rang:godmode methusalem 3. platz professioneller Sportangler Profi-Winzer (7x Hamm) Arcade-Meister, Rang 16 rainbow-cup
BOGIE





Titel: (Kein Titel)
Verfasst am: Do, 15 Jun 2006, 15:16
Beitrag
Antworten mit Zitat

Hallo Boris,

bei mir sieht die Tabelle verzerrt aus:



Wieso ?


Danke im Voraus...
BOGIE

Nach oben
Rang:
boris



Beiträge: 11190

Titel: (Kein Titel)
Verfasst am: Do, 15 Jun 2006, 15:20
Beitrag
Antworten mit Zitat

BOGIE @ Do, 15 Jun 2006, 15:16 gab folgendes von sich:
bei mir sieht die Tabelle verzerrt aus: (...) Wieso ?

Keine Ahnung, gabs so bisher bei niemandem, kann ich auch nicht nachvollziehen.

Das wird dir nicht weiterhelfen, aber bei ähnlicher Punkteverteilung (bzw. ähnlichen verschiedenen Abständen) gehts hier einwandfrei:
https://www.beehave.de/forum/viewtopic.php?p=4229#4229


____________
beehave - home of humbug ... [we can't afford to be neutral]

Nach oben
Private Nachricht senden Website dieses Benutzers besuchen Rang:godmode methusalem 3. platz professioneller Sportangler Profi-Winzer (7x Hamm) Arcade-Meister, Rang 16 rainbow-cup
BOGIE





Titel: (Kein Titel)
Verfasst am: Do, 15 Jun 2006, 15:37
Beitrag
Antworten mit Zitat

OK boris... liegt bestimmt an meine uralte version Wink bin dabei update zu machen Wink

Wie bekomme ich unter .../wm_round1.php in Spalte Datum / Zeit die Anzeige gestern, 21:00 oder heute, 15:00

Was muss ich ändern ?

Danke Dir....

BOGIE

Nach oben
Rang:
boris



Beiträge: 11190

Titel: (Kein Titel)
Verfasst am: Do, 15 Jun 2006, 15:57
Beitrag
Antworten mit Zitat

BOGIE @ Do, 15 Jun 2006, 15:37 gab folgendes von sich:
Wie bekomme ich unter .../wm_round1.php in Spalte Datum / Zeit die Anzeige gestern, 21:00 oder heute, 15:00

Das ist das MOD "friendly date", mußt du mal nach googeln. Wenn du allerdings noch andere MODs eingebaut hast, ist das mit Vorsicht zu genießen, da das keine automatische Sommerzeit unterstützt, mit den meisten Statistik-MODs kollidiert und z.B. "aktuelle Zeit" auf der Startseite auch als "heute" anzeigt ...

Ich hab mir den selber komplett neu überarbeitet, damit der überall funktioniert, meine Version ist aber nicht release-fertig und wird nicht herausgegeben, da ich keine fremden MODs supporten kann (und erst recht nicht garantieren, daß meine Version bei dir auch läuft).


____________
beehave - home of humbug ... [we can't afford to be neutral]

Nach oben
Private Nachricht senden Website dieses Benutzers besuchen Rang:godmode methusalem 3. platz professioneller Sportangler Profi-Winzer (7x Hamm) Arcade-Meister, Rang 16 rainbow-cup
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    beeForum Foren-übersicht » hal9000 » mod support Seite 1 von 1
Gehe zu:  



ähnliche Beiträge
Thema Autor Forum Antworten Verfasst am
Keine neuen Beiträge aktuelle Rangliste vom 16.07.2018 Dr. Funek bananenflanke 8 Mo, 16 Jul 2018, 00:00 Letzten Beitrag anzeigen
Keine neuen Beiträge aktuelle Rangliste vom 15.07.2018 Dr. Funek bananenflanke 0 So, 15 Jul 2018, 00:00 Letzten Beitrag anzeigen
Keine neuen Beiträge aktuelle Rangliste vom 12.07.2018 Dr. Funek bananenflanke 0 Do, 12 Jul 2018, 00:00 Letzten Beitrag anzeigen
Keine neuen Beiträge aktuelle Rangliste vom 11.07.2018 Dr. Funek bananenflanke 0 Mi, 11 Jul 2018, 00:00 Letzten Beitrag anzeigen
Keine neuen Beiträge aktuelle Rangliste vom 08.07.2018 Dr. Funek bananenflanke 0 So, 08 Jul 2018, 00:00 Letzten Beitrag anzeigen


Schreiben: nein. Antworten: nein. Bearbeiten: nein. Löschen: nein. Umfragen: nein.
phpBB © phpBB Group | impressum