Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Shoutbox 2.0 erläuterung und frage
#1
Hallo nachfolgend erst mal für alle Änderungen die sowieso irgendwann gefragt werden!

Shouts umdrehen
suche:
Code:
            // Start getting shouts!
            $query = $db->query("
                SELECT s.*, s.username AS shout_username, u.username, u.usergroup, u.displaygroup
                FROM ".TABLE_PREFIX."shouts s
                LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=s.uid)
                ORDER BY s.dateline
                LIMIT $start, $limit

ersttze mit:
Code:
            // Start getting shouts!
            $query = $db->query("
                SELECT s.*, s.username AS shout_username, u.username, u.usergroup, u.displaygroup
                FROM ".TABLE_PREFIX."shouts s
                LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=s.uid)
                ORDER BY s.dateline
                DESC LIMIT $start, $limit

Zeit und Datum einfügen:

suche:
Code:
                $bgcolor = alt_trow();
                eval("\$multipage_top = \"".$templates->get('shoutbox_multipage')."\";");
            }
            
            while($shout = $db->fetch_array($query))
            {

füge danach ein:
Code:
$shout_date = my_date($mybb->settings['dateformat'], $shout['dateline']);
$shout_time = my_date($mybb->settings['timeformat'], $shout['dateline']);

suche:
Code:
$shout['username'] = format_name($shout['username'], $shout['usergroup'], $shout['displaygroup']);
$shout['username'] =  '<<a href="member.php?action=profile&uid='.intval($shout['uid']).'">'.$shout['username'].'</a>>&nbsp;';

ersetzte mit:
Code:
$shout['username'] = format_name($shout['username'], $shout['usergroup'], $shout['displaygroup']);
$shout['username'] = $shout_date . ' ' . $shout_time . ' ' . '&nbsp;<a href="member.php?action=profile&uid='.intval($shout['uid']).'" target="_top">'.$shout['username'].'</a>&nbsp;';

Eingabefenster nach oben:

suche in Globele Templates>shoutbox
Code:
{$multipage_top}
{$shouts}
{$multipage_bottom}
</table>
{$add_shout}

</body>
</html>

ersetzte mit:
Code:
{$multipage_top}
</table>
{$add_shout}
<table>
{$shouts}
{$multipage_bottom}
</table>

</body>
</html>


Nun mal zu meinen Fragen, ich möchte nicht das die Shout im Center sind sondern links Formatiert und ich möchte nicht das bei der automatischen Aktualisierung sich das Eingabefenster mit aktualisiert. Immer wenn man am schreiben ist und es findet ein refresh statt, ist der eingegebene Text verschwunden insofern man ihn noch nicht gesendet hat, wie kann ich das Eingabefenster von dem refresh trennen?

Desweiteren hänge ich wieder die deutschen sprachdatein von mir an, die ich für die Betaversion gemacht habe und die auch mit der Version Kompatibel ist.


Danke für eure hilfe schon einmal im voraus


Angehängte Dateien
.rar   Deutsch du.rar (Größe: 781 Bytes / Downloads: 24)
.rar   Deutsch sie.rar (Größe: 791 Bytes / Downloads: 9)
[Bild: logo.gif]
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt. (Albert Einstein)
Zitieren
#2
Hallöchen, Schumuckl!

Erstmal vielen Dank, dass du diese Ängerungen so übersichtlich hier gepostet hast!!!

Um einen kleinen Schönheitsfehler zu korrigieren:
Eingabefenster nach oben:
Code:
{$multipage_top}
</table>
{$add_shout}
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder"><tr><td>
{$shouts}</td>
</tr></table>
</body>
</html>

Zu dem Refresh:

Ich denke, man müsste die "{$add_shout}" komplett auserhalb der Tabelle einfügen, damit diese nicht mitaktualisiert wird. .... hmm....
Wer eine Wahrheit verbergen will, braucht sie nur offen auszusprechen - sie wird einem ja doch nicht geglaubt.
(Charles Talleyrand)
Zitieren
#3
mit dem eingabefenster scheinen dann wohl beide Varianten zu Funktionieren. Das mit dem Refresh, gibt es Ideen wie ich das machen kann?
[Bild: logo.gif]
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt. (Albert Einstein)
Zitieren
#4
und wie ist es mit shouts nach x tagen löschen ?

Zitieren
#5
suche in Shoutbox.php

Code:
eval("\$shouts .= \"".$templates->get('shoutbox_shout')."\";");

füge darüber ein

Code:
// Shouts die älter als X Tage sind löschen
$tage = "2";
$vartime = $shout['dateline'];
$datevar = $tage * 86400;
$datevar = $vartime - $datevar;

$machen = $db->query("DELETE FROM ".TABLE_PREFIX."shouts WHERE dateline <= '$datevar'");

Ich habe es eben bei mir getestet und es Funktioniert einwandfrei, ich habe die Tage zum Testzweck einmal auf null gesetzt und alle shouts waren gelöscht. Nun stehtt es bei mir auf löschen nach 2 Tagen.

hf Schumuckl


EDIT: Ich würde mich freuen wenn jemand mal was zu meinen Problemen sagen könntee
[Bild: logo.gif]
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt. (Albert Einstein)
Zitieren
#6
Code:
$machen = $db->query("DELETE FROM ".TABLE_PREFIX."shouts WHERE dateline <= '$datevar'");

... ich hab diese Codezeile gar nicht...
Wer eine Wahrheit verbergen will, braucht sie nur offen auszusprechen - sie wird einem ja doch nicht geglaubt.
(Charles Talleyrand)
Zitieren
#7
Ich habe einen kleinen fehler gemacht und meinen Beitrag nocheinmal Editiert, bitte versuche es nocheinmal ;-)
[Bild: logo.gif]
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt. (Albert Einstein)
Zitieren
#8
Ja, jetzt klappts! Danke!!!

Sorry, dass ich dir wegen des Refreshs nicht helfen kann. ... vielleicht weiß jemand vom Supportteam Rat?!
Wer eine Wahrheit verbergen will, braucht sie nur offen auszusprechen - sie wird einem ja doch nicht geglaubt.
(Charles Talleyrand)
Zitieren
#9
Wenn ich das richtig verstehe weißt folgender Code dazu an nach einer Zeit x die Shoutbox.php zu aktualisieren, kann man das nicht so machen das nur das tabble mybb_shouts aktualisiert wird?

Code:
$refresh = '';
        if($mybb->settings['sb_refresh_time'] > 0)
        {
            $refresh = '<meta http-equiv="refresh" content="'.$mybb->settings['sb_refresh_time'].';URL=shoutbox.php" />';
        }
[Bild: logo.gif]
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt. (Albert Einstein)
Zitieren
#10
Hmm, weiß ich nicht.
Aber da bei mir die Shoutbox in einem IFrame geladen wird, könnte man versuchen die {addshout} auserhalb der IFrame zu setzen. Sie würde dann nicht automatisch mitrefresht werden. In wie weit, dann das shouten noch funktioniert weiß ich allerdings auch nicht. Sorry!
Wer eine Wahrheit verbergen will, braucht sie nur offen auszusprechen - sie wird einem ja doch nicht geglaubt.
(Charles Talleyrand)
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Erläuterung für neue Forumbenutzer HPC 6 2.254 22.12.2007, 02:45
Letzter Beitrag: Michael