Justin Tilton, Chief Executive Officer instructional media + magic, inc. at the JA-SIG Conference Destin, Florida December 4, 2001 Changing the uPortal.

Slides:



Advertisements
Similar presentations
Chapter 3 – Web Design Tables & Page Layout
Advertisements

KompoZer. This is what KompoZer will look like with a blank document open. As you can see, there are a lot of icons for beginning users. But don't be.
Cascading Style Sheets Based on Castro, HTML for the WWW, 6 th edition Ron Gerton, Fall 2007.
Web Design with Cascading Style Sheet Lan Vu. Overview Introduction to CSS Designing CSS Using Visual Studio to create CSS Using template for web design.
XSLT Stylesheets Some more advanced examples (adapted from the Edinburgh LT site)
Jon Allen instructional media + magic, inc. As presented at the JA-SIG Winter Conference Bal Harbor, Florida, December 6, 2003 Introduction to XSLT.
Justin Tilton instructional media + magic, inc. As presented at the JA-SIG Winter Conference: "All Java, All the Time" December 8 th 2002, Orlando, Florida.
UPortal: A framework for the Personalization of Library Services John Fereira: Programmer/Analyst Cornell University Mann Library.
INSTRUCTIONAL SUPPORT SERVICES (ISS) SHORT COURSE, FALL 2012 UMSL Introduction to Web Page Design.
Chapter 14 Introduction to HTML
With Alex Conger – President of Webmajik.com FrontPage 2002 Level I (Intro & Training) FrontPage 2002 Level I (Intro & Training)
Introduction to HTML. What is a Web site? A collection of "pages" or files linked together and available on the World Wide Web What do you need to create.
© 2011 Delmar, Cengage Learning Chapter 2 Developing a Web Page.
Sheet 1XML Technology in E-Commerce 2001Lecture 6 XML Technology in E-Commerce Lecture 6 XPointer, XSLT.
Chapter 4 Dreamweaver: Part II The Web Warrior Guide to Web Design Technologies.
Julien Thibault  HTML is the basic building-blocks of webpages  It is not a language!! (despite its name)  Structure text/media.
Getting Started with Expression Web 3
Copyright © Texas Education Agency, All rights reserved. 1 Web Technologies Website Development with Dreamweaver.
IS432 Semi-Structured Data Lecture 5: XSLT Dr. Gamal Al-Shorbagy.
Chapter 2 Developing a Web Page. A web page is composed of two distinct sections: –The head content –The body Creating Head Content and Setting Page Properties.
CONCEPTS FOR FLUID LAYOUT Web Page Layout. Website Layouts Most websites have organized their content in multiple columns (formatted like a magazine or.
Website Development with Dreamweaver
XP Dreamweaver 8.0 Tutorial 3 1 Adding Text and Formatting Text with CSS Styles.
DSpace UI Alexey Maslov. DSpace in general A digital library tool useful for storage, maintenance, and retrieval of digital documents Two types of interaction:
Cascading Style Sheets Tom Osman. Keep the content of a webpage separate from the formatting of the page. Structure (of content)  Headings  Sub headings.
Jim Farmer, JA-SIG Collaborative 20 June 2002 EUNIS 2002, Porto, Portugal Portals, uPortal, and Web Services.
Jim Farmer, University of Delaware at North Carolina State University May 21, 2001 Portals uPortal and JA-SIG.
Justin Tilton, Chief Executive Officer instructional media + magic, inc. at the NCHELP Annual Training Conference Salt Lake City, Utah November 12, 2001.
1 Introduction  Extensible Markup Language (XML) –Uses tags to describe the structure of a document –Simplifies the process of sharing information –Extensible.
1 Overview of XSL. 2 Outline We will use Roger Costello’s tutorial The purpose of this presentation is  To give a quick overview of XSL  To describe.
Justin Tilton uPortal Framework and User Interface Demonstration.
Tutorial 3 Adding and Formatting Text with CSS Styles.
Positioning Objects with CSS and Tables
28 Copyright © 2009, Oracle. All rights reserved. Customizing the Oracle Business Intelligence User Interface.
Rendering Syndicated Library Content in an Institutional Portal: Integrating MyLibrary into uPortal John Fereira: Cornell University Eric Lease Morgan:
XP New Perspectives on Macromedia Dreamweaver MX 2004 Tutorial 5 1 Adding Shared Site Elements.
Rendering XML Documents ©NIITeXtensible Markup Language/Lesson 5/Slide 1 of 46 Objectives In this session, you will learn to: * Define rendering * Identify.
COMP 143 Web Development with Adobe Dreamweaver CC.
CONCEPTS FOR FLUID LAYOUT Web Page Layout. Essential Questions What challenges do mobile devices present to Web designers? What are the basic concepts.
CSS Introductions. Objectives To take control of the appearance of a Web site by creating style sheets. To use a style sheet to give all the pages of.
How HTML responsiveness translates to PDF
Getting Started with Dreamweaver
4.01 How Web Pages Work.
Dreamweaver – Setting up a Site and Page Layouts
Objective % Select and utilize tools to design and develop websites.
Create and edit web pages 4
OVERVIEW Objectives Follow a design document to create a small personal Web site Follow a design document to create pages in a large commercial Web site.
With Microsoft FrontPage 2000
Chapter 2 Developing a Web Page.
Chapter 7 Absolute/relative hyperlinks Frag id 3-column site
Concepts for fluid layout
© 2016 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Chapter A - Getting Started with Dreamweaver MX 2004
Chapter A - Getting Started with Dreamweaver MX 2004
ASP.NET Web Controls.
HTML Basics and CSS style
Objective % Select and utilize tools to design and develop websites.
Introduction to web design discussing which languages is used for website designing
Prepared for Md. Zakir Hossain Lecturer, CSE, DUET Prepared by Miton Chandra Datta
uPortal: architecture and features
Introduction to XSLT Justin Tilton instructional media + magic, inc.
Tutorial 6 Creating Dynamic Pages
Getting Started with Dreamweaver
Understand basic HTML and CSS terminology, concepts, and basic operations. Objective 3.01.
Portals, uPortal, and the Meteor Channel
CIS 133 mashup Javascript, jQuery and XML
uPortal Framework and User Interface Demonstration
Concepts for fluid layout
4.00 Apply procedures to add content by using Dreamweaver. (22%)
Presentation transcript:

Justin Tilton, Chief Executive Officer instructional media + magic, inc. at the JA-SIG Conference Destin, Florida December 4, 2001 Changing the uPortal Look & Feel

uPortal Look & Feel Overview Introduction How does it work? What is the Structure? What is the Theme? What are Skins? Why this process? Changing the Aesthetic Introductory – CSS & media Intermediate – the Theme Transformation Advanced - the Structure Transformation

Introduction and an abstract way to visualize the process

uPortal Look & Feel Basic Architecture Structure Theme Skin

uPortal Look & Feel XSLT Processor 1. Structure… Tab/Column/Row - VES Tab/Column - JASIG Tree/Column – IM+M User XML Structure Stylesheet

uPortal Look & Feel Structure – Tab/Row/Column Row Column

uPortal Look & Feel Structure – Tab/Column Column

uPortal Look & Feel Structure – Tree/Column Column

uPortal Look & Feel 2. Theme HTML Browser HTML PDA WML – Mobile Phone XSLT Processor Structure XML Theme Stylesheet

uPortal Look & Feel Themed Markup/Device

uPortal Look & Feel 3. Channels – with Skin Channel XML and Stylesheets Output Stream to Device Final Output Including Cascading Style Sheets

uPortal Look & Feel Skin – The im+m Look & Feel

uPortal Look & Feel Skin – The Java Look & Feel

uPortal Look & Feel Skin – The UoSM Look & Feel

uPortal Look & Feel Skin – The Matrix Look & Feel

uPortal Look & Feel Skin – The VSAC Look & Feel

uPortal Look & Feel A Piped View of the Process Structure transformation Theme transformation userLayout structuredLayout HTML, WML VoiceML... XSLT setRuntimeData() renderXML() Channels

uPortal Look & Feel A detailed explanation User layout is an XML document generated from the portal database The user layout represents an abstraction of the structure of the content chosen and arranged by the user The user layout node tree consists of “folders” and “channels” Channels are always leaf nodes in the document (they are always children of folders)

uPortal Look & Feel Abstract User Layout Channel Folder Channel Folder Channel Folder Channel Folder User Layout

uPortal Look & Feel Current Structure XSLT Channel ColumnChannel Tab Channel Tab Channel Tab User Layout Column Channel Folder Channel Folder Channel Folder Channel Folder User Layout Top Level Folders Become Tabs Descendant Folders of Top Level Folders Become Columns

uPortal Look & Feel Current Theme XSLT Channel Dictionary.com Column Channel Bookmarks Channel Cartoon Column Tab Jim Smith Channel Tab Financial Aid Channel Tab Library User Layout Attributes used to Name Tabs

uPortal Look & Feel Why this Process? XSLT Separates Business Logic from Presentation Multi-Stage Transformations allow for flexible designs targeting different markup languages and devices Cascading Style Sheets create a consistent look for disparate channels and applications

Tweaking the Look and Feel

uPortal Look & Feel Reversing the approach Skins/CSS Fonts, colors, alignment, etc. Media Logos, channel buttons, etc. Theme Navigation, channel placement, etc. Structure Tabs, trees, columns, rows, etc.

Skins and Cascading Style Sheets

uPortal Look & Feel What are Skins? Cascading Style Sheets Defining: Element level aesthetics Pseudo-element level aesthetics New classes and their aesthetics Element Example: BODY{ background-color : #666633; } Class Example:.uportal-channel-text{ color : Black; font-family : Georgia, Times, serif; font-size : 12px; }

uPortal Look & Feel More about CSS1 and CSS2 The specifications for Cascading Style Sheets can be found at the W3C web site at The W3C site also lists a number of CSS editors. Many of them are free. I use Top Style Lite. Many browsers do not fully support the specifications, so be mindful and test, test, test… Did I mention test…

uPortal Look & Feel What has been defined?

uPortal Look & Feel Where are the Skins? \webpages \media \org \jasig \portal \layout \tab-column \nested-tables All of the skins are in separate directories under the nested-tables directory

uPortal Look & Feel Where is a sample skin? \webpages \media \org \jasig \portal \layout \tab-column \nested-tables \imm \skin Drill down the directory tree to this location for a sample skin File: imm.css

uPortal Look & Feel How to tweak? Element level additions and deletions are safe… For example:,, etc… Class names should remain constant, as many channel developers are already using them… If they are deleted or renamed, channels using those classes will not present correctly For Example:.uportal-channel-text Class definitions can be changed. The default skins provided have been designed to be functional, use them as a starting point, and have fun…

Media in the default Themes

uPortal Look & Feel What media is in there? Logos Tab Images Channel Controls

uPortal Look & Feel Where are the media elements? \webpages \media \org \jasig \portal \layout \tab-column \nested-tables \imm \controls \focused \institutional \navigation \profile \skin Each Skin has a named directory containing the following directories

uPortal Look & Feel The controls directory These images can all be changed. They represent specific channel events. Note: Standard Icon sizes and web safe colors are recommended i.e. 16x16, 32x32, 64x64

uPortal Look & Feel The focused directory A focused channel is displayed in a special box using 14 small images to draw the boundary. These images can be modified or the XSLT can be changed to render a completely different aesthetic for these channels.

uPortal Look & Feel The institutional directory The institutional directory contains the masthead logos. One in the top table cell and the other just above the tabs. These can both be modified, and the sizes adjusted accordingly in the theme xslt.

uPortal Look & Feel The navigation directory The navigation directory contains 5 images to create the layered effect and shading. These images and tab structures can be changed. Changing the layered effect will require modifications to the theme xslt.

uPortal Look & Feel The profile directory Thumbnail 120x90 Example – 640x480 The profile directory contains 2 images that are used for profile management. When a new theme is developed an example thumbnail and an example image should be placed in a profile directory.

uPortal Look & Feel The skin directory The skin directory contains a thumbnail size snapshot of the portal being drawn using the named skin. This thumbnail is used in the Preferences channel when users have a choice of different skins to apply…

The Theme

uPortal Look & Feel What is the Theme? The theme is an XSL transformation. XSLT is a W3C recommendation. The theme is responsible for outputting markup appropriate for the device addressing the uPortal It is the step in the process where masthead, navigation, channel, and footer aesthetics are established.

uPortal Look & Feel Where are the Theme XSLTs? \webpages \stylesheets \org \jasig \portal \layout \tab-column \deck-of-cards \nested-tables nested-tables.xsl deck-of-cards.xsl

uPortal Look & Feel What is the.sdf file about? The.sdf or Stylesheet Description File is an XML file which provides a short description of the file, some pointers to media, and the names of the parameters the designer wants to persist. An example parameter is the width that a uPortal user sets on a column in the Tab-Column Theme.

uPortal Look & Feel Description File Listing

uPortal Look & Feel The Theme XSLT process… Step One – get the structure XSLT output: Obtain the output XML from the Structure XSLT Step two – Analyze the data Think about the best way to present and interact with it. Think about different window sizes, resizing, etc. Step three – Develop sample markup Design mocks for each markup language & device that you plan to support. Don’t jump right into the XSLT. Step four – Convert the markup to XML The stylesheet will only accept a well formed XML document. Use XHTML, or equivalent. Step five – copy markup into XSLT editor Match on a root element and start designing your new look and feel. Don’t forget to make an.sdf file…

The Structure

uPortal Look & Feel What is the Structure? The structure is an XSL transformation. This transformation has an output of XML The structure is responsible for changing the abstract concept of the user layout into a specific structure In the current distribution of uPortal, it is the step in the process where folders and channels are converted to Tabs, Columns, and channels by a specific set of XSLT rules.

uPortal Look & Feel Implications of modification… The structure stylesheet is a relatively simple stylesheet. Design implications arise from the dependencies created by the structure stylesheet, such as the Preferences channel. This is a large task, but one that is eagerly anticipated.

uPortal Look & Feel Where is the Structure XSLT? \webpages \stylesheets \org \jasig \portal \layout \tab-column The structure stylesheet also has a companion SDF file tab-column.xsl tab-column.sdf

uPortal Look & Feel The Structure SDF…

uPortal Look & Feel The Structure XSLT process… Step One – get the user layout: Obtain a sample user layout XML from the portal Step two – Analyze the data Analyze the structure you want to present Step three – Build the transformation Transform the user layout into a new XML document representing your new structure based on rules Step four – Make a list of the other dependencies List out the channels such as user Preferences that have a dependency on the new structure Step five – Design the dependent channels Using the previous examples design and implement the dependent channels

References & Tools

uPortal Look & Feel References “The” definitive reference… Michael Kay Wrox Press Inc ISBN:

uPortal Look & Feel References Great practical reference… Jeni Tennison Hungry Minds ISBN:

uPortal Look & Feel References Practical use of transformations in Java code Eric Burke O'Reilly & Assoc. ISBN:

uPortal Look & Feel Some tools I have used… These are the applications I am familiar with -- this is not an endorsement XML Document Development IDE: Excelon Stylus Studio XML Spy Cooktop (open source) HTML Markup IDE: Macromedia Dreamweaver Adobe GoLive HTML to XHTML Conversion/Cleanup HTML Tidy (open source) XSLT Development IDE Excelon Stylus Studio XML Spy Cooktop (open source)

The End