You're tired of managing your app text and image app content inline in static JavaScript files? You'd like to reuse the content of your website in your mobile app? This session is about how to build mobile web applications with the JavaScript framework Sencha Touch and manage its content with the TYPO3 CMS.
In this talk we will look into Sencha Touch development and talk about how to load dynamic content from a Content Management System.
We will also look into the needed implementation on both the client app and the CMS server side. We also learn how to use cloud webservices to optimize the content for the mobile web.
3. Sencha Touch
HTML5 mobile application framework
works on iOS, Android, BlackBerry, Kindle Fire, ...
Features
Smoother Scrolling and Animations
Adaptive Layouts
Native Packaging
Components: Lists, Dataviews, Toolbars,
Charts, ...
4.
5.
6.
7.
8. TYPO3
free open source content management system (CMS)
PHP based
highly flexible and extendable
9.
10.
11.
12. TYPO3 meets Sencha Touch
manage content in TYPO3
generate menu‘s from pages
content: text + image, news, products
display content in mobile Sencha Touch app
benefit -> we don’t have static content in JS files
14. Render content and pages as JSON
json_content extension for TYPO3
registers a new cObject type JSON_CONTENT
configured by TypoScript
used in custom page types
renders content as JSON object
optional JSONP wrap for cross domain api calls
19. /index.php?id=53&type=1000
{
success: true,
items: [
{
uid: "213",
pid: "53",
CType: "text",
header: "TYPO3: Inspiring People to Share",
bodytext: "The real driving force behind TYPO3’s
development is its expanding,...",
image: null
},
{
uid: "214",
pid: "53",
CType: "textpic",
header: "Community Events",
bodytext: "There are a number of recurring TYPO3 events
and conferences. ...",
image: "uploads/pics/team-t3board10.jpg,"
}
],
total: 2
}
31. Make data offline available
page and content repository
contains all app related page and content
records
uses offline store to persist data in localstorage
filter repositories by page id
create automatically view stores
bind to views to show the data