Personal tools
  • We're Hiring!

You are here: Home Community Minutes Mini Group meetings Web client meetings 2011 2011-10-24

2011-10-24

Carlos, Chris, Emma, Ola, Will, Jason

Agenda

Action: In this meeting we are going to discuss general plan for next few months.

  1. Ola:

    • DEMO & QA:
      • Demo account strategy #7005
      • OMERO.qa improvement #1866
    • Gateway and library cleanup:
      • Web SPW Phase II #6806
      • DJANGO and JS update.
    • Webclient:
  2. Will:

    • omeroweb Django template hierarchy #6198
      • may include changing webclient header, E.g. smaller buttons top-right, more like Google docs etc.
    • error / login (redirect) handling for json.
    • Javascript 'ping' to keep session alive
    • Finish off some web scripting features. Parameter checking, cancel, Activities window.
    • EMDB - customisation for using image viewer, Auto-login done right. #6736
  3. Chris:

    • Bye-bye bin/omero web syncmedia #6849
    • Expose more omero.web configuration options
      • From Will: EMDB customisation, etc.
    • Address large Project / Dataset / Screen / Plate counts and the tree
    • Address Template variable / Template usage
      • Controllers vs. dictionaries vs. global availability
      • Gateway classes that get to the template
    • Unify JavaScript usage; in the header vs. in a separate file
    • Caching #6752
    • View infrastructure
      • Method signature templates
      • Decorators #6342
    • Usability and client unification backlog
      • Tagging UI synchronization
      • Viewer synchronization

Attending

Carlos, Chris, Emma, Ola, Will, Jason

Priority LIST

Main priority LIST: Target is tackling 1-3 before Developers meeting in Nov.

  1. #6166 ROI in big image viewer.
    • ROI thumbnails disabled by default and with a toggle to turn them on.
    • ROI widget scrollable.
    • ROI thumbnail zooming disable.
    • Changing main viewer panel default cursor to pointer.
  2. #6806 Web SPW Phase II.
  3. DJANGO update.
  4. JS update.
    • Deciding about version jquery, jquery.ui and other common library.
    • Making Django framework application to store common media and templates.
    • Templates
      • #6849 Bye-bye bin/omero web syncmedia.
      • #6198 extensions.
      • Unify JavaScript usage if possible.
  5. Dialog box #7082
  6. Address Template variable / Template usage
    • Controllers vs. dictionaries vs. global availability
    • Controller removal.
    • Gateway classes that get to the template
  7. View infrastructure.
    • Method signature templates.
    • Decorators #6342
      • Handling login process and redirections ( landing page, auto-login)
    • Customizing http responses and UI (JS, ajax) changes.
  8. Making development easier

Low priority, future development:

  1. #6190 IFrame removal
  2. Activities and scripting features
  3. #6752 Caching
  4. Usability and client unification backlog
    • Tagging UI synchronisation
    • Viewer synchronisation

External project support:

  1. EMDB adjustment as we go

Notes

  1. Ola:

    • DJANGO and JS update.
      • this issue was noticed by Scott Littlewood, but he end up with hacking and disabling it by hand. Not so nice solution.
      • Ola: We might consider creating media application and put the all common media there. This refer to Will's #6198 and chirs's #6849
      • Chris: define framework templates and their hierarchy, javascript (there is ticket?)
      • Will: how do I link/include it when extending/writing new app.
      • Ola: seams to be the most important change.
    • Webclient:
      • Tree and middle panel synchronization #6462
        • Ola: populate on JSON.
      • Dialog box #7082
        • Ola: Currently we use javascript alert. We need dialog box.
        • Chris: jquery.ui is a basic environment to set this up. Very good for configuration.
      • Landing Page #6103
        • Scott, could give some feedback if possible.
        • Will: keeping url up to date without reloading page. There are various libs to do it but this require more coding.
        • Chris: We need to be careful and do transition on POST based requests. Limited to 1024 characters.
        • Ola: I am more thinking about access link to single element in metadata panel, more link main viewer offers.
        • Will: I just call helper to generate url, which navigate to the destination.
      • Timeout #7081
        • Chris: Most of the modern web app 2.0 does not time out.
        • Ola: How to maintain OMERO session to support it. How web browser keep you alive?
        • Will: If I shut down the machine, is fine if this my connection was closed. But if 10 minutes after no activities I need to re-login is annoying.
        • Chris: We need to work on relogin process, etc.
        • Ola: We need to define ajax framework to provide http response handler.
        • Carlos: We have that done close enough in webgateway, if we extend it and handle session timeout we should be good to use it across the whole client.
        • Carlos: Why do we need hearbeat?
        • Chris: Really annoying from the user perspective.
        • Will: Something like the Activities update status.
          • Chris: should be something common for every ajax calling in intervals.
          • Carlos: Then we need to have something which will validate and understand responses.
        • Carlos: Keeping credentials could be solved by creating session based on the existing session (no credentials needed). Should be easy to handle. Discuss with Josh
      • IFrame removal #6190
        • Ola: Only adding tags and comments require refresh.
      • Sharing improvement #1847
        • Fixing bugs.
  2. Will:

    • omeroweb Django template hierarchy #6198
      • may include changing webclient header, E.g. smaller buttons top-right, more like Google docs etc.
      • Will: turn of and on existing apps and extend webclient
        • Will:There is couple of example pages put on webtest. How to extend that. Strategy: I want to have one top level, and other libs needs to be included.
        • Will: I want to next to the button put custom buttons (like metadata toolbar). In web test toolbar, I add {% include ... %} that was defined in specific app
        • Carlos: webgateway is one template used across the whole app, everything else is specific. I am not sure if it is worth put so much effort to reinvent it.
        • Chris: BK was very specific with his requirements. But we do not want people coming and hacking existing apps even there is simple change. I would define more configuration options.
        • Ola: this will look more like multi-language support. define list of custom objects.
        • Will: this could based on tree data manager, there is already selection support.
        • Chris: we could provide a way of injecting the customisation. It will be more provide some points of extending and good documentation.
    • EMDB - customisation for using image viewer, Auto-login done right. #6736
      • Aim for the EM Databank to use the OMERO web image viewer to display tomograms #6738
      • Jason: is this custom version?
        • Chris: did yo public the branch?
        • Will: yes, but I copied over to mage, didn't use git. I didn't rebuild anything because I change only python code. I need to work on auto login.
        • Chris: there are couple of changes in omeroweb.public, we could apply it to the whole application.
        • Will: we need to define how to configure that, because not every time people do want to use auto login credentials, just for defined apps.
  3. Chris:

    • Address large Project / Dataset / Screen / Plate counts and the tree
      • Chris: While people use the Omero the hierarchy grows. This should be address soon across the whole system.
    • Address Template variable / Template usage
      • Chris: What exactly we are passing to the template. Having global context variable associated with the connection would be very useful.
      • Chris: Possibly of deprecating the controller?
      • Ola: Historically we were using conteoller instead of gateway (there were no one), but currently we could remove it once all functionality is handled in gateway.
      • Will: Then how do we pass those objects?
      • Chris: Maybe by object serialisation. It will prevent against loading objects directly from the template, like listChildren. It seams to be very dangers. There is also inconsistent usage through the entire stack.
    • Unify JavaScript usage; in the header vs. in a separate file
      • Chris: we have inconsistent way of generating urls. There is no policy and various different strategy in various locations. We need to define one policy.
      • Will: IE caching javascript calls, we need to remember about it!
    • Caching #6752
      • Chris: we need to decide of the infrastructure (investigation what library) once we update DJANGO. what exactly we want to cache.
    • Usability and client unification backlog
      • Tagging UI synchronisation
      • Viewer synchronisation
      • what to do with the various pieces of the UI which are inconsistent.
      • Will: copping/applying rendering settings, activities window, etc.
    • Making development easier.
      • it is not simple to set up development environment especially when developer needs to do changes in OMERO.py.
Document Actions