SlideShare une entreprise Scribd logo
1  sur  69
Overlays, Accordions
  & Tabs, Oh My
     Steve McMahon
Overlays, Accordions
DOM Window Bling
  & Tabs, Oh My
     Steve McMahon
Overlays, Accordions
DOM Window Bling
  & Tabs, Oh My
         Or: How do I do
     Steve McMahon
           that Lightboxy
           stuff in Plone?
Demonstration:
Overlays in Plone 4
Technology Stack
Technology Stack

• Javascript / CSS
Technology Stack

• Javascript / CSS
• jQuery
Technology Stack

• Javascript / CSS
• jQuery
• jQuery Tools
Technology Stack

• Javascript / CSS
• jQuery
• jQuery Tools
• Plone-specific Helpers
What is jQuery?
What is jQuery?
• < 20k Javascript
 DOM manipulation
 library
What is jQuery?
• < 20k Javascript
 DOM manipulation
 library

• Unobtrusive
 Javascript
What is jQuery?
• < 20k Javascript
 DOM manipulation
 library

• Unobtrusive
 Javascript

• Emphasis on
 Graceful
 Degradation
What jQuery Tools Brings
What jQuery Tools Brings

• Overlays
What jQuery Tools Brings

• Overlays
• Tabs /
 Accordians
What jQuery Tools Brings

• Overlays
• Tabs /
 Accordians

• Tooltips
What jQuery Tools Brings

• Overlays
• Tabs /
 Accordians

• Tooltips
• Highlighting
What jQuery Tools Brings • 2
What jQuery Tools Brings • 2

• Minimalism
 < 6k gzipped
What jQuery Tools Brings • 2

• Minimalism
 < 6k gzipped

• Primacy of CSS
What jQuery Tools Brings • 2

• Minimalism
 < 6k gzipped

• Primacy of CSS
• Excellent code /
 proven team
jQuery in Brief:
   Selectors
jQuery in Brief:
            Selectors

selection = jQuery(‘css selector’);
jQuery in Brief:
            Selectors

selection = jQuery(‘css selector’);


selection = jQuery(‘#portal-globalnav’);
jQuery in Brief:
            Selectors

selection = jQuery(‘css selector’);


selection = jQuery(‘#portal-globalnav’);


selection = jQuery(‘#portal-globalnav li a’);
jQuery in Brief:
Advanced Selectors
jQuery in Brief:
     Advanced Selectors

selection = jQuery(‘input [name=first_name]’);
jQuery in Brief:
     Advanced Selectors

selection = jQuery(‘input [name=first_name]’);


selection = jQuery(‘input [name^=archetypes]’);
jQuery in Brief:
     Advanced Selectors

selection = jQuery(‘input [name=first_name]’);


selection = jQuery(‘input [name^=archetypes]’);


selection = jQuery(‘a [href$=login_form]’);
jQuery in Brief:
Filters (Examples)
jQuery in Brief:
      Filters (Examples)

selection = jQuery(‘#myform :input’);
jQuery in Brief:
      Filters (Examples)

selection = jQuery(‘#myform :input’);


selection = jQuery(‘:hidden’);
jQuery in Brief:
      Filters (Examples)

selection = jQuery(‘#myform :input’);


selection = jQuery(‘:hidden’);


selection = jQuery(‘a[href*=docs] :parent’);
jQuery in Brief:
  Toolchains
jQuery in Brief:
           Toolchains

jQuery(‘#mychart tr:even’).addClass(‘even’);
jQuery in Brief:
           Toolchains

jQuery(‘#mychart tr:even’).addClass(‘even’);


selection = jQuery(‘:hidden’).css(‘color’,‘blue’).show();
jQuery in Brief:
           Toolchains

jQuery(‘#mychart tr:even’).addClass(‘even’);


selection = jQuery(‘:hidden’).css(‘color’,‘blue’).show();

selection = jQuery(‘#myform:input’)
   .parent()
   .wrapAll(‘<div class=”myFields” />’);
jQuery in Brief:
Selection Iteration
jQuery in Brief:
          Selection Iteration

jq('#portal-column-two dl.portlet')
   .each( function() {

        jq(this)
          .children('dd')
          .wrapAll(
               '<dd class="portletContent"><dl></dl></dd>'
          );

  });
Demonstration:
jQuery Tools Bling
jQuery Tools:
Setup Pattern
jQuery Tools:
              Setup Pattern
jq( function() {

      jq(‘.trigger selector’)
         .tabs(
             ‘.target selector’,
             {
                // configuration options
             }
         );

});
jQuery Tools:
Setup Example
jQuery Tools:
               Setup Example
jq( function() {

      jq(‘dl.tabbed’)            // tab container
         .tabs(
            ‘dl.tabbed dd’,      // panes
            {
               tabs: ‘dt’,       // selector for tabs
               effect: 'slide'   // effect
            }
         );

});
jQuery Tools in Plone:
plone.app.jquerytools
jQuery Tools in Plone:
  plone.app.jquerytools

• Built into Plone 4
jQuery Tools in Plone:
 plone.app.jquerytools

• Built into Plone 4
• Works with Plone 3 —
 but must be added by GS
 extension profile
jQuery Tools in Plone:
  plone.app.jquerytools

• Built into Plone 4
• Works with Plone 3 —
 but must be added by GS
 extension profile
• Includes AJAX form helpers
plone.app.jquerytools
  Concrete Example


  Accordion Portlets
Accordion Portlets
   Code • 1 of 2
Accordion Portlets
            Code • 1 of 2
jq(function() {
  // restructure the portlets to gather pane elements

      jq('#portal-column-two dl.portlet')
          .each(function() {
             jq(this)
               .children('dd')
               .wrapAll(
               '<dd class="portletContent"><dl /></dd>'
               );
      });
      ...
});
Accordion Portlets
   Code • 2 of 2
Accordion Portlets
              Code • 2 of 2
...
      // turn on the tabs

      jq('#portal-column-two')
         .tabs(
             '#portal-column-two
             dl.portlet dd.portletContent',
             {
                 tabs:   'dl.portlet dt.portletHeader a',
                 effect: 'slide'
             }
         );
});
AJAX Form Helper
•   Built into plone.app.jquerytools —
    not jQuery Tools

•   On submit, form input posted via AJAX

•   Handling of no-form reply configurable:

    •   close

    •   refresh

    •   load another page
AJAX Form Example
AJAX Form Example

jq(function(){
    // login form
    jq('#portal-personaltools a[href$=/login]')
       .prepOverlay(
          {
            subtype: 'ajax',
            filter: '#content > *',
            formselector: 'form#login_form',
            noform: 'reload'
          }
    );
});
AJAXy Image Example
AJAXy Image Example

jq(function(){

      jq('.newsImageContainer a') // trigger
          .prepOverlay({
             subtype: 'image',
             urlmatch: '/image_view_fullscreen$',
             urlreplace: '_preview'
      });

});
Products.pipbox
Products.pipbox


•   Easy way to load plone.app.jquerytools
    in Plone 3
Products.pipbox


•   Easy way to load plone.app.jquerytools
    in Plone 3

•   Avoid Javascript for common cases
Products.pipbox


•   Easy way to load plone.app.jquerytools
    in Plone 3

•   Avoid Javascript for common cases

•   Has helpers that don’t belong in the Plone core
Products.pipbox


•   Easy way to load plone.app.jquerytools
    in Plone 3

•   Avoid Javascript for common cases

•   Has helpers that don’t belong in the Plone core

•   Global jQuery Tools configuration
Products.pipbox Example
Products.pipbox Example


 {
     type:      'overlay',
     subtype: 'image',
     selector: '.newsImageContainer a',
     urlmatch: '/image_view_fullscreen$',
     urlreplace: '_preview'
 }
pipbox.portlet.popform


•   Timed popup forms configured in a portlet

•   Cookie checks to avoid extreme annoyance

•   Development sponsored by Groundwire
    (OneNW)

•   Thanks to David Glick
tabs.overlays.tooltips.expose



  “With great power comes
    great responsibility.”
                  Spiderman’s Uncle Ben
tabs.overlays.tooltips.expose

     Use it to enhance
             —
  “With great power comes
        not annoy,
    great responsibility.”
          confuse
                  Spiderman’s Uncle Ben
        or control.

Contenu connexe

Tendances

Best Practices in Plugin Development (WordCamp Seattle)
Best Practices in Plugin Development (WordCamp Seattle)Best Practices in Plugin Development (WordCamp Seattle)
Best Practices in Plugin Development (WordCamp Seattle)andrewnacin
 
Intro to Angular.JS Directives
Intro to Angular.JS DirectivesIntro to Angular.JS Directives
Intro to Angular.JS DirectivesChristian Lilley
 
Write Less Do More
Write Less Do MoreWrite Less Do More
Write Less Do MoreRemy Sharp
 
Angular Directives from Scratch
Angular Directives from ScratchAngular Directives from Scratch
Angular Directives from ScratchChristian Lilley
 
jQuery Anti-Patterns for Performance & Compression
jQuery Anti-Patterns for Performance & CompressionjQuery Anti-Patterns for Performance & Compression
jQuery Anti-Patterns for Performance & CompressionPaul Irish
 
IndexedDB - Querying and Performance
IndexedDB - Querying and PerformanceIndexedDB - Querying and Performance
IndexedDB - Querying and PerformanceParashuram N
 
jQuery 1.7 Events
jQuery 1.7 EventsjQuery 1.7 Events
jQuery 1.7 Eventsdmethvin
 
Dexterity in 15 minutes or less
Dexterity in 15 minutes or lessDexterity in 15 minutes or less
Dexterity in 15 minutes or lessrijk.stofberg
 
No Coding Necessary: Building User Macros and Dynamic Reports Inside Confluen...
No Coding Necessary: Building User Macros and Dynamic Reports Inside Confluen...No Coding Necessary: Building User Macros and Dynamic Reports Inside Confluen...
No Coding Necessary: Building User Macros and Dynamic Reports Inside Confluen...Atlassian
 
No Coding Necessary: Building Confluence User Macros Cheat Sheet - Atlassian ...
No Coding Necessary: Building Confluence User Macros Cheat Sheet - Atlassian ...No Coding Necessary: Building Confluence User Macros Cheat Sheet - Atlassian ...
No Coding Necessary: Building Confluence User Macros Cheat Sheet - Atlassian ...Atlassian
 
Jquery Complete Presentation along with Javascript Basics
Jquery Complete Presentation along with Javascript BasicsJquery Complete Presentation along with Javascript Basics
Jquery Complete Presentation along with Javascript BasicsEPAM Systems
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQueryGunjan Kumar
 
Using Renderless Components in Vue.js during your software development.
Using Renderless Components in Vue.js during your software development.Using Renderless Components in Vue.js during your software development.
Using Renderless Components in Vue.js during your software development.tothepointIT
 
JavaScript Modules Done Right
JavaScript Modules Done RightJavaScript Modules Done Right
JavaScript Modules Done RightMariusz Nowak
 
Writing your Third Plugin
Writing your Third PluginWriting your Third Plugin
Writing your Third PluginJustin Ryan
 
jQuery Performance Tips and Tricks (2011)
jQuery Performance Tips and Tricks (2011)jQuery Performance Tips and Tricks (2011)
jQuery Performance Tips and Tricks (2011)Addy Osmani
 
The Django Web Application Framework 2
The Django Web Application Framework 2The Django Web Application Framework 2
The Django Web Application Framework 2fishwarter
 
Introduction To Django (Strange Loop 2011)
Introduction To Django (Strange Loop 2011)Introduction To Django (Strange Loop 2011)
Introduction To Django (Strange Loop 2011)Jacob Kaplan-Moss
 

Tendances (20)

Best Practices in Plugin Development (WordCamp Seattle)
Best Practices in Plugin Development (WordCamp Seattle)Best Practices in Plugin Development (WordCamp Seattle)
Best Practices in Plugin Development (WordCamp Seattle)
 
Intro to Angular.JS Directives
Intro to Angular.JS DirectivesIntro to Angular.JS Directives
Intro to Angular.JS Directives
 
Write Less Do More
Write Less Do MoreWrite Less Do More
Write Less Do More
 
Angular Directives from Scratch
Angular Directives from ScratchAngular Directives from Scratch
Angular Directives from Scratch
 
jQuery Anti-Patterns for Performance & Compression
jQuery Anti-Patterns for Performance & CompressionjQuery Anti-Patterns for Performance & Compression
jQuery Anti-Patterns for Performance & Compression
 
IndexedDB - Querying and Performance
IndexedDB - Querying and PerformanceIndexedDB - Querying and Performance
IndexedDB - Querying and Performance
 
jQuery 1.7 Events
jQuery 1.7 EventsjQuery 1.7 Events
jQuery 1.7 Events
 
Sane Async Patterns
Sane Async PatternsSane Async Patterns
Sane Async Patterns
 
Dexterity in 15 minutes or less
Dexterity in 15 minutes or lessDexterity in 15 minutes or less
Dexterity in 15 minutes or less
 
No Coding Necessary: Building User Macros and Dynamic Reports Inside Confluen...
No Coding Necessary: Building User Macros and Dynamic Reports Inside Confluen...No Coding Necessary: Building User Macros and Dynamic Reports Inside Confluen...
No Coding Necessary: Building User Macros and Dynamic Reports Inside Confluen...
 
No Coding Necessary: Building Confluence User Macros Cheat Sheet - Atlassian ...
No Coding Necessary: Building Confluence User Macros Cheat Sheet - Atlassian ...No Coding Necessary: Building Confluence User Macros Cheat Sheet - Atlassian ...
No Coding Necessary: Building Confluence User Macros Cheat Sheet - Atlassian ...
 
JQuery introduction
JQuery introductionJQuery introduction
JQuery introduction
 
Jquery Complete Presentation along with Javascript Basics
Jquery Complete Presentation along with Javascript BasicsJquery Complete Presentation along with Javascript Basics
Jquery Complete Presentation along with Javascript Basics
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuery
 
Using Renderless Components in Vue.js during your software development.
Using Renderless Components in Vue.js during your software development.Using Renderless Components in Vue.js during your software development.
Using Renderless Components in Vue.js during your software development.
 
JavaScript Modules Done Right
JavaScript Modules Done RightJavaScript Modules Done Right
JavaScript Modules Done Right
 
Writing your Third Plugin
Writing your Third PluginWriting your Third Plugin
Writing your Third Plugin
 
jQuery Performance Tips and Tricks (2011)
jQuery Performance Tips and Tricks (2011)jQuery Performance Tips and Tricks (2011)
jQuery Performance Tips and Tricks (2011)
 
The Django Web Application Framework 2
The Django Web Application Framework 2The Django Web Application Framework 2
The Django Web Application Framework 2
 
Introduction To Django (Strange Loop 2011)
Introduction To Django (Strange Loop 2011)Introduction To Django (Strange Loop 2011)
Introduction To Django (Strange Loop 2011)
 

En vedette

“Virtual Communities in Europe: the cultural mix and how the European Library...
“Virtual Communities in Europe: the cultural mix and how the European Library...“Virtual Communities in Europe: the cultural mix and how the European Library...
“Virtual Communities in Europe: the cultural mix and how the European Library...bridgingworlds2008
 
Plone Deployment (PloneConf Edition)
Plone Deployment (PloneConf Edition)Plone Deployment (PloneConf Edition)
Plone Deployment (PloneConf Edition)Steve McMahon
 
BackupPC - LinuxDay 2010
BackupPC  -  LinuxDay 2010BackupPC  -  LinuxDay 2010
BackupPC - LinuxDay 2010Mirco Piccin
 
Arscientia DIY @Venice
Arscientia DIY @VeniceArscientia DIY @Venice
Arscientia DIY @VeniceMirco Piccin
 
Pillole di Futuro 2012 @Montebelluna
Pillole di Futuro 2012 @MontebellunaPillole di Futuro 2012 @Montebelluna
Pillole di Futuro 2012 @MontebellunaMirco Piccin
 
From the Client Side: JavaScript in Plone
From the Client Side: JavaScript in PloneFrom the Client Side: JavaScript in Plone
From the Client Side: JavaScript in PloneSteve McMahon
 
Cross media between gaming and storytelling
Cross media between gaming and storytellingCross media between gaming and storytelling
Cross media between gaming and storytellingValentina Rao
 
Microsoft Office 2010 Revealed
Microsoft Office 2010 RevealedMicrosoft Office 2010 Revealed
Microsoft Office 2010 RevealedElaine Giles
 
Experinces Deploying Shared Services
Experinces Deploying Shared ServicesExperinces Deploying Shared Services
Experinces Deploying Shared ServicesScott Studham
 
เฉลยแบบทดสอบย่อยครั้งที่ 1 เรื่องกล้องและเซลล์
เฉลยแบบทดสอบย่อยครั้งที่ 1 เรื่องกล้องและเซลล์เฉลยแบบทดสอบย่อยครั้งที่ 1 เรื่องกล้องและเซลล์
เฉลยแบบทดสอบย่อยครั้งที่ 1 เรื่องกล้องและเซลล์Phattarawan Wai
 
“Agency in a socially networked world: library clients increase their room to...
“Agency in a socially networked world: library clients increase their room to...“Agency in a socially networked world: library clients increase their room to...
“Agency in a socially networked world: library clients increase their room to...bridgingworlds2008
 
What Hurt The Most Cascada
What Hurt The Most CascadaWhat Hurt The Most Cascada
What Hurt The Most Cascadaabonydavis
 
Why Services Companies Build Shitty Products
Why Services Companies Build Shitty ProductsWhy Services Companies Build Shitty Products
Why Services Companies Build Shitty ProductsRaj Badarinath
 
Facebook Applications and Playful Mood: the Construction of Online Third Places
Facebook Applications and Playful Mood: the Construction of Online Third PlacesFacebook Applications and Playful Mood: the Construction of Online Third Places
Facebook Applications and Playful Mood: the Construction of Online Third PlacesValentina Rao
 

En vedette (20)

“Virtual Communities in Europe: the cultural mix and how the European Library...
“Virtual Communities in Europe: the cultural mix and how the European Library...“Virtual Communities in Europe: the cultural mix and how the European Library...
“Virtual Communities in Europe: the cultural mix and how the European Library...
 
Plone Deployment (PloneConf Edition)
Plone Deployment (PloneConf Edition)Plone Deployment (PloneConf Edition)
Plone Deployment (PloneConf Edition)
 
Adobe Touch Apps
Adobe Touch AppsAdobe Touch Apps
Adobe Touch Apps
 
BackupPC - LinuxDay 2010
BackupPC  -  LinuxDay 2010BackupPC  -  LinuxDay 2010
BackupPC - LinuxDay 2010
 
Arscientia DIY @Venice
Arscientia DIY @VeniceArscientia DIY @Venice
Arscientia DIY @Venice
 
407
407407
407
 
Pillole di Futuro 2012 @Montebelluna
Pillole di Futuro 2012 @MontebellunaPillole di Futuro 2012 @Montebelluna
Pillole di Futuro 2012 @Montebelluna
 
From the Client Side: JavaScript in Plone
From the Client Side: JavaScript in PloneFrom the Client Side: JavaScript in Plone
From the Client Side: JavaScript in Plone
 
Cross media between gaming and storytelling
Cross media between gaming and storytellingCross media between gaming and storytelling
Cross media between gaming and storytelling
 
Microsoft Office 2010 Revealed
Microsoft Office 2010 RevealedMicrosoft Office 2010 Revealed
Microsoft Office 2010 Revealed
 
Experinces Deploying Shared Services
Experinces Deploying Shared ServicesExperinces Deploying Shared Services
Experinces Deploying Shared Services
 
Intro Nuevos Medios
Intro Nuevos MediosIntro Nuevos Medios
Intro Nuevos Medios
 
เฉลยแบบทดสอบย่อยครั้งที่ 1 เรื่องกล้องและเซลล์
เฉลยแบบทดสอบย่อยครั้งที่ 1 เรื่องกล้องและเซลล์เฉลยแบบทดสอบย่อยครั้งที่ 1 เรื่องกล้องและเซลล์
เฉลยแบบทดสอบย่อยครั้งที่ 1 เรื่องกล้องและเซลล์
 
#mycoloris
#mycoloris#mycoloris
#mycoloris
 
“Agency in a socially networked world: library clients increase their room to...
“Agency in a socially networked world: library clients increase their room to...“Agency in a socially networked world: library clients increase their room to...
“Agency in a socially networked world: library clients increase their room to...
 
Security
SecuritySecurity
Security
 
St patricks day-1
St patricks day-1St patricks day-1
St patricks day-1
 
What Hurt The Most Cascada
What Hurt The Most CascadaWhat Hurt The Most Cascada
What Hurt The Most Cascada
 
Why Services Companies Build Shitty Products
Why Services Companies Build Shitty ProductsWhy Services Companies Build Shitty Products
Why Services Companies Build Shitty Products
 
Facebook Applications and Playful Mood: the Construction of Online Third Places
Facebook Applications and Playful Mood: the Construction of Online Third PlacesFacebook Applications and Playful Mood: the Construction of Online Third Places
Facebook Applications and Playful Mood: the Construction of Online Third Places
 

Similaire à Overlays, Accordions & Tabs, Oh My

Similaire à Overlays, Accordions & Tabs, Oh My (20)

Jquery plugin development
Jquery plugin developmentJquery plugin development
Jquery plugin development
 
Jquery fundamentals
Jquery fundamentalsJquery fundamentals
Jquery fundamentals
 
JQuery_and_Ajax.pptx
JQuery_and_Ajax.pptxJQuery_and_Ajax.pptx
JQuery_and_Ajax.pptx
 
Jquery
JqueryJquery
Jquery
 
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
 
The Inclusive Web: hands-on with HTML5 and jQuery
The Inclusive Web: hands-on with HTML5 and jQueryThe Inclusive Web: hands-on with HTML5 and jQuery
The Inclusive Web: hands-on with HTML5 and jQuery
 
J Query The Write Less Do More Javascript Library
J Query   The Write Less Do More Javascript LibraryJ Query   The Write Less Do More Javascript Library
J Query The Write Less Do More Javascript Library
 
JQuery
JQueryJQuery
JQuery
 
JQuery
JQueryJQuery
JQuery
 
jQuery
jQueryjQuery
jQuery
 
Unit3.pptx
Unit3.pptxUnit3.pptx
Unit3.pptx
 
jQuery
jQueryjQuery
jQuery
 
J query
J queryJ query
J query
 
Lotusphere 2012 Speedgeeking - jQuery & Domino, a RAD Combination
Lotusphere 2012 Speedgeeking - jQuery & Domino, a RAD CombinationLotusphere 2012 Speedgeeking - jQuery & Domino, a RAD Combination
Lotusphere 2012 Speedgeeking - jQuery & Domino, a RAD Combination
 
Jquery- One slide completing all JQuery
Jquery- One slide completing all JQueryJquery- One slide completing all JQuery
Jquery- One slide completing all JQuery
 
bcgr3-jquery
bcgr3-jquerybcgr3-jquery
bcgr3-jquery
 
bcgr3-jquery
bcgr3-jquerybcgr3-jquery
bcgr3-jquery
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuery
 
Jquery
JqueryJquery
Jquery
 
Learning jQuery made exciting in an interactive session by one of our team me...
Learning jQuery made exciting in an interactive session by one of our team me...Learning jQuery made exciting in an interactive session by one of our team me...
Learning jQuery made exciting in an interactive session by one of our team me...
 

Plus de Steve McMahon

Full-Stack Plone Deployment with Ansible
Full-Stack Plone Deployment with AnsibleFull-Stack Plone Deployment with Ansible
Full-Stack Plone Deployment with AnsibleSteve McMahon
 
Plone Deployment Secrets & Tricks
Plone Deployment Secrets & TricksPlone Deployment Secrets & Tricks
Plone Deployment Secrets & TricksSteve McMahon
 
Plone Foundation Annual Meeting, Budapest 2009
Plone Foundation Annual Meeting, Budapest 2009Plone Foundation Annual Meeting, Budapest 2009
Plone Foundation Annual Meeting, Budapest 2009Steve McMahon
 
Plone 3 2: What's New
Plone 3 2: What's NewPlone 3 2: What's New
Plone 3 2: What's NewSteve McMahon
 
PloneFormGen: Past, Present, Future
PloneFormGen: Past, Present, FuturePloneFormGen: Past, Present, Future
PloneFormGen: Past, Present, FutureSteve McMahon
 

Plus de Steve McMahon (7)

Full-Stack Plone Deployment with Ansible
Full-Stack Plone Deployment with AnsibleFull-Stack Plone Deployment with Ansible
Full-Stack Plone Deployment with Ansible
 
How diazo works
How diazo worksHow diazo works
How diazo works
 
Plone Deployment Secrets & Tricks
Plone Deployment Secrets & TricksPlone Deployment Secrets & Tricks
Plone Deployment Secrets & Tricks
 
How Plone Happens
How Plone HappensHow Plone Happens
How Plone Happens
 
Plone Foundation Annual Meeting, Budapest 2009
Plone Foundation Annual Meeting, Budapest 2009Plone Foundation Annual Meeting, Budapest 2009
Plone Foundation Annual Meeting, Budapest 2009
 
Plone 3 2: What's New
Plone 3 2: What's NewPlone 3 2: What's New
Plone 3 2: What's New
 
PloneFormGen: Past, Present, Future
PloneFormGen: Past, Present, FuturePloneFormGen: Past, Present, Future
PloneFormGen: Past, Present, Future
 

Dernier

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
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
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
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
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
 

Dernier (20)

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
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
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
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
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...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
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
 

Overlays, Accordions & Tabs, Oh My