Using Ajax to Improve uPortal User Experience Jen Bourey Yale University

Slides:



Advertisements
Similar presentations
Symbaloo Save, access, and share all of your online resources in one central location!
Advertisements

ContentQuizzesDropbox DiscussionsePortfolio Design Click on a tool name to explore new features: Welcome to 10.3 & ePortfolio 4.3 SLATE: New Features.
Web Page Training Summer 2014 Presented by: Mountain Brook Schools Tech Team.
NEXT. Create Pages in Blogger Another top user-requested feature has just graduated from Blogger In Draft! Blogger now makes it easy to create Pages linked.
July 2010 D2.1 Upgrading strategy Javier Soto Catalog Release 3. Communities.
Customizing the MOSS 2007 Search Results November 2007 Rafael Perez.
Dreamweaver Review ROB SCHWARTZ IS GONNA FEEL MY WRATH!
Objectives Moodle is an online learning environment where instructors & their students interact. In this workshop you will learn: 1.Configure system requirements.
Adding Pagelets and RSS Feeds. This tutorial will guide you through adding pagelets and RSS feeds to your portal tabs.
Create slices and hotspots Create links in Web pages Create rollovers from slices Create basic animation Add tweening symbol instances to create animation.
1 of 6 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
1 of 6 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
1 of 5 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
Quick-Demo Tour Video. This demonstration will show basic zzusis portal functions and navigation.
Tutorial Holdings Management Adding, Editing, and Assigning Full Text Finder Links support.ebsco.com.
Tutorial Holdings Management Adding, Editing, and Assigning Notes support.ebsco.com.
1 of 5 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2006 Microsoft Corporation.
6 th Annual Focus Users’ Conference Application Editor and Form Builder Presented by: Mike Morris.
1 Agenda Overview Review Roles Lists Libraries Columns.
Copyright 2007, Information Builders. Slide 1 WebFOCUS BI Portal Matthew Lerner WebFOCUS Product Line Manager September 30, 2009.
Education Google Calendar (GCal) English. Education Upon completion of this course, you will be able to:  Navigate the GCal interface  Search your calendar.
New Rollbase User Interface
Chapter 11 Adding Media and Interactivity. Flash is a software program that allows you to create low-bandwidth, high-quality animations and interactive.
© 2012 Boise State University1 WordPress Training February 14, 2013.
WaveMaker Visual AJAX Studio 4.0 Training Studio Overview.
In the Sandbox Playing with SkillPort 7 for the first time.
“MyDAP 101” A Brief Introduction January
 First time student activates their google account, they need to go to an internet browser and go to  drive.google.com/a/students.macon.k12.nc.usdrive.google.com/a/students.macon.k12.nc.us.
2013.  Modify QuickBooks Preferences  Customize QuickBooks Menus and Windows  Customize the Icon Bar and Display Settings  Use the Item List and Other.
Creating Effective School and PTA Websites Sam Farnsworth Utah PTA Technology Specialist
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice SISP Training Documentation Template.
Requirements Information and data which need to be displayed or accessible to the user Sitemapping (Site Map) Flow Chart models of site structure displaying.
South Dakota Library Network MetaLib Management Basics Customizing QuickSets South Dakota Library Network 1200 University, Unit 9672 Spearfish, SD
Marcel Casado NCAR/RAP WEATHER WARNING TOOL NCAR.
What’s New in SkillPort 7 Presenter Name Title. SkillPort 7 – a whole new look and feel! Complete redesign of the SkillPort User Interface –Both Student.
FireRMS NEMSIS (Part 2) Presented by Laura Small FireRMS Quality Assurance.
DLM: The uPortal Pushmi-Pullyu JA-SIG with Altitude, Denver 2007 Susan Bramhall,Yale University Jim Helwig, University of Wisconsin-Madison.
Domain 3 Understanding the Adobe Dreamweaver CS5 Interface.
INDIANAUNIVERSITYINDIANAUNIVERSITY OneStart page types  Tab – pages across the top, immutable  Section – pages down the left  Subsection – pages under.
UPortal 3JA-SIG Summer Conference 2006 uPortal 3.
WaveMaker Visual AJAX Studio 4.0 Training Basics: Building Your First Application Binding Basics.
WebSphere Portal Technical Conference U.S Creating Rich Internet (AJAX) Applications with WebSphere Portlet Factory.
The Next Generation. Parent Access Grade History and Attendance.
Agenda 69 1.Overview 2.What is SharePoint? 3.NCDOT Websites 4.Roles 5.Search 6.SharePoint Interface.
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice SISP 6.1 Delta Training Documentation.
1 Building FORMS In When a visitor enters information into a web form displayed in a web browser and clicks the submit button, the information is sent.
If you haven’t activated your Edline account contact Ms. Callwood.
South Dakota Library Network MetaLib Management Basics Categories Administration South Dakota Library Network 1200 University, Unit 9672 Spearfish, SD.
General “Search” or “Find” vs “Manage” “Edit” has no second level tab. is always under the “Create” tab “Create” or “Add” – need consistency Clickable.
USING WORDPRESS TO CREATE A WEBSITE (RATHER THAN A BLOG) STEP-BY-STEP INSTRUCTIONS.
INT222 - Internet Fundamentals Shi, Yue (Sunny) Office: T2095 SENECA COLLEGE.
ServicePoint 5.0 Upgrade Overview 1. Navigation & Home Log in takes you to Home Page – New Look Home Page Banner Logos can be uploaded Agency/Program.
 2002 Prentice Hall. All rights reserved. 1 Chapter 2 – Introduction to the Visual Studio.NET IDE Outline 2.1Introduction 2.2Visual Studio.NET Integrated.
WaveMaker Visual AJAX Studio 4.0 Training Java Script Events.
Forms Manager. What is Forms Manager? Forms Manager is a completely new online form creation and form data management tool.
User Guide Enhanced Kijang.net Enterprise Portal.
Groups, More than Just Collaboration Christopher Smoak.
ANGEL Penn State’s Course Management System Created by PSY Office of C&IS.
Chapter 10 Using Macros, Controls and Visual Basic for Applications (VBA) with Excel Microsoft Excel 2013.
C Copyright © 2009, Oracle. All rights reserved. Using SQL Developer.
My Stuff & More! How to personalize your OSLIS 2.0 “dashboard” and add files to your personal space.
About SharePoint Server 2007 My Sites
Ariba Contracts: Complete a Review Task
Conclusion.
B2B Portal Training Materials
Following Initial Design Review
Chapter 2 – Introduction to the Visual Studio .NET IDE
B2B Portal Training Materials
Adding , Editing, and Assigning Full Text Finder Links
Become a Google Calendar Pro.
Presentation transcript:

Using Ajax to Improve uPortal User Experience Jen Bourey Yale University

Outline  Short demo  Technical overview  Code changes  Customizing for your portal  Implications for our portal  User testing  Dojo channels  The future!  Short demo  Technical overview  Code changes  Customizing for your portal  Implications for our portal  User testing  Dojo channels  The future!

Old User Preferences

Goals  More intuitive interface  Simplify preference options  Use current conventions from other portals  Easier and faster to...  Find and add new content  Rearrange layout elements  More intuitive interface  Simplify preference options  Use current conventions from other portals  Easier and faster to...  Find and add new content  Rearrange layout elements

UI Overview

Current Status  Most features copied from preferences channel.  Brower compatibility: IE6, IE7, Firefox, Safari.  Fails back if scripting is disabled.  Most features copied from preferences channel.  Brower compatibility: IE6, IE7, Firefox, Safari.  Fails back if scripting is disabled.

Channel Editing  Move  Delete  Min/max  Move  Delete  Min/max

Channel Editing

Adding Channels  Browse channels by category  Search channels  Use channel without adding to layout  Browse channels by category  Search channels  Use channel without adding to layout

Browsing Channels

Searching Channels

Adding a Channel from Focus Mode

Editing Tabs

Page Layout

Technical Details

Java Resources  Servlets  RetrieveChannelListServlet  UpdatePreferencesServlet  Theme Param Injectors  AjaxThemeParamInjector  Servlets  RetrieveChannelListServlet  UpdatePreferencesServlet  Theme Param Injectors  AjaxThemeParamInjector

Javascript Resources  Dojo!  Portal dojo classes  PortletDragObject.js  PortletDragSource.js  PortletDropTarget.js  ajax-preferences.js  Dojo!  Portal dojo classes  PortletDragObject.js  PortletDragSource.js  PortletDropTarget.js  ajax-preferences.js

Dojo  IO libraries  Provide data (ex. Channel registry)  Handle asynchronous requests  Return relevant information  Widgets  Popup-style menus  tabs  IO libraries  Provide data (ex. Channel registry)  Handle asynchronous requests  Return relevant information  Widgets  Popup-style menus  tabs

Theme Changes  Lots and lots of element IDs  Onclick() events  Hidden preference menu widgets  Generate drag objects based on layout information  Lots and lots of element IDs  Onclick() events  Hidden preference menu widgets  Generate drag objects based on layout information

Interaction Overview User action JavaScript UpdatePreferencesServletUpdate UI Stored layout

Example: adding tabs User clicks JavaScript Insert new tab in layoutInsert new tab in UI Store preferences

Add tab: Java code  Create new tab node  Save layout and get new tab’s nodeId  Create new column and add it to the tab  Save layout  Return new tab nodeId  Create new tab node  Save layout and get new tab’s nodeId  Create new column and add it to the tab  Save layout  Return new tab nodeId

Add tab: JavaScript code  AJAX request to preferences servlet  Create new tab and append it to the tab list  Assign tab the appropriate id  AJAX request to preferences servlet  Create new tab and append it to the tab list  Assign tab the appropriate id

Example: adding channels User clicks JavaScript Get channel registry XML Display channel adding menu User chooses a channel Preferences servlet Reload page

Skin Resources  {$skin}_preferences.css  Override dojo defaults  Extra icons (left and right arrows)  {$skin}_preferences.css  Override dojo defaults  Extra icons (left and right arrows)

Customizing  Other skins  Create and link new ${skin}_ajax.js  Other themes  Add element IDs  Create javascript  Other layout managers?  Other skins  Create and link new ${skin}_ajax.js  Other themes  Add element IDs  Create javascript  Other layout managers?

Back to the Portal

Refining our UI  Terminology choices  Positioning of menu items  Too many features?  Ex. Moving columns  Suddenly a lot of channels look clunky  Links channel  Search  Multi-RSS feed with pull-down menu  Terminology choices  Positioning of menu items  Too many features?  Ex. Moving columns  Suddenly a lot of channels look clunky  Links channel  Search  Multi-RSS feed with pull-down menu

Using Dojo in Channels  io library  Get data from XML, JSON, etc.  Interactive, asynchronous requests  Widgets  Tabs in channels  tooltips  io library  Get data from XML, JSON, etc.  Interactive, asynchronous requests  Widgets  Tabs in channels  tooltips

Google Maps CWebProxy + AJAX + XML

Google Search

Dining Menu

Yale Events Calendar CWebProxy + AJAX + custom xCal

CSyndFeed Dojo tooltip widget

Weather Portlet Custom RSS feed -> local JSON

Sports Scores ScriptSrcTransport + JSON

Missing Pieces  Resetting a layout  Setting the active tab  Moving columns  Moving channels to a new tab  DLM restrictions  Resetting a layout  Setting the active tab  Moving columns  Moving channels to a new tab  DLM restrictions

Future Development  Improved tab editing UI  Drag channels to another tab  Reset layout and/or fragment  Increased user feedback  Accessibility  Improved tab editing UI  Drag channels to another tab  Reset layout and/or fragment  Increased user feedback  Accessibility

Resources  JA-SIG wiki  driven+Drag+and+Drop  JA-SIG subversion repository   Yale portal   Contact info   JA-SIG wiki  driven+Drag+and+Drop  JA-SIG subversion repository   Yale portal   Contact info 