MyBB.de Forum
Neue Nachrichten (PM's) extern anzeigen - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Diskussionen (https://www.mybb.de/forum/forum-38.html)
+--- Thema: Neue Nachrichten (PM's) extern anzeigen (/thread-13555.html)

Seiten: Seiten: 1 2


Neue Nachrichten (PM's) extern anzeigen - Waluigi - 20.06.2009

Hallöchen,

Ich mach es mal kurz und knapp.

Ich bräuchte einen Code, der mir extern anzeigt, wieviele NEUE Nachrichten (PM's) sich bei dem eingeloggten User im Posteingang befinden.

Wäre euch sehr dankbar.

MfG, Waluigi


RE: Neue Nachrichten (PM's) extern anzeigen - wWs - 20.06.2009

Ich weiß nicht ob ich dich richtig verstanden habe aber meinst du das?

PHP-Code:
<a href="{$mybb->settings['bburl']}/private.php">{$lang->welcome_pms}</a> {$lang->welcome_pms_usage

ergibt:
Zitat:Private Nachrichten (x ungelesen, x insgesamt)



RE: Neue Nachrichten (PM's) extern anzeigen - Waluigi - 21.06.2009

Ich möchte nur die Anzahl der ungelesenen ausgeben.

Mit dem oben genannten Code funktioniert das ja nicht ganz, da dort die ungelesenen und die Anzahl der gesamten PM's angezeigt werden. Ich brauche jedoch nur die Zahl der ungelesenen.

Wäre nett, wenn mir jemand weiterhelfen könnte.

MfG, Waluigi


RE: Neue Nachrichten (PM's) extern anzeigen - linwinman - 21.06.2009

Hallo Waluigi,

sieh dir mal das Plugin > Ajax PM Notification an.


RE: Neue Nachrichten (PM's) extern anzeigen - Waluigi - 21.06.2009

Naja, der Sinn meiner Angelegenheit ist, dass ich wenn zum Beispiel keine neuen Nachrichten vorhanden sind (als beispiel) ein Bärenbild anzeigen möchte. Wenn eine neue Nachricht ein Entenbild, wenn drei ein Elefantenbild undsoweiter.

if (anzahl der pm == '0')
{
echo '<img src="Bild" width="xxx" height="xxx" />';
}
else
{
if (anzahl der pm == '1')
{
echo '<img src="Bild2" width="xxx" height="xxx" />';
}
else
{
if (anzahl der pm == '2')
{
echo '<img src="Bild3" width="xxx" height="xxx" />';
}
}
}

Wenn ihr jetzt versteht Rolleyes


RE: Neue Nachrichten (PM's) extern anzeigen - wWs - 21.06.2009

ohhh ich befürchte das ist nicht so einfach wie du das auflistest.

Aber mal schauen was die könner dazu sagen Wink


RE: Neue Nachrichten (PM's) extern anzeigen - Waluigi - 21.06.2009

Kann mir ein anderer weiterhelfen?

Wäre demjenigen sehr dankbar...


RE: Neue Nachrichten (PM's) extern anzeigen - linwinman - 21.06.2009

(21.06.2009, 07:06)Waluigi schrieb: Ich möchte nur die Anzahl der ungelesenen ausgeben...
(21.06.2009, 09:08)Waluigi schrieb: Naja, der Sinn meiner Angelegenheit ist, dass ich wenn zum Beispiel keine neuen Nachrichten vorhanden sind (als beispiel) ein Bärenbild anzeigen möchte. Wenn eine neue Nachricht ein Entenbild, wenn drei ein Elefantenbild undsoweiter...
Ich verstehe das noch nicht so recht. Huh

Willst du anstatt der "PN-Hinweisbox" lediglich ein anzahlabhängiges Bild ausgeben? Oder soll das Bild an anderer Stelle ausgegeben werden?


RE: Neue Nachrichten (PM's) extern anzeigen - Waluigi - 21.06.2009

Genau, ein anzahlabhäniges Bild möchte ich ausgeben.

Dafür brauche ich ja die Anzahl der neuen Nachrichten (nur die Zahl).

Wenn man eine Nachricht hat, erscheint ein Bär, wenn man zwei hat eine Ente, wenn man drei hat, ein Elefant, wenn man vier.....usw..

Diese Bilder kann ich dann ja mittels PHP ganz einfach ausgeben (wenn ich die Zahl der ungelesenen Nachrichten habe).

Wäre echt cool, wenn mir dabei einer helfen könnte, mir den Code zusammen zu basteln, denn ich habe von dem MyBB Zeugs (Datenbank etc.) noch nicht wirklich durchgeblickt.

MfG,
Waluigi


RE: Neue Nachrichten (PM's) extern anzeigen - linwinman - 21.06.2009

Versuche es einmal auf diesem Weg:

(!! sichere ggf. die Datei "global.php" !!) und ersetze hierin (~ Zeile 418)
PHP-Code:
    if($mybb->user['pms_unread'] == 1)
    {
        
$privatemessage_text $lang->sprintf($lang->newpm_notice_oneget_profile_link($pm['fromuid']), htmlspecialchars_uni($pm['fromusername']), $pm['pmid'], htmlspecialchars_uni($pm['subject']));
    }
    else
    {
        
$privatemessage_text $lang->sprintf($lang->newpm_notice_multiple$mybb->user['pms_unread'], get_profile_link($pm['fromuid']), htmlspecialchars_uni($pm['fromusername']), $pm['pmid'], htmlspecialchars_uni($pm['subject']));
    } 
durch
PHP-Code:
    if($mybb->user['pms_unread'] == 0)
    {
        
$privatemessage_img "<a href=\"private.php\"><img src=\"images/bild_00.gif\" alt=\"\" /></a>";
    }
    elseif(
$mybb->user['pms_unread'] == 1)
    {
        
$privatemessage_text $lang->sprintf($lang->newpm_notice_oneget_profile_link($pm['fromuid']), htmlspecialchars_uni($pm['fromusername']), $pm['pmid'], htmlspecialchars_uni($pm['subject']));
        
$privatemessage_img "<div align=\"center\"><a href=\"private.php\"><img src=\"images/bild_01.gif\" alt=\"\" /></a></div>";
    }
    elseif(
$mybb->user['pms_unread'] == 2)
    {
        
$privatemessage_text $lang->sprintf($lang->newpm_notice_multiple$mybb->user['pms_unread'], get_profile_link($pm['fromuid']), htmlspecialchars_uni($pm['fromusername']), $pm['pmid'], htmlspecialchars_uni($pm['subject']));
        
$privatemessage_img "<div align=\"center\"><a href=\"private.php\"><img src=\"images/bild_02.gif\" alt=\"\" /></a></div>";
    }
    else
    {
        
$privatemessage_text $lang->sprintf($lang->newpm_notice_multiple$mybb->user['pms_unread'], get_profile_link($pm['fromuid']), htmlspecialchars_uni($pm['fromusername']), $pm['pmid'], htmlspecialchars_uni($pm['subject']));
        
$privatemessage_img "<div align=\"center\"><a href=\"private.php\"><img src=\"images/bild_03.gif\" alt=\"\" /></a></div>";
    } 
Die Namen der Grafikdateien musst du entsprechend anpassen. Falls gewünscht, kannst du weitere "elseif() {...}"-Bedingungen hinzufügen.

Ersetze (als Ersatz für die "PN-Hinweisbox") in "Admin-CP > Templates > Template-Set > Global Templates > global_pm_alert" den kpl. Code durch
Code:
{$privatemessage_img}<br />

Sollen die Bilder an beliebiger Stelle ausgegeben werden, verwende lediglich die Variable "{$privatemessage_img}" im entsprechenden Template.