Here's my function to register a campaign. I guess I need to somehow
get the charity name from the form and with it find the charity id
that corresponds with that name and then insert it into $this-
>data['Campaign']['charity_id']. I'm not sure how to do that though :(

        function regcampaign() {
                $alias = 'regcampaign';
                if ($this->Acl->check($this->Session->read('user.email'), 
$alias,
'create')) {
                        if (!empty($this->data)) {
                                $this->Campaign->create();
                                //make the currently logged in users id be the 
user_id foreign key
for this campaign
                                $this->data['Campaign']['user_id'] = 
$this->Auth->user('id');
                                if ($this->Campaign->save($this->data)) {
                                        $user = 
$this->Session->read('user.email');
                                        $name = 
$this->Session->read('user.name');
                                        $parent = 
$this->Acl->Aco->findByAlias('Campaigns');
                                        $alias = $name . '_' . 
$this->Campaign->id;
                                        $aco = new Aco();
                                        $aco->create();
                                        $aco->save(array('alias' => $alias, 
'model' => 'Campaign',
'foreign_key' => $this->Campaign->id, 'parent_id' => $parent['Aco']
['id']));
                                        $this->Acl->allow('users', $alias, 
'read');
                                        
$this->Acl->allow($this->Session->read('user.email'), $alias);
                                        $this->Session->setFlash(__('The 
campaign has been saved',
true));
                                        $this->redirect(array('controller' => 
'campaigns', 'action' =>
'view'));
                                } else {
                                        $this->Session->setFlash(__('The 
campaign could not be saved.
Please, try again.', true));
                                }
                        }
                } else {
                        $this->Session->setFlash(__('You don\'t have permission 
to register
a new campaign'));
                }
                $users = $this->Campaign->User->find('list');
                $charities = $this->Campaign->Charity->find('list', 
array('fields'
=> array('Charity.id', 'Charity.charity_name')));
                $this->set(compact('users', 'charities'));
        }

-- 
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
cake-php+unsubscr...@googlegroups.com For more options, visit this group at 
http://groups.google.com/group/cake-php

Reply via email to