SlideShare ist ein Scribd-Unternehmen logo
1 von 39
AD302: Responsive
Application Development for
XPages
Brian Gleeson, IBM
1
Agenda
§ Part 1 – Existing Content
– Bootstrap Intro
– Bootstrap in XPages
– Responsive Application Layout
– Extra Resources
§ Part 2 – Back to the future
– New Controls
– Future Work
–
§§ Part 3 – Wrap Up
– Best Practices
– Conclusions
2
Speaker Introduction
§ Brian Gleeson
– XPages Software Engineer
– XPages Runtime
– Responsive plugin
– Relational Database support
– Dojo
– Themes
– Templates
– Accessibility
–
– OpenNTF contributor
– StackOverflow
– Twitter: @BGleesonIE
–
3
PART 1
Existing Content
4
Introducing Frank
§ Frank's New Task:
– Revamp application
– Update the UI
– Add Mobile Capability
– Enhance homepage
Frank Adams
XPages Developer
5
Solution Identified
§ Bootstrap
– UI framework
– Open Source
– Responsive!
§ Features
– Flexible grid-based layout
– CSS & iconography resources
– Javascript resources: jQuery
§ Very popular, which means
– Updated regularly
– Lots of documentation/online support
– Free & paid addons: themes, templates
getbootstrap.com
6
Solution Identified - Bootstrap
§ Responsive Web Design
– Optimised UX on any device
– Readability, navigation, less scrolling/panning/zooming
§ Benefits
– Code once for all devices
– Time & Cost saving
– Increased reach of application
– Consistent experience
7
Solution Identified - Bootstrap
§ Bootstrap in XPages
– Aug 2013 - Bootstrap4XPages OpenNTF project
– Nov 2014 - Bootstrap added to Extension Library
● com.ibm.xsp.theme.bootstrap plugin
– B4X – 3000+ downloads
–
–
–
§
§ Frank's next steps:
– Install 9.0.1 Extlib, release 10+
–
– Change application theme
–
– Save, rebuild, refresh
–
–
8
XPages Controls Before & After Bootstrap
§ Date Time Picker
9
§ Data View
XPages Controls Before & After Bootstrap 10
XPages Controls Before & After Bootstrap 11
Responsive Application Layout
§ <xe:bootstrapResponsiveConfiguration>
§ Configuration for App Layout control
§ All standard App Layout properties
§ Additional properties
– fixedNavbar
– invertedNavbar
– pageWidth
– collapseLeftColumn
– collapseLeftMenuLabel
– collapseLeftTarget
§
–
12
DEMO
13
Extra Resources - Glyphicons
§ 200 icons
§ Font format
§ Utilised via CSS classes
§ Customisable
§ How to use them?
– Built into many XPages controls
– Add them yourself
§
–
14
Extra Resources - jQuery
§ jQuery v2.1.1 is in XPages ExtLib
– Javascript library required by Bootstrap
§ Add jQuery to XPage application
1. Use bootstrap themes: “Bootstrapv3.2.0” or “Bootstrapv3.2.0_flat”
2. Extend bootstrap theme
3.
4. Create new theme, add jQuery resource
5.
6.
7. Add resource to XPage
–
<theme extends="Bootstrap3.2.0" ... >
...
<resource><content-type>application/x-javascript</content-type>
<href>/.ibmxspres/.extlib/responsive/jquery/jquery-2.1.1/jquery-2.1.1.js</href>
</resource>
15
Extra Resources - jQuery
§ Using jQuery in an XPage – CSJS
1)
2. Add in a script block
–
3. Add in eventHandler
–
1. Add to onClientLoad
16
DEMO
17
PART 2
Back to the Future
18
New Controls 1 - Navbar
§ Navbar = Responsive navigation bar
§
–
§ Available Properties
– fixed
– inverted
– pageWidth
– headerText, headerStyle, headerStyleClass
– navbarLeftLinks
– navbarRightLinks
§
–
19
DEMO
20
New Controls 2 – Simple Responsive App Layout
§ New configuration for Application Layout
– Simplified – 1 banner, left/right facets, and content area
– Responsive
–
21
New Controls 3 – Dashboard
§ Responsive Customisable Dashboard
– Add up to 12 nodes
– 1 Node = Image, Title, Badge, Description
– Use an image or glyphicon
– Customise responsive node sizes
§
–
22
DEMO
23
New Controls 4 - Carousel
§ Slideshow control
§ Configuration
– Any number of Slides
– Customise Responsive Carousel size
–
§
–
§ Carousel properties:
● autoCycle
● slideInterval
● wrapped
● pause
● heightXsmall, heightSmall, heightMedium, heightLarge
–
§
–
24
New Controls 4 - Carousel
●
§ Slide Content:
–
– Image/Background Colour
–
– Heading
–
– Caption
–
– Description
–
– Button Link
25
DEMO
26
Future Work
§ Release Date for controls demo'ed today: Q1 2015
§ Other potential enhancements
– Bootstrap 3.3.x upgrade
– Bootstrap 4 – currently pre-beta
– IE7/IE8 Support?
§
–
§ Additional Responsive Bootstrap XPages Controls
– Suggestions welcome!
§ More fixes
§ Improved Designer tooling
27
PART 3:
Wrap Up
28
Best Practices
§ Use containers to wrap each XPage
§
§
§
–
§ Use grid system – getbootstrap.com/css/#grid
– 12 columns
– .col-xs-X, .col-sm-X, .col-md-X, .col-lg-X
– .col-xs-offset-Y, .col-sm-offset-Y, .col-md-offset-Y, .col-lg-offset-Y
– Nested Columns
<xp:panel styleClass=”container”>
<xp:panel styleClass=”row”>
§
§
§
–
OR <xp:panel styleClass=”container-fluid”>
<xp:panel styleClass=”row”>
§
§
§
–
§
§
§
–<div class="col-sm-9">
<div class="row">
<div class="col-xs-8 col-sm-6"></div>
<div class="col-xs-4 col-sm-6"></div>
§ Use Bootstrap CSS classes
§ Mobile First
29
Best Practices
§ Use CSS media queries
§ Image Shapes
/* Extra Small */ @media (min-width : 480px) { }
/* Small Devices */ @media (min-width : 768px) { }
/* Medium Devices */ @media (min-width : 992px) { }
/* Large Devices */ @media (min-width : 1200px) { }
<img class="img-rounded"> <img class="img-circle"> <img class="img-thumbnail">
§ Create/reuse your own Bootstrap custom control(s)
§ Extend XPages Bootstrap themes
30
Conclusions – Frank's End Product
§ Bootstrap
§ Responsive
§ XPages
Frank Adams
XPages Developer
§ Glyphicons + jQuery
§ New Controls
§§ Big Raise!
§
31
Conclusions – Take Action!
§ Download + install latest XPages ExtLib
§ Change application theme
§
§
–
§ Play around with Bootstrap in XPages
§ Visit getbootstrap.com for documentation/ideas
§ Watch enablement video - http://www.youtube.com/watch?v=XdWYmPLmIrk
§ Read documentation - http://ibm.biz/BdEMdP
§
§
§ Contribute!! - http://github.com/OpenNTF/XPagesExtensionLibrary
32
Resources & Further Reading
§ ExtLib - extlib.openntf.org
§ Bootstrap - getbootstrap.com
§
Community:
§ StackOverflow – stackoverflow.com/questions/tagged/xpages
§ NotesIn9 (David Leedy) – notesin9.com
§ Mark Roden - xomino.com
§ John OldenBurger - xpagesandmore.blogspot.dk/
§
THANK YOU!
Go raibh mile
maith agaibh!
Questions???
Engage Online
§ SocialBiz User Group socialbizug.org
– Join the epicenter of Notes and Collaboration user groups
§ Social Business Insights blog ibm.com/blogs/socialbusiness
– Read and engage with our bloggers
§ Follow us on Twitter
– @IBMConnect and @IBMSocialBiz
§ LinkedIn http://bit.ly/SBComm
– Participate in the IBM Social Business group on LinkedIn
§ Facebook https://www.facebook.com/IBMConnected
– Like IBM Social Business on Facebook
Notices and Disclaimers
Copyright © 2015 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission from IBM.
U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM.
Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of initial publication and could include
unintentional technical or typographical errors. IBM shall have no responsibility to update this information. THIS DOCUMENT IS DISTRIBUTED "AS IS" WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED.
IN NO EVENT SHALL IBM BE LIABLE FOR ANY DAMAGE ARISING FROM THE USE OF THIS INFORMATION, INCLUDING BUT NOT LIMITED TO, LOSS OF DATA, BUSINESS INTERRUPTION, LOSS OF
PROFIT OR LOSS OF OPPORTUNITY. IBM products and services are warranted according to the terms and conditions of the agreements under which they are provided.
Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without notice.
Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are presented as illustrations of how those customers have used IBM products and the results
they may have achieved. Actual performance, cost, savings or other results in other operating environments may vary.
References in this document to IBM products, programs, or services does not imply that IBM intends to make such products, programs or services available in all countries in which IBM operates or does business.
Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not necessarily reflect the views of IBM. All materials and discussions are provided for informational
purposes only, and are neither intended to, nor shall constitute legal or other guidance or advice to any individual participant or their specific situation.
It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal counsel as to the identification and interpretation of any relevant laws and regulatory
requirements that may affect the customer’s business and any actions the customer may need to take to comply with such laws. IBM does not provide legal advice or represent or warrant that its services or products
will ensure that the customer is in compliance with any law.
Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products in connection with
this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers
of those products. IBM does not warrant the quality of any third-party products, or the ability of any such third-party products to interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES,
EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
The provision of the information contained herein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other intellectual property right.
IBM, the IBM logo, ibm.com, BrassRing®, Connections™, Domino®, Global Business Services®, Global Technology Services®, SmartCloud®, Social Business®, Kenexa®, Notes®, PartnerWorld®, Prove It!®,
PureSystems®, Sametime®, Verse™, Watson™, WebSphere®, Worklight®, are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Other product and service
names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.
Presentation template slides follow
§ Color Palette
Statistical Chart Layout
Sample Bar Chart

Weitere ähnliche Inhalte

Was ist angesagt?

SHOW301 - Make Your IBM Connections Deployment Your Own: Customize It!
SHOW301 - Make Your IBM Connections Deployment Your Own: Customize It!SHOW301 - Make Your IBM Connections Deployment Your Own: Customize It!
SHOW301 - Make Your IBM Connections Deployment Your Own: Customize It!
Klaus Bild
 

Was ist angesagt? (20)

Expanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityExpanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate Usability
 
Bootstrap4XPages webinar
Bootstrap4XPages webinarBootstrap4XPages webinar
Bootstrap4XPages webinar
 
Ask the XPages Experts
Ask the XPages ExpertsAsk the XPages Experts
Ask the XPages Experts
 
XPages Application Layout Control - TLCC March, 2014 Webinar
XPages Application Layout Control - TLCC March, 2014 WebinarXPages Application Layout Control - TLCC March, 2014 Webinar
XPages Application Layout Control - TLCC March, 2014 Webinar
 
Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app
 
Hack IBM Connections - Advance Use - Iframes & more...
Hack IBM Connections - Advance Use - Iframes & more...Hack IBM Connections - Advance Use - Iframes & more...
Hack IBM Connections - Advance Use - Iframes & more...
 
Marty, You're Just Not Thinking Fourth Dimensionally
Marty, You're Just Not Thinking Fourth DimensionallyMarty, You're Just Not Thinking Fourth Dimensionally
Marty, You're Just Not Thinking Fourth Dimensionally
 
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
 
DEV-1467 - Darwino
DEV-1467 - DarwinoDEV-1467 - Darwino
DEV-1467 - Darwino
 
Presenting Data – An Alternative to the View Control
Presenting Data – An Alternative to the View ControlPresenting Data – An Alternative to the View Control
Presenting Data – An Alternative to the View Control
 
Making Rational HATS a Strategic Investment
Making Rational HATS a Strategic InvestmentMaking Rational HATS a Strategic Investment
Making Rational HATS a Strategic Investment
 
SHOW301 - Make Your IBM Connections Deployment Your Own: Customize It!
SHOW301 - Make Your IBM Connections Deployment Your Own: Customize It!SHOW301 - Make Your IBM Connections Deployment Your Own: Customize It!
SHOW301 - Make Your IBM Connections Deployment Your Own: Customize It!
 
Everything XControls
Everything XControlsEverything XControls
Everything XControls
 
Extension Library - Viagra for XPages
Extension Library - Viagra for XPagesExtension Library - Viagra for XPages
Extension Library - Viagra for XPages
 
Getting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino APIGetting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino API
 
Connections customization lite
Connections customization liteConnections customization lite
Connections customization lite
 
MAS202 - Customizing IBM Connections - Downloadable
MAS202 - Customizing IBM Connections - DownloadableMAS202 - Customizing IBM Connections - Downloadable
MAS202 - Customizing IBM Connections - Downloadable
 
Optimizing Browser Rendering
Optimizing Browser RenderingOptimizing Browser Rendering
Optimizing Browser Rendering
 
XPages: No Experience Needed
XPages: No Experience NeededXPages: No Experience Needed
XPages: No Experience Needed
 
Responsive Websites and Grid-Based Layouts by Gabriel Walt
Responsive Websites and Grid-Based Layouts by Gabriel Walt Responsive Websites and Grid-Based Layouts by Gabriel Walt
Responsive Websites and Grid-Based Layouts by Gabriel Walt
 

Andere mochten auch

Customizing the Mobile Connections App
Customizing the Mobile Connections AppCustomizing the Mobile Connections App
Customizing the Mobile Connections App
Prolifics
 

Andere mochten auch (12)

BP205: There’s an API for that! Why and how to build on the IBM Connections P...
BP205: There’s an API for that! Why and how to build on the IBM Connections P...BP205: There’s an API for that! Why and how to build on the IBM Connections P...
BP205: There’s an API for that! Why and how to build on the IBM Connections P...
 
The future of web development write once, run everywhere with angular js an...
The future of web development   write once, run everywhere with angular js an...The future of web development   write once, run everywhere with angular js an...
The future of web development write once, run everywhere with angular js an...
 
IBM ConnectED 2015 BP110: Mastering Your Logs, Everything You Should Know abo...
IBM ConnectED 2015 BP110: Mastering Your Logs, Everything You Should Know abo...IBM ConnectED 2015 BP110: Mastering Your Logs, Everything You Should Know abo...
IBM ConnectED 2015 BP110: Mastering Your Logs, Everything You Should Know abo...
 
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
 
IBM ConnectED 2015 - MAS103 XPages Performance and Scalability
IBM ConnectED 2015 - MAS103 XPages Performance and ScalabilityIBM ConnectED 2015 - MAS103 XPages Performance and Scalability
IBM ConnectED 2015 - MAS103 XPages Performance and Scalability
 
BP201 Creating Your Own Connections Confection - Getting The Flavour Right
BP201 Creating Your Own Connections Confection - Getting The Flavour RightBP201 Creating Your Own Connections Confection - Getting The Flavour Right
BP201 Creating Your Own Connections Confection - Getting The Flavour Right
 
Connections Directory Integration: A Tour Through Best Practices for Directo...
Connections Directory Integration:  A Tour Through Best Practices for Directo...Connections Directory Integration:  A Tour Through Best Practices for Directo...
Connections Directory Integration: A Tour Through Best Practices for Directo...
 
ConnectED 2015 - IBM Notes Traveler Daily Business
ConnectED 2015 - IBM Notes Traveler Daily BusinessConnectED 2015 - IBM Notes Traveler Daily Business
ConnectED 2015 - IBM Notes Traveler Daily Business
 
External Users Accessing Connections
External Users Accessing Connections External Users Accessing Connections
External Users Accessing Connections
 
MAS202 - Customizing IBM Connections
MAS202 - Customizing IBM ConnectionsMAS202 - Customizing IBM Connections
MAS202 - Customizing IBM Connections
 
Beyond XPages
Beyond XPagesBeyond XPages
Beyond XPages
 
Customizing the Mobile Connections App
Customizing the Mobile Connections AppCustomizing the Mobile Connections App
Customizing the Mobile Connections App
 

Ähnlich wie IBM ConnectED 2015 - AD302 - Responsive Application Development for XPages

Codemotion rome 2015 bluemix lab tutorial -- Codemotion Rome 2015
Codemotion rome 2015   bluemix lab tutorial -- Codemotion Rome 2015Codemotion rome 2015   bluemix lab tutorial -- Codemotion Rome 2015
Codemotion rome 2015 bluemix lab tutorial -- Codemotion Rome 2015
Codemotion
 
Customize all the Things! How to customize Windows and Web applications.
Customize all the Things! How to customize Windows and Web applications.Customize all the Things! How to customize Windows and Web applications.
Customize all the Things! How to customize Windows and Web applications.
Jason Conger
 

Ähnlich wie IBM ConnectED 2015 - AD302 - Responsive Application Development for XPages (20)

Java and the GPU - Everything You Need To Know
Java and the GPU - Everything You Need To KnowJava and the GPU - Everything You Need To Know
Java and the GPU - Everything You Need To Know
 
Preview Cognos Analytics Version 11
Preview Cognos Analytics Version 11Preview Cognos Analytics Version 11
Preview Cognos Analytics Version 11
 
Codemotion Rome 2015 Bluemix Lab Tutorial
Codemotion Rome 2015 Bluemix Lab TutorialCodemotion Rome 2015 Bluemix Lab Tutorial
Codemotion Rome 2015 Bluemix Lab Tutorial
 
12-factor applications using WAS Liberty, IBM Bluemix, and Docker
12-factor applications using WAS Liberty, IBM Bluemix, and Docker12-factor applications using WAS Liberty, IBM Bluemix, and Docker
12-factor applications using WAS Liberty, IBM Bluemix, and Docker
 
ICS usergroup dev day2014_application development für die ibm smartcloud for ...
ICS usergroup dev day2014_application development für die ibm smartcloud for ...ICS usergroup dev day2014_application development für die ibm smartcloud for ...
ICS usergroup dev day2014_application development für die ibm smartcloud for ...
 
IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...
IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...
IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...
 
Secure Development on the Salesforce Platform - Part I
Secure Development on the Salesforce Platform - Part ISecure Development on the Salesforce Platform - Part I
Secure Development on the Salesforce Platform - Part I
 
Building out a Microservices Architecture with WebSphere Liberty Profile and ...
Building out a Microservices Architecture with WebSphere Liberty Profile and ...Building out a Microservices Architecture with WebSphere Liberty Profile and ...
Building out a Microservices Architecture with WebSphere Liberty Profile and ...
 
DEV-1268: IBM Connections Adminblast – IBM Connect 2017
DEV-1268: IBM Connections Adminblast – IBM Connect 2017DEV-1268: IBM Connections Adminblast – IBM Connect 2017
DEV-1268: IBM Connections Adminblast – IBM Connect 2017
 
Dreamforce 14 : Responsive Design with Visualforce and Twitter Bootstrap
Dreamforce 14 : Responsive Design with Visualforce and Twitter BootstrapDreamforce 14 : Responsive Design with Visualforce and Twitter Bootstrap
Dreamforce 14 : Responsive Design with Visualforce and Twitter Bootstrap
 
Codemotion rome 2015 bluemix lab tutorial -- Codemotion Rome 2015
Codemotion rome 2015   bluemix lab tutorial -- Codemotion Rome 2015Codemotion rome 2015   bluemix lab tutorial -- Codemotion Rome 2015
Codemotion rome 2015 bluemix lab tutorial -- Codemotion Rome 2015
 
How to Containerize WebSphere Application Server Traditional, and Why You Mig...
How to Containerize WebSphere Application Server Traditional, and Why You Mig...How to Containerize WebSphere Application Server Traditional, and Why You Mig...
How to Containerize WebSphere Application Server Traditional, and Why You Mig...
 
DEV-1269: Best and Worst Practices for Deploying IBM Connections – IBM Conne...
DEV-1269: Best and Worst Practices for Deploying IBM Connections  – IBM Conne...DEV-1269: Best and Worst Practices for Deploying IBM Connections  – IBM Conne...
DEV-1269: Best and Worst Practices for Deploying IBM Connections – IBM Conne...
 
Customize all the Things! How to customize Windows and Web applications.
Customize all the Things! How to customize Windows and Web applications.Customize all the Things! How to customize Windows and Web applications.
Customize all the Things! How to customize Windows and Web applications.
 
IBM Connections Adminblast - Connect17 (DEV 1268)
IBM Connections Adminblast - Connect17 (DEV 1268)IBM Connections Adminblast - Connect17 (DEV 1268)
IBM Connections Adminblast - Connect17 (DEV 1268)
 
TI 1641 - delivering enterprise software at the speed of cloud
TI 1641 - delivering enterprise software at the speed of cloudTI 1641 - delivering enterprise software at the speed of cloud
TI 1641 - delivering enterprise software at the speed of cloud
 
Session 6050
Session 6050Session 6050
Session 6050
 
Informix REST API Tutorial
Informix REST API TutorialInformix REST API Tutorial
Informix REST API Tutorial
 
Highly successful performance tuning of an informix database
Highly successful performance tuning of an informix databaseHighly successful performance tuning of an informix database
Highly successful performance tuning of an informix database
 
The Bluemix Quadruple Threat
The Bluemix Quadruple ThreatThe Bluemix Quadruple Threat
The Bluemix Quadruple Threat
 

Kürzlich hochgeladen

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Kürzlich hochgeladen (20)

Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 

IBM ConnectED 2015 - AD302 - Responsive Application Development for XPages

  • 1. AD302: Responsive Application Development for XPages Brian Gleeson, IBM 1
  • 2. Agenda § Part 1 – Existing Content – Bootstrap Intro – Bootstrap in XPages – Responsive Application Layout – Extra Resources § Part 2 – Back to the future – New Controls – Future Work – §§ Part 3 – Wrap Up – Best Practices – Conclusions 2
  • 3. Speaker Introduction § Brian Gleeson – XPages Software Engineer – XPages Runtime – Responsive plugin – Relational Database support – Dojo – Themes – Templates – Accessibility – – OpenNTF contributor – StackOverflow – Twitter: @BGleesonIE – 3
  • 5. Introducing Frank § Frank's New Task: – Revamp application – Update the UI – Add Mobile Capability – Enhance homepage Frank Adams XPages Developer 5
  • 6. Solution Identified § Bootstrap – UI framework – Open Source – Responsive! § Features – Flexible grid-based layout – CSS & iconography resources – Javascript resources: jQuery § Very popular, which means – Updated regularly – Lots of documentation/online support – Free & paid addons: themes, templates getbootstrap.com 6
  • 7. Solution Identified - Bootstrap § Responsive Web Design – Optimised UX on any device – Readability, navigation, less scrolling/panning/zooming § Benefits – Code once for all devices – Time & Cost saving – Increased reach of application – Consistent experience 7
  • 8. Solution Identified - Bootstrap § Bootstrap in XPages – Aug 2013 - Bootstrap4XPages OpenNTF project – Nov 2014 - Bootstrap added to Extension Library ● com.ibm.xsp.theme.bootstrap plugin – B4X – 3000+ downloads – – – § § Frank's next steps: – Install 9.0.1 Extlib, release 10+ – – Change application theme – – Save, rebuild, refresh – – 8
  • 9. XPages Controls Before & After Bootstrap § Date Time Picker 9
  • 10. § Data View XPages Controls Before & After Bootstrap 10
  • 11. XPages Controls Before & After Bootstrap 11
  • 12. Responsive Application Layout § <xe:bootstrapResponsiveConfiguration> § Configuration for App Layout control § All standard App Layout properties § Additional properties – fixedNavbar – invertedNavbar – pageWidth – collapseLeftColumn – collapseLeftMenuLabel – collapseLeftTarget § – 12
  • 14. Extra Resources - Glyphicons § 200 icons § Font format § Utilised via CSS classes § Customisable § How to use them? – Built into many XPages controls – Add them yourself § – 14
  • 15. Extra Resources - jQuery § jQuery v2.1.1 is in XPages ExtLib – Javascript library required by Bootstrap § Add jQuery to XPage application 1. Use bootstrap themes: “Bootstrapv3.2.0” or “Bootstrapv3.2.0_flat” 2. Extend bootstrap theme 3. 4. Create new theme, add jQuery resource 5. 6. 7. Add resource to XPage – <theme extends="Bootstrap3.2.0" ... > ... <resource><content-type>application/x-javascript</content-type> <href>/.ibmxspres/.extlib/responsive/jquery/jquery-2.1.1/jquery-2.1.1.js</href> </resource> 15
  • 16. Extra Resources - jQuery § Using jQuery in an XPage – CSJS 1) 2. Add in a script block – 3. Add in eventHandler – 1. Add to onClientLoad 16
  • 18. PART 2 Back to the Future 18
  • 19. New Controls 1 - Navbar § Navbar = Responsive navigation bar § – § Available Properties – fixed – inverted – pageWidth – headerText, headerStyle, headerStyleClass – navbarLeftLinks – navbarRightLinks § – 19
  • 21. New Controls 2 – Simple Responsive App Layout § New configuration for Application Layout – Simplified – 1 banner, left/right facets, and content area – Responsive – 21
  • 22. New Controls 3 – Dashboard § Responsive Customisable Dashboard – Add up to 12 nodes – 1 Node = Image, Title, Badge, Description – Use an image or glyphicon – Customise responsive node sizes § – 22
  • 24. New Controls 4 - Carousel § Slideshow control § Configuration – Any number of Slides – Customise Responsive Carousel size – § – § Carousel properties: ● autoCycle ● slideInterval ● wrapped ● pause ● heightXsmall, heightSmall, heightMedium, heightLarge – § – 24
  • 25. New Controls 4 - Carousel ● § Slide Content: – – Image/Background Colour – – Heading – – Caption – – Description – – Button Link 25
  • 27. Future Work § Release Date for controls demo'ed today: Q1 2015 § Other potential enhancements – Bootstrap 3.3.x upgrade – Bootstrap 4 – currently pre-beta – IE7/IE8 Support? § – § Additional Responsive Bootstrap XPages Controls – Suggestions welcome! § More fixes § Improved Designer tooling 27
  • 29. Best Practices § Use containers to wrap each XPage § § § – § Use grid system – getbootstrap.com/css/#grid – 12 columns – .col-xs-X, .col-sm-X, .col-md-X, .col-lg-X – .col-xs-offset-Y, .col-sm-offset-Y, .col-md-offset-Y, .col-lg-offset-Y – Nested Columns <xp:panel styleClass=”container”> <xp:panel styleClass=”row”> § § § – OR <xp:panel styleClass=”container-fluid”> <xp:panel styleClass=”row”> § § § – § § § –<div class="col-sm-9"> <div class="row"> <div class="col-xs-8 col-sm-6"></div> <div class="col-xs-4 col-sm-6"></div> § Use Bootstrap CSS classes § Mobile First 29
  • 30. Best Practices § Use CSS media queries § Image Shapes /* Extra Small */ @media (min-width : 480px) { } /* Small Devices */ @media (min-width : 768px) { } /* Medium Devices */ @media (min-width : 992px) { } /* Large Devices */ @media (min-width : 1200px) { } <img class="img-rounded"> <img class="img-circle"> <img class="img-thumbnail"> § Create/reuse your own Bootstrap custom control(s) § Extend XPages Bootstrap themes 30
  • 31. Conclusions – Frank's End Product § Bootstrap § Responsive § XPages Frank Adams XPages Developer § Glyphicons + jQuery § New Controls §§ Big Raise! § 31
  • 32. Conclusions – Take Action! § Download + install latest XPages ExtLib § Change application theme § § – § Play around with Bootstrap in XPages § Visit getbootstrap.com for documentation/ideas § Watch enablement video - http://www.youtube.com/watch?v=XdWYmPLmIrk § Read documentation - http://ibm.biz/BdEMdP § § § Contribute!! - http://github.com/OpenNTF/XPagesExtensionLibrary 32
  • 33. Resources & Further Reading § ExtLib - extlib.openntf.org § Bootstrap - getbootstrap.com § Community: § StackOverflow – stackoverflow.com/questions/tagged/xpages § NotesIn9 (David Leedy) – notesin9.com § Mark Roden - xomino.com § John OldenBurger - xpagesandmore.blogspot.dk/ §
  • 34. THANK YOU! Go raibh mile maith agaibh! Questions???
  • 35. Engage Online § SocialBiz User Group socialbizug.org – Join the epicenter of Notes and Collaboration user groups § Social Business Insights blog ibm.com/blogs/socialbusiness – Read and engage with our bloggers § Follow us on Twitter – @IBMConnect and @IBMSocialBiz § LinkedIn http://bit.ly/SBComm – Participate in the IBM Social Business group on LinkedIn § Facebook https://www.facebook.com/IBMConnected – Like IBM Social Business on Facebook
  • 36. Notices and Disclaimers Copyright © 2015 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission from IBM. U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM. Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of initial publication and could include unintentional technical or typographical errors. IBM shall have no responsibility to update this information. THIS DOCUMENT IS DISTRIBUTED "AS IS" WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED. IN NO EVENT SHALL IBM BE LIABLE FOR ANY DAMAGE ARISING FROM THE USE OF THIS INFORMATION, INCLUDING BUT NOT LIMITED TO, LOSS OF DATA, BUSINESS INTERRUPTION, LOSS OF PROFIT OR LOSS OF OPPORTUNITY. IBM products and services are warranted according to the terms and conditions of the agreements under which they are provided. Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without notice. Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual performance, cost, savings or other results in other operating environments may vary. References in this document to IBM products, programs, or services does not imply that IBM intends to make such products, programs or services available in all countries in which IBM operates or does business. Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not necessarily reflect the views of IBM. All materials and discussions are provided for informational purposes only, and are neither intended to, nor shall constitute legal or other guidance or advice to any individual participant or their specific situation. It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal counsel as to the identification and interpretation of any relevant laws and regulatory requirements that may affect the customer’s business and any actions the customer may need to take to comply with such laws. IBM does not provide legal advice or represent or warrant that its services or products will ensure that the customer is in compliance with any law. Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the quality of any third-party products, or the ability of any such third-party products to interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. The provision of the information contained herein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other intellectual property right. IBM, the IBM logo, ibm.com, BrassRing®, Connections™, Domino®, Global Business Services®, Global Technology Services®, SmartCloud®, Social Business®, Kenexa®, Notes®, PartnerWorld®, Prove It!®, PureSystems®, Sametime®, Verse™, Watson™, WebSphere®, Worklight®, are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.
  • 37. Presentation template slides follow § Color Palette