PN Modul

Begonnen von spike, 14 Februar 2006, 18:07:12

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

spike

ich brauche mal wieder hilfe...
das pn modul mit den hier gefundenen erweiterungen (pn begrenzung usw ) ist prima und funktioniert.

allerdings gibts ein kleines problem. der user merkt uU nicht wirklich, wenn seine pns (begrenzt auf 100) voll sind. derjenige der ihm schreiben will erhält zwar die nachricht das die postbox des users voll ist und ere keine weiteren pn's empfangen kann, der user selbst aber nicht.
hat sich mit dem problem schonmal jemand befasst ?

jubilee


spike

DAS hab ich ausprobiert.. aber da passiert nix.. also die nachricht kommt net habs extra getestet und mir bzw nem extra angelegten testuser zig mails geschrieben aber keine message

Atze

Nur als Tipp: Nutzt du den Buddy auch??
da geht die Begrenzung normal nicht!?
Das nutzen die User dann aus...

Gruß
Fahr mal das Becks hoch!

spike

inwiefern buddy ? du meinst die buddyliste ?

Atze

Sorry, meinte den "Site Messenger" der seperat im Popup läuft...
Fahr mal das Becks hoch!

spike

hmm also wenn du diese online liste meinst, die man unter der who is online dings anklicken und aufrufen kann, ja das ist aktiv wird aber kaum genutzt. hab halt so nur diesen weho is online block laufen. und dort hatte ich auch den code eingefügt aus dem anderen thread. aber da kam keine benachrichtigung wenn der posteingang voll war.


jubilee

@spike:
du hast diesen Code hier eingebunden :
Zitat
if($countpm > 100){
$content .= "<body onload=\"window.alert('Das Limit von 100 gespeicherten Nachrichten ist erreicht.\\nBitte l&ouml;schen Sie einige Ihrer pers&ouml;nlichen Nachrichten!')\">";
}
Wenn ja, wo genau ?
Wenn der user jabvascript aktiviert hat und es an der richtigen Stelle im WhoIsOnline-Block eingebunden ist, bekommt der User ein Alert-Fenster. Und zwar bei jedem reload der Seite...

MfG
jubilee

spike

// Private Nachrichten
$countpm = 0;
$countpmunread = 0;

if (MX_IS_USER) { // Wenn aktueller User registriert ist (kein Gast)
    $pmactiv = (mxModuleAllowed($pm_module_name)) ? 1 : 0; # feststellen ob pm-modul aktiv ist
    if ($pmactiv) { // falls pm-modul aktiv ist
        $qry = "SELECT read_msg, Count(msg_id) FROM ${prefix}_priv_msgs WHERE to_userid=" . $uid . " group by read_msg;";
        $result = sql_query($qry);
        while (list($read_msg, $nums) = sql_fetch_row($result)) {
            if ($read_msg == 0) { // wenn angemeldeter User
                $countpmunread = $nums; # Anzahl ungelesene ermitteln
            } else {
                $countpm = $nums; #++;   # Anzahl aller pm's ermitteln
            }
        }
    }
   if ($countpm > 99){
            $content .= "<body onload=\"window.alert('Das Limit von 100 gespeicherten Nachrichten ist erreicht.\\nBitte l&ouml;schen Sie einige Ihrer pers&ouml;nlichen Nachrichten!')\">";}

    // else{
    // $checkpmtime=0; # private Nachrichten nicht abfragen!
    // }

jubilee

Hallo !
Nehme diesen Who_Is_Online-Block.
Mit dem geht es.


[gelöscht durch Administrator]

spike

wie vergleiche ich, wo die unterschiede sind ? nicht das meine änderungen danach alle weg sind

[gelöscht durch Administrator]

jubilee

Zitatif ($read_msg === 0) { // wenn angemeldeter User
3x Gleichheitszeichen

Zitatif($countpm > 99){
$content .= '<body onload="window.alert(\'Das Limit von 100 gespeicherten Nachrichten ist erreicht.\nBitte l&ouml;schen Sie einige Ihrer pers&ouml;nlichen Nachrichten!\')">';
}
Abschnitt so schreiben

Und das nicht direkt vor dem else, sondern eine klammer vor dem else einfügen --->
NICHT :
Zitat
$countpm = $nums; #++;   # Anzahl aller pm's ermitteln
            }
        }
    }
   if ($countpm > 99){
            $content .= "<body onload=\"window.alert('Das Limit von 100 gespeicherten Nachrichten ist erreicht.\\nBitte l&ouml;schen Sie einige Ihrer pers&ouml;nlichen Nachrichten!')\">";}
    // else{

sondern
Zitat
   $countpm=$nums;   #++;   # Anzahl aller pm's ermitteln
            }
         }
            if($countpm > 99){
         $content .= '<body onload="window.alert(\'Das Limit von 100 gespeicherten Nachrichten ist erreicht.\nBitte l&ouml;schen Sie einige Ihrer pers&ouml;nlichen Nachrichten!\')">';}

}
   //else{

spike

also hab das jetzt so eingebaut.. aber geht nicht...

jubilee

Hallo !
Zitataber geht nicht...
Hast das denn als ein User genutzt, der über 99 gelesene  PM in seinem Postfach hat ?
Javascript ist aktiviert ?
Ich habs mei mir getestet und es lief einwandfrei.
MfG
jubilee

spike

ja habs getestet javascript ist aktiviert und ich hab nem testuser account dann 100 pn s gesendet

jubilee

Hmmmm ....
Poste mal einen Link, wo ich mir den betreffenden Block downloaden kann.
(Bitte vorher als .zip- Packen)
MfG
jubilee

Zitattestuser account dann 100 pn s gesendet
BTW: Die Mitteilung bekommt natürlich nur der testuser. das hast Du aber bedacht ?


spike

ja hab ich bedacht. ich häng den block mal an



[gelöscht durch Administrator]

jubilee


Hat Dein Testuser genau 100 PM ?
Wenn er nicht mehr als 100 PM hat, bekommt er keine Warnmeldung.
Nach Deiner Modifikation braucht es 101 PM's.
MfG
jubilee


spike

also müsste ich es auf 99 runtersetzen ? denn mehr als hundert kann der user nicht empfangen wiel die pn begrenzung ja drin ist

jubilee

Zitatalso müsste ich es auf 99 runtersetzen
Ja,  auf 99 weil
das hier :
Zitatif($countpm > 100){
bedeutet
wenn Anzahl der PM > (GRÖßER ALS) 100
Also setz es auf 99 dann passt es mit den 100 PM (deswegen hatte ich in meinen Beispiel ja auch 99 angegeben ;)
)
MfG
jubilee


MfG
jubilee

spike

also habs nun auf 99 runtergesetzt.. es geht trotzdem nicht :(

jubilee

Hallo !
Ändere mal bitte in Deinem Block die Zeile 175
Zitat$content = "\n<!-- $thisfile output start -->\n<div class=\"boxcontent\" align=\"center\">\n"
auf
Zitat$content .= "\n<!-- $thisfile output start -->\n<div class=\"boxcontent\" align=\"center\">\n"
(Punkt vor das Gleichheitszeichen)

und bei Zeile 30
Zitat$mxblockcache = false;
änderst Du in
Zitat$mxblockcache = false;
$content = "";

(also die Zeile dazu)
Dann sollte es endlich gehen ....

spike

jetzt gehts :) super vielen lieben dank

NeMeSiSX2LC

Frage warum macht ihr nicht statt dem > ein == rein? Damit wird dann der genau wert verglichen.
CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1

jubilee

ZitatFrage warum macht ihr nicht statt dem > ein == rein? Damit wird dann der genau wert verglichen.
Weil er dann ausschließlich bei 100 PM diesen Hinweis bekommt .....
Sobald eine PM mehr drinne sein Sollte ist der Hinweis wieder aus ....



NeMeSiSX2LC

Ja aber er hat doch die erweiterung drin sprich wenn 100 da sind kommt die meldung noch .. Weitere kann er ja nicht verschicken weil sein Limit erreicht ist..
CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1

jubilee

Ja, aber wo ist denn jetzt das Problem, weswegen er nicht > nehmen sollte ?

NeMeSiSX2LC

Kein Problem war nur so kleiner vorschlag... Nix wildes
CMS-Version: pragmaMx 0.1.8, 1.20.4.5/2006-03-10     
PHP-Version: 5.1.2
MySQL-Version: 5.0.15-max-log
Server-Version: Apache/2.0.55
phpMyAdmin-Version: 2.7.0-pl1

Andi

Zitat von: spike am 15 Februar 2006, 13:24:45
jetzt gehts :) super vielen lieben dank

topic solved and closed
schön´s Grüssle, Andi