--- a/busui/owa/modules/base/handlers/campaignHandlers.php +++ b/busui/owa/modules/base/handlers/campaignHandlers.php @@ -1,1 +1,76 @@ - + + * @copyright Copyright © 2006 Peter Adams + * @license http://www.gnu.org/copyleft/gpl.html GPL v2.0 + * @category owa + * @package owa + * @version $Revision$ + * @since owa 1.4.0 + */ + +class owa_campaignHandlers extends owa_observer { + + /** + * Notify Event Handler + * + * @param unknown_type $event + * @access public + */ + function notify($event) { + + if ($event->get('campaign')) { + $d = owa_coreAPI::entityFactory('base.campaign_dim'); + + $new_id = $d->generateId(trim( strtolower( $event->get('campaign') ) ) ); + $d->getByPk('id', $new_id); + $id = $d->get('id'); + + if (!$id) { + + $d->set('id', $new_id); + $d->set('name', $event->get('campaign')); + $ret = $d->create(); + + if ( $ret ) { + return OWA_EHS_EVENT_HANDLED; + } else { + return OWA_EHS_EVENT_FAILED; + } + + } else { + + owa_coreAPI::debug('Not Persisting. Campaign already exists.'); + return OWA_EHS_EVENT_HANDLED; + } + } else { + owa_coreAPI::debug('Noting to handle. No Campaign properties found on event.'); + return OWA_EHS_EVENT_HANDLED; + } + } +} + +?>