Overview
There are numerous tools to help you translate the interface and content of your Drupal websites, and there are obviously (still) missing items in the implementation. This session will show off Drupal 6's capabilities and the latest developments with contributed modules, such as i18n module and l10n_client.
Agenda
* What do you need vs. what Drupal does
* How to get closer the two with core features and contributed modules
* Translating the interface live with l10n_client, contributing to an l10n_server
* Content translation, listing, filtering and administration
* What's missing, and where projects are going
Goals
I intend to provide you with an understanding on where Drupal core and the contributed modules fit with your needs and goals, and where should you still expect some custom coding required for your top-notch multilanguage site.
Some 40 Indymedia sites worldwide are now using Drupal, with different approaches to solve some of the general and specific requirements of their sites and collectives.
Other collectives are currently migrating their sites from other CMSs to Drupal.
Agenda:
* exchange ideas and updates face-to-face, sharing what's done
* Discuss and develop the survey
* discuss ideas for a basic install profile
http://docs.indymedia.org/view/Devel/ImcDrupalDevUsingList
http://docs.indymedia.org/view/Devel/ImcDrupalDevModules#How_IMCs_use_Dr...
This is a BoF for librarians and library technologists.
Agenda
* What libraries need from Drupal
* What libraries and librarians bring to Drupal
* Version migration issues and challenges
* Integrating with library systems
Overview
Web design is hard. I am not at all a designer or graphic magician, but would like to see great themes on my Drupal sites, so I am continuously on the lookout for great templates to adapt to Drupal. Whoever professional you ask will tell you that building a website on an existing template is a bad idea and of course you should architect the look and feel and interaction of the website for the specific need at hand. Unfortunately lots of people just lack the professional resources. And starting from an existing template still allows you to tweak it further (if the license grants you to do so).
Therefore this session is about picking a template (the Modern World template from Solucija) and converting it to a fully functional Drupal 6 theme with blocks, menus, a screenshot for the theme selector and all live from the ground up in 45 minutes, instructions included. Make sure to drink some coffee so you can grok every part of this quick flowing live tutorial!
Agenda
* Starting from template vs. custom research/process/architecture/design
* Template licensing, what should you consider
* Downloading and starting off with the theme
* Several steps, while the theme will be horribly broken, but we keep going
* A glamourous end result
* More on licensing, how to contribute the theme to drupal.org or elsewhere if drupal.org is not applicable
Goals
Attendees will leave with a recipe to port existing templates to Drupal 6 and hopefully even contributing them to Drupal.org (but this last item will not be obligatory).
Resources
Also check out my blog post: http://hojtsy.hu/blog/2008-jul-22/i-will-teach-you-port-templates-drupal...
Overview
Over the past few months, we've seen a number of major drupal site rollouts that make extensive use of Panels2 (See, for example, http://drupal.org/node/241344 and http://drupal.org/node/242993). We've also seen a few modules implement the Panels API in rather different ways - most notably, Advanced Profile Kit and Organic Groups Panels - that hint at how flexible Panels can be.
We'll start this session by highlighting these different Panels implementations and providing a birds-eye view of how Panels' moving parts work. We want to make sure attendees have a good sense of what Panels2 can do now - because the second half of the presentation is all about the future of Panels - otherwise known as Panels3.
Panels3 isn't so much about changing the data model (that part already works pretty well) as changing the API and interface. One good way to think about this difference is to consider Panels2's limitations on who can use it. Right now, it's very difficult to scale down the power of Panels to a level that's appropriate for normal users. Panels3 aims to break down that barrier. We'll spend the remainder of the session overviewing some of the current plans for how Panels3 might do that, as well as noting attendee suggestions for some of the large-scale directions we might consider.
Agenda
* Briefly overview Panels2 to bring everyone up to speed on the most recent developments.
* Provide some concrete examples of ways that the Panels API is currently being implemented.
* Present some of the current plans for the future development of Panels
* Gather participant reactions to the proposed ideas, and take general input on possible directions to go as well
Goals
Participants should expect to leave the session with a grasp of Panels' capabilities in the present, and a sense of what to expect in the future.
Resources
None needed. Just bring yourself!
Overview
This session presents a replacement for the existing aggregator module in Drupal 7 core. It is not just geared towards coders but to anybody who's dealing with aggregation in Drupal. We'd like to show you what's exciting about the new aggregator, talk about new possibilities it opens up and ask you for your feedback.
Background:
Drupal core's aggregator module wasn't designed with a wide range of use cases in mind. It supports aggregation of RSS and Atom feeds to a configurable set of categories on your Drupal site. But there is much more that users want to do with aggregation in Drupal aside from simple news aggregation, e. g.:
* Import iCal feeds to events
* Import to complex content types with custom fields
* Support workflow, access control or commenting on feeds or feed items
* Import special feed formats like NewsML
These and other demands have lead to a plethora of aggregation modules in contrib land: aggregator2, leech, simplefeed, aggregation and feedapi are just some of them. Most of them satisfied specific use cases and failed to cover the wider field of scenarios, hence none of them made the breakthrough to being the prevalent solution.
After a first attempt with FeedAPI in 2007 Aron Novak did it again for Google Summer of Code 2008: he took on the task to come up with a solution fit to replace ye olde aggregator. The result is a simple yet extensible and efficient architecture that should serve us well as a basis for the coming years.
Agenda
* Give an overview over existing aggregation modules in Drupal and its properties
* Explain why a new aggregator in core is better than the module-that-fits-best out there
* Present architecture of new aggregator for D7
* Present important features and explain specific design decisions
* Real world examples of what the new aggregator does or enables us to do:
** aggregate lightweight feed items or nodes
** lazy instantiation of feed items
** high performance setups
** (more to be announced when presentation is ready)
Goals
* Give you a good understanding of what's in the box
* Get your feedback on specific design decisions
* Do another step away from "many similar incompatible modules that do the same thing but slightly different" towards "many compatible modules that give you more flexible and better options"
* Inspire you to think beyond the current boundaries in aggregation
Resources
This is not mandatory by any means, but if you want to prepare for this session, we recommend to
* Test drive the new aggregator: http://drupal.org/project/new_aggregator or http://drupal.org/node/236237 (patch)
* Read the architecture outline http://groups.drupal.org/node/12772
* Have a look at the code
Overview
This session, run by the authors of Organic Groups and Domain Access, will give an introduction to the workings of Drupal's node access system.
Agenda
* What is Node Access?
* How does it work?
* What modules provide node access?
* Exploring the current API
** Enabling node access
** Defining access realms
** Defining access grants
** hook_node_access_records()
** hook_node_grants()
** db_rewrite_sql()
** Changes from D5 to D6
* Common problems and issues
* Best practices for using node access
Goals
New users should come away with an understanding of the features and limitations of the node access system. Programmers should come away with the ability to write a node access module, using the existing API. Everyone should come away thinking about how to make the system better.
Resources
See the node acccess example module for background.
Introducing Ubercart:
Where it is and where it's headed...
Overview
Ubercart is an exciting e-commerce module package for Drupal. It is a flexible, easy to use system that is already working across the web to sell physical goods, file downloads, site memberships, node access, and much more! This session will be all about exposure... presenting as much of Ubercart to as many new (and experienced) users as possible. The nature and size of the module package means there is always more to learn and share, and we couldn't be more excited about the rapid pace of the Drupal 6 migration.
The session will briefly cover the project's history, basic feature set, and points of integration with Drupal and other contributed modules. It will then showcase some of the advanced features Ubercart provides with demonstrations for setting up dynamic shipping quotes, selling paid file downloads, and selling role promotions. Each of these will be accompanied with real life use cases and demonstrations on live sites where possible.
The formal session will wrap up with a word about Ubercart's development roadmap. In Drupal 5, a foundation was laid in both code and community development. In Drupal 6, we'll focus on optimization - refining the core, making it easier for developers to contribute, and taking advantage of Drupal 6's updated APIs wherever possible. Work on a D6 compatible Uber Tuber is well underway and will be reported on in this session.
If times permits, the session will close with a question and answer period.
As always, the developers are available after the session for further inquiries and are always interested in meeting new people. Feel free to stop any of the Uberdevs in the halls for a word or a high five.
Agenda
* Brief history of Ubercart.
* Ubercart features overview.
* Integration with Drupal core and contributed modules.
* Configuration demonstrations and examples:
- Advanced shipping with Workflow-ng
- File downloads
- Role promotions
- Setting up PayPal
* Development roadmap for Drupal 6 and beyond.
* Q/A if time permits.
Goals
Session attendees should leave with a broad understanding of what Ubercart is and what it enables them to do. Attendees will gain an initial familiarity with various parts of the administrative interfaces through the demonstrations, and they should know where to go to find help when they start their next Ubercart project. Finally, everyone will be brought up to speed on the current state of Ubercart development and find out how they can get involved!
Resources
* Ubercart project page - http://drupal.org/project/ubercart
* Community site/support forums - http://www.ubercart.org
* Documentation - http://www.ubercart.org/docs
* Live sites directory - http://www.ubercart.org/site
* Livetest (front end demo) - http://livetest.ubercart.org
* Admin demo - http://demo.ubercart.org
* Development roadmap - http://www.ubercart.org/forum/development/5115/...
More resources to follow... check back for updates!
Related sessions
Drupallers interested in more of the Drupal 6 work should consider attending at least the first part of the Ubercart in Drupal 6 session.
We'll also be performing A Hands On Guide to Module Development in which we will discuss the things we've done wrong and are starting to do right in module development. The session will include an example of developing a module that integrates with Ubercart.
Overview
Drupal is increasingly making a place for itself among museums around the world. As a strong and flexible framework Drupal can be a good fit for these sorts of organizations.
This session will be a case study and lessons learned from two museum web sites Palantir has built using Druapl 5: The Indianapolis Museum of Art and the Art Institute of Chicago. Both sites offered a number of unique challenges but also the opportunity to share amazing and diverse content.
Agenda
* Bringing Drupal into a large, established web presence
* Designing a modern site that still has a strong artistic feel
* Bridging Drupal to legacy multimedia databases, such as museum collection databases
* Drupal as an application framework
* Existing open source museum tools
Goals
We hope to present both the challenges and rewards of integrating Drupal with large, established systems such as those of museums. We also hope to give some insight into how to bend Drupal farther than you ever thought possible.
Resources
Indianapolis Museum of Art: http://imamuseum.org/
IMA Drupal.org Showcase: http://drupal.org/node/188312
Art Institute of Chicago Collections: http://www.artic.edu/aic/collections/
AIC Drupal.org Showcase: http://drupal.org/node/279485
Overview
The Facebook Platform allows anyone to create applications which tightly integrate with the Facebook.com website. These Applications can write content to a Facebook user's Profile, News Feed, and also Canvas Pages. This content can be as rich and complex as any website, so Drupal is a natural choice for developing on this platform.
This session will introduce the Drupal for Facebook project, and the best ways to use it. We will include a demo of one or more live Facebook Applications powered by Drupal and show some of the basic configuration behind them. And we'll discuss some of the differences of developing for Canvas Pages versus regular web pages.
Agenda
* Brief introduction to the Facebook API
* Brief introduction to Drupal for Facebook
* Demo of live Facebook Application
* Behind the scenes configuration of that Application
* Canvas Pages (FBML) vs. HTML
* Question and Answer
Goals
This session will give a basic understanding of the Facebook Platform for those new to it. We'll talk about why one might make a Facebook Application a part of a Drupal-powered website; or why one might build a Facebook App from scratch using Drupal.
We'll also demonstrate how the Drupal for Facebook modules work. Those familiar with Drupal will leave with a sense of how easy (or difficult) it will be to configure one of these applications.
Resources
* Facebook Platform
* Drupal for Facebook project
* Drupal for Facebook canvas pages
* Drupal for Facebook HTML pages