What are you trying to achieve?

Jeremy Burns
Class Outfit

http://www.classoutfit.com

On 5 Dec 2011, at 11:4941, Dwayne Hanekamp wrote:

> I'm currently building an app on which i need automatic notification
> generation on certain models. Thats why i've created a behavior which
> adds a record to the notificationdatabase after every save or update
> (code given below). I'm wondering if i'm on the right track and if any
> of you have some comments on the way i did things.
> 
> 
> <?php
> // file: app/model/behavior/notificationbehavior.php
> class NotificationBehavior extends ModelBehavior {
> 
>       var $default = array(
>               'afterSave' => true,
>               'afterUpdate' => true,
>               'modelName' => '',
>               'id' => 'id',
>               'user_id' => 'user_id'
>               );
> 
>       public function setup(&$Model, $settings){
>               $this->default['modelName'] = strtolower($Model->name);
>               $this->settings = array_merge($this->default, $settings);
>       }
> 
>       public function afterSave(&$Model, $created = null){
>               if($created && $this->settings['afterSave']){
>                       $data = $Model->data[$Model->name];
>                       $this->data['Notification']['user_id'] = $data[$this-
>> settings['user_id']];
>                       
> $this->data['Notification'][$this->settings['modelName'] . '_id'] =
> $data[$this->settings['id']];
>               } else if(!$created && $this->settings['afterUpdate']){
>                       $data = $Model->data[$Model->name];
>                       $this->data['Notification']['user_id'] = $data[$this-
>> settings['user_id']];
>                       
> $this->data['Notification'][$this->settings['modelName'] . '_id'] =
> $data[$this->settings['id']];
>                       $this->data['Notification']['update'] = 1;
>               }
> 
>               if(!empty($this->data['Notification']['user_id'])){
>                       App::import('Model','Notification');
>                       $notification = new Notification;
>                       $notification->create();
>                       $notification->save($this->data);
> 
>               }
>       }
> 
> }
> ?>
> 
> Thanks in advance,
> 
> Dwayne
> 
> -- 
> Our newest site for the community: CakePHP Video Tutorials 
> http://tv.cakephp.org 
> Check out the new CakePHP Questions site http://ask.cakephp.org and help 
> others with their CakePHP related questions.
> 
> 
> To unsubscribe from this group, send email to
> [email protected] For more options, visit this group at 
> http://groups.google.com/group/cake-php

-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
[email protected] For more options, visit this group at 
http://groups.google.com/group/cake-php

Reply via email to