anpera.net
https://anpera.homeip.net/phpbb3/

Commentary: Much-in-one-bundle (OOP); V 2.105
https://anpera.homeip.net/phpbb3/viewtopic.php?f=43&t=2646
Seite 23 von 24

Autor:  Eliwood [ Di 25 Jan, 2011 20:45 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

"auf PHP 5 geschrieben"? Du hast immernoch nicht meine Frage beantwortet :nene:

Was bezweckst du mit den Änderungen?

PHP4 ist obsolet und nicht mehr unterstützt. Du kannst froh sein, dass ich in dieser Klasse keinen grossen Gebrauch von anderen Objektfunktionalitäten gemacht habe. Es reicht, wenn du alle Scopes vor "function" entfernst.

Autor:  Silvar [ Di 25 Jan, 2011 21:18 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

lag an den ding von meinem anbieter, hab alles umgestellt...

Autor:  Lucian [ Do 27 Jan, 2011 21:45 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

hey eli :D
warum kommt eigentlich beim pranger und in den häusern immer so:

PHP:
[Löschen] [21:43] Schatten Lucian sagt: «/me wirft eine faule Tomate auf Bauernjunge Alain und wirft Vorbei! Beim nächsten mal mehr Zielwasser trinken...»

Autor:  Jack [ Fr 28 Jan, 2011 16:29 ]
Betreff des Beitrags:  Re:

Eliwood hat geschrieben:
Aha.....!
Logisch. Jetzt weiss ich auch was du meinst... Ja, da es das in der Standardausgabe der +jt nicht gibt, konnt ich das ja nich ahnen ;)

Du müsstest in der auenland.php suchen:
$this->bbcode_second_pass_code('', '$sql = "INSERT INTO commentary (postdate,section,author,comment)
VALUES (now(),'hobbingen',".$session[user][acctid].",
'/me `\$zündet ein Räucherstäbchen an`0 und opfert es den Göttern.')";
db_query($sql) or die(db_error(LINK));
$sql = "INSERT INTO commentary (postdate,section,author,comment)
VALUES (now(),'hobbingen',".$session[user][acctid].",
'/me `\^murmelt `9\"Mögen die Götter mir gewogen sein und meinen
Wunsch erfüllen...\"')"; ')

Und dann ersetzen mit:

$this->bbcode_second_pass_code('', '$sql = "INSERT INTO commentary (postdate,section,author,comment, emote)
VALUES (now(),'hobbingen',".$session[user][acctid].",
'`\$zündet ein Räucherstäbchen an`0 und opfert es den Göttern.', 1)";
db_query($sql) or die(db_error(LINK));
$sql = "INSERT INTO commentary (postdate,section,author,comment, emote)
VALUES (now(),'hobbingen',".$session[user][acctid].",
'`\^murmelt `9\"Mögen die Götter mir gewogen sein und meinen
Wunsch erfüllen...\"', 1)"; ')

Müsste klappen *g* Im übertragenen Sinne natürlich für alle ähnlichen Direkt-Inserts in die Datenbank.


da ist die antwort

Also da wo du in den Häusern auf einen nav drückst und etwas erscheint müsste im script soetwas wie ich zitiert habe stehen. Musst das eben entpsrechend bearbeiten

Autor:  Lucian [ Sa 29 Jan, 2011 00:49 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

PHP:
INSERT INTO commentary (postdate,section,author,comment,emote)
VALUES (now(),'house-treasure-1',33,'\`@deponiert `^1 `@Gold\', 1)

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''\`@deponiert `^1 `@Gold\', 1)' at line 2




PHP:
$sql = "INSERT INTO commentary (postdate,section,author,comment,emote)
VALUES (now(),'house-treasure-".$row[houseid]."',".$session[user][acctid].",'\`@deponiert `^$amt `@Gold\', 1)";

Autor:  Eliwood [ Sa 29 Jan, 2011 11:35 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

$this->bbcode_second_pass_code('', ''\`@deponiert `^$amt `@Gold\'')
Du maskierst sowohl unnötigerweise das ` und auch das schliessende ' - dass das nicht funktionieren kann, ist kein Wunder.
$this->bbcode_second_pass_code('', 'INSERT INTO commentary (postdate, section, author, comment, emote)
VALUES (now(), 'house-treasure-1', 33, '`@deponiert `^1 `@Gold', 1)')

Autor:  Jack [ So 30 Jan, 2011 13:55 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Hey!

Erstmal dickes Lob!^^

Jetzt habe ich mal ne doofe Frage zu dem Bundle..

Und zwar habe ich in der commentary.settings.php

auf german gesetzt

$this->bbcode_second_pass_code('', 'define('COMMENTARY_QUOTATION_TYPE', 'german');')

.. aber mir werden dennoch die <<.. >> angezueigt.

Sowohl bei

/me sagt "hallo"

oder einfach nur
hallo

als eingabe

http://web370.sv04.net-housting.de/logd ... etting.php

Edit: Hat sich erledigt. Hat merkwürdigerweiße eine Weile gedauert^^

Autor:  Eliwood [ So 30 Jan, 2011 14:06 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Die Anführungszeichen werden vor dem Eintrag in die Datenbank gesetzt und sinn dann fest mit dem Post verankert - eine Änderung wirkt sich nur auf neue Posts aus.

Autor:  Jack [ So 30 Jan, 2011 14:10 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Ja, das war mir schon klar ;) Und der genau Fehler lag bei mir >_> ich hatte die commentary.settings.php nicht in den lib Ordner gezogen, sondern in den root ordner :bash:

Autor:  Lyn [ So 01 Mai, 2011 19:06 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Heyho,

ich hab zwei kleine Probleme mit den Farben und Anführungszeichen in den Kommentaren.
1. Der Farbcode wird für den Inhalt der "" nicht übernommen.

z.B.
Ich poste:
/X das ist ein Test: `&"Bla bla bla
Dann sind das Anführungszeichen und das Bla bla im Farbcode von `&

Wenn die Anführungszeichen allerdings geschlossen sind, erscheint eine andere Farbe.

Das hat wohl mit dieser Codestelle zu tun:
$this->bbcode_second_pass_code('', ' # Hinzufügen der Farben
$quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-open'] = $quotationtype[COMMENTARY_QUOTATION_TYPE]['open'].$this->colorspeak;
$quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-open-alt'] = $quotationtype[COMMENTARY_QUOTATION_TYPE]['open-alt'].$this->colorspeak;

if($this->emote == 2) {
# Wenn emote = 2 (/X), dann andere Farbe gebrauchen
$quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-close'] = $this->color3person.$quotationtype[COMMENTARY_QUOTATION_TYPE]['close'];
$quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-close-alt'] = $this->color3person.$quotationtype[COMMENTARY_QUOTATION_TYPE]['close-alt'];
}
else {
$quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-close'] = $this->coloremote.$quotationtype[COMMENTARY_QUOTATION_TYPE]['close'];
$quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-close-alt'] = $this->coloremote.$quotationtype[COMMENTARY_QUOTATION_TYPE]['close-alt'];
}

if(strpos($commentary, '[') OR strpos($commentary, '{')) {
# Verwendet die richtigen Platzhalter. Annahme: " und ' werden nicht gebraucht, ignorieren.
$commentary = str_replace('[', $quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-open'], $commentary);
$commentary = str_replace(']', $quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-close'], $commentary);
$commentary = str_replace('{', $quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-open-alt'], $commentary);
$commentary = str_replace('}', $quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-close-alt'], $commentary);
}
elseif(strpos($commentary, '&quot;') OR strpos($commentary, '&#039;')) {
# Kommentar bei " splitten
$commentary = explode('&quot;', $commentary);
$pieces = count($commentary);

# Schauen, ob gerade Anzahl an " gebraucht wurde (Also eine ungerade Anzahl Teile), wenn nicht => nicht interpretierbar =/
if($pieces%2 == 1) {
$comments = ''; $nocolor = false;
foreach($commentary as $i => $comment) {
if($i > 0) {
if($i%2==1) {
$comments .= $quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-open'];
}
else {
if($nocolor) {
$comments .= $quotationtype[COMMENTARY_QUOTATION_TYPE]['close'];
}
else {
$comments .= $quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-close'];
}
}
}

if(substr($comment, -2, 1) == '`') {
$nocolor = true;
}
else {
$nocolor = false;
}

# Okay. Hier parsen wir ' innerhalb von ", damit beim ausserhalb-parsen kein Verschachtelungsfehler auftritt
$subcommentary = explode('&#039;', $comment);
$subpieces = count($subcommentary);

# Wenn die Teilstücke mehr als eines sind und gerade, dann können wir das sicher interpretieren.
if($subpieces > 1 AND $subpieces%2==1) {
$subcomments = ''; $subnocolor = false;
foreach($subcommentary as $subi => $subcomment) {
if($subi > 0) {
if($subi%2==1) {
$subcomments .= $quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-open-alt'];
}
else {
if($subnocolor) {
$subcomments .= $quotationtype[COMMENTARY_QUOTATION_TYPE]['close-alt'];
}
else {
$subcomments .= $this->speakcolor.$quotationtype[COMMENTARY_QUOTATION_TYPE]['close-alt'];
}
}
}

if(substr($subcomment, -2, 1) == '`') {
$subnocolor = true;
}
else {
$subnocolor = false;
}

$subcomments .= $subcomment;
}

$comment = $subcomments;
}

$comments .= $comment;
}

$commentary = $comments;
}
else {
$commentary = implode('"', $commentary);
}

# Kommentar nun bei ' splitten
$commentary = explode('&#039;', $commentary);
$pieces = count($commentary);

# Schauen, ob gerade Anzahl an " gebraucht wurde (Also eine ungerade Anzahl Teile), wenn nicht => nicht interpretierbar =/
if($pieces%2 == 1) {
$comments = ''; $nocolor = false;
foreach($commentary as $i => $comment) {
if($i > 0) {
if($i%2==1) {
$comments .= $quotationtype[COMMENTARY_QUOTATION_TYPE]['open-alt'];
}
else {
if($nocolor) {
$comments .= $quotationtype[COMMENTARY_QUOTATION_TYPE]['close-alt'];
}
else {
$comments .= $quotationtype[COMMENTARY_QUOTATION_TYPE]['colored-close-alt'];
}
}
}

if(substr($comment, -2, 1) == '`') {
$nocolor = true;
}
else {
$nocolor = false;
}

$comments .= $comment;
}

$commentary = $comments;
}
else {
$commentary = implode('"', $commentary);
}
}

return $commentary;
}
')

Leider komm ich nicht drauf was ich ändern muss damit die Farben vom Post übernommen werden

2. Die voreingestellten Farben für /X und /me funktionieren nicht
Im Profil des Users sind sie zwar festgelegt aber sie werden für den Kommentar nicht verwendet.

>.< Help pls?
source: http://feeneden.com/source.php

Autor:  Eliwood [ Mo 02 Mai, 2011 06:09 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Die Änderungen in der Funktion viewcommentary(), wie im ersten Post unter "Kleineren Anleitungen" vermerkt, durchgeführt?

Ich hab mich wohl zu fest auf eine richtige Einstellung der Standardfarben verlassen. Dass die Farben innerhalb von "" neu gesetzt werden, ist eine Bequemlichkeitseinstellung für die User, die natürlich korrekte Farben voraussetzt. Ich habe es vermutlich verpasst, da eine Deaktivierungsmöglichkeit festzulegen.

Autor:  Lyn [ Mo 02 Mai, 2011 06:29 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Ich hab das jetzt folgendermaßen angegeben.
$this->bbcode_second_pass_code('', '$comment->ChangeDefaultColors($session['user']['speakmote'], $session['user']['memote'], $session['user']['thirdmote']); ')
(stand irgendwo schon mal im thread *hüstl*)

Klappt jetzt alles ^^ vielen lieben dank :)

Autor:  Drazaar [ Mo 06 Jun, 2011 23:22 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Laserian hat geschrieben:
Drazaar das Problem hab ich auch, und ich glaube ich weiß an was es liegt, aber nicht wie es zu beheben ist

$comment->ChangeDefaultColors($session['user']['prefs']['commenttalkcolor'], $session['user']['prefs']['commentemotecolor'], $session['user']['prefs']['commentemotecolor']);

ich schätze, dass du in der function viewcommentary in etwa so etwas stehen hast und das ist dafür verantwortlich, dass posts anderer spieler in deinen eigenen Farben angezeigt werden

Ich hab von oop aber nicht wirklich viel ahnung und weiß deshalb nicht ob ein ändern auf $row da was ändert und wenn obs auch funktioniert damit aber es müssten bei der funktion die standardfarben des postverfassers angegeben werden und nicht die des users der sie sich ansieht
Falls du damit mehr anfangen kannst und das entsprechend ändern kannst wär ich froh wenn du die Lösung hier posten könntest ;)

Mfg
Laserian

Ja, das sehe ich auch so, aber warum funktionieren dann die die restlichen Emotes? Eigentlich müsste ich doch dann auch bei : und /X falsche Farben sehen, bzw. meine eigenen Standardfarben?
Ich peil den Sinn dieser Funktion eigentlich nicht, denn alles was sie tut ist die in der prefs hinterlegten Standardfarben in drei Variablen abzuspeichern. WArum nicht gleich $this->user['prefs']['commentemotecolor'] benutzen, statt $this->coloremote? Weil kürzer?^^

Andererseits, wo ist der doofe Schritt, der die richtigen Farben bei den restlichen Emotes herholt, denn eigentlich wird ja alles richtig angezeigt, außer bei $emote = 0.

Der Fehler ist eigentlich ganz einfach zu beheben. In der Funktion processComment wird $row mitgeliefert. Man sollte sichergehen, dass auch die prefs in der accounts ausgelesen wird und sich somit in $row befindet. Also entweder in der Funktion fetch() hinzufügen oder in der Funktion GuildPrefixes(), wenn man denn ein Gildensystem nutzt.
Dann noch den Code hier rein
ersetze:
$this->bbcode_second_pass_code('', '
case 0: {
$post = $this->playernamecolor.substr($row['name'], 0, -2).$this->coloremote." sagt: «".$this->colorspeak.trim($this->nl2paragraph($row['comment'])).$this->coloremote."»`0".endl;
')
durch
$this->bbcode_second_pass_code('', 'case 0: {
$prefs = unserialize($row['prefs']);
$color_speak = $prefs['commenttalkcolor'];
if($color_speak == '')
$color_speak = '`#';
$color_emote = $prefs['commentemotecolor'];
if($color_emote == '')
$color_emote = '`3';

$post = $this->playernamecolor.substr($row['name'], 0, -2).$color_emote." sagt: «".$color_speak.trim($this->nl2paragraph($row['comment'])).$this->coloremote."»`0".endl;
')
Die Sache ist nur, dass das halt den Fehler übertüncht. Ich würde ihn aber gerne verstehen...

Autor:  Deus X Machina [ Do 04 Aug, 2011 17:12 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Hab mich letztens an die Chatvorschau des Bundles gesetzt, weil mich immer noch geärgert hat, dass die Zeilenumbrüche mit [Enter] nicht in der Vorschau stehen. Da ich ja jetzt mehr von Javascript verstehe als früher müsste das ja gehen wenn ich mir Google zu Hilfe nehme - so der Plan.
Nachdem ich die halb Nacht damit verbracht hatte vergeblich zu versuchen Leerzeichen mit Zeilenumbrüchen zu ersetzen (oder irgendwann sogar mit Erfolg, aber natürlich nicht gestestet, da ich ja dachte was anderes zu tun) hats irgendwann doch geklappt. Naja, wer weiß warum ich dachte [&nbsp;] ist ein Zeilenumbruch darf sich bei mir melden ;-)

Nunja:
Die Lösung fand ich dann in der "commentary.chatpreview.withfarbhack.js" (auch in der ohne Farbhack vorhanden, je nachdem was verwendet wird):
$this->bbcode_second_pass_code('', 'output = output.replace(/\\n/g, '<br />');
output = output.replace(/\\\\n/gi, '<br />');')Unter, über oder rundum diese zwei Zeilen ist folgende einzufügen:$this->bbcode_second_pass_code('', 'output = output.replace(/\n/g,'<br />');')Das ganze folgt nicht ganz dem Schema von Eliwood, dass ja je nach Einstellung Paragraphen oder Breaks verwendet, da ich Breaks verwende stimmt es bei mir, kompliziertere Gedanken hab ich mir so früh (~4:00) nicht gemacht, wer Paragraphen verwendet kann das sicher entsprechend anpassen.

Autor:  Shendo [ Fr 05 Aug, 2011 08:44 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Moin moin zusammen,

also ich möchte gerne die Button (Aktualisieren, Nächste usw.) mit einem Gif versehen,
nun habe ich aber schon gesucht wo ich das einbinden muss, war leider erfolglos :cry:

Kann mir jemand helfen wo ich das finde, und wenn ja, wie sieht der Codeschnipsel dazu aus?

Eigentlich müsste es ja hier i-wo rein, oder liege ich da falsch?

$this->bbcode_second_pass_code('', 'case 'button': {
$template = array(
'<form action="%1$s" style="float: left; !important" method="post">%3$s<input value="%2$s" type="submit" class="button" />%4$s</form>',
'<form action="%1$s" style="float: left; !important" method="post"><input value="%2$s" type="submit" class="button" /></form>',
'',
'<form action="%1$s" method="post"><p><input value="%2$s" type="submit" class="button" /></p></form>',
);
break;')


LG
Shendo

Autor:  Jack [ Fr 05 Aug, 2011 12:25 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

spontan würde ich sagen die "class="button""

Müsste, glaube ich, in der .css der Skins drin sein. Vll. dort irgendwas mit backgound-image machen

Autor:  Shendo [ Fr 05 Aug, 2011 13:36 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Jepp, danke dir Jack, genau das war es, und dabei habe ich es schonmal selber so abgeändert,
nur war ich momentan so auf Eliwood's Bundle fixiert, dass ich daran nicht gedacht habe... :???:

Nun habe ich aber nochwas, i-wie greift das hier nicht bei mir, warum auch immer... :wuerg:

$this->bbcode_second_pass_code('', '/**
* Standardlimite für angezeigte Posts
* @const COMMENTARY_DEFAULTLIMIT
*/
define('COMMENTARY_DEFAULTLIMIT', 5);')
Oder gibt es eine Möglichkeit, was einzubauen, wo die User selber entscheiden können
wieviele Post sie auf dem jeweiligen Platz sehen möchten?



LG
Shendo

Autor:  Jack [ Fr 05 Aug, 2011 14:13 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

Ich glaube dazu musst du jeden Ort bearbeiten und die Zahl, die bei viewcommentary(xxx,xxx,HIER); steht weg machen, damit die EInstellung greift

Autor:  Shendo [ Fr 05 Aug, 2011 14:24 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

So habe ich das ja auch momentan gelöst, nur immer die viewcommentary im
jeweiligen Skript zu ändern, das ist ja was für Leute die Vater und Mutter erschlagen haben... :lol:

Ne aber mal im ernst, wenn es denn so ist, dass ich das entfernen muss, damit es halt greift,
warum steht das dann nicht in der Einbauanleitung, oder habe ich da was überlesen... :hmpf:


LG
Shendo

Autor:  Jack [ Fr 05 Aug, 2011 14:38 ]
Betreff des Beitrags:  Re: Commentary: Much-in-one-bundle (OOP); V 2.105

vielleicht in der function viewcommentary(); selber etwas direkt übersehen

Seite 23 von 24 Alle Zeiten sind UTC + 1 Stunde
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/