<?php
# One Action, one View (with many ouputs), many Templates
# - needs a bit of help from Controller to fire both executes
Account/
actions/GlobalAction
views/GlobalView (Success,Input)
templates/Success,Input
class Account_GlobalView extends CustomBaseView
{
public function executeHtml(AgaviRequestDataHolder $rd)
{
$this->setupHtml($rd);
$this->setTitle(sprintf('%s',__('Global')));
}
}
class Account_GlobalSuccessView extends Account_GlobalView
{
public function executeHtml(AgaviRequestDataHolder $rd)
{
}
}
class Account_GlobalInputView extends Account_GlobalView
{
}
?>
## illustration number 2
<?php
- "tighter" yet still very accessible
- Controller fires up execute* and then success*
class Account_GlobalView extends CustomBaseView
{
# executes
public function executeHtml(AgaviRequestDataHolder $rd)
{
$this->setupHtml($rd);
$this->setTitle(sprintf('%s',__('Account / Global')));
}
public function executeJson(AgaviRequestDataHolder $rd)
{
$this->setupJson($rd);
$this->setTitle(sprintf('%s',__('Account / Global')));
}
# HTML
public function successHtml(AgaviRequestDataHolder $rd)
{
}
public function inputHtml(AgaviRequestDataHolder $rd)
{
}
# JSON
public function successJson(AgaviRequestDataHolder $rd)
{
}
}
?>