Hi,
i would write something like:
public function __call($action, $args)
{
switch($action)
{
case 'edit':
if(Permission::check('ADMIN') || (is_numeric($this->urlParams['ID']) && $this->urlParams['ID'] == Member::currentMember()->ID))
{
$this->Content = $this->EditProfileForm();
break;
}
case 'show':
$this->Content = 'Und hier kommt die Maus...';
break;
}
return $this;
}
But that doesn't work. Instead i have to write:
public function edit() { return $this->doAction('edit'); }
public function show() { return $this->doAction('show'); }
public function doAction($action)
{
switch($action)
{
case 'edit':
if(Permission::check('ADMIN') || (is_numeric($this->urlParams['ID']) && $this->urlParams['ID'] == Member::currentMember()->ID))
{
$this->Content = $this->EditProfileForm();
break;
}
case 'show':
$this->Content = 'Und hier kommt die Maus...';
break;
}
return $this;
}
Why can't i use the __call() magic?
thx Sunny
PS:
I know, i can write something like this:
public function edit()
{
if(Permission::check('ADMIN') || (is_numeric($this->urlParams['ID']) && $this->urlParams['ID'] == Member::currentMember()->ID))
{
$this->Content = $this->EditProfileForm();
return $this;
}
return $this->show();
}
public function show()
{
$this->Content = 'Und hier kommt die Maus...';
return $this;
}
;o) but the use of __call() would be nice.