Einfach und elegant: Dateimanager Mollify

Screenshot: Mollify

Was Mollify leistet, ist rasch beschrieben: Es handelt sich um eine webbasierte Dateiverwaltung. Über ein Interface, das visuell an Mac OS X erinnert, können Dateien hoch- und heruntergeladen werden. Dank einem Rechtekonzept kann man einzelnen Benutzern gezielt nur bestimmte Verzeichnisse zugänglich machen.

Um rasch einem Kunden oder Projektmitarbeiter einige Dateien bereitzustellen, ist Mollify die einfachste und zugleich eleganteste Lösung, die ich kenne. Sie stösst allerdings auch sehr schnell an ihre Grenzen: So kann man weder online Dateien betrachten (oder gar bearbeiten) noch gibt es einen Check-out-Mechanismus, um die zeitgleiche Bearbeitung desselben Dokuments durch verschiedene Personen auszuschliessen. Und als Projektmanagement-Tool taugt Mollify schon gar nicht. Aber eben: Die Kernfunktionalität ist bestechend gut gelöst.

Mollify erfordert PHP 5.2 oder neuer und unterliegt der Eclipse Public Licence (EPL).

wil_importcsv: Datenimport für TYPO3

Screenshot: wil_importcsv

Wie importiert man Daten, die in Form einer CSV-Datei vorliegen, in eine beliebige TYPO3-Datenbanktabelle? Beispielsweise mit der Extension wil_importcsv. Das Vorgehen könnte nicht einfacher sein:

  • Zunächst wird im Seitenbaum diejenige Seite (kann auch ein SysFolder sein) ausgewählt, in die man die Daten importieren möchte.
  • Danach wählt man die zu importierende CSV-Datei, das darin verwendete Trennzeichen zwischen den Feldern (normalerweise ein Strichpunkt) sowie die Zieltabelle aus (vgl. Screenshot).
  • Anschliessend erfolgt das Mapping, bei dem man die Felder der CSV-Datei (wird automatisch aus der ersten Zeile der CSV-Datei extrahiert) den Spalten der Datenbanktabelle zuordnet.
  • Schliesslich erhält man eine tabellarische Vorschau des zu erwartenden Resultats und kann den Import per Knopfdruck auslösen.

Die Extension installiert ein Modul im TYPO3-Backend, das auch für Nicht-Administratoren zugänglich ist. In der Konfiguration kann man gewisse Einschränkungen vornehmen, beispielsweise dass normale Backend User nur in ausgewählte Datenbanktabellen importieren dürfen.

Die Extension hat insofern noch eine besondere Rafinesse, als die importierten Daten je nach dem nicht einfach der Datenbank hinzugefügt werden, sondern dass bestehende Datensätze mit der gleichen UID aktualisiert werden.

Auf der anderen Seite habe ich aber auch einen Bug gefunden: Wenn die CSV-Datei nicht nur UIDs, sondern auch PID (Page IDs) enthält, werden die Daten nicht in die entsprechende Seite (und auch nicht in die ausgewählte Seite) importiert, sondern immer in die Seite mit der ID 1. Das Problem kann man nur umgehen, indem man die PID aus der CSV-Datei löscht.

Endlich: Thunderbird 3.0 veröffentlicht

Mozilla Thunderbird 3.0

Verglichen mit Firefox wurde Thunderbird längere Zeit von Mozilla vernachlässigt: Rund zweieinhalb Jahre ist es her, seit das letzte grosse Update des freien E-Mail-Clients veröffentlich wurde, und die Version 3.0 kam ewig nicht aus der Beta-Phase heraus. Nun endlich ist aber das Final Release verfügbar, und David Ascher (bei Mozilla für die Abteilung Messaging zuständig) hat angekündigt, die Entwicklung nächstes Jahr beschleunigen zu wollen (vgl. Artikel bei heise.de).

Die neue Thunderbird-Version bietet unter anderem die Möglichkeit, dass Mails nicht in neuen Fenstern, sondern in Tabs angezeigt werden (in den Programmeinstellungen deaktivierbar). Das Hauptargument für ein Update ist allerdings die verbessere Suche, was angesichts der zunehmenden Mail-Flut eine entscheidende Funktion für ein E-Mail-Programm darstellt. Ausserdem ist die gute Unterstützung für Gmail hervorzuheben.

Thunderbird läuft unter Windows, Mac OS X sowie Linux und ist in rund 50 Sprachen verfügbar.

OpenGoo in der Version 1.6

OpenGoo Logo

Gemessen am hohen Tempo, mit dem die Entwickler von OpenGoo in der Vergangenheit Updates ausgeliefert haben, hat die Version 1.6 relativ lange gedauert, nämlich gut vier Monate. Von Verbesserungen profitiert hat in diesem Release insbesondere das E-Mail-Modul. Die wichtigsten Neuerungen kurz zusammengefasst:

  • Um die Übersichtlichkeit zu erhöhen können Objekte sowie ganze Workspaces im Spezial-Workspace “Archived Objects” archiviert werden. Im Gegensatz zum Papierkorb bleiben sie dort dauerhaft erhalten, und sie sind ausserdem per Volltextsuche weiterhin auffindbar.
  • Alle Objekte haben einen Ungelesen/Gelesen-Status. Diesen Mechanismus gab es bisher nur für E-Mails. Wird ein Objekt nach dem Lesen geändert, so erhält es wieder den Status “ungelesen”.
  • E-Mail-Konten können von mehreren Benutzern gleichzeitig genutzt werden. Auf diese Weise lassen sich Gruppen-Mailboxen einrichten.
  • E-Mail-Konten können einem Workspace zugewiesen werden. Dadurch werden auch die zugehörigen E-Mail-Nachrichten automatisch diesem Workshop zugewiesen.
  • Das E-Mail-Modul unterstützt Conversations, d.h. Antworten auf eine bestimmte E-Mail werden gruppiert.
  • E-Mail-Attachments können direkt ab der Festplatte des lokalen Rechners erstellt werden. Auch andere E-Mails können als Attachment verschickt werden. Zudem sind Inline-Bilder möglich.
  • Ein spezieller Junk-Ordner sortiert Spam-Mails aus.
  • Der E-Mail-Versand erfolgt im Hintergrund, man kann währenddessen weiterarbeiten.
  • E-Mails können einfach in eine Aufgabe umgewandelt werden.
  • Die E-Mail-Dienste GMail, Hotmail und Yahoo werden mit vorkonfigurierten Einstellungen unterstützt.
  • Der Online-Dokumenten-Editor ist schneller und kompatibler geworden. Zudem können Bilder eingefügt werden. Es ist zu vermuten, dass anstelle des alten FCKEditor dessen Nachfolger CKEditor zum Einsatz kommt.
  • Die Bearbeitung von Workspaces-Berechtigungen ist verbessert worden.
  • Events sind nicht mehr auf einen einzelnen Kalendertag beschränkt.
  • OpenGoo verfügt über eine – wenn auch sehr einfache – Konkurrenzsteuerung in Form einer Warnung, wenn ein anderer User dasselbe Objekt bearbeitet.
  • Die Passwort-Wiederherstellung wurde verbessert.
  • Kontaktdaten können im vCard-Format importiert werden.
  • Der Object Picker (Popup-Fenster zum Verlinken von Objekten) ist nun mit einem Textfilter ausgestattet.

TYPO3 Watchdog: Der Sicherheitsdienst für TYPO3-Websites

TYPO3 Watchdog

Es gibt viele Dinge, die man als TYPO3-Administrator beachten muss, wenn man seine TYPO3-Installation zuverlässig gegen Angreifer schützen will (vgl. TYPO3 Security Checklist: 47 Massnahmen, um eine TYPO3-Installation sicherer zu machen). Der Service TYPO3 Watchdog bietet hierbei Unterstützung, indem er TYPO3-Websites auf bekannte Probleme überprüft. Hierzu muss auf dem zu überwachenden System die Extension aba_watchdog installiert werden. Wenn man dieses System dann bei TYPO3 Watchdog registriert, erhält man eine ID zugewiesen, die man in die Extension-Konfiguration einträgt. Und schon liefert der Dienst Vorschläge für Massnahmen, um die Sicherheit zu verbessern – auf der Watchdog-Website sowie per E-Mail.

Das ist grundsätzlich ein interessantes Konzept, aber man darf nicht zu viel erwarten: Die Sicherheitsrisiken, die TYPO3 Watchdog derzeit erkennt, lassen sich leicht auch über das TYPO3-Backend finden. Derzeit prüft der Dienst vor allem Versionsnummern von Core und Extensions, ausserdem erkennt er ein nicht deaktiviertes Install Tool. Zu einer wirklich sicheren TYPO3-Installation gehört aber weit mehr als das.

Wer TYPO3 Watchdog nutzt muss sich ausserdem bewusst sein, dass er mit damit nicht nur Sicherheitsrisiken eliminiert, sondern auch neue schafft. Die Extension aba_watchdog öffnet eine Hintertüre zum System, die potentiell missbraucht werden kann. Auch die Website www.typo3watchdog.com ist ein attraktives Angriffsziel, denn wer sie knackt erhält Einblick in die Sicherheitslücken aller registrierten Websites.

Ich möchte mir kein abschliessendes Urteil über TYPO3 Watchdog erlauben, zumal der Dienst offenbar noch im Aufbau ist. Man würde sich aber in falscher Sicherheit wiegen, wenn man glauben würde, dass dies eine Patentlösung für alle Sicherheitsprobleme ist.

Nachtrag: Am 15. Dezember 2009 wurde bekannt, dass die Watchdog-Extension in der Version 2.0.2 eine Sicherheitslücke aufweist. Es wird ein Update auf die Version 2.0.3 empfohlen.

Newsletter-Abonnenten aus TYPOlight exportieren

Screenshot: Buttons für CSV-Import und CSV-Export im Newsletter-Verteiler

Kaum zu glauben: Mit TYPOlight kann man zwar sehr bequem E-Mail-Adressen in einen Newsletter-Verteiler importieren – der umgekehrte Weg des Exportierens ist dagegen nicht vorgesehen. Wie löst man dieses Problem, wenn man nicht die Datenbank direkt anzapfen will?

Der erste Schritt besteht darin, dass man die Extension newsletter_export installiert. Damit steht innerhalb des Newsletter-Verteilers neben dem Button “CSV-Import” neu auch der Button “CSV-Export” zur Verfügung. Klickt man nun diesen Button an, so wird eine CSV-Datei exportiert, deren Inhalt folgendermassen aussieht:

martha.muster@test.com,"1"
peter.mayer@best.com,"0"
usw.

Die Ziffer 1 bzw. 0 am Ende sagt aus, ob die Adresse per Double-Opt-in aktiviert wurde oder nicht. Falls diese Information nicht mehr benötigt wird und deshalb eliminiert werden soll, kann man dies in Excel sehr leicht mit der folgenden Formel erreichen (wobei A1 stellvertretend für die Tabellenzelle steht, in der sich der zu bearbeitende Text befindet):

=LINKS(A1;LÄNGE(A1)-4)

Die Formel bewirkt, dass die letzten vier Zeichen eliminiert werden, und damit erhält man die reinen E-Mail-Adressen.

Issue Tracker in MediaWiki integrieren

Screenshot: IssueTracker Extension für MediaWiki

Wikis und Issue Trackers sind zwei unverzichtbare Werkzeuge, wenn man in einer Gruppe an einer Website oder an einer Software arbeitet. Wer MediaWiki nutzt und keinen Issue Tracker mit allen Schikanen braucht, sollte sich die Extension IssueTracker anschauen: Ist sie einmal installiert, so kann man durch blosses Hinzufügen des Tags <issues /> auf jeder beliebigen Wiki-Seite einen Issue Tracker einfügen.

Pro Issue kann man dann einen Titel, einen Text, einen Typ (konfigurierbar), einen Status (konfigurierbar) sowie den verantwortlichen MediaWiki Users erfassen. Das ist nicht eben viel, reicht aber in der Praxis oft aus. Die Liste der Issues kann nach allen Spalten sortiert, gefiltert und durchsucht werden. Ein bestehender Issue kann editiert oder archiviert werden.

Die Installation der Extension erfordert – wie so oft bei MediaWiki-Extensions – etwas Handarbeit: Die Source Files müssen einzeln heruntergeladen werden, und die erforderliche Datenbanktabelle wird per SQL-Skript angelegt. Sodann sind noch einige Known Bugs zu beheben, die kleine Änderungen an den Source Files erfordern. All dies ist aber gut dokumentiert, und es ist die Mühe wert: Schon oft hätte ich mir eine solche Lösung gewünscht, statt von Hand im Wiki To-do-Listen zu pflegen.

MySQLDumper 1.24: Zentrale Backup-Lösung für mehrere MySQL-Server

MySQLDumper 1.24

Backups einer MySQL-Datenbank werden oft über phpMyAdmin oder über ein proprietäres Tool des Hosting Providers erstellt. Ich habe allerdings schon Situationen erlebt, wo diese beiden Methoden versagt haben, insbesondere bei sehr grossen Datenbanken. In diesem Fall empfiehlt sich MySQLDumper als zuverlässige und zudem sehr komfortable Lösung.

Ich habe kürzlich das Update von der Version 1.22 auf 1.24 vollzogen und dabei festgestellt, dass trotz des kleinen Unterschieds in der Versionsnummer einige wesentliche Verbesserungen erfolgt sind. Nebst der frischeren Benutzeroberfläche fällt insbesondere die Möglichkeit auf, mehrere MySQL-Server anzusprechen. Hierfür können Konfigurationen angelegt werden, welche nebst den Verbindungsparametern auch die zu sichernden Datenbanken umfassen. So kann man aus einer einzigen MySQLDumper-Installation heraus verschiedenste Datenbank-Server bzw. Hosting-Accounts zentral backupen – auf Wunsch auch automatisiert.

SlimStat: Schlanke Alternative zu Piwik oder Google Analytics

SlimStat Screenshot

Das Web Analytics Tool SlimStat ist mir vor allem durch das WordPress-Plugin WP-SlimStat ein Begriff. Weil aber die Zahlen von WP-SlimStat mit Vorsicht zu geniessen sind (Wie genau sind eigentlich Website-Statistiken?) und weil die Entwicklung von SlimStat scheinbar bei der Version 0.9.x steckengeblieben war, konzentrierte ich mich auf andere Statistik-Lösungen.

Inzwischen ist SlimStat grundlegend überarbeitet worden. Die vor einigen Tagen veröffentlichte Version 2.0 ist nun eine zeitgemässe Statistiklösung, die man per JavaScript-Snippet oder per PHP-Include im Handumdrehen in jede Website einbinden kann. Die Benutzeroberfläche ist sehr übersichtlich und grafisch attraktiv (vgl. Online-Demo), sie erinnert an Tools wie Google Analytics oder Piwik. Gerade wem die beiden vorgenannten Lösungen zu komplex sind, findet in SlimStat einen guten Kompromiss zwischen Leistungsfähigkeit und Übersichtlichkeit.

SlimStat 2.0 unterliegt der GNU General Public License und setzt mindestens PHP 4.3 und MySQL 4.0 voraus.

Paint.NET veröffentlicht Version 3.5

image

Zumindest auf Windows-Rechnern ist Paint.NET das zweite wichtige Open-Source-Grafikprogramm neben GIMP. Gerade wer einen praxisgerechten Kompromiss zwischen Leistungsfähigkeit und Bedienungsfreundlichkeit sucht ist mit Paint.NET wahrscheinlich sogar besser bedient. Die neuste Version 3.5 bietet nebst einem überarbeiteten visuellen Erscheinungsbild auch diverse Detailverbesserungen – ich verweise hier auf auf den Artikel im Paint.NET Blog.