SlideShare a Scribd company logo
1 of 37
Download to read offline
 
	
  
	
  
Getting Started with Mobile Development
Part	
  4:	
  May	
  7,	
  2014	
  
Introducing	
  
•  Tools	
  for	
  collabora<ve	
  compu<ng	
  in	
  mid-­‐size	
  and	
  large	
  
enterprises,	
  primarily	
  for	
  IBM	
  Notes	
  
•  Easy-­‐to-­‐use	
  tools	
  for	
  developers	
  and	
  administrators	
  
•  Unplugged:	
  easy	
  mobiliza<on	
  of	
  Notes	
  apps	
  to	
  Blackberry,	
  
Android	
  and	
  iOS	
  
•  2300+	
  ac<ve	
  customers,	
  47	
  countries	
  
•  Offices	
  in	
  US,	
  UK	
  and	
  Japan	
  
•  Your	
  mobile	
  Domino	
  server:	
  take	
  your	
  Notes	
  apps	
  with	
  
you!	
  
•  End-­‐users	
  access	
  Notes	
  applica<ons	
  from	
  mobile	
  devices	
  
whether	
  online	
  or	
  offline	
  
•  Leverages	
  exis<ng	
  skills	
  and	
  technology	
  –	
  XPages	
  –	
  a	
  
replica<on	
  model	
  you	
  already	
  know	
  
•  Unplugged	
  3.1	
  recently	
  released	
  
Teamstudio	
  Unplugged	
  
•  	
  	
  	
  	
  	
  	
  	
  	
  Con<nuity	
  –	
  Mobile	
  offline	
  access	
  to	
  BCM	
  
	
  programs	
  
•  	
  	
  	
  	
  	
  	
  	
  	
  OneView	
  Approvals	
  –	
  Expense	
  approvals;	
  
	
  anywhere,	
  any<me	
  
•  	
  	
  	
  	
  	
  	
  	
  	
  CustomerView	
  –	
  lightweight	
  CRM	
  
	
  framework	
  for	
  field	
  sales	
  and	
  field	
  service	
  
	
  teams	
  
•  Contacts	
  –	
  customer	
  informa<on	
  database	
  
•  Ac<vi<es	
  –	
  customer	
  ac<vity	
  log	
  
•  Media	
  –	
  mobile	
  offline	
  file	
  storage	
  and	
  access	
  
Unplugged	
  Template	
  Apps	
  
•  Next	
  webinar	
  with	
  TLCC:	
  Dante’s	
  Nine	
  Circles	
  of	
  XPages	
  Heaven	
  
•  May	
  13	
  
•  Next	
  Wireless	
  Wednesdays	
  webinar:	
  
•  June	
  4	
  
•  Promo6on:	
  Get	
  our	
  IBM	
  Notes	
  Upgrade	
  Pack	
  by	
  May	
  31	
  and	
  
receive	
  5	
  free	
  Unplugged	
  licenses	
  
jQuery Mobile
Agenda
Introduction
Installation
Development
Tips and Tricks
1
2
3
2
4
Wireless Wednesdays
 A series of webinars where we discuss XPages mobile
development for the enterprise
 In January we looked at an introduction to mobile
 In February, at Connect, we talked about creating the
Unplugged Controls project
 In March we looked at Dojo Mobile
 In April we looked at Unplugged Controls
 This month we’re talking jQuery Mobile
3
Introduction
 jQuery Mobile (JQM) is an extension to jQuery, the most
popular JavaScript framework available today
 Huge number of demos and options to get you going, but for
simple applications you can have something setup very quickly
–  With a few caveats for XPages
 Custom theming is available by default so you can style your
UI without having to touch CSS directly
 Historically quite slow performance wise, but this is getting
better
4
Installation
 Here be a few dragons!
 Current version of JQM is 1.4.2
–  Our demo today is based on 1.3
 Even with 1.3 we have to do some work to get JQM to co-
exist with Dojo
–  We have to either change the JQM code or carefully
configure our XPage to work with Dojo
 So you’ll need to download version 1.3.2 of jQuery Mobile
and version 1.9.1 of jQuery from their respective websites
5
Installation (option 1)
 You will need to edit the first few lines of
jquery.mobile-1.3.2.js from this:
 To this:
6
Installation (option 1)
 Now we can copy the jQuery and JQM files into our
application
 The images need to be put into the pseudo directory
“images/”
7
Installation (option 1)
 Firstly we’ll add the required resources to our layout custom
control
 The order is important, so jQuery first, then JQM
 Finally it’s best practice to set the viewport scaling
instructions
8
Installation (Option 2)
<xp:this.properties>
<xp:parameter
name="xsp.resources.aggregate"
value="true" />
</xp:this.properties>
<xp:this.resources>
<xp:styleSheet
href="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.css" />
<xp:headTag
tagName="script">
<xp:this.attributes>
<xp:parameter
name="type"
value="text/javascript" />
<xp:parameter
name="src"
value="http://code.jquery.com/jquery-1.9.1.min.js" />
</xp:this.attributes>
</xp:headTag>
 In our layout custom control we could force jQuery and JQM
to load before Dojo
Installation (Option 2)
<xp:headTag
tagName="script">
<xp:this.attributes>
<xp:parameter
name="type"
value="text/javascript" />
<xp:parameter
name="src"
value="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js" />
</xp:this.attributes>
</xp:headTag>
 From blog@hasselba.ch
 More details at: http://hasselba.ch/blog/?p=1216
 As with option 1, we’d need to set the viewport
Create layout custom control
 Next we create the header and footer bars
 JQM uses attributes in the HTML tags to define how an
element will be displayed.
–  In this case this div is being marked as the header that will
be fixed to the top of the screen
–  Inside the header we have a title set via a custom property
–  And a “New Contact” button that will show an icon and be
right aligned
11
Create layout custom control
 The footer bar will have a navbar in it to allow us to switch
views
 Note also the data-ajax attributes on the links. False means
when clicked the entire page will be loaded
12
Create layout custom control
 Now we add the rest of the structure of the page
13
CreateViews
 We want two views, to show contacts by first name and last
name
 So we’ll create a custom control to display the data, called
personview
14
CreateViews
 We need to add our own view navigation
15
CreateViews
 Now we can use that custom control in the two view XPages
 This is our home XPage
–  For the lastname XPage, we just need to change the name
of the view and the title
16
TestViews
 We can now test our views
17
Create Contact Form
 Now we need to display our contact form for when the user
taps a view entry
 First we’ll add a normal document data binding
 And then the layout custom control with a panel inside
18
Create Contact Form
 Inside the panel, we can start adding fields
 A plain text field is very simple, the only difference from a
normal field is the addition of the data-clear-btn attribute
 We can change the keyboard type as normal for email, tel etc
19
Create Contact Form
 Date fields will need to have the convert date/time pattern
defined as the native picker will be displayed on iOS and
Android
20
Create Contact Form
 The Submit and Cancel buttons are normal links, but again we
add some attributes for styling
21
Test Contact Form
 Now we can test our form in the browsers
22
Themes
 http://themeroller.jquerymobile.com
23
Upgrading to JQM 1.4.x
 Big changes in 1.4 preparing the way for 1.5
–  Many depricated features will not be triggered/usable in 1.5
 Affected Components:
–  Buttons
–  Icons
–  Navigation
–  CSS
–  Structure
–  Pretty much everything!?!
24
Upgrading to jQuery Mobile 1.4.x
 Biggest impacts are probably:
–  pageshow: deprecated
•  Old:
$( document ).on( "pageshow", function( event, ui )
{...});
•  New:
$( document ).on( "pagecontainershow",
function( event, ui ) {...});
Upgrading to jQuery Mobile 1.4.x
 Themes included now consist of only ‘a’ (dark) and ‘b’ (light) –
they want you to use the theme roller
1.3.1 1.4.2
Upgrading to jQuery Mobile 1.4.x
 Full upgrade guide available at:
http://jquerymobile.com/upgrade-guide/1.4/
Conclusions
 jQuery Mobile is far and away the most popular mobile web
development framework out there
–  Lots of addons and resources available
–  Simple HTML and JavaScript
–  Great documentation
–  Easy to theme
–  Works both online (in the browser) and offline in
Unplugged app
 But…
28
Conclusions
 Integration into Domino and co-existence with Dojo is
problematic
–  Pre Dojo 1.8 everything is fine so if you’re on an older
version of Domino then you can ignore this
–  You’re downloading jQuery, JQM and Dojo. Over a slow
line this could be an issue.
•  You can disable Dojo but you lose a lot of the standard
XPages functionality
 Performance of JQM is still a consideration for lower
powered devices
29
Unplugged Controls User Group
 A virtual user group meets first Thursday of each month
 Next event tomorrow:
–  http://unplugged.github.io/unplugged-controls/320/
UserGroup.html
–  Rich will be talking about:
•  Tabbed Footer control
•  Alerts and Dialogs
30
Next Release of Unplugged Controls
 Version 3.3 will be released in June
 We’re currently working on the scope but the list of possible
items at the moment are:
–  New UnpAlert control
–  Improvements to Accordion control
–  Bug fixes
–  Anything else you want to add…
31
32

More Related Content

What's hot

Connect 2014 SHOW102: XPages Still No Experience Necessary
Connect 2014 SHOW102: XPages Still No Experience NecessaryConnect 2014 SHOW102: XPages Still No Experience Necessary
Connect 2014 SHOW102: XPages Still No Experience Necessarypanagenda
 
Entwicker camp2007 blackberry-workshop
Entwicker camp2007 blackberry-workshopEntwicker camp2007 blackberry-workshop
Entwicker camp2007 blackberry-workshopBill Buchan
 
Angular Project Report
 Angular Project Report Angular Project Report
Angular Project ReportKodexhub
 
Develop Mobile App Using Android Lollipop
Develop Mobile App Using Android LollipopDevelop Mobile App Using Android Lollipop
Develop Mobile App Using Android LollipopEdureka!
 
AD201 - IBM Domino Application Development Today And Tomorrow
AD201 - IBM Domino Application Development Today And TomorrowAD201 - IBM Domino Application Development Today And Tomorrow
AD201 - IBM Domino Application Development Today And Tomorrowpjanzen11
 
Power Point 2010
Power Point 2010 Power Point 2010
Power Point 2010 Vasu Jain
 
Introduction to XAML and WPF
Introduction to XAML and WPFIntroduction to XAML and WPF
Introduction to XAML and WPFDoncho Minkov
 
XPages: No Experience Needed
XPages: No Experience NeededXPages: No Experience Needed
XPages: No Experience NeededKathy Brown
 
Thinking Outside the LMS - Taking SCORM to where people learn today
Thinking Outside the LMS - Taking SCORM to where people learn todayThinking Outside the LMS - Taking SCORM to where people learn today
Thinking Outside the LMS - Taking SCORM to where people learn todayRustici Software
 
Windows Presentation Foundation
Windows Presentation Foundation  Windows Presentation Foundation
Windows Presentation Foundation Deepika Chaudhary
 
Building DotNetNuke Modules
Building DotNetNuke ModulesBuilding DotNetNuke Modules
Building DotNetNuke ModulesEngage Software
 
2014_report
2014_report2014_report
2014_reportK SEZER
 
Developing a World Class Web 2.0 Application with XPages
Developing a World Class Web 2.0 Application with XPagesDeveloping a World Class Web 2.0 Application with XPages
Developing a World Class Web 2.0 Application with XPagesBruce Elgort
 

What's hot (16)

WPF
WPFWPF
WPF
 
Connect 2014 SHOW102: XPages Still No Experience Necessary
Connect 2014 SHOW102: XPages Still No Experience NecessaryConnect 2014 SHOW102: XPages Still No Experience Necessary
Connect 2014 SHOW102: XPages Still No Experience Necessary
 
Entwicker camp2007 blackberry-workshop
Entwicker camp2007 blackberry-workshopEntwicker camp2007 blackberry-workshop
Entwicker camp2007 blackberry-workshop
 
Angular Project Report
 Angular Project Report Angular Project Report
Angular Project Report
 
Develop Mobile App Using Android Lollipop
Develop Mobile App Using Android LollipopDevelop Mobile App Using Android Lollipop
Develop Mobile App Using Android Lollipop
 
AD201 - IBM Domino Application Development Today And Tomorrow
AD201 - IBM Domino Application Development Today And TomorrowAD201 - IBM Domino Application Development Today And Tomorrow
AD201 - IBM Domino Application Development Today And Tomorrow
 
Power Point 2010
Power Point 2010 Power Point 2010
Power Point 2010
 
Introduction to XAML and WPF
Introduction to XAML and WPFIntroduction to XAML and WPF
Introduction to XAML and WPF
 
Windows 8
Windows 8Windows 8
Windows 8
 
XPages: No Experience Needed
XPages: No Experience NeededXPages: No Experience Needed
XPages: No Experience Needed
 
Thinking Outside the LMS - Taking SCORM to where people learn today
Thinking Outside the LMS - Taking SCORM to where people learn todayThinking Outside the LMS - Taking SCORM to where people learn today
Thinking Outside the LMS - Taking SCORM to where people learn today
 
Windows Presentation Foundation
Windows Presentation Foundation  Windows Presentation Foundation
Windows Presentation Foundation
 
Building DotNetNuke Modules
Building DotNetNuke ModulesBuilding DotNetNuke Modules
Building DotNetNuke Modules
 
2014_report
2014_report2014_report
2014_report
 
Acknowledgement
AcknowledgementAcknowledgement
Acknowledgement
 
Developing a World Class Web 2.0 Application with XPages
Developing a World Class Web 2.0 Application with XPagesDeveloping a World Class Web 2.0 Application with XPages
Developing a World Class Web 2.0 Application with XPages
 

Similar to Wireless Wednesdays: Part 4

Wireless Wednesdays: Part 3
Wireless Wednesdays: Part 3Wireless Wednesdays: Part 3
Wireless Wednesdays: Part 3Teamstudio
 
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...Paul Della-Nebbia
 
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!Howard Greenberg
 
DanNotes XPages Mobile Controls
DanNotes XPages Mobile ControlsDanNotes XPages Mobile Controls
DanNotes XPages Mobile ControlsPaul Withers
 
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondAD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondTony McGuckin
 
jQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPagesjQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPagesTeamstudio
 
AD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development FuturesAD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development FuturesEamon Muldoon
 
It's Not Infernal: Dante's Nine Circles of XPages Heaven
It's Not Infernal: Dante's Nine Circles of XPages HeavenIt's Not Infernal: Dante's Nine Circles of XPages Heaven
It's Not Infernal: Dante's Nine Circles of XPages HeavenTeamstudio
 
A report on mvc using the information
A report on mvc using the informationA report on mvc using the information
A report on mvc using the informationToushik Paul
 
Wireless Wednesdays: Beyond the Basics - Enhance your Enterprise Mobile Appli...
Wireless Wednesdays: Beyond the Basics - Enhance your Enterprise Mobile Appli...Wireless Wednesdays: Beyond the Basics - Enhance your Enterprise Mobile Appli...
Wireless Wednesdays: Beyond the Basics - Enhance your Enterprise Mobile Appli...Teamstudio
 
What’s new for Developers in IBM Domino & Domino Designer 9.0.1
What’s new for Developers in IBM Domino & Domino Designer 9.0.1What’s new for Developers in IBM Domino & Domino Designer 9.0.1
What’s new for Developers in IBM Domino & Domino Designer 9.0.1IBM Connections Developers
 
Twelve Tasks Made Easier with IBM Domino XPages
Twelve Tasks Made Easier with IBM Domino XPagesTwelve Tasks Made Easier with IBM Domino XPages
Twelve Tasks Made Easier with IBM Domino XPagesTeamstudio
 
Bootstrap4XPages
Bootstrap4XPagesBootstrap4XPages
Bootstrap4XPagesTeamstudio
 
Ibm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsIbm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsMark Roden
 
O365 Developer Bootcamp NJ 2018 - Material
O365 Developer Bootcamp NJ 2018 - MaterialO365 Developer Bootcamp NJ 2018 - Material
O365 Developer Bootcamp NJ 2018 - MaterialThomas Daly
 
Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1Teamstudio
 
XPages Blast - Ideas, Tips and More
XPages Blast - Ideas, Tips and MoreXPages Blast - Ideas, Tips and More
XPages Blast - Ideas, Tips and MoreTeamstudio
 

Similar to Wireless Wednesdays: Part 4 (20)

Wireless Wednesdays: Part 3
Wireless Wednesdays: Part 3Wireless Wednesdays: Part 3
Wireless Wednesdays: Part 3
 
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
 
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!
 
DanNotes XPages Mobile Controls
DanNotes XPages Mobile ControlsDanNotes XPages Mobile Controls
DanNotes XPages Mobile Controls
 
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondAD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
 
jQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPagesjQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPages
 
AD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development FuturesAD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development Futures
 
May 2014-webinar
May 2014-webinarMay 2014-webinar
May 2014-webinar
 
It's Not Infernal: Dante's Nine Circles of XPages Heaven
It's Not Infernal: Dante's Nine Circles of XPages HeavenIt's Not Infernal: Dante's Nine Circles of XPages Heaven
It's Not Infernal: Dante's Nine Circles of XPages Heaven
 
A report on mvc using the information
A report on mvc using the informationA report on mvc using the information
A report on mvc using the information
 
Wireless Wednesdays: Beyond the Basics - Enhance your Enterprise Mobile Appli...
Wireless Wednesdays: Beyond the Basics - Enhance your Enterprise Mobile Appli...Wireless Wednesdays: Beyond the Basics - Enhance your Enterprise Mobile Appli...
Wireless Wednesdays: Beyond the Basics - Enhance your Enterprise Mobile Appli...
 
What’s new for Developers in IBM Domino & Domino Designer 9.0.1
What’s new for Developers in IBM Domino & Domino Designer 9.0.1What’s new for Developers in IBM Domino & Domino Designer 9.0.1
What’s new for Developers in IBM Domino & Domino Designer 9.0.1
 
Twelve Tasks Made Easier with IBM Domino XPages
Twelve Tasks Made Easier with IBM Domino XPagesTwelve Tasks Made Easier with IBM Domino XPages
Twelve Tasks Made Easier with IBM Domino XPages
 
Bootstrap4XPages
Bootstrap4XPagesBootstrap4XPages
Bootstrap4XPages
 
Ibm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsIbm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applications
 
XCode8.0
XCode8.0XCode8.0
XCode8.0
 
Wordpress as a framework
Wordpress as a frameworkWordpress as a framework
Wordpress as a framework
 
O365 Developer Bootcamp NJ 2018 - Material
O365 Developer Bootcamp NJ 2018 - MaterialO365 Developer Bootcamp NJ 2018 - Material
O365 Developer Bootcamp NJ 2018 - Material
 
Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1
 
XPages Blast - Ideas, Tips and More
XPages Blast - Ideas, Tips and MoreXPages Blast - Ideas, Tips and More
XPages Blast - Ideas, Tips and More
 

More from Teamstudio

Search Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or MigratingSearch Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or MigratingTeamstudio
 
SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!Teamstudio
 
Back from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good ServerBack from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good ServerTeamstudio
 
Understand Usage with Detailed Access Information
Understand Usage with Detailed Access InformationUnderstand Usage with Detailed Access Information
Understand Usage with Detailed Access InformationTeamstudio
 
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8Teamstudio
 
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 DimensionallyTeamstudio
 
IBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino RoadmapIBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino RoadmapTeamstudio
 
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...Teamstudio
 
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections Teamstudio
 
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 UsabilityTeamstudio
 
Optimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep DiveOptimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep DiveTeamstudio
 
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 APITeamstudio
 
Understand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage AuditorUnderstand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage AuditorTeamstudio
 
Optimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesOptimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesTeamstudio
 
Building Responsive Applications Using XPages
Building Responsive Applications Using XPagesBuilding Responsive Applications Using XPages
Building Responsive Applications Using XPagesTeamstudio
 
Using Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsUsing Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsTeamstudio
 
Ask the XPages Experts
Ask the XPages ExpertsAsk the XPages Experts
Ask the XPages ExpertsTeamstudio
 
Everything XControls
Everything XControlsEverything XControls
Everything XControlsTeamstudio
 
Move Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneMove Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneTeamstudio
 
An Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller PatternAn Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller PatternTeamstudio
 

More from Teamstudio (20)

Search Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or MigratingSearch Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
 
SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!
 
Back from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good ServerBack from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good Server
 
Understand Usage with Detailed Access Information
Understand Usage with Detailed Access InformationUnderstand Usage with Detailed Access Information
Understand Usage with Detailed Access Information
 
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
 
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
 
IBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino RoadmapIBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino Roadmap
 
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
 
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
 
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
 
Optimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep DiveOptimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep Dive
 
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
 
Understand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage AuditorUnderstand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage Auditor
 
Optimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesOptimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best Practices
 
Building Responsive Applications Using XPages
Building Responsive Applications Using XPagesBuilding Responsive Applications Using XPages
Building Responsive Applications Using XPages
 
Using Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsUsing Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino Apps
 
Ask the XPages Experts
Ask the XPages ExpertsAsk the XPages Experts
Ask the XPages Experts
 
Everything XControls
Everything XControlsEverything XControls
Everything XControls
 
Move Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneMove Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast Lane
 
An Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller PatternAn Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller Pattern
 

Recently uploaded

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 

Recently uploaded (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 

Wireless Wednesdays: Part 4

  • 1.       Getting Started with Mobile Development Part  4:  May  7,  2014  
  • 2. Introducing   •  Tools  for  collabora<ve  compu<ng  in  mid-­‐size  and  large   enterprises,  primarily  for  IBM  Notes   •  Easy-­‐to-­‐use  tools  for  developers  and  administrators   •  Unplugged:  easy  mobiliza<on  of  Notes  apps  to  Blackberry,   Android  and  iOS   •  2300+  ac<ve  customers,  47  countries   •  Offices  in  US,  UK  and  Japan  
  • 3. •  Your  mobile  Domino  server:  take  your  Notes  apps  with   you!   •  End-­‐users  access  Notes  applica<ons  from  mobile  devices   whether  online  or  offline   •  Leverages  exis<ng  skills  and  technology  –  XPages  –  a   replica<on  model  you  already  know   •  Unplugged  3.1  recently  released   Teamstudio  Unplugged  
  • 4. •                 Con<nuity  –  Mobile  offline  access  to  BCM    programs   •                 OneView  Approvals  –  Expense  approvals;    anywhere,  any<me   •                 CustomerView  –  lightweight  CRM    framework  for  field  sales  and  field  service    teams   •  Contacts  –  customer  informa<on  database   •  Ac<vi<es  –  customer  ac<vity  log   •  Media  –  mobile  offline  file  storage  and  access   Unplugged  Template  Apps  
  • 5. •  Next  webinar  with  TLCC:  Dante’s  Nine  Circles  of  XPages  Heaven   •  May  13   •  Next  Wireless  Wednesdays  webinar:   •  June  4   •  Promo6on:  Get  our  IBM  Notes  Upgrade  Pack  by  May  31  and   receive  5  free  Unplugged  licenses  
  • 8. Wireless Wednesdays  A series of webinars where we discuss XPages mobile development for the enterprise  In January we looked at an introduction to mobile  In February, at Connect, we talked about creating the Unplugged Controls project  In March we looked at Dojo Mobile  In April we looked at Unplugged Controls  This month we’re talking jQuery Mobile 3
  • 9. Introduction  jQuery Mobile (JQM) is an extension to jQuery, the most popular JavaScript framework available today  Huge number of demos and options to get you going, but for simple applications you can have something setup very quickly –  With a few caveats for XPages  Custom theming is available by default so you can style your UI without having to touch CSS directly  Historically quite slow performance wise, but this is getting better 4
  • 10. Installation  Here be a few dragons!  Current version of JQM is 1.4.2 –  Our demo today is based on 1.3  Even with 1.3 we have to do some work to get JQM to co- exist with Dojo –  We have to either change the JQM code or carefully configure our XPage to work with Dojo  So you’ll need to download version 1.3.2 of jQuery Mobile and version 1.9.1 of jQuery from their respective websites 5
  • 11. Installation (option 1)  You will need to edit the first few lines of jquery.mobile-1.3.2.js from this:  To this: 6
  • 12. Installation (option 1)  Now we can copy the jQuery and JQM files into our application  The images need to be put into the pseudo directory “images/” 7
  • 13. Installation (option 1)  Firstly we’ll add the required resources to our layout custom control  The order is important, so jQuery first, then JQM  Finally it’s best practice to set the viewport scaling instructions 8
  • 14. Installation (Option 2) <xp:this.properties> <xp:parameter name="xsp.resources.aggregate" value="true" /> </xp:this.properties> <xp:this.resources> <xp:styleSheet href="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.css" /> <xp:headTag tagName="script"> <xp:this.attributes> <xp:parameter name="type" value="text/javascript" /> <xp:parameter name="src" value="http://code.jquery.com/jquery-1.9.1.min.js" /> </xp:this.attributes> </xp:headTag>  In our layout custom control we could force jQuery and JQM to load before Dojo
  • 15. Installation (Option 2) <xp:headTag tagName="script"> <xp:this.attributes> <xp:parameter name="type" value="text/javascript" /> <xp:parameter name="src" value="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js" /> </xp:this.attributes> </xp:headTag>  From blog@hasselba.ch  More details at: http://hasselba.ch/blog/?p=1216  As with option 1, we’d need to set the viewport
  • 16. Create layout custom control  Next we create the header and footer bars  JQM uses attributes in the HTML tags to define how an element will be displayed. –  In this case this div is being marked as the header that will be fixed to the top of the screen –  Inside the header we have a title set via a custom property –  And a “New Contact” button that will show an icon and be right aligned 11
  • 17. Create layout custom control  The footer bar will have a navbar in it to allow us to switch views  Note also the data-ajax attributes on the links. False means when clicked the entire page will be loaded 12
  • 18. Create layout custom control  Now we add the rest of the structure of the page 13
  • 19. CreateViews  We want two views, to show contacts by first name and last name  So we’ll create a custom control to display the data, called personview 14
  • 20. CreateViews  We need to add our own view navigation 15
  • 21. CreateViews  Now we can use that custom control in the two view XPages  This is our home XPage –  For the lastname XPage, we just need to change the name of the view and the title 16
  • 22. TestViews  We can now test our views 17
  • 23. Create Contact Form  Now we need to display our contact form for when the user taps a view entry  First we’ll add a normal document data binding  And then the layout custom control with a panel inside 18
  • 24. Create Contact Form  Inside the panel, we can start adding fields  A plain text field is very simple, the only difference from a normal field is the addition of the data-clear-btn attribute  We can change the keyboard type as normal for email, tel etc 19
  • 25. Create Contact Form  Date fields will need to have the convert date/time pattern defined as the native picker will be displayed on iOS and Android 20
  • 26. Create Contact Form  The Submit and Cancel buttons are normal links, but again we add some attributes for styling 21
  • 27. Test Contact Form  Now we can test our form in the browsers 22
  • 29. Upgrading to JQM 1.4.x  Big changes in 1.4 preparing the way for 1.5 –  Many depricated features will not be triggered/usable in 1.5  Affected Components: –  Buttons –  Icons –  Navigation –  CSS –  Structure –  Pretty much everything!?! 24
  • 30. Upgrading to jQuery Mobile 1.4.x  Biggest impacts are probably: –  pageshow: deprecated •  Old: $( document ).on( "pageshow", function( event, ui ) {...}); •  New: $( document ).on( "pagecontainershow", function( event, ui ) {...});
  • 31. Upgrading to jQuery Mobile 1.4.x  Themes included now consist of only ‘a’ (dark) and ‘b’ (light) – they want you to use the theme roller 1.3.1 1.4.2
  • 32. Upgrading to jQuery Mobile 1.4.x  Full upgrade guide available at: http://jquerymobile.com/upgrade-guide/1.4/
  • 33. Conclusions  jQuery Mobile is far and away the most popular mobile web development framework out there –  Lots of addons and resources available –  Simple HTML and JavaScript –  Great documentation –  Easy to theme –  Works both online (in the browser) and offline in Unplugged app  But… 28
  • 34. Conclusions  Integration into Domino and co-existence with Dojo is problematic –  Pre Dojo 1.8 everything is fine so if you’re on an older version of Domino then you can ignore this –  You’re downloading jQuery, JQM and Dojo. Over a slow line this could be an issue. •  You can disable Dojo but you lose a lot of the standard XPages functionality  Performance of JQM is still a consideration for lower powered devices 29
  • 35. Unplugged Controls User Group  A virtual user group meets first Thursday of each month  Next event tomorrow: –  http://unplugged.github.io/unplugged-controls/320/ UserGroup.html –  Rich will be talking about: •  Tabbed Footer control •  Alerts and Dialogs 30
  • 36. Next Release of Unplugged Controls  Version 3.3 will be released in June  We’re currently working on the scope but the list of possible items at the moment are: –  New UnpAlert control –  Improvements to Accordion control –  Bug fixes –  Anything else you want to add… 31
  • 37. 32