<?php


class TextPageType implements INodeType
{

    public function getName()
    {
        return 'Текстовая страница';
    }

    public function isRootNode()
    {
        return false;
    }

    public function getNestedTypes()
    {
        return array();
    }


    public function getActions()
    {
        return array(
            'editTextPage',
        );
    }

    public function actionLabels(){
        return array(
            'editTextPage'=>'Данные страницы',
        );
    }

    public function createAction($name, $controller, $id = null)
    {
        if($id===null)$id = $name;
        require __DIR__ . '/actions/' . ucfirst($name) . 'Action.php';
        $actionClass = ucfirst($name) . 'Action';
        return new $actionClass($controller, $id);
    }

    /**
     * @return string
     */
    public function getDefaultAction()
    {
        return 'editTextPage';
    }

    public function deleteData($id)
    {
        $model = TextPage::model()->findByPk($id);
        if($model != null) $model->delete();
    }
}
