In Symfony 1.4, the sfContext provides information about the current application context, such as information about the request, response etc. You will be able to retrieve the name of the module where you're currently running your code from this context. This can be achieved from both the templates (view) and from the actions (controller):
From a template (view)
Within a template, the sfContext
instance should be automagically exposed in the view layer as $sf_context
so you could simply access the module name with:
// Outputs: "module_name"
echo $sf_context->getModuleName();
From an action (controller)
Alternatively, if you really need to have you can send the module name as a variable accessing the sfContext
from the controller (or get the module name in the controller and send some other variable according to the module name):
<?php
// apps/frontend/modules/job/actions/actions.class.php
class jobActions extends sfActions
{
public function executeIndex(sfWebRequest $request)
{
$this->module_name = sfContext::getInstance()->getModuleName();
}
}
So in this case with the example, in the view indexSuccess.php
, we could print the module name with:
// app/frontend/modules/job/templates/indexSuccess.php
// Outputs: "job"
echo $module_name;
Happy coding !