Die Umsetzung Focus: Lamplight

15. September 2010 um 9:00 Uhr von Jenny Donnelly | In YUI Implementierungen | Keine Kommentare

Matt Parker ( @ Lamplightdb auf Twitter ) ist der Gründer und Entwickler bei Lamplight Database Systems , ein kleines Unternehmen, das eine voll ausgestattete Web-based Management-System für Non-Profit in Großbritannien. Matt lebt und arbeitet in Nord-West London.

Was ist Lamplight?

Lamplight ist eine Datenbank für Wohltätigkeitsorganisationen und freiwilligen Gruppen (das Non-Profit) in Großbritannien. Es hilft unseren Kunden, ihre Daten effizient, zeigen die Auswirkungen sie auf die Menschen mit denen sie arbeiten, und zu rationalisieren Verwaltungs-und Reporting-Aufgaben. Wir haben seit 2004 gehen und wieder schrieb das gesamte System in 2009, mit YUI2 sehr stark.

Lamplight hat eine ziemlich anspruchsvolle Reihe von Anwendern: Sie sind in der Regel nicht sehr daran interessiert, vor einem Computer gesessen werden - sie wollen sich die Arbeit mit den Menschen dienen. So Lamplight ist got to be intuitiv zu bedienen, reagieren, und machen ihre Arbeit zu erleichtern.

Wir sind auch dafür, dass es erschwinglich für die kleinsten Betriebe verpflichtet - eine gehostete System beginnt bei € 15/month (für die gesamte Organisation). Also haben wir wirklich hart arbeiten, um ein einziges System, das flexibel genug für eine ganze Reihe von unterschiedlichen Organisationen ohne sich unmöglich zu verwalten und zu administrieren Nutzung zu machen.

Welche YUI-Komponenten verwenden Sie?

Es ist einfacher, die wir nicht list: Carousel, Charts, Cookie, ImageCropper, ImageLoader, Layout, ProgressBar, Slider, Storage, SWF und TreeView. Alles andere ist dort ein mehr oder weniger stark. DataTable , Editor und Menü bekommen die größte Workouts.

Warum haben Sie sich YUI?

Der erste Eindruck ein langer Weg. Während ich versuchte, einige der Bibliotheken, schien YUI-Widgets, die meisten reagieren, und / oder zu den zuverlässigsten in verschiedenen Browsern werden. Und dann dauert es nicht lange dauern, um die Dokumentation, Beispiele und Foren sind wirklich beeindruckend zu realisieren.

In gewisser Weise ist es machte die Sache schwieriger - wir verwenden Zend Framework auf dem Server, der (jetzt) ​​kommt mit Dojo 'eingebaut' - aber ich bin mir ziemlich sicher, es war die richtige Entscheidung.

Was hatten Sie am meisten Spaß macht?

Wir sind gerade dabei, die neuen YUI 2 basiert Tagebuch für alle unsere Kunden zu schieben. Tagebuch ist meine eigene Schöpfung, und es scheint recht gut zu funktionieren. Es tut, was man ein Tagebuch zu tun erwarten - Drag & Drop Termine, klicken und ziehen, um hinzuzufügen, und so weiter. Es ist auf einen ganzen Stapel von bestehenden YUI 2 Komponenten (die eingebaute Resize Utility, Drag & Drop und DateMath im Besonderen). Tagebuch auf GitHub, zusammen mit der API-Dokumentation und ein paar Beispiele ( http://mattparker.github.com/diary/ )

Screenshot von Lamplight Tagebuch

Ich habe auch gerne mit DataTable . Ich habe eine Spalte chooser Kontext-Menü hinzugefügt, verwendet und fügte ein wenig zu Satyam die Arbeit mit den wichtigsten Navigation um eine editierbare Tabelle , und implementiert Remote Sortierung / Paging mit dem Server wieder HTML.

Und der Redaktion einige Aufmerksamkeit zu erhalten: Wir haben Seriendruck-Menü-Tasten, einige zusätzliche HTML-Filter-Tasten, um Inhalte aus MS Word, ein Dokument Template-System eingefügt Griff und einen integrierten Bild Einfügen / uploader (Bilder von unserem Server kommen).

Screenshot von Lamplight den Editor

Schließlich haben wir eine sehr einfache ACL-System, so dass (beispielsweise) Ich brauche nur einen Satz von Kontextmenüs, aktivieren oder deaktivieren Elemente je nachdem, wer angemeldet - ich denke, es ist gut zu wissen, was Sie nicht tun können, anstatt der Suche nach einem entfernt Option "Löschen"!

Was ist am schwersten gewesen?

Managing alle Widgets, die kommen und gehen. Es sollte nie eine Seite zu laden, bis Sie sich abmelden, und in dieser Zeit gibt es eine Menge von DataTables, TabViews, Buttons, ContextMenus ... Kommen und Gehen. Manchmal these'll in einem Dialog werden, so kann ich nicht einfach destroy () sie auf jeder Ajax-Request, zum Beispiel. Ich habe mit einem Singleton WidgetManager, die Sätze von Widgets (z. B. ein Formular mit einigen Tasten und eine DataTable) und zerstört (oder blendet sie aus dem Weg, im Falle der Herausgeber) sie im richtigen Moment speichert beendet. Alle diese Widgets registrieren sich mit den WidgetManager, wenn sie gebaut sind. Und wir re-schrieb fairen Stücke so, dass es nur einen einzigen Editor, Dialog-und Systemsteuerung, die sich wieder verwendet werden, wenn sie benötigt werden. Glücklicherweise war dies nicht zu schmerzhaft, als sie alle auf dem Server von PHP-Klassen verpackt, so brauchte ich nur meine Yui_Datatable oder Yui_Form (zum Beispiel) Klassen zu verändern.

Share and erweitern: Lesezeichen mit del.icio.us | digg it! | reddit!

Noch keine Kommentare »

RSS-Feed für Kommentare zu diesem Beitrag. TrackBack URI

Leave a comment

Hinweis: Kommentare sind für Erstbesucher moderiert. Spam gelöscht.

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Hosted by Yahoo!

Copyright © 2006-2011 Yahoo! Inc. Alle Rechte vorbehalten. Datenschutzbestimmungen - Nutzungsbedingungen

Präsentiert von WordPress auf Yahoo! Web Hosting .