1. #1
    Ext User
    Join Date
    Dec 2007
    Posts
    95
    Vote Rating
    0
    evanc is on a distinguished road

      0  

    Default Email Center Pro: Shared Email webapp using Ext

    Email Center Pro: Shared Email webapp using Ext




    Email Center Pro allows a team of people to manage email collaboratively. The marketing people haven't really latched on to this but I always describe it as a multiplayer email client. It's for companies that have email addresses like info@ sales@ orders@ help@ - email addresses that map to a team rather than an individual. Our target market is small businesses or teams but we have teams of all sizes using it successfully.

    We're using Ext for the frontend. It connects to a backend written in Java. We're using EC2 for hosting which is great because it just takes hardware out of the equation.

    Ext has been absolutely priceless for us. I couldn't begin to tabulate the number of man-hours it has saved us. We started with a pre-1.0 version of Ext and a couple months ago we re-wrote the entire frontend with Ext 2.

    Ext 2 makes things so easy it feels like cheating sometimes. I've used other libraries but I've never seen a javascript library that has anything even approaching the whole component/layout concept. Running down the list pretty fast I think that the only component we DON'T use is Ext.CycleButton - and now that I've determined that I'll probably have to find a place to use one just for completeness. Very rarely do we break from the component layout pattern- but when we do, everything still works.

    I love how everything works together- Components just snap into place inside one another. Everything that needs data can take a store, and stores know how to operate on the database if they need to. I don't have to guess how different classes will behave, which is something I've dealt with in other frameworks.

    One of (I think) the coolest things we're doing with Ext is our dashboard:



    This is our igoogle style customizable portlet type thing- every webapp needs one, right? We're just storing the configuration as an array of xtype declarations, like {xtype="widget.mailboxlist"}. It took about 20 minutes to write and it's endlessly extensible as we add new widgets. Creating new widgets is also easy: we just subclass our widget component with different items. Since everything is a component, if we wanted to put the contact listing tab into a widget we'd just do something like:

    Code:
    ecp.EmailCenter.ContactsWidget = function (config) {
        Ext.apply(this, config, {
            title: 'Contacts'
            ,items: {xtype: 'contactslisting'}
        });
        ecp.EmailCenter.ContactsWidget.superclass.constructor.call(this, config);
    };
    Ext.extend(ecp.EmailCenter.ContactsWidget, ecp.EmailCenter.Widget, {});
    Ext.reg('widget.contactslisting', ecp.EmailCenter.ContactsWidget);
    I was going to write pseudocode but it was actually easier to just write the real thing. It took absolutely no time to write and it worked the first time. The contacts grid is fairly complex, but it just snaps in and because it's all self-contained, it works as well as it does when it's in a tab.



    Anyway I've seen some really impressive stuff done with Ext in here and I just wanted to show off what we've done with it. You can create a free account and check it out firsthand: http://www.emailcenterpro.com

  2. #2

  3. #3
    Sencha User garraS's Avatar
    Join Date
    Oct 2007
    Location
    Argentina
    Posts
    203
    Vote Rating
    0
    garraS is on a distinguished road

      0  

    Default


    Awesome!

  4. #4
    Ext User
    Join Date
    Jun 2007
    Posts
    66
    Vote Rating
    0
    cutigersfan is on a distinguished road

      0  

    Default Charting

    Charting


    What are you using for charting?

  5. #5
    Ext User
    Join Date
    Dec 2007
    Posts
    95
    Vote Rating
    0
    evanc is on a distinguished road

      0  

    Default


    Quote Originally Posted by cutigersfan View Post
    What are you using for charting?
    Google Visualization API. http://code.google.com/apis/visualization/ also just plain Google Charts in a couple of cases.

Turkiyenin en sevilen filmlerinin yer aldigi xnxx internet sitemiz olan ve porn sex tarzi bir site olan mobil porno izle sitemiz gercekten dillere destan bir durumda herkesin sevdigi bir site olarak tarihe gececege benziyor. Sitenin en belirgin ozelliklerinden birisi de Turkiyede gercekten kaliteli ve muntazam, duzenli porno izle siteleri olmamasidir. Bu yuzden iste. Ayrica en net goruntu kalitesine sahip adresinde yayinlanmaktadir. Mesela diğer sitelerimizden bahsedecek olursak, en iyi hd porno video arşivine sahip bir siteyiz. "The Best anal porn videos and slut anus, big asses movies set..." hd porno faketaxi