Bp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite

    Bp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl - Presentation Transcript

    1. BP308: IBM Lotus Domino Web Facelift Using AJAX and DXL
        • Dwight Wilbanks, Lance Spellman
    2. Domino Facelift Toolkit Using AJAX and DXL for a better web UI framework
    3. Agenda
      • Who wants a shirt?
      • Who are you guys?
      • What is the Domino Facelift Toolkit?
      • How do I Facelift a form
      • How do I Facelift a view
      • How it works (high level process)
      • How it works (AJAX/DXL highlights)
      • Where can I learn more?
      • How do I get it and use it?
      • Questions
      Agenda slide
    4. So, who are you guys?
      • Dwight Wilbanks
        • Independent consultant/developer
        • Frequent contributor on Workflow development projects
        • Builder of apps to support very large Notes infrastructures
        • New blogger: dwightwilbanks.org
      • Lance Spellman
        • President of Workflow Studios, Premier IBM Business Partner
          • Application development
          • Managed hosting for Notes
          • Education Center for IBM Software in Lotus and Websphere
        • Penumbra Partner
        • Notes/Domino developer since 1993
        • Occasional blogger: workflowstudios.com/lance/blog.nsf
    5. Introduction: Leveraging AJAX and DXL for Domino
      • Interesting technologies that have a lot of buzz
      • Others have implemented some interesting things
        • Name picker
        • Calendar picker
        • View navigation
      • How could we apply these techniques in a more structured way so that developers don't have to waste so much time in one-offs
      • How best to explain these concepts?
      • Easy, build it and show it
      • Want to see?
    6. I want to see...
        • Show me your facelift!
    7. What is the Domino Facelift Toolkit?
      • DFL Toolkit is AJAX and DXL techniques that improve the fidelity of Notes design elements for the Web.
      • DFL is a concept and an approach...it could end up being a production framework
      • DFL code can be easily integrated with any Notes database without re-engineering apps.
      • DFL is lightweight and cross browser (IE, Mozilla, Opera)
      • DFL does not require special security access, or program installs
      • DFL can be implemented by an admin
      • DFL produces some really cool UI!
      • DFL is open source and needs widgit implementors
    8. DFL Form Capabilities
      • Text popup hotspots
      • Observe minimum row heights in tables
      • Observe native OS field height/width properties
      • Implement help descriptions
      • Observe and implement calendar picker for date fields
      • Implement client-side validation of date only/date and time/time only
      • Dialog list implementations
        • ACL
        • Allow values not in list
      • Listbox height and width
      Contents can be interactive: highlight on mouse over and hyperlink to section on mouse click.
    9. Giving a Form a Facelift
      • Open a new or existing Notes form in the Designer client
      • Add a <script> tag to the body of the form
        • <script language=javascript src='/facelift/facelift.nsf/dfl_StaticForm.js' /></script>
      • Add a <style> tag to the body of the form
        • <link rel='stylesheet' type='text/css' href='/facelift/facelift.nsf/dfl_StaticForm.css' />
      • Save
    10. Demo:
        • How to Facelift a Form
    11. How does it work: Form Overview
      • When the form loads, a script gathers all the field elements and submits to a Domino agent
      • The agent examines the DXL for the form to find extra design information that Domino doesn't render
      • The agent returns a series of javascript function calls to the browser
      • The functions are contained in a static script library and provide default implementations for extended behavior
        • Calendar picker
        • Name picker
        • Select value not in list
      • Key Point: Implementations can be provided by anyone
    12. DFL View Capabilities
      • Scroll view data instead of paging
      • Type in view entry and jump to it
      • Display categories in separate scrolling pane
      • Mouseover category information
        • Displays # of children entries
        • Displays # of total descendants
      • Click icon for document preview
        • Document opened for read mode
      • Selectable documents
      • View Actions
    13. Giving a View a Facelift
      • Open the Facelift database
      • Click the View Action “Facelift a View”
      • Select the database that contains your existing view
      • Select the view to be facelifted
      • Open the view in the browser
    14. Demo: How to Facelift a View
    15. How does it work? View Overview
      • The wizard creates a $$View Template Default for XXX Form design element
      • The form contains calls to an agent, a static JS library file and a CSS page
      • The form also contains a special ViewPort div
        • Can be placed anywhere in the form
        • Additional content can be added anywhere in the form
      • At runtime, the agent reads the DXL of the view's actions and returns JS code that builds them
      • At runtime, the script issues AJAX calls for ReadDesign and ReadViewEntries
      • The rest is driven by user events
      Basic text slide
    16. How does a UI work with and without AJAX? Movies
    17. Tools
      • For inspecting the DOM
        • Firefox: Load the web development tools and use DOM Inspector
        • IE: Developer Toolbar
      • For debugging Javascript
        • Firefox: Venkman plugin for 1.5x
          • http://getahead.ltd.uk/ajax/venkman
        • IE: Microsoft Script Editor
          • How to install and configure:
          • http://www.mandala.com/javascript/debug_javascript.html
      • For analyzing http traffic between browser and server
        • Both: Fiddler
          • http://www.fiddler.com
    18. Futures: How could this be extended?
      • Create totally static design elements and eliminate the OpenAgent type calls
      • Views
        • Inline document editing
        • Developer-specified “programming” columns
        • Embedded views
      • Forms
        • Address dialog
        • View Picker dialog
        • Name Picker
        • Cascaded Field dialog (Refresh fields)
        • Client side Input translations / validations
    19. Javascript library resources and alternatives
      • Prototype.js
        • http://prototype.conio.net
        • Ruby on Rails built on it
        • mira.culo.us extends it
        • rico.js extends it
        • Issues with the way the Javascript Object has been extended
      • Mochikit
        • http://www.mochikit.com
        • Combines features from Python and Objective C and applies to Javascript
      • Comprehensive JS library list
        • http://www.quicksilverscreen.com/archive/2005/12/07/javascript_libraries_roundup
    20. Hands-on Lab with the Facelift Toolkit
      • HND 201 Building IBM Lotus Domino Apps with AJAX/DXL
        • Tue, 8:30 – 10:15, SW Osprey
        • Thur, 8:30 – 10:15, SW Mockingbird 1-2
      • Use the DFL toolkit to facelift a Notes form
      • Use the DFL toolkit to facelift a Notes view
      • Write your own AJAX request/response using prototype.js library
      • Run the DXL form parser agent to interrogate design elements and create JS function calls
      • Build HTML output by reading XML via JS DOM and creating new HTML elements
    21. Other AJAX/DXL sessions at Sphere
      • AD 216 AJAX and Lotus Domino – The cleanest, slickest sites in town
        • Scott Wenzel (aka The Turtle)
        • Mon, 2:15-3:15, DL S Hemisphere 4-5
      • BP 310 How to make IBM Lotus Domino sites that don't look or act like Lotus Domino
        • Henry Newberry, Scott Good
        • Mon, 5-6, SW 5-6
      • BP 306 Creating Compelling Apps with QP 7 using JS, AJAX...
        • Viktor Krantz, Troy Reimer
        • Tue, 11:15-12:15, SW 3-4
      • BP 303 Big-Time Tips and Tricks for your Web apps
        • Viktor Krantz, Rob Novak
        • Tue, 3-4, SW 5-6
        • Wed, 4:15-5:15, SW 3-4 (repeat)
    22. Other AJAX/DXL sessions at Sphere
      • BP 305 Combine XSL and DXL for Rich Web Apps
        • Mac Guidera
        • Wed, 1:30-2:30, SW 3-4
      • BP 313 Practical DXL for LotusScript...
        • Rocky Oliver
        • Wed, 4:15-5:15, SW 5-6
    23. Questions
      • Please! Fill out your evals before you leave. And of course, give us good grades if you want us to come back and give away more free code and shirts next year!
      • Free facelifts at Workflow Studios ped #618 in the showcase
      • Where do I get the code and updated slides/demos?
        • faceliftfordomino.com

    + dom iniondom inion, 2 years ago

    custom

    1411 views, 1 favs, 0 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 1411
      • 1411 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 34
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories

    Tags