WebGUI 6.x Plugin Migration Guide --------------------------------- This document is provided by the WebGUI 6.x development team in order to help you migrate your WebGUI 5.x plugins to the new API's. CONTENTS 1. Wobject Migration 2. Macro Migration 3. Authentication Migration 4. Scheduler Migration 5. System Changes Affecting Migration 1. Wobject Migration -------------------- 1.1 Nothing Yet There have currently been no changes to the Wobject API. 2. Macro Migration ------------------- 2.1 Nothing Yet There have currently been no changes to the macro API. 3. Authentication Migration ----------------------------- 3.1 Authentication Modules Changes Authentication in WebGUI is now completely Object Oriented. The superclass WebGUI::Auth defines a loose set of rules by which to create authentication parameters. Subclasses MUST be WebGUI::Auth objects, however they can define thier own rules for authentication. No methods are required to be overwritten as it is up to the user to decide which methods may be called through WebGUI. The only method that MUST be calllable is the init routine which should define the starting point for authentication. For instance, WebGUI's init method calls the displayLogin function. Methods which remain compatible the auth modules distributed with WebGUI: www_createAccount www_deactivateAccount www_displayAccount www_displayLogin www_login www_logout www_recoverPassword There is no guarentee, however that any custom apps which call these routines will work for custom authentication instances. 4. Scheduler Migration ----------------------- 4.1 Nothing Yet There have currently been no changes to the scheduler API. 5. System Changes Affecting Migration ------------------------------------- 5.1 Set Date Format Changes In 6.0 the "set date" format used by WebGUI::Form::date() and other methods was changed from "MM/DD/YYYY" to "YYYY-MM-DD" and optionally "YYYY-MM-DD HH:MM:SS". If you are using WebGUI::FormProcessor to handle processing of your dates then you will notice no side effects from the format change. If you are not, then you should convert your plugin to use WebGUI::FormProcessor. In addition to the format change above, we also made one related API change. WebGUI::Form::dateTime() and WebGUI::HTMLForm->dateTime() no longer have "dateExtras" and "timeExtras", but rather just "extras" properties. This is because there is only one field to represent both the date and the time, unlike before. 5.2 Database Links The database links API was changed in 6.0. The getHash function was removed and replaced with a getList function that returns a hash reference. 5.3 Paginator In 6.0 almost all of the paginator methods were modified in an incompatible way, including the constructor. We removed depricated parameters from the methods, which will cause pagination not to function in items that have not been updated.