They did it again…

Was mich manchmal echt wundert – können sich manche Firmen eigentlich halten. Web.de ist so eine. Die einzigen Freemailer die überhaupt noch eine nennenswerte Postfachgrößenbeschränkung haben und größere Postfächer nur per Abofalle (siehe diverse Artikel in der c’t-Sparte „Vorsicht Kunde“) verkaufen haben jetzt wieder zugeschlagen.

Im Rahmen einer lustigen Aktion bieten sie grade das an:

der Speicher Ihres WEB.DE Postfachs wird ab sofort von 12 MB auf 500 MB erweitert. Das bedeutet 40 mal mehr Platz für Ihre E-Mails.

Und damit nur noch ein 4tel statt ein 160stel der Konkurrenz im eigenen Haus!
Aber darum gehts noch nicht.

Zur Aktivierung des zusätzlichen E-Mail-Speichers, benötigen Sie eine Programmerweiterung, die Sie hier kostenlos und ohne Verpflichtungen herunterladen können. Bitte klicken Sie auf „Aktivieren“, um Ihr Postfach von 12 MB auf 500 MB kostenlos zu erweitern und die nötige Programmerweiterung zu installieren.

War ja klar. Ich wusste gar nicht, dass ich Bundestrojanerzielperson bin.

Da mich das aber echt nervt, alle paar Tage das Postfach ausräumen zu müssen, also das einzig gangbare gemacht: neuen Windows-User ohne irgendwelche Rechte angelegt, mit dem ein neues Browserprofil gemacht, genau die Toobar installiert und einmal angemeldet. Danach alles entstandene gelöscht.

Und was erhalte ich 2 Sekunden Später in einer neuen Mail? Eine Werbefalle:
Web.de Werbemail 2 Web.de Werbemail 1

Ja, richtig gelesen, da steht, ich würde nur im Club 500MByte bekommen. Kurz IMAP gefragt: nein, ist nicht so, ich hab schon 680960KByte (was übrigens 650MByte sind). Der unbedarfte Nutzer denkt sich jetzt „oh hey, nur noch ein Schritt den sie vorher nicht erwähnt haben, da steht ja immer noch Kostenlos dran“.
Und schon zahlt man sich dumm und dusselig, denn wie wir gelernt haben ist das Ding nicht ohne Medien und/oder Gericht kündbar.

Gut, dass ich ein unbedarfter Nutzer bin – hoffentlich lesen das hier einige von diesen vorher.

WordPress: wpautop(), der einfachere Weg

Hallo!

Ich melde mich mal wieder, diesmal mit etwas relativ wichtigem. Vor kurzem wurde WordPress 2.6 freigegeben, im Zuge des Updates musste ich mal wieder den wpautop()-Fix einspielen.

Dabei sind mir einige Unzulänglichkeiten aufgefallen, unter anderem dass er sinnlos kompliziert ist 😉

Die neue Version kommt mit grade mal 7 neuen und einer geänderten Zeile aus.

Hier die Diff (wir sind wieder in wp-includes/formatting.php):

@@ -65,10 +65,15 @@
 }
 
 function wpautop($pee, $br = 1) {
+	$preserving = strpos($pee, '<preserve>') !== false;
+	if ($preserving) {
+		$pee = preg_replace_callback('!<preserve>(.*?)</preserve>!is', create_function('$matches', 'return "<revert>".base64_encode($matches[1])."</revert>";'), $pee);
+	}
+
 	$pee = $pee . "n"; // just to make things a little easier, pad the end
 	$pee = preg_replace('|<br />s*<br />|', "nn", $pee);
 	// Space things out a little
-	$allblocks = '(?:table|thead|tfoot|caption|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|select|form|map|area|blockquote|address|math|style|input|p|h[1-6]|hr)';
+	$allblocks = '(?:table|thead|tfoot|caption|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|select|form|map|area|blockquote|address|math|style|input|p|h[1-6]|hr|revert)';
 	$pee = preg_replace('!(<' . $allblocks . '[^>]*>)!', "n$1", $pee);
 	$pee = preg_replace('!(</' . $allblocks . '>)!', "$1nn", $pee);
 	$pee = str_replace(array("rn", "r"), "n", $pee); // cross-platform newlines
@@ -99,6 +104,9 @@
 	$pee = preg_replace( "|n</p>$|", '</p>', $pee );
 	$pee = preg_replace('/<p>s*?(' . get_shortcode_regex() . ')s*</p>/s', '$1', $pee); // don't auto-p wrap shortcodes that stand alone
 
+	if ($preserving) {
+		$pee = preg_replace_callback('!<revert>(.*?)</revert>!is', create_function('$matches', 'return base64_decode($matches[1]);'), $pee);
+	}
 	return $pee;
 }

Bei der Gelegenheit habe ich den Tag von <nowpautop> in <preserve> geändert, hier gegebenfalls betreffende Posts/Seiten anpassen.

Die angesprochenen anderen Unzulänglichkeiten hatten damit zu tun, dass nur p und br-Tags verhindert wurden. Alles andere wurde trotzdem munter verändert. Jetzt ist das Verhalten das erwartete: per php generierter HTML-Code wird genau so übernommen wie er aus dem Interpreter kommt. Technisch liegt das daran, dass ich jetzt nicht mehr einzelne Zeichen schütze, sondern alles, indem der Code base64-Codiert vor wpautop() versteckt wird.

Viel Spaß damit 😉
Martok