1: <?php
2: /**
3: * Magento
4: *
5: * NOTICE OF LICENSE
6: *
7: * This source file is subject to the Open Software License (OSL 3.0)
8: * that is bundled with this package in the file LICENSE.txt.
9: * It is also available through the world-wide-web at this URL:
10: * http://opensource.org/licenses/osl-3.0.php
11: * If you did not receive a copy of the license and are unable to
12: * obtain it through the world-wide-web, please send an email
13: * to license@magentocommerce.com so we can send you a copy immediately.
14: *
15: * DISCLAIMER
16: *
17: * Do not edit or add to this file if you wish to upgrade Magento to newer
18: * versions in the future. If you wish to customize Magento for your
19: * needs please refer to http://www.magentocommerce.com for more information.
20: *
21: * @category Mage
22: * @package Mage_Cms
23: * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24: * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25: */
26:
27:
28: /**
29: * Cms index controller
30: *
31: * @category Mage
32: * @package Mage_Cms
33: * @author Magento Core Team <core@magentocommerce.com>
34: */
35: class Mage_Cms_IndexController extends Mage_Core_Controller_Front_Action
36: {
37: /**
38: * Renders CMS Home page
39: *
40: * @param string $coreRoute
41: */
42: public function indexAction($coreRoute = null)
43: {
44: $pageId = Mage::getStoreConfig(Mage_Cms_Helper_Page::XML_PATH_HOME_PAGE);
45: if (!Mage::helper('cms/page')->renderPage($this, $pageId)) {
46: $this->_forward('defaultIndex');
47: }
48: }
49:
50: /**
51: * Default index action (with 404 Not Found headers)
52: * Used if default page don't configure or available
53: *
54: */
55: public function defaultIndexAction()
56: {
57: $this->getResponse()->setHeader('HTTP/1.1','404 Not Found');
58: $this->getResponse()->setHeader('Status','404 File not found');
59:
60: $this->loadLayout();
61: $this->renderLayout();
62: }
63:
64: /**
65: * Render CMS 404 Not found page
66: *
67: * @param string $coreRoute
68: */
69: public function noRouteAction($coreRoute = null)
70: {
71: $this->getResponse()->setHeader('HTTP/1.1','404 Not Found');
72: $this->getResponse()->setHeader('Status','404 File not found');
73:
74: $pageId = Mage::getStoreConfig(Mage_Cms_Helper_Page::XML_PATH_NO_ROUTE_PAGE);
75: if (!Mage::helper('cms/page')->renderPage($this, $pageId)) {
76: $this->_forward('defaultNoRoute');
77: }
78: }
79:
80: /**
81: * Default no route page action
82: * Used if no route page don't configure or available
83: *
84: */
85: public function defaultNoRouteAction()
86: {
87: $this->getResponse()->setHeader('HTTP/1.1','404 Not Found');
88: $this->getResponse()->setHeader('Status','404 File not found');
89:
90: $this->loadLayout();
91: $this->renderLayout();
92: }
93:
94: /**
95: * Render Disable cookies page
96: *
97: */
98: public function noCookiesAction()
99: {
100: $pageId = Mage::getStoreConfig(Mage_Cms_Helper_Page::XML_PATH_NO_COOKIES_PAGE);
101: if (!Mage::helper('cms/page')->renderPage($this, $pageId)) {
102: $this->_forward('defaultNoCookies');;
103: }
104: }
105:
106: /**
107: * Default no cookies page action
108: * Used if no cookies page don't configure or available
109: *
110: */
111: public function defaultNoCookiesAction()
112: {
113: $this->loadLayout();
114: $this->renderLayout();
115: }
116: }
117: