SlideShare uma empresa Scribd logo
1 de 60
YAG – YetAnother Gallery TYPO3 Photo Gallery Management
Who weare Daniel Lienert 	Student of Computer Science 	University of Karlsruhe Michael Knoll 	Student of Computer Science 	University of Karlsruhe
Outline Introduction Concepts Backend / Frontend Buildyourowntheme UnderConstruction
Introduction
Before YAG Searching TER for „gallery“ 114 Extensions
Before YAG Comprehensivecomparison: http://www.auskennbert.de/kategorien/typo3/typo3-extension-galerien-im-vergleich/ Out-of-date
Gallery Extension Comparison
Do wereallyneedanothergallery ??
CurrentExtensions PROs + SomestableExtensions + TYPO3 Look & Feel + Community support
CurrentExtensions CONs - TYPO3 Look & Feel - Ugly Codebase - Poor Documentation - No Backend Module - Not suitableformanypictures ,[object Object], YOU DON‘T WANT TO USE THEM!
YAG Goals Clean Codebase (Extbaseapproach) Extendable (Theming & API) Scalable (T3 caching) Easy to manage (BE Module) Strictseperationofgallerymanagementandfrontendrepresentation All featuresknownfrom„Big Galleries“ EXIF, Lightbox, Multifile-Upload, Skinning, ...
Wherewearetoday Someinstallationswithup to 15.000 photos (and growing) on high-trafficsites  Scalable 		*check* Skinning (different themepackagesavailable in  TER)  Extendable 		*check*  Skinning 		*check*
Further Goals Well-integrated in TYPO3 Flexible Resolution handling & caching Interfaces for Desktop Applications  (e.g. Lightroom) Flexible Filtering of images (tags, categories, EXIF data, ...)
Concepts behind YAG
Underthehood YAG depends on  Extbase / Fluid pt_extlist (powerfulllistgenerator) pt_extbase (someextbase / pre-extbasehelpermethods)
Image Organization
Image Organization Image Management (Backend) Gallery -> Album -> Items Image Presentation (Frontend) Arbitrary Image-Collections Gallery – Album – Items Categories Tags ...
Image Organization Source images Filter Category,Album, Tags,... Filter
Image Resolutions A typoscript-definedrepresentationof an image Defineasmanyasyouwant
Image Repository resolutionConfigs { thumb { maxW = 150 maxH = 150 	} } Image Repository imagID, „thumb“ Source images Resolution cache
Hash File System Automatic Directory Structure Fixed # of Images / folder -> extremlyscalable
Original Images Management Original Images areneverchanged UploadedimagesstructuredbyalbumUid One folder / album
Importer (EXIF-)Meta Data YAGImporter Adding to Album External Image Resource Filesystem-Storage
Importer Currentlyimplemented: Uploads multiple Files via SWF Uploader Crawls directory and imports image files Extractsuploaded ZIPfile and imports imagefiles Handles HTTP requests from Desktop applications, e.g. Lightroom
YAG Backend Module
Backend Module ,[object Object]
Add, edit, delete
Drag & Drop sorting,[object Object]
Add, edit, delete
Drag & Drop sorting
Hide / unhide
Set gallerypreviewalbum,[object Object]
Batch editingofalbums
Reassignalbumsto galleries,[object Object]
Edit title / description
Definealbumthumb
Drag & Drop sorting
Change defaultsortingto title / capturedate / filename,[object Object]
Batch editingofimages,[object Object]
Flash multifileuploader
Zipuploader
Import from Server directory,[object Object]
All facts on onepage
Clear pagecacheofpages on whichyagisinstalled,[object Object]
Clear / rebuildtheresolutionfilecache,[object Object],[object Object]
Gallery list
Specific gallery
Specific album
Specific image
Select theme,[object Object]
Select gallery / album / imagewith an easy touse JS poweredselector,[object Object]
Frontend YAG looks like YOU want it!
Frontend / Themes Frontend renderingisdonebythemes Lightwight, powerfulland easy tocustomize Easy toselectwhileaddingyagascontentelement
Frontend / Themes YAG provides  1½ themes out ofthe box
Frontend / Themes Single imagewithdetailedview
Frontend / Themes Single imagewithlightbox
Frontend / Themes Several other themes are available in TER yag_themepack_jquery Galleryview Crosslide Isotope superSized yag_theme_simpleviewer (flashviewer) yag_theme_perfectlightbox (alternative lightbox) yag_theme_fancybox  (alternative lightbox)
Themes / Selection Select thetheme per plugininstance Different themes on the same pagearepossible
Frontend / Themes Someexamples ..
tt_news Integration Demonstration

Mais conteúdo relacionado

Mais procurados

Mais procurados (17)

Intro To WordPress Themes
Intro To WordPress ThemesIntro To WordPress Themes
Intro To WordPress Themes
 
Themes and layouts
Themes and layoutsThemes and layouts
Themes and layouts
 
A look at Drupal 7 Theming
A look at Drupal 7 ThemingA look at Drupal 7 Theming
A look at Drupal 7 Theming
 
There's No Crying In Wordpress! (an intro to WP)
There's No Crying In Wordpress! (an intro to WP)There's No Crying In Wordpress! (an intro to WP)
There's No Crying In Wordpress! (an intro to WP)
 
Introduction to Drupal 7 News section and home page block with views
Introduction to Drupal 7  News section and home page block with viewsIntroduction to Drupal 7  News section and home page block with views
Introduction to Drupal 7 News section and home page block with views
 
Crash Course in Theme Surgery
Crash Course in Theme SurgeryCrash Course in Theme Surgery
Crash Course in Theme Surgery
 
Wordpress genesis september 3 english rev cg
Wordpress genesis september 3 english rev cgWordpress genesis september 3 english rev cg
Wordpress genesis september 3 english rev cg
 
Customizing WordPress Themes
Customizing WordPress ThemesCustomizing WordPress Themes
Customizing WordPress Themes
 
Drupal8 themingdeepdive drupaldevdays-montpellier17042015
Drupal8 themingdeepdive drupaldevdays-montpellier17042015Drupal8 themingdeepdive drupaldevdays-montpellier17042015
Drupal8 themingdeepdive drupaldevdays-montpellier17042015
 
WordPress Theme Development for Designers
WordPress Theme Development for DesignersWordPress Theme Development for Designers
WordPress Theme Development for Designers
 
Intro to Apache Solr for Drupal
Intro to Apache Solr for DrupalIntro to Apache Solr for Drupal
Intro to Apache Solr for Drupal
 
Introduction to YUI PHP Loader
Introduction to YUI PHP LoaderIntroduction to YUI PHP Loader
Introduction to YUI PHP Loader
 
MongoDB at Sailthru: Scaling and Schema Design
MongoDB at Sailthru: Scaling and Schema DesignMongoDB at Sailthru: Scaling and Schema Design
MongoDB at Sailthru: Scaling and Schema Design
 
Wordpress template hierarchy
Wordpress template hierarchyWordpress template hierarchy
Wordpress template hierarchy
 
What's New in WordPress 3.0 (for developers)
What's New in WordPress 3.0 (for developers)What's New in WordPress 3.0 (for developers)
What's New in WordPress 3.0 (for developers)
 
Intro to WordPress theme development
Intro to WordPress theme developmentIntro to WordPress theme development
Intro to WordPress theme development
 
WordPress Bootcamp Part 3 - Themes
WordPress Bootcamp Part 3 - ThemesWordPress Bootcamp Part 3 - Themes
WordPress Bootcamp Part 3 - Themes
 

Semelhante a YAG - Yet Another Gallery / T3CON11

YAG - Yet another gallery (2012)
YAG - Yet another gallery (2012)YAG - Yet another gallery (2012)
YAG - Yet another gallery (2012)
Daniel Lienert
 
19 free flash photo galleries
19 free flash photo galleries19 free flash photo galleries
19 free flash photo galleries
tsonlinen
 

Semelhante a YAG - Yet Another Gallery / T3CON11 (20)

YAG - Yet another gallery (2012)
YAG - Yet another gallery (2012)YAG - Yet another gallery (2012)
YAG - Yet another gallery (2012)
 
20110606 e z_flow_gig_v1
20110606 e z_flow_gig_v120110606 e z_flow_gig_v1
20110606 e z_flow_gig_v1
 
DrupalEasy: Intro to Theme Development
DrupalEasy: Intro to Theme DevelopmentDrupalEasy: Intro to Theme Development
DrupalEasy: Intro to Theme Development
 
Drupal 8: frontend development
Drupal 8: frontend developmentDrupal 8: frontend development
Drupal 8: frontend development
 
19 free flash photo galleries
19 free flash photo galleries19 free flash photo galleries
19 free flash photo galleries
 
Building a Custom Theme in Drupal 8
Building a Custom Theme in Drupal 8Building a Custom Theme in Drupal 8
Building a Custom Theme in Drupal 8
 
Facets of applied smw
Facets of applied smwFacets of applied smw
Facets of applied smw
 
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
 
Design System in Figma A to Z.pdf
Design System in Figma A to Z.pdfDesign System in Figma A to Z.pdf
Design System in Figma A to Z.pdf
 
Diwd 2011-111011223430-phpapp01
Diwd 2011-111011223430-phpapp01Diwd 2011-111011223430-phpapp01
Diwd 2011-111011223430-phpapp01
 
Joomla Templates101
Joomla Templates101Joomla Templates101
Joomla Templates101
 
Drupal Presentation for CapitalCamp 2011: Features Driven Development
Drupal Presentation for CapitalCamp 2011: Features Driven DevelopmentDrupal Presentation for CapitalCamp 2011: Features Driven Development
Drupal Presentation for CapitalCamp 2011: Features Driven Development
 
java swing programming
java swing programming java swing programming
java swing programming
 
Ontopia/Liferay integration @TMRA 2010
Ontopia/Liferay integration @TMRA 2010Ontopia/Liferay integration @TMRA 2010
Ontopia/Liferay integration @TMRA 2010
 
Apache Karaf in DX 7.2 - Developers Meetup - March 2017
Apache Karaf in DX 7.2 - Developers Meetup - March 2017Apache Karaf in DX 7.2 - Developers Meetup - March 2017
Apache Karaf in DX 7.2 - Developers Meetup - March 2017
 
Pharo sources in git
Pharo sources in gitPharo sources in git
Pharo sources in git
 
guadec-2007
guadec-2007guadec-2007
guadec-2007
 
Drupal
DrupalDrupal
Drupal
 
Modernizing Vue Storefront 1
Modernizing Vue Storefront 1Modernizing Vue Storefront 1
Modernizing Vue Storefront 1
 
Adopt or hack - how to hack a theme in a Drupal way
Adopt or hack - how to hack a theme in a Drupal wayAdopt or hack - how to hack a theme in a Drupal way
Adopt or hack - how to hack a theme in a Drupal way
 

Último

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
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
 
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
 
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
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

YAG - Yet Another Gallery / T3CON11