Building Blocks loose coupling: for programmers who love their art more than permanent employment.

9Feb/0816

VEsession – Flex photography studio management and client ordering application

My wife saw the application that I am working on at work to manage tasks and immediately asked, "Where's mine?"

21st century honey-do list.

So far, this is what I have created. PureMVC is the underlying framework. The photos are loaded from SlideShowPro Director XML galleries. Unforutately, the most recent version of SSP-D won't let you use it as a service in this way. This older version is has all the functionality I need though, so it isn't an issue. Eventually I will implement functionality to eliminate the need for SSP-D with some gallery management. It will be better to keep it all under one roof.

The backend is Django using pyAMF for communications back and forth. Django elminates the pain of CRUD operations and provides an excellent admin interface for free.

My goal is to open source the application and provide it as a PureMVC/Django example.

UPDATED: This version is a little jacked because I am working on a new version. The demo images are way too big and cause the application to scroll in unsightly ways. The new demo is located here, and uses the same credentials as below.

[Here is the demo]
user: demo_client
pass:demo_client

session_sshot.jpg

[source]

Do to some, uh, laziness on my part, this will only compile with strict mode turned off The new version does not have this problem.

  • frankzabino
    Hey Joel, your work is very good, I've learned a lot from that great piece of art, I would like to know if you recognize this error:

    Cannot find a view for the path ['ve/gateway/echoGateway/get_users'], 'DjangoGateway' object has no attribute '__name__'

    in the version r14 is wonderful but the r15 version I get this error and if you could share the new version of files amfgateway.py and views.py because at http://code.google.com/p/vesession/ these files are missing modules.

    Thanks a lot for your help and waiting for your comments.

    Note: the actual demo is not work, net connection failed. Sorry my english.
  • Lawrence Ong
    Hi there,

    your demo looks very nice. Thanks for letting us download your code. I tried to compile with FlashDevelop as I don't have flash, but after the Flash loads a White Bar, before coming up with a "Could not load the File!" error.

    Would you be able to point me in the right direction?

    thanks again,
    Lawrence
  • Eileen
    I was just wondering if this was still available free, and where from exactly? I'm very interested in it, it looks fantastic :)
  • Joel
    Well,

    We actually use it already (for almost a year!). I'd have to look and
    see what revision it is we use. The current incarnation has been put
    on hold. The client ordering bits work, but I'm displeased with
    several aspects of the design. The backend is a hodge podge of various
    systems and third party tools, so I want to create a proper management
    front-end and corresponding database.

    What aspects of the application are you looking at for your friend?
    Maybe I can break it down, or help you pull out the useful bits.

    Cheers,

    Joel
  • Jason B
    Joel,

    I've got a Photographer friend that could really use something like this. Since it's been a month since the last comment I'm wondering what assistance you still need in getting this to a release point? I've got Flex and Django experience and small nuggets of time here and there.

    Jason
  • Joel
    I am, the current version is a lot different than the screenshot above:

    http://joelhooks.com/session u/p:demo_client

    I'm a little hung up on the wall designer right now, but I need to make a push soon because we'd like to use the new version as opposed to the old. I still have a large list of things I want to do with it. This includes moving it over to PHP and bringing the photo managment aspect of the application into the codebase (currently it is a 3rd party commercial application for this)
  • Michael Schramm
    This seems to be a perfect starting point for an app I like to build. I was wondering if you are still working on it?
    Michael
  • Joel
    @Aaron - That is fantastic. I'm looking forward to it.

    It was compiled with FlexBuilder 3 beta 3.

    If anybody has interest in working on the project (despite my sloppy commented code :P ), please just let me know. I will give you write access to the SVN.
  • Curious, I'm having all sorts of flex compiling issues, what version of flex builder are you using?

    Aaron
  • Hi Joel, nice work :)

    I'm currently porting your source to use newforms-admin. I'll send you the branch when I'm done.

    Cheers,
    Aaron
  • Joel
    Doesn’t doing authentication on the client side expose a vulnerability, since a fake client could just claim it verified a correct password?


    This is a good point. I'm not dealing with any sensitive data, but it isn't a very good practice either way. I honestly hadn't even considered somebody creating a rogue client to bypass the authentication. I will have to investigate server side authentication with pyAMF.

    I was using the Seasar RemotingService when I first started because the DjangoAMF tutorials and examples used it. When I switch over I didn't see any particular need to refactor it out, so there it sits.
  • akaihola
    Looks fantastic!

    I'm wondering about a couple of choices you've made:

    Doesn't doing authentication on the client side expose a vulnerability, since a fake client could just claim it verified a correct password?

    Also, in a previous post you said you're using the Seasar RemotingService. Does that have some benefits compared to Flex's internal RemoteObject component?
  • Great work Joel! I'm working on pretty much the same project at the moment. My client has a portfolio and I've developed the CMS with Django. I've only just got PyAMF up and running and have yet to properly start the Flex side of things. Questions on there way! ;)

    Ben
  • Joel
    Hi Craig,

    http://joelhooks.com/2008/01/05/django-authentication-from-flex/

    I am going about this from a different direction. I grab the user objects from Django and then parse the passwords on the Flex side.
  • Craig
    Hi,

    When will you be posting the source, I've very curious to see how you managed users within the flex application and django. Currently I'm having problems with the user request not having the user information after the user has authenticated. Any input you might could give on how you accomplished this would be great.

    ~ Craig
blog comments powered by Disqus