Hi everyone,
Just to clue you in on some of the major changes (and their ramifications) that shall ship with the upcoming release:
- Mapping: The mapping code for the main page has been refactored and is no longer tied to the timeline. We've consolidated the mapping code into a single JavaScript library; ushahidi.js. This library has an event system which is extensible. The stock events can be triggered for actions such as zoom changes, resizing the map viewport, change of base layer etc. As a by the way, decoupling the timeline from the map effectively means that you can plug in your own timeline. The stock timeline is uses jqplot. This change affects those plugins that hook into the main map such the fullscreen map plugin
- Themes: The views for the front-end have been grouped into directories that are named after the controllers that make use of them; For example, all the views for the reports controller are now in the themes/default/views/reports directory. Another significant change is that ALL the views (including the *_js.php) for the front-end are now under the themes directory. This change will most definitely affect any custom themes (besides the stock ones) that you may have on your deployment. To make them compatible with the upcoming release, the view files shall have to follow the convention outlined above.
- Settings Table: The structure for the settings table has been modified so that data are stored as key/value pairs. Previously, this table only had one row and each setting was a column. In the new structure, there are only 3 columns: id, key, value. The settings model class (application/models/settings) has the necessary utility methods for retrieving and saving data from/to the restructured table. There is an upgrade script that shall effect this change on your schema.
- Installer: The installer has been updated to work with the new settings table structure and we now perform the installation check in index.php. Previously, the installation check was being done via a hook (application/hooks/0_init.php)
- Configuration Files: The following config files are no longer in the repository: config.php, auth.php and encryption.php. Instead, we are only maintaining their templates (.template.php) which are the ones that the installer uses to create the config files to be used by the application. This change will affect users who automatically update/upgrade their deployment straight from GitHub - a git pull shall DELETE the mentioned config files (the ones we're no longer tracking) so please BACKUP these files before engaging in acts of git fu.
- Permission Tables: User permissions have been refactored into a another table separate table. There is an upgrade script that shall effect this change on your schema.
--
Kind Regards,
Emmanuel Kala
Skype: emmanuel.kala