Files
YuCheng Hu 0b7de828c0 添加 Piwik 到代码库中。
+YUCHENG HU+

git-svn-id: https://svn.code.sf.net/p/hawebs/svn@452 a2543c7e-f6e9-4f8a-8bff-1ffc34733512
2010-07-10 02:29:43 +00:00

138 lines
4.1 KiB
PHP

<?php
/**
* Piwik - Open source web analytics
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html Gpl v3 or later
* @version $Id: Controller.php 1681 2009-12-13 19:19:07Z vipsoft $
*
* @category Piwik_Plugins
* @package Piwik_UserSettings
*/
/**
*
* @package Piwik_UserSettings
*/
class Piwik_UserSettings_Controller extends Piwik_Controller
{
function index()
{
$view = Piwik_View::factory('index');
$view->dataTablePlugin = $this->getPlugin( true );
$view->dataTableResolution = $this->getResolution( true );
$view->dataTableConfiguration = $this->getConfiguration( true );
$view->dataTableOS = $this->getOS( true );
$view->dataTableBrowser = $this->getBrowser( true );
$view->dataTableBrowserType = $this->getBrowserType ( true );
$view->dataTableWideScreen = $this->getWideScreen( true );
echo $view->render();
}
function getResolution( $fetch = false)
{
$view = $this->getStandardDataTableUserSettings(
__FUNCTION__,
'UserSettings.getResolution'
);
$view->setColumnTranslation('label', Piwik_Translate('UserSettings_ColumnResolution'));
return $this->renderView($view, $fetch);
}
function getConfiguration( $fetch = false)
{
$view = $this->getStandardDataTableUserSettings(
__FUNCTION__,
'UserSettings.getConfiguration'
);
$view->setColumnTranslation('label', Piwik_Translate('UserSettings_ColumnConfiguration'));
$view->setLimit( 3 );
return $this->renderView($view, $fetch);
}
function getOS( $fetch = false)
{
$view = $this->getStandardDataTableUserSettings(
__FUNCTION__,
'UserSettings.getOS'
);
$view->setColumnTranslation('label', Piwik_Translate('UserSettings_ColumnOperatingSystem'));
return $this->renderView($view, $fetch);
}
function getBrowser( $fetch = false)
{
$view = $this->getStandardDataTableUserSettings(
__FUNCTION__,
'UserSettings.getBrowser'
);
$view->setColumnTranslation('label', Piwik_Translate('UserSettings_ColumnBrowser'));
$view->setGraphLimit(7);
return $this->renderView($view, $fetch);
}
function getBrowserType ( $fetch = false)
{
$view = $this->getStandardDataTableUserSettings(
__FUNCTION__,
'UserSettings.getBrowserType',
'graphPie'
);
$view->setColumnTranslation('label', Piwik_Translate('UserSettings_ColumnBrowserFamily'));
$view->disableOffsetInformation();
return $this->renderView($view, $fetch);
}
function getWideScreen( $fetch = false)
{
$view = $this->getStandardDataTableUserSettings(
__FUNCTION__,
'UserSettings.getWideScreen'
);
$view->setColumnTranslation('label', Piwik_Translate('UserSettings_ColumnTypeOfScreen'));
$view->disableOffsetInformation();
return $this->renderView($view, $fetch);
}
function getPlugin( $fetch = false)
{
$view = Piwik_ViewDataTable::factory( 'graphVerticalBar');
$view->init( $this->pluginName, __FUNCTION__, 'UserSettings.getPlugin' );
$view->disableSearchBox();
$view->disableExcludeLowPopulation();
$view->disableSort();
$view->disableOffsetInformation();
$view->disableShowAllColumns();
$view->disallowPercentageInGraphTooltip();
$view->setColumnsToDisplay( array('label','nb_visits') );
$view->setColumnTranslation('label', Piwik_Translate('UserSettings_ColumnPlugin'));
$view->setGraphLimit( 10 );
$view->setLimit( 10 );
return $this->renderView($view, $fetch);
}
protected function getStandardDataTableUserSettings( $currentControllerAction,
$APItoCall,
$defaultDatatableType = null )
{
$view = Piwik_ViewDataTable::factory( $defaultDatatableType);
$view->init( $this->pluginName, $currentControllerAction, $APItoCall );
$view->disableSearchBox();
$view->disableExcludeLowPopulation();
$view->setLimit( 5 );
$view->setGraphLimit(5);
$this->setPeriodVariablesView($view);
$column = 'nb_visits';
if($view->period == 'day')
{
$column = 'nb_uniq_visitors';
}
$view->setSortedColumn( $column );
$view->setColumnsToDisplay( array('label', $column) );
return $view;
}
}