Book Image

Mastering Joomla! 1.5 Extension and Framework Development

Book Image

Mastering Joomla! 1.5 Extension and Framework Development

Overview of this book

Joomla! is one of the world’s top open source content management systems, which enables you to build websites and powerful online applications. Out of the box, Joomla! does a great job of managing the content needed to enhance the functionality of your website. But for many people, the true power of Joomla! lies in its application framework that makes it possible for thousands of developers around the world to create powerful add-ons and extensions. This book will guide you through the complexities of implementing add-ons, components, modules, and plugins in Joomla! 1.5. If you feel that you’ve mastered the basics of creating Joomla! extensions, then this book will take you to the next level. Packed with expert advice on all aspects of programming with Joomla!, this book is an invaluable reference guide you will turn to again and again for your Joomla! development tasks. The book starts by explaining the structure and design of the Joomla! Framework. Then we move on to extending and storing data in standard fields and dealing with multilingual requirements. Further, you will discover best practices, design, and coding methods for Joomla! components, modules, plugins, and other extensions. Along the way, you will actually design and create a component, module, and plugin that work together to add functionality to the Joomla! framework. You will also learn about customizing the page output using JavaScript effects, making use of Web Services from within Joomla! and ensuring that your code is secure and error-free. You will discover how to easily create sophisticated extensions that are robust, user-friendly, and professional by taking advantage of the many libraries and utilities provided by the Joomla! framework. A comprehensive, up-to-date reference to the Joomla! Framework API is also included in the book. Finally, we will discuss advanced methods for rendering your extensions more robust, secure, and professional.
Table of Contents (18 chapters)
Mastering Joomla! 1.5 Extension and Framework Development
Credits
About the Author
About the Reviewer
Preface

Events


As we have already mentioned, plugins use the observer pattern to keep an eye on events and handle them. The observer pattern is a design pattern that is common in programming. This particular pattern allows listeners to attach to a subject. The subject can initiate a notification (essentially an event), which will cause the listeners to react to the event.

The expressions 'listener' and 'observer' are interchangeable, as are 'subject' and 'observable'.

If you are unfamiliar with the observer pattern, you may want to refer to http://www.phppatterns.com/docs/design/observer_pattern.

When we create plugins, we generally define listeners for specific events.

The application uses a global object called the event dispatcher to dispatch events to registered listeners. The global event dispatcher, a JEventDispatcher object, extends the abstract JObservable class.

In Joomla!, a listener can be a class or a function. When we use a class listener, the class should extend the abstract class JPlugin...