Beiträge: 162
Themen: 10
Registriert seit: 11.04.2007
MyBB-Version: 1.2.9
das mit der unterschiedlichen Farbe liegt an meiner Faulheit
Ich habe nämlich - anstatt ein Link zu benutzen - ein <u>-Tag benutzt und ein JS-Eventhandler reingeballert, da bei dem Klick auf den Link ständig die Scrollbar nach oben geflutscht ist ^^
Man könnte ja im Template nach "Shoutbox löschen" suchen und drum herum ein <font color=farbe> ... </font> einfügen
Beiträge: 385
Themen: 45
Registriert seit: 13.08.2007
Ich hatte da schon gesucht allerdings nach einer Farbangabe, ok werde das noch schnell machen, - sollte ich hinbekomen. Danke für den Tipp!
Beiträge: 9.560
Themen: 197
Registriert seit: 27.12.2007
MyBB-Version: 1.8
So, ich habe das nun auch mal geschafft, den Code von XxAnimusxX einzubauen.
Und der Link für das Löschen der Shouts erscheint auch in der richtigen Farbe.
Dass nach dem Löschen der Shouts in der Box plötzlich wieder die alten Shouts erscheinen, war komischerweise nur beim aller ersten Mal. Danach kam das nicht wieder vor. Auch wenn ich die Shouts immer und immer wieder lösche.
Eine Frage habe ich aber noch: Nach dem Löschen der Shouts erscheint in der Box die Nachricht, dass z.Z. keine Shouts vorliegen. Wenn ich nun eine Nachricht los schicke, erscheint diese nicht in der Box. Da kann man noch so lange warten. Wenn ich jedoch in die Vollansicht gehe, steht sie dort drin. Zurück in der Shoutbox, ist die Nachricht plötzlich auch dort vorhanden und ab dem Zeitpunkt funktioniert alles wunderbar. Ist das Problem bekannt?
Beiträge: 162
Themen: 10
Registriert seit: 11.04.2007
MyBB-Version: 1.2.9
15.02.2008, 19:29
(Dieser Beitrag wurde zuletzt bearbeitet: 15.02.2008, 19:30 von XxAnimusxX.)
Ich vermute es hat was mit den AJAX-Befehlen zu tun, ich kann mir da leider keinen Reim drauf machen, da ich nicht allzu oft mit AJAX arbeite.
Nach der Syntax scheint der zusätzliche Code zu stimmen, was genau nun diesen Fehler verursacht kann ich auch nicht sagen, ich habe in den Originalcode der Shoutbox geschaut und nichts finden können, was die Funktion des Shout-Einfügens beeinflussen könnte...
Ich meine wenn es wirklich nicht klappt fügt man da einfach den Link "index.php?action=empty_shoutbox" ein und gut ist x'D
Beiträge: 9.560
Themen: 197
Registriert seit: 27.12.2007
MyBB-Version: 1.8
XxAnimusxX schrieb:Ich vermute es hat was mit den AJAX-Befehlen zu tun, ich kann mir da leider keinen Reim drauf machen, da ich nicht allzu oft mit AJAX arbeite.
na immerhin. Ich kenn das bislang nur im Zusammenhang mit Amsterdam.
XxAnimusxX schrieb:Ich meine wenn es wirklich nicht klappt fügt man da einfach den Link "index.php?action=empty_shoutbox" ein und gut ist x'D
Nachdem die Shouts eh nur vom Admin gelöscht werden sollen und das zu einem Zeitpunkt, an dem das Forum kurzfristig geschlossen sein wird, ist das nicht sooo tragisch.
Nur Interesse halber: kann der von Dir genannten Link einfach als Ersatz für
Code:
index.php?action=full_shoutbox
gesetzt werden?
Beiträge: 162
Themen: 10
Registriert seit: 11.04.2007
MyBB-Version: 1.2.9
15.02.2008, 22:20
(Dieser Beitrag wurde zuletzt bearbeitet: 15.02.2008, 22:21 von XxAnimusxX.)
Man müsste aus meinem vorigen Template-Code folgendes suchen:
Code:
[<u onClick="deleteShouts();" style="cursor:pointer;">Shoutbox löschen</u>]
und mit diesem Code ersetzen:
Code:
[<a href="?action=empty_shoutbox" target="_parent">Shoutbox löschen</a>]
Darauf hin ist natürlich folgender Codebereich unnötig und kann ebenfalls entfernt werden:
Code:
function deleteShouts()
{
new ajax('index.php?action=empty_shoutbox',{postBody:"",onComplete:handle_shoutbox});
}
function handle_shoutbox(resp)
{
if (/success/.test(resp.responseText))
{
document.getElementById("shoutbox_data").innerHTML = "Es gibt z.Z. keine Shouts.";
}
}
Beiträge: 9.560
Themen: 197
Registriert seit: 27.12.2007
MyBB-Version: 1.8
Erst einmal vielen Dank für die Info!
Nach den Änderungen musste ich merken, dass ich nach dem Löschen der Shouts in Ankes Hexenforum gelandet bin. Da wurden die Augen aber groß.
Musste also noch Ankes Plugin-Datei bzgl. der Weiterleitung ändern.
Dann habe ich aber noch eine Änderung vorgenommen, damit nach dem Löschen der Shouts doch noch das "...Laden"-Zeichen erscheint.
Meine Fkt. sb_empty-_shout() sieht jetzt so aus:
PHP-Code:
function sb_empty_shout()
{
global $db;
if (sb_can_delete()) {
$db->query("TRUNCATE ".TABLE_PREFIX."sf_shouts");
$db->query("INSERT INTO ".TABLE_PREFIX."sf_shouts VALUES (NULL, 1, 'Ein neuer Shout in einer geleerten Box. :augenroll:', ".time().", '127.0.0.1')");
echo "success!<br><br><a href=http://www.zumeinerSeite.de/index.php>Zurück zur Startseite</a>";
} else {
echo "failed!";
}
exit;
}
Dann funktioniert es auch sofort mit dem Schreiben. Anderenfalls geht es mal und mal geht es nicht.
Jetzt probier ich noch, ob ich die Änderung hin bekomme, dass ein SuperMod zwar nicht die komplette Tabelle aber einzelne Shouts löschen kann.
Beiträge: 162
Themen: 10
Registriert seit: 11.04.2007
MyBB-Version: 1.2.9
Damit es zukünftig nicht zu verwechslungen kommt, kann man die Variable:
$mybb->settings[bburl] benutzen, diese beinhaltet die URL zum eigenen Forum. Also:
PHP-Code:
echo "success!<br><br><a href=".$mybb->settings[bburl]."/index.php>Zurück zur Startseite</a>";
Beiträge: 9.560
Themen: 197
Registriert seit: 27.12.2007
MyBB-Version: 1.8
ja, das ist besser. Danke
Kann man so eine Änderung im Plugin eigentlich machen, ohne es vorher deaktivieren?
Beiträge: 162
Themen: 10
Registriert seit: 11.04.2007
MyBB-Version: 1.2.9
16.02.2008, 14:19
(Dieser Beitrag wurde zuletzt bearbeitet: 16.02.2008, 14:20 von XxAnimusxX.)
Änderungen, die nicht mit dem "pluginname_activate()" oder "pluginname_deactivate()" zu tun haben, können sofort durch das Ändern der Daten und anschließend Hochladen/Ersetzen des Plugins durchgeführt werden, da diese Funktionen/Eigenschaften in Echtzeit bei jedem Neuladen einer Seite aufgerufen werden - die oben genannten Initialisierungsfunktionen eines Plugins jedoch nur bei der jeweilig auszulösenden Aktion.