Debacher-Blog

Uwes Weblog für Texte die (noch) nicht ins Wiki passen
Nov 20

Das Grafikformat SVG fängt an sich im Internet mehr zu verbreiten. Es gibt nur noch einen winzig weichen Browser, der mit dem Format nicht umgehen kann.

Die Quelle für freie SVG-Grafiken im Netz ist Openclipart.org. Leider ist die Seite seit einiger Zeit nicht mehr erreichbar, lediglich der Downloadbereich unter http://download.openclipart.org/downloads/ ist noch zugänglich.Leider sind die Archive nicht thematisch sortiert, sondern nach Urhebern. Ich habe daher nach andere Archiven mit freien SVG-Grafiken gesucht und die folgenden Seiten gefunden

 

Jun 24
Metatags in Typo3
icon1 debacher | icon2 Tipps und Tricks, typo3 | icon4 06 24th, 2011| icon31 Comment »

Das Backend von Typo3 sieht in den Seiteneigenschaften mehrere Felder für Meta-Informationen vor. Will man die Einträge auch in die Seite eingebunden haben, so muss man das Template entsprechend anpassen. Folgender Typoscript-Code leistet das (hier als Beispiel die Version meiner Schule):

page.meta{
 keywords.field = keywords
 keywords.ifEmpty (
   Stadtteilschule, Richard-Linde-Weg, Lohbrügge, Bergedorf, Hamburg, Bildung, Medien
 )
 description.field = description
 description.ifEmpty (
   Stadtteilschule Richard-Linde-Weg
 )
}

Wenn in das jeweilige Feld ein Eintrag gemacht wurde, dann wird dessen Inhalt genommen, ansonsten der Default-Eintrag hinter der ifEmpty Bedingung.

Es gibt noch ein drittes Feld namens Inhaltsangabe, dass kann man unter der Bezeichnung abstract erreichen.
Ein Alternative zu diesem Ansatz sollen folgende Zeilen bilden:

page.meta.keywords = Stadtteilschule, Richard-Linde-Weg, Lohbrügge, Bergedorf, Hamburg, Bildung, Medien
page.meta.keywords.override.field = keywords
page.meta.description = Stadtteilschule Richard-Linde-Weg
page.meta.description.override.field = description
Mai 17
cal mit Google-Kalender
icon1 debacher | icon2 typo3 | icon4 05 17th, 2011| icon3No Comments »

Ich habe eben eine paar Stunden damit verbracht ein weiteres Mal cal dazu zu bringen, seine Daten mit einem Google-Kalender zu synchronisieren. Beim ersten Mal ging alles ganz einfach, ich habe es damals aber leider nicht dokumentiert.

Zwei Voraussetzungen müssen gegeben sein.

  1. Ein Google-Kalender muss eingerichtet und freigegeben sein
  2. Typo3 muss mindestens in der Version 4.3 vorliegen, damit die Extension Scheduler zur Verfügung steht

Bevor man mit der Einrichtung des Kalender beginnen kann sollte man Typo3 mindestens auf die Version 4.3 aktualisiert haben. Die folgende Beschreibung bezieht sich aber im Zweifelsfall auf Version 4.5.2. Seit der Version 4.3 liefert Typo3 eine Systemextension namens Scheduler mit. Diese ist für alle zeigesteuerten Prozessse innerhalb der Typo3-Installation zuständig.

Damit der Scheduler arbeiten kann benötigt er auf Systemebene einen Cronjob, der folgenden Art:

5,35  *   *   *   *   /usr/bin/php5 /srv/www/httpdocs/typo3/cli_dispatch.phpsh scheduler > /dev/null

Hier wird zweimal pro Stunde der Scheduler aktiviert, immer auf 5 und 35. Die Pfade zu dem Script cli_dispatch.phpsh können bei anderen Installationen natürlich abweichen.

Nun kann der Scheduler innerhalb von Typo3 zeitgesteuerte Vorgange verwalten.

Für den Kalender cal geschieht die Einrichtung automatisch, wichtig ist nur, dass der Google-Kalender erst eingerichtet wird, wenn der Scheduler vorhanden ist. Mich hat viel Zeit gekostet, dass ich mit einem System 4.2.17 begonnen und dort den Kalender schon eingerichtet hatte. Ich musste den Kalender löschen und neu einfügen, dann wurde er auch automatisch im Scheduler berücksichtigt.

Google-Kalender mit cal

Das Feld Scheduler-ID wird dabei automatisch ausgefüllt.

Bleibt noch die Frage, wo bekommt man die Externe Kalender Adresse (URL) her? Die muss man sich von den Google-Kalender-Seiten holen. Wählt man dort Einstellungen (ganz links unten), so landet man auf der Übersichtsseite für die Kalender-Einstellungen. Hier klickt man in der Zeile mit dem zu benutzenden Kalender auf Freigeben: Einstellungen bearbeiten. Nun findet sich weit links oben ein Link Kalenderdetails. Klickt man hierauf, so öffnet sich das folgende Fenster:

Google-Kalender URL

In diesem Fenster kopiert man mit der rechten Maustaste den Link vom unteren Ical-Button. Ich habe dabei auch jeweils das Protokoll von https auf http geändert. Den Link fügt man dann ins Typo3-Formular ein.

Feb 11

Die Website meiner Schule ist unter mehreren Domains erreichbar. Das gibt Probleme mit dem Google API-Key und  pit_googlemaps. Die Extension sieht die Nutzung mehrerer Keys nicht direkt vor. Das Problem ist aber über das Setup im Template ganz einfach lösbar, indem man folgenden Code am Ende anfügt:

[globalString = ENV:HTTP_HOST = *schulerlw.de]
 plugin.tx_pitgooglemaps_pi1.googleAPIKey = ABQIAAAAQ4awX-q5a_T3PuHs7qabUxTeO06x_derRestistgeheim
[globalString = ENV:HTTP_HOST = *richard-linde-weg.de]
 plugin.tx_pitgooglemaps_pi1.googleAPIKey = ABQIAAAAQ4awX-q5a_T3PuHs7qabUxTeZaE-derRestistgeheim
[GLOBAL]

Damit sucht sich Typo3 den Key aus, der zur jeweiligen Domain passt.

Okt 10

Beim Sichern einer Datenbank mittels mysqldump hatte ich das Problem, dass immer irgendeine Fehlermeldung auftauchte, die auf das Fehlern irgendeiner Datei hinwies. Bei genauerer Recherche stellte ich fest, dass es sich um ein Problem mit der Zahl der offenen Dateien handelt. Mysqldump versucht anscheinen alle Tabellen parallel zu öffnen und diese Datenbank besitzt sehr viele Tabellen.

Eine Einfache Lösung besteht darin statt (hier als root):

mysqldump datenbank -p > /tmp/datenbank.sql

zu schreiben:

mysqldump datenbank --single-transaction -p > /tmp/datenbank.sql

Damit funktioniert der Dump dann auch. Siehe dazu auch http://rackerhacker.com/2007/08/19/mysql-errcode-24-when-using-lock-tables/

Sep 15

Nachdem Ghostery nun in meinem Firefox alle kommerziellen Webwanzen blockt habe ich begonnen selber mit Webwanzen zu experimentieren. Dafür gibt es das Programm Piwik, das man auf einem eigenen Server installieren und dann in die eigenen Seiten einbinden kann. Damit bekommt man ausführliche Hinweise über die Nutzung der Seiten, ohne Daten aus der Hand zu geben. Alles läuft auf eigenen Rechnern.

In die Webseiten, die ausgewertet werden sollen, muss man nur folgenden Code integrieren (und natürlich anpassen):

<!-- Piwik -->
 <script type="text/javascript">
 var pkBaseURL = (("https:" == document.location.protocol) ? "https://mein-server.de/piwik/" : "http://mein-server.de/piwik/");
 document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
 </script><script type="text/javascript">
 try {
 var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 2);
 piwikTracker.trackPageView();
 piwikTracker.enableLinkTracking();
 } catch( err ) {}
 </script><noscript><p><img  src="http://mein-server.de/piwik/piwik.php?idsite=2" style="border:0"  alt="" /></p></noscript>
 <!-- End Piwik Tag -->

Für die Integration in Content Management Systeme findet sich unter http://piwik.org/faq/plugins/ eine Reihe von Plugins. Leider ist deren Nutzung nicht immer unproblematisch.

Für die Mediawiki-Integration findet sich unter http://www.mediawiki.org/wiki/Extension:Piwik_Integration eine passende Software. Man muss nur beim Download aufpassen. Hier wird man nach der benutzten Mediawiki-Version gefragt. Wählt man hier z.B. wahrheitsgemäß 1.15.x so bekommt man eine alte, bei mir nicht funktionsfähige Version. Man sollte hier als Mediawiki-Version unbedingt Development version (trunk) auswählen. Dann lädt man momentan die funktionsfähige Version Piwik-trunk-r72455.tar.gz .

Auch bei WordPress ist die Integration nicht unbedingt problemlos. Das Plugin Piwik Analytics ist über die Plugin-Verwaltung zu installieren und vermutlich auch funktionsfähig. Ich benutze aber momentan ein Template, bei dem in der Footer-Datei der Aufruf von wp_footer() fehlt. In diese Funktion klingt sich das Plugin wohl ein. Da in der footer.php zu meinem Template nur HTML-Code steht habe ich den Piwik-Code hier direkt eingebunden, damit funktioniert Piwik auch hier, zumindest solange ich das Template nicht wechsle.

Für Typo3 gibt es unter http://typo3.org/extensions/repository/view/piwik/current/ ebenfalls eine passend Extension. Diese muss ich noch ausprobieren. Bisher habe ich den Piwik-Code einfach mit in das Root-Template aufgenommen:

page.headerData.199 = TEXT
page.headerData.199.value (
 <!-- Piwik -->
 <script type="text/javascript">
 var pkBaseURL = (("https:" == document.location.protocol) ? "https://mein-server.de/piwik/" : "http://mein-server.de/piwik/");
 document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
 </script><script type="text/javascript">
 try {
 var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 1);
 piwikTracker.trackPageView();
 piwikTracker.enableLinkTracking();
 } catch( err ) {}
 </script><noscript><p><img src="http://mein-server.de/piwik/piwik.php?idsite=1" style="border:0" alt="" /></p></noscript>
 <!-- End Piwik Tag -->
)

Damit erscheint der Code im Header-Bereich der Seite und nicht wie in der Anleitung beschrieben am Ende des Body-Bereiches, aber auch das funktioniert bisher.

Inzwischen habe ich auch die Extension piwiki aus dem Typo3-Repository ausprobiert und zwar in der Version 2.0.0. Die Extension muss nur installiert und aktiviert werden, dann folgen noch vier Zeilen im Root-Template:

config.tx_piwik {
  piwik_idsite = 1
  piwik_host   = http://mein-server.de/piwik/
}

Entgegen der Beschreibung muss hier wirklich http:// mit angegeben werden, sonst entstehen relative Verweise. Bevor man die Installation testen kann, muss man sich unbedingt vom Backend abmelden. Solange man im Backend angemeldet ist erfolgt nämlich keine Integration des Piwik-Codes.

Weitere Informationen zur Integration von Piwik in Typo3 finden sich bei Mittwald.

Apr 30

Bei der Entwicklung von Webseiten muss man gelegentlich das Browserfenster exakt auf eine bestimmte Größe einstellen. Dabei hilft das Programm xdotool (ggf. Nachinstallieren). Die Nutzung erfolgt von der Textkonsole aus. Will man das Firefox-Fenster auf exakt 1024×768 Punkte einstellen so muss man zuerst an seine Nummer herankommen. Dies geschieht mittel:

xdotool search --onlyvisible --title "Mozilla Firefox"

Als Rückgabe erhält man eine oder ggf. mehrer Nummern von passenden Fenstern, z.B. 71802061 Mit dieser Nummer kann man das Fenster dann manipulieren:

xdotool windowsize 71802061 1023 768

nimmt die entsprechende Einstellung vor.  Das Fenster darf aber nicht im Vollbild sein, sondern muss schon etwas verkleinert sein.

Mit dem Programm xdotool kann man auch Eingaben in Fenster machen.

Sollte es mühsam sein die Fensternummer über den Titel zu ermitteln, so kann man auch das Programm xwinfo benutzen. Das fordert einen auf das gewünschte Fenster anzuklicken und gibt dann eine Reihen von Informationen aus, unter Window-Id die Nummer. Die Nummer ist hier hier hexadezimal angegeben, aber auch damit kann xdotool umgehen.

Dez 14

Ich hatte das Problem, dass bei der Extension Drowdownsitemap der Text in Englisch war, das stand dann Expand / Collapse all statt …

Da es keine Konfigurationsmöglichkeit gibt musste es an den Systemeinstellungen liegen:

config.language = de

in der Konfiguration des root-Tempates bewirkt dann die Umstellung auf den gewünschten Text Alles aus-/einklappen.

Nov 20

Im Prinzip war mir das Problem bewusst, dass auf vielen Seiten Grafiken (Webwanzen) eingebunden sind um das Nutzerverhalten zu analysieren. Ein Artikel in der Linux-User 12/2009 hat mich dazu gebracht mir das einmal anzuschauen.

Ich habe mir also für meinen Firefox die Extension Ghostery installiert und achte jetzt bei jeder Website darauf, welche und wieviele kleine “Gespenster” auf den jeweiligen Webseiten auftauchen. Das sind schon lange nicht mehr nur Grafiken, sondern oft eingebundene Javascript-Dateien.

Bisher habe ich auf keiner der Webseiten einen Hinweis entdeckt, dass ich ausgeforscht werde. Dabei werden zum Teil sogar mehrere von diesen Dingern genutzt. Positiv finde ich, dass ich bisher auf Schulseiten und Seiten für Schule wenige Wanzen finden konnte, eine Ausnahme bildet leider Hamburg.de

Im Gegensatz zu dem, was in dem Artikel steht, erlaubt Ghostery auch das Blockieren dieser Wanzen. Lustiger wäre es vermutlich, wenn man mit den Wanzen etwas spielen könnte ;-)

Mrz 1
Serverdienste unter Ubuntu
icon1 debacher | icon2 linux | icon4 03 1st, 2009| icon3No Comments »

Die Konfiguration der Serverdienste unter Ubuntu ist etwas mühsamer, als unter OpenSuSE. Dafür gibt es aber schöne Dukumentation online. Eine gute Einführung ist unter http://wiki.ubuntuusers.de/Serverdienste zu finden.

« Previous Entries