(updated!) After years of avoiding classes Drupal is slowing moving toward using object-orientation in more areas, from the DB to unit testing to Views. However, many Drupal developers do not have experience with OOP design. This session will cover the concept of design patterns, both procedural and OOP, how Drupal leverages them now, and how we can better leverage OOP in Drupal without falling into common traps.
- Design patterns
- Design patterns in Drupal
- Smart approaches to OO in PHP
- How Drupal is using OO now and could use it in other areas.
Attendees should come away with a better understanding of OO principles and design patterns philosophy, and hopefully a common understanding of where they are appropriate to use (and where they are not).
The search revolution is finally available to anyone with a Drupal site. By connecting Drupal to a Solr search backend, new possibilities arise for how to structure sites, discover content, and keep your visitors coming back. Our case study will be Drupal.org and Groups.drupal.org. It's the community you know and love, but you're going to love it even more when you can search and drill down into groups, authors, tags and dates, then save your search and pipe it into an RSS feed.
While people are scrambling to get their sites and modules ported to Drupal 6, Drupal 7 development has been charging full speed ahead. This session will talk about the progress of Drupal 7 to date, revolutionary improvements to Drupal core's development process, what new changes you should be aware of, what improvements are coming down the pipe, and how anyone (yes, anyone) can help make Drupal 7 the most awesome release yet!
- New improvements in Drupal 7
o For developers
o For site builders
- Improvements still in the works
- Goals vs. Achievements
- Revolutions in the Drupal 7 development process
- Where to jump in
People should come away with a good understanding of what's in store for them in Drupal 7, as well as pointers on how to get involved.
access callback, page callback, title callback maybe render callback and of course the block callback....
The menu system handles a lot of callbacks and the block system should run callbacks too and then we could unify them. http://drupal4hu.com/node/173 contains my first thoughts on this. The goal of this session to get myself together and code enough of this by March so that I am able to talk about it.
Ubercart is a powerful e-commerce suite that allows you to sell physical products, role promotions, file downloads, and more through your Drupal site. Current stores use Ubercart to sell audio content, recurring fan club memberships, node access, store credit, and event registrations. This session will highlight the core and contributed modules needed to accomplish these things in Ubercart. We will walk through the store configuration and answer questions related to the demonstrated tasks.
Ubercart is an open source e-commerce suite built on top of Drupal. Its recent migration to Drupal 6 brought with it a number of performance enhancements, usability improvements, and new features designed to make using Ubercart faster and easier. This session will provide a basic overview of the Ubercart project, exposure to the changes and improvements in Ubercart 2.x, and vision casting for the future of Ubercart on Drupal 6 and beyond.
Ever wondered if Drupal could come built-in with non-default functionality out of the box? Install profiles are the answer. In this session, we'll learn how to build them.
Why Install Profiles in the first place?
How to build install profiles.
Profile generators: Why and why not.
Install Profile API.
The future - plans for Drupal 7 and beyond.
A clear understanding of install profiles and how to write them.
Drupal and its contributed modules provides an impressive amount of functionality without needing to write a single line of code by storing information in Drupal's database tables. Unfortunately this poses a challenge for developers wanting to stage changes between servers. This talk will address these issues by describing the problem and presenting a variety of solutions as well as their pros and cons.
- The what and why of the problem
- Installation vs Change Management
- Configuration vs Content
- Option #1 - Moving admin to code
- Option #2 - DBscripts module
- Option #3 - Deploy module
- More options possible
- Putting it all together to create a workflow that meets your needs
- What still needs work and options for addressing it
Demos, explanations and how to avoid:
- Cross-site scripting attacks
- Cross-site request forgery
- SQL injection
- Menu access checks
- Node access checks
How to manage security issues with the Drupal Security Team.
- Setting up permissions, roles and users
- Accepting user content with input formats
- Keeping up to date with Update status
- How Drupal Security Team helps the community
Learn how to identify and fix security issues on your site and how to work with the Drupal Security Team.