Thanks for all your help but I'm still getting an undefined function
for init as well as the other errors. Does anyone else have any ideas?
Brian and myself are all out of them!



On Feb 9, 6:56 pm, brian <bally.z...@gmail.com> wrote:
> Actually, yes, I think I have one more idea. When I suggested calling
> $this->Email->initialize($this) I think that I should have said
> $this->Email->init($this)
>
> So, go back to what you had initially (heh):
>
> App::import("Component","Email");
> $this->Email = new EmailComponent();
> $this->Email->init($this);
>
> If that doesn't work, I'm afraid you'll need to consult an expert.
>
> On Mon, Feb 9, 2009 at 6:28 PM, Kyle Decot <kdec...@gmail.com> wrote:
>
> > I tried changing the method to be public but the problems still
> > persist. Any other suggestions? I'm really stumped on this!
>
> > On Feb 9, 1:51 pm, brian <bally.z...@gmail.com> wrote:
> >> Well, you're closer to a solution, at least. AFAIK, you shouldn't need
> >> to do anything special with the component after loading with
> >> App::import(). But, the component is obviously missing a handle to the
> >> controller. So, the problem might be a combination of the fact that
> >> you're doing this in AppController and that the method is
> >> private/protected. You could try making it a public method. That last
> >> bit is not much better than a wild guess, though.
>
> >> On Mon, Feb 9, 2009 at 1:27 PM, Kyle Decot <kdec...@gmail.com> wrote:
>
> >> > Well if I remove the App::import(... and load the Email Component via
> >> > the components var, then everything goes smoothly. I would like to
> >> > avoid this however since this function is used across a large number
> >> > of controllers but I'd really like to load it only when needed, as my
> >> > app is already beginning to run slow. Any ideas?
>
> >> > On Feb 9, 11:43 am, brian <bally.z...@gmail.com> wrote:
> >> >> Well, I'm certainly no expert, so you might well benefit from someone
> >> >> else jumping in here. ;-)
>
> >> >> Try removing these lines:
>
> >> >>        App::import("Component","Email");
> >> >>        $this->Email = new EmailComponent();
>
> >> >> ... as well as the inititlaize line I suggested. Then, add this line
> >> >> to the top of AppController:
>
> >> >> public $components = array('Email');
>
> >> >> (replace public with var if you're stuck with PHP4.x)
>
> >> >> See if that works. I have a feeling the problem stems from the fact
> >> >> that you're importing a component into AppController, rather than
> >> >> loading it in the normal fashion. If you don't send email from many
> >> >> controllers, this may not be the most efficient way, but you'll at
> >> >> least be a bit closer to figuring out why it's failing for you.
>
> >> >> The crux of it is that the component isn't getting a handle to the
> >> >> controller for some reason.
>
> >> >> On Mon, Feb 9, 2009 at 2:29 AM, Kyle Decot <kdec...@gmail.com> wrote:
>
> >> >> > When trying to use the initialize method, I get a undefined method
> >> >> > error:
>
> >> >> > Fatal error: Call to undefined method EmailComponent::initialize() in 
> >> >> > /
> >> >> > home/affinit3/public_html/theskateparkdirectory/app/app_controller.php
> >> >> > on line 60
>
> >> >> > Any ideas?
>
> >> >> > On Feb 9, 2:22 am, brian <bally.z...@gmail.com> wrote:
> >> >> >> change the method name to _sendEmailNotification (single underscore)
> >> >> >> to make it protected, rather than private
>
> >> >> >> $this->Email = new EmailComponent();
> >> >> >> $this->Email->initialize($this);
>
> >> >> >> Those are the only things that I can think of. I've never imported a
> >> >> >> component inside of an AppController method - private, protected, or
> >> >> >> public. Maybe that's the problem?
>
> >> >> >> On Mon, Feb 9, 2009 at 1:57 AM, Kyle Decot <kdec...@gmail.com> wrote:
>
> >> >> >> > Ah, stupid mistake but I've updated the set to be body instead of
> >> >> >> > email_body and am still getting the same results. Any other ideas?
>
> >> >> >> > On Feb 9, 1:55 am, brian <bally.z...@gmail.com> wrote:
> >> >> >> >> sorry, I should have unquoted that. This should be clearer.
>
> >> >> >> >> $this->set("email_body",$body);
>
> >> >> >> >> Notice (8): Undefined variable: body 
> >> >> >> >> [APP/views/elements/email/html/
> >> >> >> >> email_notification.ctp, line 1]
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To post to this group, send email to cake-php@googlegroups.com
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?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to