public function createAction(Request $request)
    {
        if ($this->get('session')->has('module')) {
            // get the last module from the session to fill some defaults for the new one
            $tmpModule = $this->get('session')->get('module');

            // setup a fresh module object
            $module = new Module();
            $module->setStyle($tmpModule->getStyle());
        }
        else {
            // setup a fresh module object
            $module = new Module();

            // fill it with some defaults
            $module->setStyle('less');
        }

        // create form
        $form = $this->createForm(new ModuleType(), $module);

        if ($request->getMethod() == 'POST') {
            $form->bindRequest($request);

            if ($form->isValid()) {
                // set default templates
                $module->addTemplate(strtolower($module->getName()));

                // save the module in the session
                $this->get('session')->set('module', $module);

                // create the module in the filesystem
                try {
                    $moduleManager = $this->get('terrific.composer.module.manager');
                    $moduleManager->createModule($module);

                    $this->get('session')->setFlash('notice', 'Module ' . ucfirst($module->getName()) . ' created successfully');
                }
                catch (\Exception $e) {
                    $logger = $this->get('logger');
                    $logger->err($e->getMessage());

                    $this->get('session')->setFlash('notice', 'Module could not be created: ' . $e->getMessage());
                }

                if ($request->get('addskin', false)) {
                    // redirect to the add skin form
                    return $this->redirect($this->generateUrl('composer_add_skin'));
                }
                else {
                    // redirect to the create module form
                    return $this->redirect($this->generateUrl('composer_create_module'));
                }
            }
        }

        return array('form' => $form->createView());
    }
public function createAction(Request $request)
    {
        if ($this->get('session')->has('module')) {
            // get the last module from the session to fill some defaults for the new one
            $tmpModule = $this->get('session')->get('module');

            // setup a fresh module object
            $module = new Module();
            $module->setStyle($tmpModule->getStyle());
        }
        else {
            // setup a fresh module object
            $module = new Module();

            // fill it with some defaults
            $module->setStyle('less');
        }

        // create form
        $form = $this->createForm(new ModuleType(), $module);

        if ($request->getMethod() == 'POST') {
            $form->bindRequest($request);

            if ($form->isValid()) {
                // set default templates
                $module->addTemplate(strtolower($module->getName()));

                // save the module in the session
                $this->get('session')->set('module', $module);

                // create the module in the filesystem
                try {
                    $moduleManager = $this->get('terrific.composer.module.manager');
                    $moduleManager->createModule($module);

                    $this->get('session')->setFlash('notice', 'Module ' . ucfirst($module->getName()) . ' created successfully');
                }
                catch (\Exception $e) {
                    $logger = $this->get('logger');
                    $logger->err($e->getMessage());

                    $this->get('session')->setFlash('notice', 'Module could not be created: ' . $e->getMessage());
                }

                if ($request->get('addskin', false)) {
                    // redirect to the add skin form
                    return $this->redirect($this->generateUrl('composer_add_skin'));
                }
                else {
                    // redirect to the create module form
                    return $this->redirect($this->generateUrl('composer_create_module'));
                }
            }
        }

        return array('form' => $form->createView());
    }
public function createAction ( Request $ request ) { if ( $ this -> get ( 'session' ) -> has ( 'module' ) ) { // get the last module from the session to fill some defaults for the new one $ tmpModule = $ this -> get ( 'session' ) -> get ( 'module' ) ; // setup a fresh module object $ module = new Module ( ) ; $ module -> setStyle ( $ tmpModule -> getStyle ( ) ) ; } else { // setup a fresh module object $ module = new Module ( ) ; // fill it with some defaults $ module -> setStyle ( 'less' ) ; } // create form $ form = $ this -> createForm ( new ModuleType ( ) , $ module ) ; if ( $ request -> getMethod ( ) == 'POST' ) { $ form -> bindRequest ( $ request ) ; if ( $ form -> isValid ( ) ) { // set default templates $ module -> addTemplate ( strtolower ( $ module -> getName ( ) ) ) ; // save the module in the session $ this -> get ( 'session' ) -> set ( 'module' , $ module ) ; // create the module in the filesystem try { $ moduleManager = $ this -> get ( 'terrific.composer.module.manager' ) ; $ moduleManager -> createModule ( $ module ) ; $ this -> get ( 'session' ) -> setFlash ( 'notice' , 'Module ' . ucfirst ( $ module -> getName ( ) ) . ' created successfully' ) ; } catch ( \ Exception $ e ) { $ logger = $ this -> get ( 'logger' ) ; $ logger -> err ( $ e -> getMessage ( ) ) ; $ this -> get ( 'session' ) -> setFlash ( 'notice' , 'Module could not be created: ' . $ e -> getMessage ( ) ) ; } if ( $ request -> get ( 'addskin' , false ) ) { // redirect to the add skin form return $ this -> redirect ( $ this -> generateUrl ( 'composer_add_skin' ) ) ; } else { // redirect to the create module form return $ this -> redirect ( $ this -> generateUrl ( 'composer_create_module' ) ) ; } } } return array ( 'form' => $ form -> createView ( ) ) ; }
Creates a terrific module.

@Route("/module/create", name="composer_create_module")
@Template()

@param Request $request
@return Response
Creates a terrific module .