| Package | system.web | 
|---|---|
| Inheritance | class CTheme » CComponent | 
| Since | 1.0 | 
| Version | $Id$ | 
| Source Code | framework/web/CTheme.php | 
| Property | Type | Description | Defined By | 
|---|---|---|---|
| basePath | string | the file path to the theme folder | CTheme | 
| baseUrl | string | the relative URL to the theme folder (without ending slash) | CTheme | 
| name | string | theme name | CTheme | 
| systemViewPath | string | the path for system views. | CTheme | 
| viewPath | string | the path for controller views. | CTheme | 
| Method | Description | Defined By | 
|---|---|---|
| __call() | Calls the named method which is not a class method. | CComponent | 
| __construct() | Constructor. | CTheme | 
| __get() | Returns a property value, an event handler list or a behavior based on its name. | CComponent | 
| __isset() | Checks if a property value is null. | CComponent | 
| __set() | Sets value of a component property. | CComponent | 
| __unset() | Sets a component property to be null. | CComponent | 
| asa() | Returns the named behavior object. | CComponent | 
| attachBehavior() | Attaches a behavior to this component. | CComponent | 
| attachBehaviors() | Attaches a list of behaviors to the component. | CComponent | 
| attachEventHandler() | Attaches an event handler to an event. | CComponent | 
| canGetProperty() | Determines whether a property can be read. | CComponent | 
| canSetProperty() | Determines whether a property can be set. | CComponent | 
| detachBehavior() | Detaches a behavior from the component. | CComponent | 
| detachBehaviors() | Detaches all behaviors from the component. | CComponent | 
| detachEventHandler() | Detaches an existing event handler. | CComponent | 
| disableBehavior() | Disables an attached behavior. | CComponent | 
| disableBehaviors() | Disables all behaviors attached to this component. | CComponent | 
| enableBehavior() | Enables an attached behavior. | CComponent | 
| enableBehaviors() | Enables all behaviors attached to this component. | CComponent | 
| getBasePath() | Returns the file path to the theme folder | CTheme | 
| getBaseUrl() | Returns the relative URL to the theme folder (without ending slash) | CTheme | 
| getEventHandlers() | Returns the list of attached event handlers for an event. | CComponent | 
| getLayoutFile() | Finds the layout file for the specified controller's layout. | CTheme | 
| getName() | Returns theme name | CTheme | 
| getSystemViewPath() | Returns the path for system views. Defaults to 'ThemeRoot/views/system'. | CTheme | 
| getViewFile() | Finds the view file for the specified controller's view. | CTheme | 
| getViewPath() | Returns the path for controller views. Defaults to 'ThemeRoot/views'. | CTheme | 
| hasEvent() | Determines whether an event is defined. | CComponent | 
| hasEventHandler() | Checks whether the named event has attached handlers. | CComponent | 
| hasProperty() | Determines whether a property is defined. | CComponent | 
| raiseEvent() | Raises an event. | CComponent | 
the file path to the theme folder
the relative URL to the theme folder (without ending slash)
theme name
the path for system views. Defaults to 'ThemeRoot/views/system'.
the path for controller views. Defaults to 'ThemeRoot/views'.
| 
public void __construct(string $name, string $basePath, string $baseUrl) | ||
| $name | string | name of the theme | 
| $basePath | string | base theme path | 
| $baseUrl | string | base theme URL | 
public function __construct($name,$basePath,$baseUrl)
{
    $this->_name=$name;
    $this->_baseUrl=$baseUrl;
    $this->_basePath=$basePath;
}
Constructor.
| 
public string getBasePath() | ||
| {return} | string | the file path to the theme folder | 
public function getBasePath()
{
    return $this->_basePath;
}
| 
public string getBaseUrl() | ||
| {return} | string | the relative URL to the theme folder (without ending slash) | 
public function getBaseUrl()
{
    return $this->_baseUrl;
}
| 
public string getLayoutFile(CController $controller, string $layoutName) | ||
| $controller | CController | the controller | 
| $layoutName | string | the layout name | 
| {return} | string | the layout file path. False if the file does not exist. | 
public function getLayoutFile($controller,$layoutName)
{
    $basePath=$this->getViewPath();
    if(empty($layoutName))
    {
        $module=$controller->getModule();
        while($module!==null)
        {
            if($module->layout===false)
                return false;
            if(!empty($module->layout))
                break;
            $module=$module->getParentModule();
        }
        if($module===null)
            return $controller->resolveViewFile(Yii::app()->layout,$basePath.'/layouts',$basePath);
        else
        {
            $basePath.='/'.$module->getId();
            return $controller->resolveViewFile($module->layout,$basePath.'/layouts',$basePath);
        }
    }
    else
    {
        if(($module=$controller->getModule())!==null)
            $basePath.='/'.$module->getId();
        return $controller->resolveViewFile($layoutName,$basePath.'/layouts',$basePath);
    }
}
Finds the layout file for the specified controller's layout.
| 
public string getName() | ||
| {return} | string | theme name | 
| 
public string getSystemViewPath() | ||
| {return} | string | the path for system views. Defaults to 'ThemeRoot/views/system'. | 
public function getSystemViewPath()
{
    return $this->getViewPath().DIRECTORY_SEPARATOR.'system';
}
| 
public string getViewFile(CController $controller, string $viewName) | ||
| $controller | CController | the controller | 
| $viewName | string | the view name | 
| {return} | string | the view file path. False if the file does not exist. | 
public function getViewFile($controller,$viewName)
{
    return $controller->resolveViewFile($viewName,$this->getViewPath().'/'.$controller->getUniqueId(),$this->getViewPath());
}
Finds the view file for the specified controller's view.
| 
public string getViewPath() | ||
| {return} | string | the path for controller views. Defaults to 'ThemeRoot/views'. | 
public function getViewPath()
{
    return $this->_basePath.DIRECTORY_SEPARATOR.'views';
}
Signup or Login in order to comment.