Anniversary List - Benutzerfarbe und Profillink

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
DerTheo
Mitglied
Beiträge: 253
Registriert: 08.07.2011 14:41

Anniversary List - Benutzerfarbe und Profillink

Beitrag von DerTheo »

Ich nutze diese Mod https://www.phpbb.com/community/viewtopic.php?t=1677295

Code zum EInfügen in der index.php

Code: Alles auswählen

// Generate anniversary list
$anniversary_list = $cache->get('anniversary_list');
if ($anniversary_list === false)
{
    $anniversary_list = '';
    $current_date = date('m-d');
    $current_year = date('Y');
    $leap_year = date('L');
    $sql = 'SELECT user_id, username, user_colour, user_regdate
        FROM ' . USERS_TABLE . "
        WHERE user_type IN (" . USER_NORMAL . ', ' . USER_FOUNDER . ')';
    $result = $db->sql_query($sql);

    while ($row = $db->sql_fetchrow($result))
    {
        // We are compensating for leap year here.  If the year is not a leap year, the current date is Feb 28, and they joined Feb 29 we will list their names.
        if (date('m-d', $row['user_regdate']) == $current_date || (!$leap_year && $current_date == '02-28' && date('m-d', $row['user_regdate']) == '02-29'))
        {
            if (($current_year - date('Y', $row['user_regdate'])) > 0)
            {
                $anniversary_list .= (($anniversary_list != '') ? ', ' : '') . get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']);
                $anniversary_list .= ' (' . ($current_year - date('Y', $row['user_regdate'])) . ')';
            }
        }
    }
    $db->sql_freeresult($result);

    //Figure out what tomorrow's beginning time is based on the board timezone settings and have the cache expire then.
    $till_tomorrow = gmmktime(0, 0, 0) + 86400 - ($config['board_timezone'] * 3600) - ($config['board_dst'] * 3600) - time();
    $cache->put('anniversary_list', $anniversary_list, $till_tomorrow);
}
$template->assign_var('ANNIVERSARY_LIST', $anniversary_list); 
Kann mir jemand mit dem Code helfen, ich würde gerne die Userfarbe anzeigen lassen und das der Username auf das Profil des Users verlinkt.

Ich dachte, dies wäre sogar beim ersten Jahrestag der Fall gewesen, jetzt erscheinen alle User grau. Ich kann mich aber auch täuschen.

Grüße
Theo
Style: Lucid Lime
Phpbb 3.0.8
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Anniversary List - Benutzerfarbe und Profillink

Beitrag von Miriam »

Der Code ist vollkommen in Ordnung.
Scheinbar wird bei Dir die Userfarbe $row['user_colour'] nicht, nicht richtig oder wirklich mit grau ausgelesen. Oder Du hast es mittels einer CSS Änderung auf grau gestellt.

Aber... wer kann das wissen, wenn es keinen Link zum Forum gibt?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
DerTheo
Mitglied
Beiträge: 253
Registriert: 08.07.2011 14:41

Re: Anniversary List - Benutzerfarbe und Profillink

Beitrag von DerTheo »

Mir ist nun aufgefallen, dass es anscheinend am cache liegt.

Leere ich den Cache, stimmen die Userfaben und man kann ihr Profil anklicken. Vergeht ein Tag und neue User stehen in der Liste, sind diese grau und nicht anklickbar. Leere ich den Cache geht es wieder etc...

Gibt es einen Befehl, den ich in den Code im ersten Post einbauen kann, der automatisch den cache leert?

Folgendes hab ich dazu gefunden: https://www.phpbb.com/community/viewtop ... &t=1461565
Was mich da aber beängstigt:
It is until some lowlife(s) decide to use the script to slow down your forum/site :cry:
Ich kann erst heute abend die Liste auch für Besucher sichtbar machen :) Im Moment sehen die Liste nur angemeldete User :)
Style: Lucid Lime
Phpbb 3.0.8
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Anniversary List - Benutzerfarbe und Profillink

Beitrag von Miriam »

Also es liegt definitiv am Cache.

Zeig mal bitte die Datei cache\data_global.php her, wenn diese falsche Darstellung zu sehen ist.
Aber nur den Teil von einschließlich anniversary_list bis imageset_site_logo_md5.
Und dann nochmal, wenn die Ansicht der Daten korrekt ist.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
DerTheo
Mitglied
Beiträge: 253
Registriert: 08.07.2011 14:41

Re: Anniversary List - Benutzerfarbe und Profillink

Beitrag von DerTheo »

So sieht der Code aus, wenn alles grau ist:

Code: Alles auswählen

anniversary_list
s:56:"Bernd (1), Tegor4 (1), Alexi (1), marpu (1)";
1386344438
88
versioncheck
s:68:"3.0.12
https://www.phpbb.com/community/viewtopic.php?f=14&t=2200921
So sieht der Code aus, wenn alles passt:

Code: Alles auswählen

anniversary_list
s:288:"<a href="./memberlist.php?mode=viewprofile&u=162">Bernd</a> (1), <a href="./memberlist.php?mode=viewprofile&u=160">Tegor4</a> (1), <a href="./memberlist.php?mode=viewprofile&u=11">Alexi</a> (1), <a href="./memberlist.php?mode=viewprofile&u=83">marpu</a> (1)";
imageset_site_logo_md5
finde ich nirgends...
Style: Lucid Lime
Phpbb 3.0.8
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Anniversary List - Benutzerfarbe und Profillink

Beitrag von Miriam »

Okay, nicht so wild.

Und das ist immer so, bei der ersten Änderung?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
DerTheo
Mitglied
Beiträge: 253
Registriert: 08.07.2011 14:41

Re: Anniversary List - Benutzerfarbe und Profillink

Beitrag von DerTheo »

Jep.

Heute war es auch so, dass die Namen zwischendurch wieder grau wurden. Es findet also nicht ausschließlich beim Wechsel zu den neuen Jahrestagsmitgliedern statt... leider weiß ich nicht wann und warum...

Hier gehts zum Forum
Style: Lucid Lime
Phpbb 3.0.8
DerTheo
Mitglied
Beiträge: 253
Registriert: 08.07.2011 14:41

Re: Anniversary List - Benutzerfarbe und Profillink

Beitrag von DerTheo »

Heute morgen waren die neuen User, die Jahrestag haben, nicht mehr grau hinterlegt.

Könnte es evtl daran liegen, dass ich die Jahrestagsliste nur für registrierte Mitglieder sichtbar gemacht hatte?
DIe nächsten User haben Jahrestag am 08.12, bis dahin lasse ich die Liste vorerst öffentlich :)
Style: Lucid Lime
Phpbb 3.0.8
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Anniversary List - Benutzerfarbe und Profillink

Beitrag von Miriam »

dass ich die Jahrestagsliste nur für registrierte Mitglieder sichtbar gemacht hatte
Wie hattest Du das denn gemacht?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
DerTheo
Mitglied
Beiträge: 253
Registriert: 08.07.2011 14:41

Re: Anniversary List - Benutzerfarbe und Profillink

Beitrag von DerTheo »

Bots und ausgesperrt und nur für regisrtrierte User sichtbar:

<!-- IF not S_IS_BOT and S_USER_LOGGED_IN -->
Style: Lucid Lime
Phpbb 3.0.8
Antworten

Zurück zu „[3.0.x] Mod Support“