*/ class Mage_Adminhtml_DashboardController extends Mage_Adminhtml_Controller_Action { public function indexAction() { $this->_title($this->__('Dashboard')); $this->loadLayout(); $this->_setActiveMenu('dashboard'); $this->_addBreadcrumb(Mage::helper('adminhtml')->__('Dashboard'), Mage::helper('adminhtml')->__('Dashboard')); $this->renderLayout(); } /** * Gets most viewed products list * */ public function productsViewedAction() { $this->loadLayout(); $this->renderLayout(); } /** * Gets latest customers list * */ public function customersNewestAction() { $this->loadLayout(); $this->renderLayout(); } /** * Gets the list of most active customers * */ public function customersMostAction() { $this->loadLayout(); $this->renderLayout(); } public function ajaxBlockAction() { $output = ''; $blockTab = $this->getRequest()->getParam('block'); if (in_array($blockTab, array('tab_orders', 'tab_amounts', 'totals'))) { $output = $this->getLayout()->createBlock('adminhtml/dashboard_' . $blockTab)->toHtml(); } $this->getResponse()->setBody($output); return; } public function tunnelAction() { $httpClient = new Varien_Http_Client(); $gaData = $this->getRequest()->getParam('ga'); $gaHash = $this->getRequest()->getParam('h'); if ($gaData && $gaHash) { $newHash = Mage::helper('adminhtml/dashboard_data')->getChartDataHash($gaData); if (hash_equals($newHash, $gaHash)) { $params = json_decode(base64_decode(urldecode($gaData)), true); if ($params) { $response = $httpClient->setUri(Mage_Adminhtml_Block_Dashboard_Graph::API_URL) ->setParameterGet($params) ->setConfig(array('timeout' => 5)) ->request('GET'); $headers = $response->getHeaders(); $this->getResponse() ->setHeader('Content-type', $headers['Content-type']) ->setBody($response->getBody()); } } } } protected function _isAllowed() { return Mage::getSingleton('admin/session')->isAllowed('dashboard'); } }