SlideShare une entreprise Scribd logo
1  sur  28
Télécharger pour lire hors ligne
Managing content of flash-powered
           websites with Magnolia
                     16 september 2010
0.        about us


                1.        introduction


                2.        the solution


                3.        results


                4.        demo time


                5.        Q&A


Copyright 2010 OpenMind                  2
0.   about us




Copyright 2010 OpenMind        3
OpenMind and the open source
 OpenMind s.r.l. (www.openmindonline.it) is one of the most active Italian
 company on open source projects, focused on j2ee technologies:


                            www.openmindlab.com
 Openmind manages the Openmindlab initiative, to promote our opensource
 projects (openutils). Some magnolia related projects:


                                media module, simple cache module,
                          criteria API, groovy module, messaging module,
                             stripes and struts integration modules, …


 From ohloh:
 • 12 active developers on open source communities
 • 29 person years effort provided
 • 118,9 K code lines generated
                                                                           0. about us
Copyright 2010 OpenMind                          4
We are working with




                              0. about us
Copyright 2010 OpenMind   5
1.   introduction




Copyright 2010 OpenMind          6
Stakeholders – Piaggio Group, the client

                               PIAGGIO GROUP is the largest
                              European manufacturer of two-
                             wheeled motor vehicles and one of
                              the world's leaders in its sector.
                                 The Group is also a major
                                 international player in the
                                commercial vehicle market.


          Brands




                                                        1. introduction
Copyright 2010 OpenMind      7
Stakeholders – Van Gogh Creative, the web agency

                                    Vangogh Creative is an
                                    emerging web-agency
                                    http://www.vangogh-creative.it/


                                    With strong experience
                                              in:
                                             Music
                                            Fashion
                                          Automotive

                                        Flash addicted!




                                                         1. introduction
Copyright 2010 OpenMind     8
Piaggio Group Goals

        Unique communication strategy for all the brands and markets
         Partnership with unique communication agency for the entire
                                    group
       Increase brand positioning (Vespa, Motoguzzi, Scarabeo, Piaggio)
                    Increase position on web search results
                        Increase traffic to the web sites
                              Reduce tech costs
            Contents editing and publishing without technical skills
                  Aggressive on the time table for the go live
                                  Save money




                                                                1. introduction
Copyright 2010 OpenMind               9
Piaggio Group Requirements

             Use flash to deliver a strong emotional experience
                 Manage contents by a simple-to-use CMS
                      Centralized content management
                            Preview environment
                   High-capacity / high-availability system




                                                           1. introduction
Copyright 2010 OpenMind             10
Business Opportunity by our point of view

                   Enter the markets where flash solutions are attractive
                         Reduce project cost for front end delivery



     Flash is still the choice for the web in fashion, design, architecture,
           videogame, movie, product presentation, and so on …
                             we want to be there too



           There are no enterprise level CMS that manages in “simple is
                   beautiful” way both html and flash contents



                                                                        1. introduction
Copyright 2010 OpenMind                      11
Copyright 2010 OpenMind   12
2.   the solution




Copyright 2010 OpenMind          13
Server side architecture overview


                                        simple cache module

                          flash module
                          custom template
                              renderer         media            spring
                                               module            MVC
                    server-side swfaddress


                                                                 spring
                                   Magnolia                   integration
                                                                  layer


                                                                            2. the solution
Copyright 2010 OpenMind                          14
Client side architecture overview
                                           html page

                               JS (swfaddress, swfobject, analytics)
                                         swfaddress      analytics
                                         integration    integration


                          content
                          handler
                   http status handler        actual content

                    navigation
                     handler


                                    flash movie VG framework           2. the solution
Copyright 2010 OpenMind                            15
Flash module

    
        swfaddress server-side support (manage swfaddress redirects)
    
     custom template and paragraph renderer that choose template to apply by uri
    extension without using subtemplating
        
            .html for html ouput
        
            .xml for xml contents
        
            .sec for tree structure infos
    
        bypass flash mode
    
        custom tags to render
        
            html page structure with swfaddress, swfobject, … (sensible to bypass flash
            mode)
        
            xml content file structure
        
            nodedata values (media, grids, …) in xml page contents
        
            authoring and permissions info in xml page contents




                                                                                  2. the solution
Copyright 2010 OpenMind                         16
Communication flow – 1

    Consider following request:
         http://www.motoguzzi.it/motoguzzi/IT/it/moto/naked/V7-classic/V7-Classic.html

    Html version of the page is rendered (demo)

    In the head tag swfaddress and swfobject javascript libraries are included.
    In the body current page contents and navigation links are rendered.


    If the request is coming from javascript / flash enabled browser (not a spider for
    instance) swfaddress-optimizer script extracts path, query string and hash
    information from uri, sends them to server via XmlHttpRequest and evaluates the
    response.
    On the server side a filter intercepts the request coming from swfaddress, builds and
    returns the javascript statement to redirect the browser to the root of the domain
    with the right hash value (and keeping query string values).



                                                                                  2. the solution
Copyright 2010 OpenMind                       17
Communication flow – 2

    swfaddress request:
    Host                  www.motoguzzi.it
    Path                  /
    Query string          sa=/motoguzzi/IT/it/moto/naked/V7-classic/V7-Classic
    Content-Type          application/x-swfaddress


    and filter response:
    location.replace("/#/motoguzzi/IT/it/moto/naked/V7-classic/V7-Classic")


    When swfaddress evaluates filter response, the user is redirected to
            http://www.motoguzzi.it/#/motoguzzi/IT/it/moto/nakes/V7-classic/V7-Classic




                                                                                 2. the solution
Copyright 2010 OpenMind                          18
Communication flow – 3

    www.motoguzzi.it/ is rendered as any other page (communication flow - 1), but
    before the end of the body tag, a script replaces the main div contents with the swf
    application (unique for entire site).


    When swf movie is starting, it preloads the site tree (n levels deep under language
    page) and some other resources (pngs, swfs, flvs).


    Swf application then reads from browser address bar (through swfaddress AS api)
    the hash value (/motoguzzi/IT/it/moto/naked/V7-classic/V7-Classic) which identifies
    the current page path.
    This value has a double use: to highlight right menu paths to the page and to build
    the request to the server for contents:
    http://www.motoguzzi.it/motoguzzi/IT/it/moto/naked/V7-classic/V7-Classic.xml


    Xml contents are then rendered by the swf application.


    The last step is the call from swf application to javascript analytics function.

                                                                                   2. the solution
Copyright 2010 OpenMind                        19
Authoring support

    In authoring environment each html page loads the magnolia javascripts needed to
    work with dialogs, preview mode and paragraphs related operations.
    Some information are added to xml contents file:
    
        environment (edit / preview / public)
    
        current user
    
        current user permissions on page
    
        xml declaration for buttons
    <page loggedUser="admin" mode="edit" permissions="W">
        <buttons>
         <button align="L" onclick="mgnlPreview(true)" label="Preview" />
       <button align="L" onclick="MgnlAdminCentral.showTree('website', '/motoguzzi/IT/it/home')"
    label="AdminCentral" />
      <button align="R" onclick="mgnlOpenDialog('/motoguzzi/IT/it/home','','','headers','website')" label="Proprietà
    header" />
        </buttons>
        …

    Swf application renders magnolia green bars (main or paragraphs bars) and binds
    calls to ExternalInterface.call(“[button's onclick attribute value]”) to the buttons.
                                                                                                       2. the solution
Copyright 2010 OpenMind                                   20
3.    results




Copyright 2010 OpenMind        21
Business results - Piaggio

           Unique authoring platform for their sites with same authoring
            experience both for traditional html sites and full-flash sites

                For full-flash sites, flash front end is decoupled from CMS

                                    SEO enabled sites

     Highly optimized platform to deliver contents on a cheap hardware
                         and network infrastructure

                               On time on the go live plan



                                                                              3. results
Copyright 2010 OpenMind                     22
Business results – Van Gogh



                  Powerful AS framework integrated with a CMS platform

         Frontend release process mostly independent from CMS release
                                   process

                          Tech solution to support their creativity




                                                                         3. results
Copyright 2010 OpenMind                      23
Business results - Openmind


                                  New Magnolia module

                    Strong case history to open new ways on the market

                          Strong partnership with a sexy agency

                           More efficiency on front end delivery




                                                                         3. results
Copyright 2010 OpenMind                     24
4.    demo




Copyright 2010 OpenMind    25
And what about mobile?

                     We know Flash on iPhone and iPad is not permitted!

       This is not a limit … this is a big opportunity for us and Magnolia.

     We built a new Magnolia Module to catch this opportunity, but this
                           is another story 




Copyright 2010 OpenMind                      26
5.    q&a




Copyright 2010 OpenMind    27
Thank you!



                          manuel.molaschi@openmindonline.it
                               www.openmindonline.it
                               www.openmindlab.com


Copyright 2010 OpenMind                  28

Contenu connexe

Similaire à Managing Content of Flash-powered Websites with Magnolia

Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Christian Heindel
 
Meetup which approach to choose?
Meetup   which approach to choose?Meetup   which approach to choose?
Meetup which approach to choose?Joe Mbaya
 
Intro to Web Components, Polymer & Vaadin Elements
Intro to Web Components, Polymer & Vaadin ElementsIntro to Web Components, Polymer & Vaadin Elements
Intro to Web Components, Polymer & Vaadin ElementsManuel Carrasco Moñino
 
Apache Flex and the imperfect Web
Apache Flex and the imperfect WebApache Flex and the imperfect Web
Apache Flex and the imperfect Webmasuland
 
Perfect Memory Media Asset Management MAM of Audiovisual Big Data @ Radio 2.0...
Perfect Memory Media Asset Management MAM of Audiovisual Big Data @ Radio 2.0...Perfect Memory Media Asset Management MAM of Audiovisual Big Data @ Radio 2.0...
Perfect Memory Media Asset Management MAM of Audiovisual Big Data @ Radio 2.0...ACTUONDA
 
Building Mobile Websites with Joomla
Building Mobile Websites with JoomlaBuilding Mobile Websites with Joomla
Building Mobile Websites with JoomlaTom Deryckere
 
Liferay DevCon 2014: Lliferay Platform - A new and exciting vision
Liferay DevCon 2014: Lliferay Platform - A new and exciting visionLiferay DevCon 2014: Lliferay Platform - A new and exciting vision
Liferay DevCon 2014: Lliferay Platform - A new and exciting visionJorge Ferrer
 
Micro-Frontends JSVidCon
Micro-Frontends JSVidConMicro-Frontends JSVidCon
Micro-Frontends JSVidConAmir Zuker
 
What is microsoft silverlight?
What is microsoft silverlight?What is microsoft silverlight?
What is microsoft silverlight?sonia merchant
 
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...Niklas Heidloff
 
Symfony framework-An overview and usability for web development
Symfony framework-An overview and usability for web developmentSymfony framework-An overview and usability for web development
Symfony framework-An overview and usability for web developmentifour_bhavesh
 
Scaling frontend applications with micro-frontends Presentation.pdf
Scaling frontend applications with micro-frontends Presentation.pdfScaling frontend applications with micro-frontends Presentation.pdf
Scaling frontend applications with micro-frontends Presentation.pdfKatamaRajuBandigari1
 
Drupalcamp New York 2009
Drupalcamp New York 2009Drupalcamp New York 2009
Drupalcamp New York 2009Tom Deryckere
 
CloudEngine at Dev8D 2011
CloudEngine at Dev8D 2011CloudEngine at Dev8D 2011
CloudEngine at Dev8D 2011Nick Freear
 
2016 Streaming Media West: Choosing an HTML5 Player
2016 Streaming Media West: Choosing an HTML5 Player2016 Streaming Media West: Choosing an HTML5 Player
2016 Streaming Media West: Choosing an HTML5 PlayerErica Beavers
 
CNCF and Fujitsu
CNCF and FujitsuCNCF and Fujitsu
CNCF and FujitsuLF Events
 
Micro Frontends.pptx
Micro Frontends.pptxMicro Frontends.pptx
Micro Frontends.pptxShanAli738907
 

Similaire à Managing Content of Flash-powered Websites with Magnolia (20)

Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5
 
Widgetization: A New Paradigm
Widgetization: A New ParadigmWidgetization: A New Paradigm
Widgetization: A New Paradigm
 
Meetup which approach to choose?
Meetup   which approach to choose?Meetup   which approach to choose?
Meetup which approach to choose?
 
Intro to Web Components, Polymer & Vaadin Elements
Intro to Web Components, Polymer & Vaadin ElementsIntro to Web Components, Polymer & Vaadin Elements
Intro to Web Components, Polymer & Vaadin Elements
 
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJSMicro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
 
Apache Flex and the imperfect Web
Apache Flex and the imperfect WebApache Flex and the imperfect Web
Apache Flex and the imperfect Web
 
Perfect Memory Media Asset Management MAM of Audiovisual Big Data @ Radio 2.0...
Perfect Memory Media Asset Management MAM of Audiovisual Big Data @ Radio 2.0...Perfect Memory Media Asset Management MAM of Audiovisual Big Data @ Radio 2.0...
Perfect Memory Media Asset Management MAM of Audiovisual Big Data @ Radio 2.0...
 
Building Mobile Websites with Joomla
Building Mobile Websites with JoomlaBuilding Mobile Websites with Joomla
Building Mobile Websites with Joomla
 
Liferay DevCon 2014: Lliferay Platform - A new and exciting vision
Liferay DevCon 2014: Lliferay Platform - A new and exciting visionLiferay DevCon 2014: Lliferay Platform - A new and exciting vision
Liferay DevCon 2014: Lliferay Platform - A new and exciting vision
 
micro-frontends-with-vuejs
micro-frontends-with-vuejsmicro-frontends-with-vuejs
micro-frontends-with-vuejs
 
Micro-Frontends JSVidCon
Micro-Frontends JSVidConMicro-Frontends JSVidCon
Micro-Frontends JSVidCon
 
What is microsoft silverlight?
What is microsoft silverlight?What is microsoft silverlight?
What is microsoft silverlight?
 
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
 
Symfony framework-An overview and usability for web development
Symfony framework-An overview and usability for web developmentSymfony framework-An overview and usability for web development
Symfony framework-An overview and usability for web development
 
Scaling frontend applications with micro-frontends Presentation.pdf
Scaling frontend applications with micro-frontends Presentation.pdfScaling frontend applications with micro-frontends Presentation.pdf
Scaling frontend applications with micro-frontends Presentation.pdf
 
Drupalcamp New York 2009
Drupalcamp New York 2009Drupalcamp New York 2009
Drupalcamp New York 2009
 
CloudEngine at Dev8D 2011
CloudEngine at Dev8D 2011CloudEngine at Dev8D 2011
CloudEngine at Dev8D 2011
 
2016 Streaming Media West: Choosing an HTML5 Player
2016 Streaming Media West: Choosing an HTML5 Player2016 Streaming Media West: Choosing an HTML5 Player
2016 Streaming Media West: Choosing an HTML5 Player
 
CNCF and Fujitsu
CNCF and FujitsuCNCF and Fujitsu
CNCF and Fujitsu
 
Micro Frontends.pptx
Micro Frontends.pptxMicro Frontends.pptx
Micro Frontends.pptx
 

Dernier

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 

Dernier (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

Managing Content of Flash-powered Websites with Magnolia

  • 1. Managing content of flash-powered websites with Magnolia 16 september 2010
  • 2. 0. about us 1. introduction 2. the solution 3. results 4. demo time 5. Q&A Copyright 2010 OpenMind 2
  • 3. 0. about us Copyright 2010 OpenMind 3
  • 4. OpenMind and the open source OpenMind s.r.l. (www.openmindonline.it) is one of the most active Italian company on open source projects, focused on j2ee technologies: www.openmindlab.com Openmind manages the Openmindlab initiative, to promote our opensource projects (openutils). Some magnolia related projects: media module, simple cache module, criteria API, groovy module, messaging module, stripes and struts integration modules, … From ohloh: • 12 active developers on open source communities • 29 person years effort provided • 118,9 K code lines generated 0. about us Copyright 2010 OpenMind 4
  • 5. We are working with 0. about us Copyright 2010 OpenMind 5
  • 6. 1. introduction Copyright 2010 OpenMind 6
  • 7. Stakeholders – Piaggio Group, the client PIAGGIO GROUP is the largest European manufacturer of two- wheeled motor vehicles and one of the world's leaders in its sector. The Group is also a major international player in the commercial vehicle market. Brands 1. introduction Copyright 2010 OpenMind 7
  • 8. Stakeholders – Van Gogh Creative, the web agency Vangogh Creative is an emerging web-agency http://www.vangogh-creative.it/ With strong experience in: Music Fashion Automotive Flash addicted! 1. introduction Copyright 2010 OpenMind 8
  • 9. Piaggio Group Goals Unique communication strategy for all the brands and markets Partnership with unique communication agency for the entire group Increase brand positioning (Vespa, Motoguzzi, Scarabeo, Piaggio) Increase position on web search results Increase traffic to the web sites Reduce tech costs Contents editing and publishing without technical skills Aggressive on the time table for the go live Save money 1. introduction Copyright 2010 OpenMind 9
  • 10. Piaggio Group Requirements Use flash to deliver a strong emotional experience Manage contents by a simple-to-use CMS Centralized content management Preview environment High-capacity / high-availability system 1. introduction Copyright 2010 OpenMind 10
  • 11. Business Opportunity by our point of view Enter the markets where flash solutions are attractive Reduce project cost for front end delivery Flash is still the choice for the web in fashion, design, architecture, videogame, movie, product presentation, and so on … we want to be there too There are no enterprise level CMS that manages in “simple is beautiful” way both html and flash contents 1. introduction Copyright 2010 OpenMind 11
  • 13. 2. the solution Copyright 2010 OpenMind 13
  • 14. Server side architecture overview simple cache module flash module custom template renderer media spring module MVC server-side swfaddress spring Magnolia integration layer 2. the solution Copyright 2010 OpenMind 14
  • 15. Client side architecture overview html page JS (swfaddress, swfobject, analytics) swfaddress analytics integration integration content handler http status handler actual content navigation handler flash movie VG framework 2. the solution Copyright 2010 OpenMind 15
  • 16. Flash module  swfaddress server-side support (manage swfaddress redirects)  custom template and paragraph renderer that choose template to apply by uri extension without using subtemplating  .html for html ouput  .xml for xml contents  .sec for tree structure infos  bypass flash mode  custom tags to render  html page structure with swfaddress, swfobject, … (sensible to bypass flash mode)  xml content file structure  nodedata values (media, grids, …) in xml page contents  authoring and permissions info in xml page contents 2. the solution Copyright 2010 OpenMind 16
  • 17. Communication flow – 1 Consider following request: http://www.motoguzzi.it/motoguzzi/IT/it/moto/naked/V7-classic/V7-Classic.html Html version of the page is rendered (demo) In the head tag swfaddress and swfobject javascript libraries are included. In the body current page contents and navigation links are rendered. If the request is coming from javascript / flash enabled browser (not a spider for instance) swfaddress-optimizer script extracts path, query string and hash information from uri, sends them to server via XmlHttpRequest and evaluates the response. On the server side a filter intercepts the request coming from swfaddress, builds and returns the javascript statement to redirect the browser to the root of the domain with the right hash value (and keeping query string values). 2. the solution Copyright 2010 OpenMind 17
  • 18. Communication flow – 2 swfaddress request: Host www.motoguzzi.it Path / Query string sa=/motoguzzi/IT/it/moto/naked/V7-classic/V7-Classic Content-Type application/x-swfaddress and filter response: location.replace("/#/motoguzzi/IT/it/moto/naked/V7-classic/V7-Classic") When swfaddress evaluates filter response, the user is redirected to http://www.motoguzzi.it/#/motoguzzi/IT/it/moto/nakes/V7-classic/V7-Classic 2. the solution Copyright 2010 OpenMind 18
  • 19. Communication flow – 3 www.motoguzzi.it/ is rendered as any other page (communication flow - 1), but before the end of the body tag, a script replaces the main div contents with the swf application (unique for entire site). When swf movie is starting, it preloads the site tree (n levels deep under language page) and some other resources (pngs, swfs, flvs). Swf application then reads from browser address bar (through swfaddress AS api) the hash value (/motoguzzi/IT/it/moto/naked/V7-classic/V7-Classic) which identifies the current page path. This value has a double use: to highlight right menu paths to the page and to build the request to the server for contents: http://www.motoguzzi.it/motoguzzi/IT/it/moto/naked/V7-classic/V7-Classic.xml Xml contents are then rendered by the swf application. The last step is the call from swf application to javascript analytics function. 2. the solution Copyright 2010 OpenMind 19
  • 20. Authoring support In authoring environment each html page loads the magnolia javascripts needed to work with dialogs, preview mode and paragraphs related operations. Some information are added to xml contents file:  environment (edit / preview / public)  current user  current user permissions on page  xml declaration for buttons <page loggedUser="admin" mode="edit" permissions="W"> <buttons> <button align="L" onclick="mgnlPreview(true)" label="Preview" /> <button align="L" onclick="MgnlAdminCentral.showTree('website', '/motoguzzi/IT/it/home')" label="AdminCentral" /> <button align="R" onclick="mgnlOpenDialog('/motoguzzi/IT/it/home','','','headers','website')" label="Proprietà header" /> </buttons> … Swf application renders magnolia green bars (main or paragraphs bars) and binds calls to ExternalInterface.call(“[button's onclick attribute value]”) to the buttons. 2. the solution Copyright 2010 OpenMind 20
  • 21. 3. results Copyright 2010 OpenMind 21
  • 22. Business results - Piaggio Unique authoring platform for their sites with same authoring experience both for traditional html sites and full-flash sites For full-flash sites, flash front end is decoupled from CMS SEO enabled sites Highly optimized platform to deliver contents on a cheap hardware and network infrastructure On time on the go live plan 3. results Copyright 2010 OpenMind 22
  • 23. Business results – Van Gogh Powerful AS framework integrated with a CMS platform Frontend release process mostly independent from CMS release process Tech solution to support their creativity 3. results Copyright 2010 OpenMind 23
  • 24. Business results - Openmind New Magnolia module Strong case history to open new ways on the market Strong partnership with a sexy agency More efficiency on front end delivery 3. results Copyright 2010 OpenMind 24
  • 25. 4. demo Copyright 2010 OpenMind 25
  • 26. And what about mobile? We know Flash on iPhone and iPad is not permitted! This is not a limit … this is a big opportunity for us and Magnolia. We built a new Magnolia Module to catch this opportunity, but this is another story  Copyright 2010 OpenMind 26
  • 27. 5. q&a Copyright 2010 OpenMind 27
  • 28. Thank you! manuel.molaschi@openmindonline.it www.openmindonline.it www.openmindlab.com Copyright 2010 OpenMind 28