     1: <?php
     2: /*************************************************************************************/
     3: /*                                                                                   */
     4: /*      Thelia                                                                       */
     5: /*                                                                                   */
     6: /*      Copyright (c) OpenStudio                                                     */
     7: /*  email : info@thelia.net                                                      */
     8: /*      web : http://www.thelia.net                                                  */
     9: /*                                                                                   */
    10: /*      This program is free software; you can redistribute it and/or modify         */
    11: /*      it under the terms of the GNU General Public License as published by         */
    12: /*      the Free Software Foundation; either version 3 of the License                */
    13: /*                                                                                   */
    14: /*      This program is distributed in the hope that it will be useful,              */
    15: /*      but WITHOUT ANY WARRANTY; without even the implied warranty of               */
    16: /*      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                */
    17: /*      GNU General Public License for more details.                                 */
    18: /*                                                                                   */
    19: /*      You should have received a copy of the GNU General Public License            */
    20: /*      along with this program. If not, see <http://www.gnu.org/licenses/>.     */
    21: /*                                                                                   */
    22: /*************************************************************************************/
    23: namespace Thelia\Controller;
    24:
    25: use Thelia\Controller\NullControllerInterface;
    26: use Symfony\Component\HttpFoundation\Request;
    27:
    28: /**
    29:  *
    30:  * Must be the last controller call. It fixes default values
    31:  *
    32:  * @author Manuel Raynaud <mraynadu@openstudio.fr>
    33:  */
    34:
    35: class DefaultController implements NullControllerInterface
    36: {
    37:     /**
    38:      *
    39:      * set the default value for thelia
    40:      *
    41:      * In this case there is no action so we have to verify if some needed params are not missing
    42:      *
    43:      * @param \Symfony\Component\HttpFoundation\Request $request
    44:      */
    45:     public function noAction(Request $request)
    46:     {
    47:         if (! $view = $request->query->get('view')) {
    48:             $view = "index";
    49:             if ($request->request->has('view')) {
    50:                 $view = $request->request->get('view');
    51:             }
    52:         }
    53:
    54:         $request->attributes->set('_view', $view);
    55:     }
    56: }
    57: