Projekt 42: Salz

Projekt 42 Wieder ein neues Thema im Projekt 42, bei dem die Teilnehmer einen Text zu einem vorgegebenen, meist mehrdeutigen Wort – diesmal „Salz“ – schreiben sollen.

Da ich keine Suppe essen wollte, um extra darin Salz zu finden, lasse ich mir bei WordPress online welches generieren:

define('AUTH_KEY',        '91-Q@_{1Ksl*AUQ^N9J|~Z?FeU-SKl+v[Q@yGwU9-+s#/ +&)k$<S/$6/SphQN[l');
define('SECURE_AUTH_KEY', '|LRQ]fldP|lF--/U)[bza9%Q98:L_g9uy?]x{BgkV-4/%^}QHra=mjnv-c,Hrb0G');
define('LOGGED_IN_KEY',   'XhLa=<#GpF_[h;Wv;X<|@R,|$Iy9mT;1pu;-4-`Vd_MtJKne9S@b|]T&URZb4$()');
define('NONCE_KEY',       'qNLi~Q{M00<xl futIl9.hO#~>2Q~/f||GxR$Bbg;j+8.@Y4^oA<K%f{tb~lhZTS');

Sieht nicht allzu lecker aus, oder? Soll es auch nicht sein – denn solche hashing salts sollen das Knacken von Informationen, in diesem Fall in WordPress und seinen Cookies, erschweren, gewissermaßen den Hacker-Kiddies die Suppe versalzen. (Ihr habt doch hoffentlich eure eigenen Salze in eurer wp-config.php…?) Wikipedia meint:

Salt (engl. „Salz“) bezeichnet in der Kryptographie eine zufällig gewählte Bitfolge, die an einen gegebenen Klartext vor der Verwendung als Eingabe einer Hashfunktion angehängt wird, um die Entropie der Eingabe zu erhöhen.

Aber ich wäre nicht ich, wenn ich in diese ASCII-Salzkörner nicht noch spaßeshalber Informationen hineindeuten würde. :mrgreen: Hätte Nostradamus damals schon solche kryptographischen Methoden verwendet, seine unverständlichen Prophezeiungen wären endlich verständlich geworden, so nach dem Motto: unverständlich mal unverständlich ergibt verständlich. Daraus folgt natürlich, streng wissenschaftlich, dass dieser WordPress-Generator ebenfalls große Geheimnisse der Vergangenheit und Zukunft prophezeit.

Also, was sagen uns diese Keys nun? AUTH_KEY ist nur für Autofahrer interessant, denen ihre Karre Probleme macht, was sie zum Stöhnen bringt – daher Authhhh… Die Zeichen verraten uns, dass insbesondere den Neunaugen („AUQ^N9“) nahestehende Kryptozoologen („1Ks“=X=unbekannt) vorsichtig sein müssen, wenn sie Ski („SKl“) von Viquaigwug („v[Q@yGwU9“, wo auch immer das liegen mag) zur Sphinx („SphQN[l“) transportieren wollen.

Bei sicheren Autos – SECURE_AUTH_KEY –, also wohl solchen mit Panzerglasscheiben u.ä., wie sie hochrangige Politiker benutzen, muss insbesondere die FDP („fldP“) aufpassen, wenn ihr Außenminister nach Laurie River (Kanada) fliegen (IATA-Flughafencode „LRQ“) und dorthin 9 Kerle („g9uy“) unbezahlt („U)[bza“) mitnehmen sollte. Der Rest dürfte einige Namen dieser Begleiter prophezeien: Big K.V., Q. Hara, M.J.Novac, Herbog…

Gefängnisinsaßen oder andere Eingeschlossene wird der LOGGED_IN_KEY interessieren, aber aus Sicherheitsgründen kann ich diesen hier nicht öffentlich deuten.

Und natürlich kann in diesen Tagen auch die Kirche nicht aus dem Spiel bleiben, auch wenn Nonnen, die Zielgruppe des NONCE_KEY, dabei eher unterrepräsentiert sind. Benötigt wird dieser Prophezeiung nach jedenfalls ein Kimono („Q{M00“) in Größen bis L („<xl“) – wird das die neue Mode der Nonnentracht? Zwecklos („futIl9“, futile) ist es jedenfalls, H0-Modellbahngleise („hO#“) zu zwei Kühen („~>2Q“) zu fliegen („f||G“), vor allem von Remscheid („RS“) nach Böblingen („Bbg“). Dafür kennen wir jetzt den Namen des Nachfolgers (oder der nächsten Ausbaustufe) des Teilchenbeschleunigers („tb“) LHC, nämlich „lhZTS“. Was das wohl heißen könnte? Zero Time Singularity? Endlich die von allen Weltuntergangsfreunden heiß ersehnten Schwarzen Löcher? Heißa!

Im Schnee gefunden

Ausschau haltend Nein, nicht im schnee gefunden, sondern auf meinem Blog – willkommen zu den neuesten Suchanfragen-Beantwortungen! Wie immer hot and dangerous, also bitte schuhe reinigen!

Für die, die’s noch nicht wissen: Mit den grau hinterlegten Suchanfragen haben Leute hierher gefunden, und ich hab sie weder gekürzt noch erweitert noch erfunden.

„zeig mir was interessantes“
Da bist du hier goldrichtig, lies einfach weiter.

eiskunst ohne slip
Ich hatte kürzlich Miniatur-Eiskunst-Fotos, und mein Blog darf man nur ohne Slip besuchen – passt also!

heute stimmtetwas mit dem Bewußtsein der Menschen nicht 6 3 2010???
Nur mit denen, die solche Suchanfragen benutzen.

nein woher wissen sie das
Ist doch logisch.

I’M a bitch, I’M lover, I’M a child Im a mother, Im a sinner im a saint, and do not feeld achamed
3x „I’M“, 3x „Im“, nicht einmal richtig „I’m“. Du enttäuschst mich. Auch wegen dem Ende natürlich. Ich glaube, du solltest den Englischkurs nochmal wiederholen.

können sich hunde schämen
Für ihre Frauchen und Herrchen, die solche Suchanfragen wie all diese hier verwenden? Bestimmt!

seine frau
Wessen? Und was ist mit ihr?
nicht da
Aha. Na und?

rock konzerte in deutschland die Beschriftung
Du nimmst ein großes Stück Pappe und eine Sprühdose und sprühst „Rock-Konzert“ drauf, dann hast du deine Beschriftung.

worüber wird ein macbook geladet?
Über einen angebissenet Apfel natürlich.

Geschichte sonnensystem selbst ausdenken
Nein, mein Kleiner, deine Hausaufgaben musst du schon selber machen.

gedicht über pamela anderson
Na gut:

Gehörende Baywatch
 
Wissen und erleben!?
Baywatch käsen!
Sie wissen!
 
Oh antiquierter Adlerflügel…
Ach gelbe Schmieren…
Baywatch hüpfen!
 
Pamela Anderson ist antiquiert!
Pamela Anderson ist geheuert!
Und Gehören!
Ja sei es auch allgemein!
(erstellt mit Poetron)

kostenlos ausdrucken Schweineskelett
Iiih, nein, ich nehme lieber ein echtes Schwein und kein künstliches, ausgedrucktes.

Lottozahlen für heute für Löwe gebohrene
Seit wann bohren Löwen? Und selbst wenn: Das hilft dir nichts, da am Freitag, als du das gesucht hast, eh keine Ziehungen stattfinden.

wi-kan-ich-loto-zalen-multicipliren
Hä? Üb mal etwas Rechtschreibung.
wi-kan-ich-lotto zahlen-multiplizieren
Wow, du bist ja sogar etwas lernfähig. Leider nicht genug.

lotto ich weiß ich die zahlen nehme habe ich
Du weißt bringt du das nichts du.

Drachen Kombinationen ....................................................................................... Numerologie
Nun, irgendwie wirst du aus diesen vielen Punkten sicher eine Zeichnung eines Drachen kombinieren können. Vielleicht bleiben sogar ein paar Punkte übrig, um die Anzahl aller aberwitzigen Varianten von Numerologie-Spinnereien zu nennen – im Zweifelsfall mit Potenzen.

sollen männer hüftjeans tragen
Nein.

www.nagade frauen.de
Jo mei, wennst naggerde Weibsbuider wuißt, musst .by für Bayern schreim und net .de.

helfen sie mir mein Geld in die Schweiz zu bringen
Okay, aber das kostet 110% Gebühren.

will dich nicht mehr sehen
So? Na dann hören wir auf, :bye: tschüss, bis zum nächsten Mal, und denkt dran: i want everybody to get down!


Foto: Coka – Fotolia.com

Kommentare zitieren

Pink Butterfly Little Girl With Colorful Message Clouds. Isolate Ich habe mal wieder eine kleine Bastelei ins Blog eingebaut: eine Möglichkeit, einen ganzen Kommentar als Zitat ins Eingabefeld zu übernehmen. Dazu findet sich jetzt in der Kopfzeile jedes Kommentars am Ende ein entsprechender Link, der diesen als HTML samt umschließendem <blockquote> und darüber einer Zeile „Zitat von …“ samt Link zum Kommentar an die bisherige Eingabe anhängt – und nicht etwa beim Cursor einfügt; dies würde natürlich auch gehen (mach ich bei den Smilies ja schon), aber ich denke, bei so langen Einfügungen ist das Anhängen besser.

Das Script

Das ganze benötigt zum einen ein kleines Script (was auch bedeutet, dass Javascript aktiviert sein muss), das man entweder in eine externe Javascript-Datei einfügt oder einfach inline in die comments.php des Themes, am besten ziemlich direkt nach der Zeile

<?php if ( have_comments() ) : ?>

vor der Ausgabe der Kommentare.

Und das ist das Script, das jQuery benötigt – wird in vielen Fällen ja eh schon geladen:

<script type="text/javascript">
<!--
    function quotecomment (cID) {
        p = jQuery('#edit-comment'+cID);
        if ((!p) || (p.length==0)) p = jQuery('#comment-text-'+cID);
        t = p.html();
        t = t.replace(/<img [^>]*alt=[" ]*([^ "]*)[" ]*[^>]*>/ig,' $1 ');
        jQuery('#comment').val(jQuery('#comment').val() + '\n' +
            'Zitat von <a href="#comment-'+cID+'">'+
            jQuery('#comment-author-'+cID).text()+
            '</a>:\n<blockquote>'+t+'</blockquote>\n\n');
    }
//-->
</script>

In der Funktion (zu deren Aufruf wir gleich noch kommen) wird zunächst das Element mit der ID edit-commentXXX gesucht (mit XXX=Kommentarnummer), das den Kommentartext enthält, wenn das Plugin Ajax Edit Comments aktiv ist und dieser Kommentar bearbeitet werden kann; gibt’s das nicht, ist comment-text-XXX gefragt – das ist eine der kleinen Theme-Anpassungen, die ihr werdet vornehmen müssen – auch dazu gleich mehr.

Von diesem Element wird dann der HTML-Inhalt genommen – so bleiben die ganzen Formatierungen erhalten, auch wenn es mehr Tags enthält (etwa <p>), als original eingegeben wurde. Gut, alternativ hätte ich den Originalinhalt via Ajax nachladen können wie dieses Plugin (oder gleich das Plugin verwenden) oder ihn nochmal direkt in den Funktionsaufruf im Seitenquelltext schreiben, aber dies ist irgendwie die sparsamste Lösung…

Da in diesem HTML-Inhalt auch Bilder – selbst die Smilies – als img-Tags drin sind, müssen sie mit dem regulären Ausdruck im replace wieder in die Smilie-Codes (die in den alt-Attributen stehen) umgewandelt werden – Bilder dürft ihr ja nicht direkt in euren Kommentaren verwenden, das darf nur ich. :mrgreen: (Und natürlich muss dieser Ausdruck komplizierter sein, weil der Internet-Explorer wieder ein eigenes Süppchen kocht und etwa die Anführungszeichen bei den Attributen weglässt.)

(Benutzer einer Live-Vorschau, die bei <br> einen Zeilenumbruch zu viel einfügte, sollten die Zeile ergänzen, die ixiter unten im Kommentar nennt.)

Und schließlich wird in dem langen jQuery-Aufruf der Text/Code dann an den Inhalt des Eingabefeldes – das wie üblich die ID "comment" haben muss, ansonsten müsst ihr’s ändern – angehängt.

Änderungen in der Kommentarausgabe

In der Kommentarausgabe des Themes müssen, wie oben schon erwähnt, zum einen die Namen der Elemente mit ausgegeben werden, zum anderen der Link mit dem Aufruf der obigen Funktion. Das wird natürlich von eurem Theme abhängen, aber wer etwas Erfahrung mit solchen Basteleien hat, wird die passenden Stellen schon finden und geeignet ändern können.

Da wäre zum ersten der Name des Kommentators, der die entsprechende ID braucht – und zwar möglichst nur der Name und nichts drumrum. Man nimmt am besten einen eigenen span direkt um den Aufruf der WordPress-Funktion comment_author_link() (oder wie auch immer bei euch der Name mit Link ausgegeben wird); bei mir sieht da sowieso ein strong zur Fettschrift, deswegen hab ich das gleich verwendet:

<strong id="comment-author-<?php comment_ID(); ?>">
<?php comment_author_link() ?></strong>

Das muss, wie man sieht, im HTML-Kontext stehen (also außerhalb des <?php ... ?>-Bereichs). Dann brauchen wir den „zitieren“-Link an der gewünschten Stelle – und in dieser Form muss es innerhalb von <?php ... ?> stehen:

if ($comment->comment_type=="") {
    echo ' <span class="quotecomment">';
    echo '<a href="#commentform" onclick="quotecomment('.get_comment_ID().');" '.
        'title="den Inhalt dieses Kommentars ans Ende des Eingabefelds anh&auml;ngen (als HTML)">'.
        'zitieren <img src="/pics/quote.png" width="17" height="16" alt="" /></a>';
    echo '</span>';
}

Wer nicht will, dass beim Klick auch die Fensterposition wieder zum Eingabefeld scrollt, ersetze das href="#commentform" onclick="quotecomment… durch href="javascript:quotecomment… Wer das Bildchen nicht will, muss das entspr. img-Tag weglassen; ansonsten dürft ihr euch gerne mein Bildchen kopieren1.

Zu guter Letzt muss noch der eigentliche Kommentarinhalt seine ID erhalten, wozu wir den comment_text()-Aufruf in einen div packen, wenn noch kein geeigneter vorhanden ist (ansonsten den einfach entsprechend benennen oder, wenn der in eurem Theme schon eine ID hat, im Script oben anpassen):

echo '<div id="comment-text-'.get_comment_ID().'">';
comment_text();
echo '</div>';

So, das war’s dann eigentlich, ich hoffe, ich habe nichts vergessen. Wenn ihr noch Fragen habt, nur raus damit…

Ausblick

Als weitere Idee wäre noch das Zitieren beliebiger Textabschnitte aus einem Kommentar oder dem Beitrag durch Markieren des Textes, wie es etwa hier bei Frank Bültge vorgestellt wurde. Aber das muss auf einen späteren Zeitpunkt warten…


Foto: Alexandr Zinchevici – Fotolia.com

  1. bitte auf euren Webspace kopieren und nicht etwa hotlinken ↺