“Ralf Becker” RalfBecker@outdoor-training.de schrieb:
For me, any other approach as the app talking to an eTemplate frontend
component, which might run partly in javascript on the client, makes no
sense at all. The reason for that assessment (aka my opinion) is, it’s
an architectural superior concept AND we dont have the resources to
modify/rewrite all applications.
I believe every application talking in JSON (or whatever) to an
individual frontend (based on a toolkit or not) and written in
javascript is a dead end!
In the last couple 5-6 weeks we started evaluating ExtJS. While being a
little bit sceptical in the the beginning, i’m now very confident, that
ExtJS is the right way to go currently. I also evaluated the Zend
Framework. It’s very exiting to see, that the Zend Framework and the ExtJS
framework are playing nicely with each other.
The learning curve was very high, mainly because i’m not very familiar with
coding javascript. But now that the dust has settled i’m very happy, that i
tried something new.
ExtJs gives us all we need to build a modern webapplication. You can try my
demo application at http://cs.officespot.net/egwlayout/
-
We get finally a full featured tree widget with working “load subtrees
on demand” and context menu. Just open up the Email tree.
-
We get also a fully working layout system, which allows to use all the
screen size available on big screens. Just try to resize your window.
-
We get a working tree widget, which allows us to displays table, which
can be updated with just the remote data. Just go to the addressbook and
create more the 50 addresses. 
-
We get client side validation of form data. Just try to add a contact
without a fullname or a invalid emailaddress.
-
It is really fast. The javascript code to render the UI is loaded only
once. After this is done, the whole UI is running on the clients browser.
You don’t need to spent any cpu cycles on the webserver or roundtrip times
to the webserver, to render the UI. Any data which get’s displayed in the
demo are loaded on demand.
-
And finally we will be able to get eGroupWare running without a browser
in the near future, based on ExtJS 2.0 and AIR. Just have a look at
http://labs.adobe.com/wiki/index.php/AIR:Applications:Samples and
http://extjs.com/blog/2007/06/29/building-a-desktop-application-with-ext-air-aptana-and-red-bull
It’s simply amazing what’s possible today or in the near future based on
ExtJS and AIR.
On the server side i havd a closer look at the Zend Framework(ZF). I’m very
pro ZF because i’m pretty sure, that the Zend people will have the
standing, to make the ZF the standard framework to develop PHP in the near
future. You can prove me wrong in about 2-3 years. 
ZF gives us many things we maintain today ourself and many new features we
always liked to have. First of all their excellent database abstraction.
It’s mainly based on PDO. PDO has two big advantages. It’s faster then for
example ADODB as it’s written directly in C. No need to evaluate PHP code,
the get a full-blown database abstraction layer. Maybe we will still need
another database abstraction, but that should be very lightweight. The
database layer of ZF also implements standard patterns like Table Data
Gateway and Row Data Gateway. Which means the access to data in the
database get’s very easy. And if you PDO correctly, you are safe against
SQL injections. We don’t need to parse any user generated content any more
for bad SQL statements, as the PDO layer automaticly escaped all bad
values. It is doing many things, we are doing today ourself, which we don’t
need to do anymore in the future.
We have also been talking about doing caching on the serverside, for
complex sql queries for example. Just have a look at Zend_Cache.
Ever wondered about the strange timezone handling? eGW does know nothing
about your timezone, because PHP did no nothing about timezones in the
past. Just have a look at Zend_Date. Ever wondered how to format dates and
numbers? Just have a look at Zend_Locale. Ever wanted to do safe filtering
and validation of input data? Just have a look at Zend_Filter_Input. And
there is many more like the Zend_Xml_Rpc_Server and the Zend_Json_Server.
So many things which make developing software for eGroupWare much more
easier, as i can concentrate on our main business, which is writing
groupware applications and not any backend or frontend frameworks.
What does it mean for the future?
Here at Metaways we just finished our CRM application which is based on
etemplate. We will make this application public over this week, after we
have worked out, how we can solve our latest etemplate problems. After that
point will not develop any application based on etemplate and the old eGW
api any more. etemplate simply does not provide the features we need for
our applications.
All our next projects will be based on ExtJS and the Zend Framework. We
still need to work out the concepts for working with Json and PHP on the
other side, but hopefully we have finished this process in about 2 weeks.
In this process will try to write a address book which is mostly feature
equal to the current implementation. We will try to keep the same database
layout. That would allow you to access your own data with the new
implementation.
To get this process done very fast, we are scheduled one person to work
fulltime on this project. We also think about hiring another person. Is
everything goes well, we have at least 3 persons working on eGrroupWare in
the future here at Metaways.
Currently we are documenting our progress at http://cs.officespot.net . We
also have a public SVN, if you like to play around with our code yourself.
If we have solved the basic design problems, we will create a new branch in
the eGroupWare SVN to make the code available to all other eGroupWare
developers.
–
Lars Kneschke
Metaways Infosystems GmbH
Pickhuben 2-4, D-20457
Hamburg
eGroupWare Support:
http://www.egroupware-support.net
OfficeSpot.Net Collaboration Server:
http://cs.officespot.net
E-Mail: mailto:l.kneschke@metaways.de
Web:
http://www.metaways.de
Tel: +49 (0)40 317031-21
Fax: +49 (0)40
317031-921
Mobile: +49 (0)175 9304324
Metaways Infosystems GmbH - Sitz:
D-22967 Tremsbüttel
Handelsregister: Amtsgericht Ahrensburg HRB
4508
Geschäftsführung: Hermann Thaele, Lüder-H.Thaele
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
eGroupWare-developers mailing list
eGroupWare-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/egroupware-developers