update Piwik to version 2.16 (fixes #91)

This commit is contained in:
oliver 2016-04-10 18:55:57 +02:00
commit d885a4baa9
5833 changed files with 418860 additions and 226988 deletions

View file

@ -1,6 +1,6 @@
<?php
/**
* Piwik - Open source web analytics
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
@ -9,13 +9,40 @@
namespace Piwik\Plugins\Events;
use Piwik\Archive;
use Piwik\DataTable;
use Piwik\DataTable\Row;
use Piwik\DataTable;
use Piwik\Metrics;
use Piwik\Piwik;
/**
* Custom Events API
* The Events API lets you request reports about your users' Custom Events.
*
* Events are tracked using the Javascript Tracker trackEvent() function, or using the [Tracking HTTP API](http://developer.piwik.org/api-reference/tracking-api).
*
* <br/>An event is defined by an event category (Videos, Music, Games...),
* an event action (Play, Pause, Duration, Add Playlist, Downloaded, Clicked...),
* and an optional event name (a movie name, a song title, etc.) and an optional numeric value.
*
* <br/>This API exposes the following Custom Events reports: `getCategory` lists the top Event Categories,
* `getAction` lists the top Event Actions, `getName` lists the top Event Names.
*
* <br/>These Events report define the following metrics: nb_uniq_visitors, nb_visits, nb_events.
* If you define values for your events, you can expect to see the following metrics: nb_events_with_value,
* sum_event_value, min_event_value, max_event_value, avg_event_value
*
* <br/>The Events.get* reports can be used with an optional `&secondaryDimension` parameter.
* Secondary dimension is the dimension used in the sub-table of the Event report you are requesting.
*
* <br/>Here are the possible values of `secondaryDimension`: <ul>
* <li>For `Events.getCategory` you can set `secondaryDimension` to `eventAction` or `eventName`.</li>
* <li>For `Events.getAction` you can set `secondaryDimension` to `eventName` or `eventCategory`.</li>
* <li>For `Events.getName` you can set `secondaryDimension` to `eventAction` or `eventCategory`.</li>
* </ul>
*
* <br/>For example, to request all Custom Events Categories, and for each, the top Event actions,
* you would request: `method=Events.getCategory&secondaryDimension=eventAction&flat=1`.
* You may also omit `&flat=1` in which case, to get top Event actions for one Event category,
* use `method=Events.getActionFromCategoryId` passing it the `&idSubtable=` of this Event category.
*
* @package Events
* @method static \Piwik\Plugins\Events\API getInstance()
@ -67,24 +94,23 @@ class API extends \Piwik\Plugin\API
*/
public function getDefaultSecondaryDimension($apiMethod)
{
if(isset($this->defaultMappingApiToSecondaryDimension[$apiMethod])) {
if (isset($this->defaultMappingApiToSecondaryDimension[$apiMethod])) {
return $this->defaultMappingApiToSecondaryDimension[$apiMethod];
}
return false;
}
protected function getRecordNameForAction($apiMethod, $secondaryDimension = false)
{
if (empty($secondaryDimension)) {
$secondaryDimension = $this->getDefaultSecondaryDimension($apiMethod);
}
$record = $this->mappingApiToRecord[$apiMethod];
if(!is_array($record)) {
if (!is_array($record)) {
return $record;
}
// when secondaryDimension is incorrectly set
if(empty($record[$secondaryDimension])) {
if (empty($record[$secondaryDimension])) {
return key($record);
}
return $record[$secondaryDimension];
@ -98,7 +124,7 @@ class API extends \Piwik\Plugin\API
public function getSecondaryDimensions($apiMethod)
{
$records = $this->mappingApiToRecord[$apiMethod];
if(!is_array($records)) {
if (!is_array($records)) {
return false;
}
return array_keys($records);
@ -122,29 +148,44 @@ class API extends \Piwik\Plugin\API
}
}
protected function getDataTable($name, $idSite, $period, $date, $segment, $expanded = false, $idSubtable = null, $secondaryDimension = false)
protected function getDataTable($name, $idSite, $period, $date, $segment, $expanded = false, $idSubtable = null, $secondaryDimension = false, $flat = false)
{
Piwik::checkUserHasViewAccess($idSite);
$this->checkSecondaryDimension($name, $secondaryDimension);
$recordName = $this->getRecordNameForAction($name, $secondaryDimension);
$dataTable = Archive::getDataTableFromArchive($recordName, $idSite, $period, $date, $segment, $expanded, $idSubtable);
$this->filterDataTable($dataTable);
$dataTable = Archive::createDataTableFromArchive($recordName, $idSite, $period, $date, $segment, $expanded, $flat, $idSubtable);
if ($flat) {
$dataTable->filterSubtables('Piwik\Plugins\Events\DataTable\Filter\ReplaceEventNameNotSet');
} else {
$dataTable->filter('AddSegmentValue', array(function ($label) {
if ($label === Archiver::EVENT_NAME_NOT_SET) {
return false;
}
return $label;
}));
}
$dataTable->filter('Piwik\Plugins\Events\DataTable\Filter\ReplaceEventNameNotSet');
return $dataTable;
}
public function getCategory($idSite, $period, $date, $segment = false, $expanded = false, $secondaryDimension = false)
public function getCategory($idSite, $period, $date, $segment = false, $expanded = false, $secondaryDimension = false, $flat = false)
{
return $this->getDataTable(__FUNCTION__, $idSite, $period, $date, $segment, $expanded, $idSubtable = false, $secondaryDimension);
return $this->getDataTable(__FUNCTION__, $idSite, $period, $date, $segment, $expanded, $idSubtable = false, $secondaryDimension, $flat);
}
public function getAction($idSite, $period, $date, $segment = false, $expanded = false, $secondaryDimension = false)
public function getAction($idSite, $period, $date, $segment = false, $expanded = false, $secondaryDimension = false, $flat = false)
{
return $this->getDataTable(__FUNCTION__, $idSite, $period, $date, $segment, $expanded, $idSubtable = false, $secondaryDimension);
return $this->getDataTable(__FUNCTION__, $idSite, $period, $date, $segment, $expanded, $idSubtable = false, $secondaryDimension, $flat);
}
public function getName($idSite, $period, $date, $segment = false, $expanded = false, $secondaryDimension = false)
public function getName($idSite, $period, $date, $segment = false, $expanded = false, $secondaryDimension = false, $flat = false)
{
return $this->getDataTable(__FUNCTION__, $idSite, $period, $date, $segment, $expanded, $idSubtable = false, $secondaryDimension);
return $this->getDataTable(__FUNCTION__, $idSite, $period, $date, $segment, $expanded, $idSubtable = false, $secondaryDimension, $flat);
}
public function getActionFromCategoryId($idSite, $period, $date, $idSubtable, $segment = false)
@ -176,29 +217,4 @@ class API extends \Piwik\Plugin\API
{
return $this->getDataTable(__FUNCTION__, $idSite, $period, $date, $segment, $expanded = false, $idSubtable);
}
/**
* @param DataTable $dataTable
*/
protected function filterDataTable($dataTable)
{
$dataTable->filter('Sort', array(Metrics::INDEX_NB_VISITS));
$dataTable->queueFilter('ReplaceColumnNames');
$dataTable->queueFilter('ReplaceSummaryRowLabel');
$dataTable->filter(function (DataTable $table) {
$row = $table->getRowFromLabel(Archiver::EVENT_NAME_NOT_SET);
if ($row) {
$row->setColumn('label', Piwik::translate('General_NotDefined', Piwik::translate('Events_EventName')));
}
});
// add processed metric avg_event_value
$dataTable->queueFilter('ColumnCallbackAddColumnQuotient',
array('avg_event_value',
'sum_event_value',
'nb_events_with_value',
$precision = 2,
$shouldSkipRows = true)
);
}
}

View file

@ -0,0 +1,96 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Actions;
use Piwik\Common;
use Piwik\Tracker\Action;
use Piwik\Tracker\Request;
use Piwik\Tracker;
/**
* An Event is composed of a URL, a Category name, an Action name, and optionally a Name and Value.
*
*/
class ActionEvent extends Action
{
public function __construct(Request $request)
{
parent::__construct(Action::TYPE_EVENT, $request);
$url = $request->getParam('url');
$this->setActionUrl($url);
$this->eventValue = trim($request->getParam('e_v'));
}
public static function shouldHandle(Request $request)
{
$eventCategory = $request->getParam('e_c');
$eventAction = $request->getParam('e_a');
return (strlen($eventCategory) > 0 && strlen($eventAction) > 0);
}
public function getEventAction()
{
return $this->request->getParam('e_a');
}
public function getEventCategory()
{
return $this->request->getParam('e_c');
}
public function getEventName()
{
return $this->request->getParam('e_n');
}
public function getCustomFloatValue()
{
return $this->eventValue;
}
protected function getActionsToLookup()
{
$actionUrl = false;
$url = $this->getActionUrl();
if (!empty($url)) {
// normalize urls by stripping protocol and www
$url = Tracker\PageUrl::normalizeUrl($url);
$actionUrl = array($url['url'], $this->getActionType(), $url['prefixId']);
}
return array('idaction_url' => $actionUrl);
}
// Do not track this Event URL as Entry/Exit Page URL (leave the existing entry/exit)
public function getIdActionUrlForEntryAndExitIds()
{
return false;
}
// Do not track this Event Name as Entry/Exit Page Title (leave the existing entry/exit)
public function getIdActionNameForEntryAndExitIds()
{
return false;
}
public function writeDebugInfo()
{
$write = parent::writeDebugInfo();
if ($write) {
Common::printDebug("Event Value = " . $this->getCustomFloatValue());
}
return $write;
}
}

View file

@ -1,6 +1,6 @@
<?php
/**
* Piwik - Open source web analytics
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
@ -98,7 +98,16 @@ class Archiver extends \Piwik\Plugin\Archiver
public function aggregateMultipleReports()
{
$dataTableToSum = $this->getRecordNames();
$this->getProcessor()->aggregateDataTableRecords($dataTableToSum, $this->maximumRowsInDataTable, $this->maximumRowsInSubDataTable, $this->columnToSortByBeforeTruncation);
$columnsAggregationOperation = null;
$this->getProcessor()->aggregateDataTableRecords(
$dataTableToSum,
$this->maximumRowsInDataTable,
$this->maximumRowsInSubDataTable,
$this->columnToSortByBeforeTruncation,
$columnsAggregationOperation,
$columnsToRenameAfterAggregation = null,
$countRowsRecursive = array());
}
protected function getRecordNames()
@ -179,18 +188,17 @@ class Archiver extends \Piwik\Plugin\Archiver
$rankingQuery->addColumn(Metrics::INDEX_EVENT_MAX_EVENT_VALUE, 'max');
}
$this->archiveDayQueryProcess($select, $from, $where, $orderBy, $groupBy, $rankingQuery);
$this->archiveDayQueryProcess($select, $from, $where, $groupBy, $orderBy, $rankingQuery);
}
protected function archiveDayQueryProcess($select, $from, $where, $orderBy, $groupBy, RankingQuery $rankingQuery)
protected function archiveDayQueryProcess($select, $from, $where, $groupBy, $orderBy, RankingQuery $rankingQuery)
{
// get query with segmentation
$query = $this->getLogAggregator()->generateQuery($select, $from, $where, $groupBy, $orderBy);
// apply ranking query
if ($rankingQuery) {
$query['sql'] = $rankingQuery->generateQuery($query['sql']);
$query['sql'] = $rankingQuery->generateRankingQuery($query['sql']);
}
// get result
@ -205,7 +213,6 @@ class Archiver extends \Piwik\Plugin\Archiver
}
}
/**
* Records the daily datatables
*/
@ -227,7 +234,7 @@ class Archiver extends \Piwik\Plugin\Archiver
*/
protected function getDataArray($name)
{
if(empty($this->arrays[$name])) {
if (empty($this->arrays[$name])) {
$this->arrays[$name] = new DataArray();
}
return $this->arrays[$name];

View file

@ -0,0 +1,56 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Columns;
use Piwik\Piwik;
use Piwik\Plugin\Dimension\ActionDimension;
use Piwik\Plugins\Events\Segment;
use Piwik\Plugins\Events\Actions\ActionEvent;
use Piwik\Tracker\Action;
use Piwik\Tracker\Request;
class EventAction extends ActionDimension
{
protected $columnName = 'idaction_event_action';
protected $columnType = 'INTEGER(10) UNSIGNED DEFAULT NULL';
protected function configureSegments()
{
$segment = new Segment();
$segment->setSegment('eventAction');
$segment->setName('Events_EventAction');
$this->addSegment($segment);
}
public function getName()
{
return Piwik::translate('Events_EventAction');
}
public function getActionId()
{
return Action::TYPE_EVENT_ACTION;
}
public function onLookupAction(Request $request, Action $action)
{
if (!($action instanceof ActionEvent)) {
return false;
}
$eventAction = $request->getParam('e_a');
$eventAction = trim($eventAction);
if (strlen($eventAction) > 0) {
return $eventAction;
}
return false;
}
}

View file

@ -0,0 +1,56 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Columns;
use Piwik\Piwik;
use Piwik\Plugin\Dimension\ActionDimension;
use Piwik\Plugins\Events\Segment;
use Piwik\Plugins\Events\Actions\ActionEvent;
use Piwik\Tracker\Action;
use Piwik\Tracker\Request;
class EventCategory extends ActionDimension
{
protected $columnName = 'idaction_event_category';
protected $columnType = 'INTEGER(10) UNSIGNED DEFAULT NULL';
protected function configureSegments()
{
$segment = new Segment();
$segment->setSegment('eventCategory');
$segment->setName('Events_EventCategory');
$this->addSegment($segment);
}
public function getName()
{
return Piwik::translate('Events_EventCategory');
}
public function getActionId()
{
return Action::TYPE_EVENT_CATEGORY;
}
public function onLookupAction(Request $request, Action $action)
{
if (!($action instanceof ActionEvent)) {
return false;
}
$eventCategory = $request->getParam('e_c');
$eventCategory = trim($eventCategory);
if (strlen($eventCategory) > 0) {
return $eventCategory;
}
return false;
}
}

View file

@ -0,0 +1,55 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Columns;
use Piwik\Piwik;
use Piwik\Plugin\Dimension\ActionDimension;
use Piwik\Plugins\Events\Segment;
use Piwik\Plugins\Events\Actions\ActionEvent;
use Piwik\Tracker\Action;
use Piwik\Tracker\Request;
class EventName extends ActionDimension
{
protected $columnName = 'idaction_name';
protected function configureSegments()
{
$segment = new Segment();
$segment->setSegment('eventName');
$segment->setName('Events_EventName');
$this->addSegment($segment);
}
public function getName()
{
return Piwik::translate('Events_EventName');
}
public function getActionId()
{
return Action::TYPE_EVENT_NAME;
}
public function onLookupAction(Request $request, Action $action)
{
if (!($action instanceof ActionEvent)) {
return false;
}
$eventName = $request->getParam('e_n');
$eventName = trim($eventName);
if (strlen($eventName) > 0) {
return $eventName;
}
return false;
}
}

View file

@ -0,0 +1,45 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
namespace Piwik\Plugins\Events\Columns\Metrics;
use Piwik\DataTable\Row;
use Piwik\Piwik;
use Piwik\Plugin\ProcessedMetric;
/**
* The average value for a triggered event. Calculated as:
*
* sum_event_value / nb_events_with_value
*
* sum_event_value and nb_events_with_value are calculated by the Event archiver.
*/
class AverageEventValue extends ProcessedMetric
{
public function getName()
{
return 'avg_event_value';
}
public function getTranslatedName()
{
return Piwik::translate('Events_AvgValueDocumentation');
}
public function compute(Row $row)
{
$sumEventValue = $this->getMetric($row, 'sum_event_value');
$eventsWithValue = $this->getMetric($row, 'nb_events_with_value');
return Piwik::getQuotientSafe($sumEventValue, $eventsWithValue, $precision = 2);
}
public function getDependentMetrics()
{
return array('sum_event_value', 'nb_events_with_value');
}
}

View file

@ -0,0 +1,77 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Columns;
use Piwik\Piwik;
use Piwik\Plugin\Dimension\VisitDimension;
use Piwik\Plugin\Segment;
use Piwik\Tracker\Action;
use Piwik\Tracker\Request;
use Piwik\Tracker\Visitor;
class TotalEvents extends VisitDimension
{
protected $columnName = 'visit_total_events';
protected $columnType = 'SMALLINT(5) UNSIGNED NOT NULL';
protected function configureSegments()
{
$segment = new Segment();
$segment->setSegment('events');
$segment->setName('Events_TotalEvents');
$segment->setAcceptedValues('To select all visits who triggered an Event, use: &segment=events>0');
$segment->setCategory('General_Visit');
$segment->setType(Segment::TYPE_METRIC);
$this->addSegment($segment);
}
public function getName()
{
return Piwik::translate('Events_EventName');
}
/**
* @param Request $request
* @param Visitor $visitor
* @param Action|null $action
* @return mixed
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
if ($this->isEventAction($action)) {
return 1;
}
return 0;
}
/**
* @param Request $request
* @param Visitor $visitor
* @param Action|null $action
* @return int
*/
public function onExistingVisit(Request $request, Visitor $visitor, $action)
{
if ($this->isEventAction($action)) {
return 'visit_total_events + 1';
}
return false;
}
/**
* @param Action|null $action
* @return bool
*/
private function isEventAction($action)
{
return ($action && $action->getActionType() == Action::TYPE_EVENT);
}
}

View file

@ -1,6 +1,6 @@
<?php
/**
* Piwik - Open source web analytics
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
@ -8,10 +8,7 @@
*/
namespace Piwik\Plugins\Events;
use Piwik\Piwik;
use Piwik\Plugins\Events\Events;
use Piwik\View;
use Piwik\ViewDataTable\Factory;
/**
* Events controller
@ -56,21 +53,6 @@ class Controller extends \Piwik\Plugin\Controller
return $this->indexEvent(__FUNCTION__);
}
public function getCategory()
{
return $this->renderReport(__FUNCTION__);
}
public function getAction()
{
return $this->renderReport(__FUNCTION__);
}
public function getName()
{
return $this->renderReport(__FUNCTION__);
}
public function getActionFromCategoryId()
{
return $this->renderReport(__FUNCTION__);
@ -107,9 +89,16 @@ class Controller extends \Piwik\Plugin\Controller
$apiMethod = str_replace('index', 'get', $controllerMethod, $count);
$events = new Events;
$title = $events->getReportTitleTranslation($apiMethod);
if (method_exists($this, $apiMethod)) {
$content = $this->$apiMethod();
} else {
$content = $this->renderReport($apiMethod);
}
return View::singleReport(
$title,
$this->$apiMethod()
$content
);
}
}

View file

@ -0,0 +1,39 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\DataTable\Filter;
use Piwik\DataTable\BaseFilter;
use Piwik\DataTable\Row;
use Piwik\DataTable;
use Piwik\Piwik;
use Piwik\Plugins\Events\Archiver;
class ReplaceEventNameNotSet extends BaseFilter
{
/**
* Constructor.
*
* @param DataTable $table The table to eventually filter.
*/
public function __construct($table)
{
parent::__construct($table);
}
/**
* @param DataTable $table
*/
public function filter($table)
{
$row = $table->getRowFromLabel(Archiver::EVENT_NAME_NOT_SET);
if ($row) {
$row->setColumn('label', Piwik::translate('General_NotDefined', Piwik::translate('Events_EventName')));
}
}
}

View file

@ -1,6 +1,6 @@
<?php
/**
* Piwik - Open source web analytics
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
@ -9,43 +9,31 @@
namespace Piwik\Plugins\Events;
use Piwik\Common;
use Piwik\Menu\MenuMain;
use Piwik\DataTable;
use Piwik\Piwik;
use Piwik\Plugin\Report;
use Piwik\Plugin\ViewDataTable;
use Piwik\WidgetsList;
use Piwik\Plugins\CoreVisualizations\Visualizations\HtmlTable\AllColumns;
/**
*/
class Events extends \Piwik\Plugin
{
/**
* @see Piwik\Plugin::getListHooksRegistered
* @see Piwik\Plugin::registerEvents
*/
public function getListHooksRegistered()
public function registerEvents()
{
return array(
'API.getSegmentDimensionMetadata' => 'getSegmentsMetadata',
'Metrics.getDefaultMetricTranslations' => 'addMetricTranslations',
'API.getReportMetadata' => 'getReportMetadata',
'Menu.Reporting.addItems' => 'addMenus',
'WidgetsList.addWidgets' => 'addWidgets',
'ViewDataTable.configure' => 'configureViewDataTable',
'Metrics.getDefaultMetricDocumentationTranslations' => 'addMetricDocumentationTranslations',
'Metrics.getDefaultMetricTranslations' => 'addMetricTranslations',
'ViewDataTable.configure' => 'configureViewDataTable',
'Live.getAllVisitorDetails' => 'extendVisitorDetails',
'AssetManager.getStylesheetFiles' => 'getStylesheetFiles',
);
}
public function addWidgets()
{
foreach(self::getLabelTranslations() as $apiMethod => $labels) {
$params = array(
'secondaryDimension' => API::getInstance()->getDefaultSecondaryDimension($apiMethod)
);
WidgetsList::add('Events_Events', $labels[0], 'Events', $apiMethod, $params);
}
}
public function addMenus()
public function extendVisitorDetails(&$visitor, $details)
{
MenuMain::getInstance()->add('General_Actions', 'Events_Events', array('module' => 'Events', 'action' => 'index'), true, 30);
$visitor['events'] = $details['visit_total_events'];
}
public function addMetricTranslations(&$translations)
@ -53,6 +41,11 @@ class Events extends \Piwik\Plugin
$translations = array_merge($translations, $this->getMetricTranslations());
}
public function addMetricDocumentationTranslations(&$translations)
{
$translations = array_merge($translations, $this->getMetricDocumentation());
}
public function getMetricDocumentation()
{
$documentation = array(
@ -94,7 +87,7 @@ class Events extends \Piwik\Plugin
/**
* @return array
*/
static public function getLabelTranslations()
public static function getLabelTranslations()
{
return array(
'getCategory' => array('Events_EventCategories', 'Events_EventCategory'),
@ -103,77 +96,6 @@ class Events extends \Piwik\Plugin
);
}
public function getSegmentsMetadata(&$segments)
{
$sqlFilter = '\\Piwik\\Tracker\\TableLogAction::getIdActionFromSegment';
foreach($this->metadataDimensions as $dimension => $metadata) {
$segments[] = array(
'type' => 'dimension',
'category' => 'Events_Events',
'name' => $metadata[0],
'segment' => $dimension,
'sqlSegment' => $metadata[1],
'sqlFilter' => $sqlFilter,
);
}
$segments[] = array(
'type' => 'metric',
'category' => Piwik::translate('General_Visit'),
'name' => 'Events_TotalEvents',
'segment' => 'events',
'sqlSegment' => 'log_visit.visit_total_events',
'acceptedValues' => 'To select all visits who triggered an Event, use: &segment=events>0',
);
// $segments[] = array(
// 'type' => 'metric',
// 'category' => 'Events_Events',
// 'name' => 'Events_EventValue',
// 'segment' => 'eventValue',
// 'sqlSegment' => 'log_link_visit_action.custom_float',
// 'sqlFilter' => '\\Piwik\\Plugins\\Events\\Events::getSegmentEventValue'
// );
}
//
// public static function getSegmentEventValue($valueToMatch, $sqlField, $matchType, $segmentName)
// {
// $andActionisNotEvent = \Piwik\Plugins\Actions\Archiver::getWhereClauseActionIsNotEvent();
// $andActionisEvent = str_replace("IS NULL", "IS NOT NULL", $andActionisNotEvent);
//
// return array(
// 'extraWhere' => $andActionisEvent,
// 'bind' => $valueToMatch
// );
// }
public function getReportMetadata(&$reports)
{
$metrics = $this->getMetricTranslations();
$documentation = $this->getMetricDocumentation();
$labelTranslations = $this->getLabelTranslations();
$order = 0;
foreach($labelTranslations as $action => $translations) {
$secondaryDimension = $this->getSecondaryDimensionFromRequest();
$actionToLoadSubtables = API::getInstance()->getActionToLoadSubtables($action, $secondaryDimension);
$reports[] = array(
'category' => Piwik::translate('Events_Events'),
'name' => Piwik::translate($translations[0]),
'module' => 'Events',
'action' => $action,
'dimension' => Piwik::translate($translations[1]),
'metrics' => $metrics,
'metricsDocumentation' => $documentation,
'processedMetrics' => false,
'actionToLoadSubTables' => $actionToLoadSubtables,
'order' => $order++
);
}
}
/**
* Given getCategory, returns "Event Categories"
*
@ -211,7 +133,7 @@ class Events extends \Piwik\Plugin
public function configureViewDataTable(ViewDataTable $view)
{
if($view->requestConfig->getApiModuleToRequest() != 'Events') {
if ($view->requestConfig->getApiModuleToRequest() != 'Events') {
return;
}
@ -220,30 +142,60 @@ class Events extends \Piwik\Plugin
$secondaryDimension = $this->getSecondaryDimensionFromRequest();
$view->config->subtable_controller_action = API::getInstance()->getActionToLoadSubtables($apiMethod, $secondaryDimension);
$view->config->columns_to_display = array('label', 'nb_events', 'sum_event_value');
if (Common::getRequestVar('pivotBy', false) === false) {
$view->config->columns_to_display = array('label', 'nb_events', 'sum_event_value');
}
$view->config->show_flatten_table = true;
$view->config->show_table_all_columns = false;
$view->requestConfig->filter_sort_column = 'nb_events';
if ($view->isViewDataTableId(AllColumns::ID)) {
$view->config->filters[] = function (DataTable $table) use ($view) {
$columsToDisplay = array('label');
$columns = $table->getColumns();
if (in_array('nb_visits', $columns)) {
$columsToDisplay[] = 'nb_visits';
}
if (in_array('nb_uniq_visitors', $columns)) {
$columsToDisplay[] = 'nb_uniq_visitors';
}
$view->config->columns_to_display = array_merge($columsToDisplay, array('nb_events', 'sum_event_value', 'avg_event_value', 'min_event_value', 'max_event_value'));
if (!in_array($view->requestConfig->filter_sort_column, $view->config->columns_to_display)) {
$view->requestConfig->filter_sort_column = 'nb_events';
}
};
$view->config->show_pivot_by_subtable = false;
}
$labelTranslation = $this->getColumnTranslation($apiMethod);
$view->config->addTranslation('label', $labelTranslation);
$view->config->addTranslations($this->getMetricTranslations());
$this->addRelatedReports($view, $secondaryDimension);
$this->addTooltipEventValue($view);
$subtableReport = Report::factory('Events', $view->config->subtable_controller_action);
$view->config->pivot_by_dimension = $subtableReport->getDimension()->getId();
$view->config->pivot_by_column = 'nb_events';
}
protected function addRelatedReports($view, $secondaryDimension)
private function addRelatedReports($view, $secondaryDimension)
{
if(empty($secondaryDimension)) {
if (empty($secondaryDimension)) {
// eg. Row Evolution
return;
}
$view->config->show_related_reports = true;
$apiMethod = $view->requestConfig->getApiMethodToRequest();
$secondaryDimensions = API::getInstance()->getSecondaryDimensions($apiMethod);
if(empty($secondaryDimensions)) {
if (empty($secondaryDimensions)) {
return;
}
@ -254,7 +206,7 @@ class Events extends \Piwik\Plugin
. Piwik::translate('Events_SwitchToSecondaryDimension', '');
foreach($secondaryDimensions as $dimension) {
if($dimension == $secondaryDimension) {
if ($dimension == $secondaryDimension) {
// don't show as related report the currently selected dimension
continue;
}
@ -269,13 +221,16 @@ class Events extends \Piwik\Plugin
}
protected function addTooltipEventValue($view)
private function addTooltipEventValue(ViewDataTable $view)
{
// Creates the tooltip message for Event Value column
$tooltipCallback = function ($hits, $min, $max, $avg) {
if (!$hits) {
return false;
}
$avg = $avg ?: 0;
$msgEventMinMax = Piwik::translate("Events_EventValueTooltip", array($hits, "<br />", $min, $max));
$msgEventAvg = Piwik::translate("Events_AvgEventValue", $avg);
return $msgEventMinMax . "<br/>" . $msgEventAvg;
@ -283,24 +238,29 @@ class Events extends \Piwik\Plugin
// Add tooltip metadata column to the DataTable
$view->config->filters[] = array('ColumnCallbackAddMetadata',
array(
array(
'nb_events',
'min_event_value',
'max_event_value',
'avg_event_value'
),
'sum_event_value_tooltip',
$tooltipCallback
)
array(
array(
'nb_events',
'min_event_value',
'max_event_value',
'avg_event_value'
),
'sum_event_value_tooltip',
$tooltipCallback
)
);
}
/**
* @return mixed
*/
protected function getSecondaryDimensionFromRequest()
public function getSecondaryDimensionFromRequest()
{
return Common::getRequestVar('secondaryDimension', false, 'string');
}
public function getStylesheetFiles(&$stylesheets)
{
$stylesheets[] = "plugins/Events/stylesheets/datatable.less";
}
}

View file

@ -0,0 +1,21 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events;
use Piwik\Menu\MenuReporting;
/**
*/
class Menu extends \Piwik\Plugin\Menu
{
public function configureReportingMenu(MenuReporting $menu)
{
$menu->addActionsItem('Events_Events', $this->urlForAction('index'), 30);
}
}

View file

@ -0,0 +1,28 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Reports;
use Piwik\Plugins\Events\API;
use Piwik\Plugins\Events\Columns\Metrics\AverageEventValue;
abstract class Base extends \Piwik\Plugin\Report
{
protected function init()
{
$this->category = 'Events_Events';
$this->processedMetrics = array(
new AverageEventValue()
);
$this->widgetParams = array(
'secondaryDimension' => API::getInstance()->getDefaultSecondaryDimension($this->action)
);
}
}

View file

@ -0,0 +1,32 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Reports;
use Piwik\Common;
use Piwik\Piwik;
use Piwik\Plugins\Events\Columns\EventAction;
class GetAction extends Base
{
protected function init()
{
parent::init();
$this->dimension = new EventAction();
$this->name = Piwik::translate('Events_EventActions');
$this->documentation = ''; // TODO
$this->metrics = array('nb_events', 'sum_event_value', 'min_event_value', 'max_event_value', 'nb_events_with_value');
if (Common::getRequestVar('secondaryDimension', false) == 'eventCategory') {
$this->actionToLoadSubTables = 'getCategoryFromNameId';
} else {
$this->actionToLoadSubTables = 'getNameFromActionId';
}
$this->order = 1;
$this->widgetTitle = 'Events_EventActions';
}
}

View file

@ -0,0 +1,29 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Reports;
use Piwik\Piwik;
use Piwik\Plugin\Report;
use Piwik\Plugins\Events\Columns\EventAction;
/**
* Report metadata class for the Events.getActionFromCategoryId class.
*/
class GetActionFromCategoryId extends Base
{
protected function init()
{
parent::init();
$this->dimension = new EventAction();
$this->name = Piwik::translate('Events_EventActions');
$this->isSubtableReport = true;
$this->widgetParams = array();
}
}

View file

@ -0,0 +1,29 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Reports;
use Piwik\Piwik;
use Piwik\Plugin\Report;
use Piwik\Plugins\Events\Columns\EventAction;
/**
* Report metadata class for the Events.getActionFromNameId class.
*/
class GetActionFromNameId extends Base
{
protected function init()
{
parent::init();
$this->dimension = new EventAction();
$this->name = Piwik::translate('Events_EventActions');
$this->isSubtableReport = true;
$this->widgetParams = array();
}
}

View file

@ -0,0 +1,32 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Reports;
use Piwik\Common;
use Piwik\Piwik;
use Piwik\Plugins\Events\Columns\EventCategory;
class GetCategory extends Base
{
protected function init()
{
parent::init();
$this->dimension = new EventCategory();
$this->name = Piwik::translate('Events_EventCategories');
$this->documentation = ''; // TODO
$this->metrics = array('nb_events', 'sum_event_value', 'min_event_value', 'max_event_value', 'nb_events_with_value');
if (Common::getRequestVar('secondaryDimension', false) == 'eventName') {
$this->actionToLoadSubTables = 'getNameFromCategoryId';
} else {
$this->actionToLoadSubTables = 'getActionFromCategoryId';
}
$this->order = 0;
$this->widgetTitle = 'Events_EventCategories';
}
}

View file

@ -0,0 +1,29 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Reports;
use Piwik\Piwik;
use Piwik\Plugin\Report;
use Piwik\Plugins\Events\Columns\EventCategory;
/**
* Report metadata class for the Events.getCategoryFromActionId class.
*/
class GetCategoryFromActionId extends Base
{
protected function init()
{
parent::init();
$this->dimension = new EventCategory();
$this->name = Piwik::translate('Events_EventCategories');
$this->isSubtableReport = true;
$this->widgetParams = array();
}
}

View file

@ -0,0 +1,29 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Reports;
use Piwik\Piwik;
use Piwik\Plugin\Report;
use Piwik\Plugins\Events\Columns\EventCategory;
/**
* Report metadata class for the Events.getCategoryFromNameId class.
*/
class GetCategoryFromNameId extends Base
{
protected function init()
{
parent::init();
$this->dimension = new EventCategory();
$this->name = Piwik::translate('Events_EventCategories');
$this->isSubtableReport = true;
$this->widgetParams = array();
}
}

View file

@ -0,0 +1,32 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Reports;
use Piwik\Common;
use Piwik\Piwik;
use Piwik\Plugins\Events\Columns\EventName;
class GetName extends Base
{
protected function init()
{
parent::init();
$this->dimension = new EventName();
$this->name = Piwik::translate('Events_EventNames');
$this->documentation = ''; // TODO
$this->metrics = array('nb_events', 'sum_event_value', 'min_event_value', 'max_event_value', 'nb_events_with_value');
if (Common::getRequestVar('secondaryDimension', false) == 'eventCategory') {
$this->actionToLoadSubTables = 'getCategoryFromNameId';
} else {
$this->actionToLoadSubTables = 'getActionFromNameId';
}
$this->order = 2;
$this->widgetTitle = 'Events_EventNames';
}
}

View file

@ -0,0 +1,29 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Reports;
use Piwik\Piwik;
use Piwik\Plugin\Report;
use Piwik\Plugins\Events\Columns\EventName;
/**
* Report metadata class for the Events.getNameFromActionId class.
*/
class GetNameFromActionId extends Base
{
protected function init()
{
parent::init();
$this->dimension = new EventName();
$this->name = Piwik::translate('Events_Names');
$this->isSubtableReport = true;
$this->widgetParams = array();
}
}

View file

@ -0,0 +1,29 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events\Reports;
use Piwik\Piwik;
use Piwik\Plugin\Report;
use Piwik\Plugins\Events\Columns\EventName;
/**
* Report metadata class for the Events.getNameFromCategoryId class.
*/
class GetNameFromCategoryId extends Base
{
protected function init()
{
parent::init();
$this->dimension = new EventName();
$this->name = Piwik::translate('Events_EventNames');
$this->isSubtableReport = true;
$this->widgetParams = array();
}
}

View file

@ -0,0 +1,22 @@
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\Events;
/**
* Events segment base class.
*
*/
class Segment extends \Piwik\Plugin\Segment
{
protected function init()
{
$this->setCategory('Events_Events');
$this->setSqlFilter('\Piwik\Tracker\TableLogAction::getIdActionFromSegment');
}
}

View file

@ -1,10 +1,23 @@
{
"Events": {
"AvgValue": "Средна стойност",
"Event": "Събитие",
"EventAction": "Действие на събитието",
"EventCategory": "Категория на събитие",
"EventName": "Име на събитие",
"Events": "Събития",
"EventValue": "Стойност за събитие"
"EventValue": "Стойност за събитие",
"MaxValue": "Максимална стойност",
"MaxValueDocumentation": "Максималната стойност за това събитие",
"MinValue": "Минимална стойност",
"MinValueDocumentation": "Минималната стойност за това събитие",
"SecondaryDimension": "Второстепенното измерение е %s.",
"SwitchToSecondaryDimension": "Превключване към %s",
"TopEvents": "Най-важните събития",
"TotalEvents": "Общо събития",
"TotalEventsDocumentation": "Общ брой събития",
"TotalValue": "Обща стойност",
"TotalValueDocumentation": "Сумата от стойностите за събитие",
"ViewEvents": "Преглед на събития"
}
}

View file

@ -0,0 +1,16 @@
{
"Events": {
"Event": "Esdeveniment",
"EventCategory": "Categoria d'esdeveniment",
"EventName": "Nom de l'esdeveniment",
"EventNames": "Noms dels esdeveniments",
"Events": "Esdeveniments",
"EventsWithValue": "Esdeveniments amb valor",
"EventsWithValueDocumentation": "Nombre d'esdeveniments que tenen un valor",
"EventValue": "Valor de l'esdeveniment",
"MaxValue": "Valor màxim",
"MaxValueDocumentation": "El valor màxim per aquest esdeveniment",
"MinValue": "Valor mínim",
"MinValueDocumentation": "El valor mínim per aquest esdeveniment"
}
}

View file

@ -0,0 +1,32 @@
{
"Events": {
"PluginDescription": "Sledujte události a získejte hlášení o aktivitě vašich návštěvníků",
"AvgEventValue": "Průměrná hodnota události je %s",
"AvgValue": "Průměrná hodnota",
"AvgValueDocumentation": "Průměr všech hodnot pro tuto událost",
"Event": "Událost",
"EventAction": "Akce události",
"EventActions": "Akce události",
"EventCategories": "Kategorie událostí",
"EventCategory": "Kategorie události",
"EventName": "Jméno události",
"EventNames": "Jména událostí",
"Events": "Události",
"EventsWithValue": "Události s hodnotou",
"EventsWithValueDocumentation": "Počet událostí s nastavenou hodnotou",
"EventValue": "Hodnota události",
"EventValueTooltip": "Celková hodnota události je součet %1$s hodnot událostí %2$s mezi minimem %3$s a maximem %4$s.",
"MaxValue": "Maximální hodnota",
"MaxValueDocumentation": "Maximální hodnota pro tuto událost",
"MinValue": "Minimální hodnota",
"MinValueDocumentation": "Minimální hodnota pro tuto událost",
"SecondaryDimension": "Sekundární dimenze je %s.",
"SwitchToSecondaryDimension": "Přepnout na %s",
"TopEvents": "Nejčastější události",
"TotalEvents": "Celkem událostí",
"TotalEventsDocumentation": "Celkový počet událostí",
"TotalValue": "Celková hodnota",
"TotalValueDocumentation": "Součet hodnot událostí",
"ViewEvents": "Zobrazit události"
}
}

View file

@ -1,10 +1,31 @@
{
"Events": {
"AvgEventValue": "Genomsnitlig værdi for hændelsen er: %s",
"AvgValue": "Gennemsnitsværdi",
"AvgValueDocumentation": "Gennemsnittet af alle værdier for denne hændelse",
"Event": "Hændelse",
"EventAction": "Hændelsesaktion",
"EventActions": "Hændelsesforløb",
"EventCategories": "Hændelseskategorier",
"EventCategory": "Hændelseskategori",
"EventName": "Hændelsesnavn",
"EventNames": "Hændelsesnavn",
"Events": "Hændelser",
"EventValue": "Hændelsesværdi"
"EventsWithValue": "Hændelser med en værdi",
"EventsWithValueDocumentation": "Antal hændelser, hvor en hændelseværdi blev fastsat",
"EventValue": "Hændelsesværdi",
"EventValueTooltip": "Samlet hændelsesværdi er summen af %1$s hændelsesværdier %2$s mellem mindst %3$s og maksimalt %4$s.",
"MaxValue": "Max værdi",
"MaxValueDocumentation": "Den maksimale værdi for hændelsen",
"MinValue": "Min værdi",
"MinValueDocumentation": "Den mindste værdi for hændelsen",
"SecondaryDimension": "Sekundær dimension er %s.",
"SwitchToSecondaryDimension": "Skift til %s",
"TopEvents": "Tophændelser",
"TotalEvents": "Totale hændelser",
"TotalEventsDocumentation": "Total antal hændelser",
"TotalValue": "Total værdi",
"TotalValueDocumentation": "Summen af hændelserværdier",
"ViewEvents": "Vis hændelser"
}
}

View file

@ -1,5 +1,9 @@
{
"Events": {
"PluginDescription": "Speichert Ereignisse und stellt Berichte über die Aktivität der Besucher bereit",
"AvgEventValue": "Durchschnittlicher Ereigniswert ist: %s",
"AvgValue": "Durchschnittswert",
"AvgValueDocumentation": "Der Durchschnitt aller Werte für dieses Event.",
"Event": "Ereignis",
"EventAction": "Ereignisaktion",
"EventActions": "Ereignisaktionen",
@ -8,14 +12,21 @@
"EventName": "Ereignisname",
"EventNames": "Ereignisnamen",
"Events": "Ereignisse",
"EventsWithValue": "Ereignisse mit einem Wert",
"EventsWithValueDocumentation": "Anzahl der Ereignisse bei denen ein Ereigniswert gesetzt war",
"EventValue": "Ereigniswert",
"EventValueTooltip": "Der Gesamtereigniswert ist die Summe von %1$s Ereigniswerten %2$s zwischen dem Minimum von %3$s und dem Maximum von %4$s.",
"MaxValue": "Maximaler Wert",
"MaxValueDocumentation": "Maximaler Wert für dieses Ereignis",
"MinValue": "Minimaler Wert",
"MinValueDocumentation": "Minimaler Wert für dieses Ereignis",
"SecondaryDimension": "Die sekundäre Dimension ist %s.",
"SwitchToSecondaryDimension": "Wechseln zu %s",
"TopEvents": "Häufigste Ereignisse",
"TotalEvents": "Gesamtzahl an Ereignissen",
"TotalEventsDocumentation": "Gesamtanzahl der Ereignisse",
"TotalValue": "Gesamtwert",
"TotalValueDocumentation": "Gesamtanzahl der Ereignisse (Summe der Ereigniswerte)"
"TotalValueDocumentation": "Summe der Ereigniswerte",
"ViewEvents": "Ereignisse ansehen"
}
}

View file

@ -1,10 +1,32 @@
{
"Events": {
"PluginDescription": "Παρακολούθηση Συμβάντων και λήψη αναφορών για την δραστηριότητα των επισκεπτών σας.",
"AvgEventValue": "Η μέση τιμή του γεγονότος είναι: %s",
"AvgValue": "Μέση τιμή",
"AvgValueDocumentation": "Ο μέσος όρος τιμών για το γεγονός",
"Event": "Γεγονός",
"EventAction": "Ενέργεια Συμβάντος",
"EventActions": "Ενέργειες Συμβάντος",
"EventCategories": "Κατηγορίες Συμβάντος",
"EventCategory": "Κατηγορία Συμβάντος",
"EventName": "Όνομα Συμβάντος",
"EventNames": "Ονόματα Συμβάντος",
"Events": "Συμβάντα",
"EventValue": "Τιμή Συμβάντος"
"EventsWithValue": "Γεγονότα με τιμή",
"EventsWithValueDocumentation": "Αριθμός γεγονότων στα οποία έχει οριστεί μια τιμή",
"EventValue": "Τιμή Συμβάντος",
"EventValueTooltip": "Η συνολική τιμή Συμβάντος είναι το άθροισμα από %1$s τιμές γεγονότων %2$s μεταξύ μιας ελάχιστης τιμής %3$s και μιας μέγιστης %4$s.",
"MaxValue": "Μέγιστη τιμή",
"MaxValueDocumentation": "Μέγιστη τιμή για το συμβάν",
"MinValue": "Ελάχιστη τιμή",
"MinValueDocumentation": "Ελάχιστη τιμή για το συμβάν",
"SecondaryDimension": "Η δευτερεύουσα διάσταση είναι %s.",
"SwitchToSecondaryDimension": "Αλλαγή σε %s",
"TopEvents": "Κορυφαία Γεγονότα",
"TotalEvents": "Σύνολο συμβάντων",
"TotalEventsDocumentation": "Συνολικός αριθμός συμβάντων",
"TotalValue": "Τιμή συνόλου",
"TotalValueDocumentation": "άθροισμα των τιμών συμβάντων",
"ViewEvents": "Εμφάνιση Γεγονότων"
}
}

View file

@ -1,31 +1,32 @@
{
"Events": {
"Events": "Events",
"PluginDescription": "Track Events and get reports on your visitors activity.",
"AvgEventValue": "Average Event value is: %s",
"AvgValue": "Average value",
"AvgValueDocumentation": "The average of all values for this event",
"Event": "Event",
"EventCategory": "Event Category",
"EventCategories": "Event Categories",
"EventAction": "Event Action",
"EventActions": "Event Actions",
"EventCategories": "Event Categories",
"EventCategory": "Event Category",
"EventName": "Event Name",
"EventNames": "Event Names",
"EventValue": "Event Value",
"TotalEvents": "Total events",
"TotalValue": "Total value",
"MinValue": "Minimum value",
"MaxValue": "Maximum value",
"AvgValue": "Average value",
"Events": "Events",
"EventsWithValue": "Events with a value",
"TotalEventsDocumentation": "Total number of events",
"TotalValueDocumentation": "The sum of event values",
"MinValueDocumentation": "The minimum value for this event",
"MaxValueDocumentation": "The maximum value for this event",
"AvgValueDocumentation": "The average of all values for this event",
"EventsWithValueDocumentation": "Number of events where an Event value was set",
"EventValueTooltip": "Total Event value is the sum of %s events values %s between minimum of %s and maximum of %s.",
"AvgEventValue": "Average Event value is: %s",
"TopEvents": "Top Events",
"EventValue": "Event Value",
"EventValueTooltip": "Total Event value is the sum of %1$s events values %2$s between minimum of %3$s and maximum of %4$s.",
"MaxValue": "Maximum value",
"MaxValueDocumentation": "The maximum value for this event",
"MinValue": "Minimum value",
"MinValueDocumentation": "The minimum value for this event",
"SecondaryDimension": "Secondary dimension is %s.",
"SwitchToSecondaryDimension": "Switch to %s",
"TopEvents": "Top Events",
"TotalEvents": "Total events",
"TotalEventsDocumentation": "Total number of events",
"TotalValue": "Total value",
"TotalValueDocumentation": "The sum of event values",
"ViewEvents": "View Events"
}
}

View file

@ -1,5 +1,9 @@
{
"Events": {
"PluginDescription": "Rastrear Eventos y obtener informes de la actividad de sus visitantes",
"AvgEventValue": "El valor promedio de los eventos es: %s",
"AvgValue": "Valor promedio",
"AvgValueDocumentation": "El promedio de todos los valores de este evento",
"Event": "Evento",
"EventAction": "Acción de evento",
"EventActions": "Acciones de evento",
@ -8,14 +12,21 @@
"EventName": "Nombre del evento",
"EventNames": "Nombres de los eventos",
"Events": "Eventos",
"EventsWithValue": "Eventos con un valor",
"EventsWithValueDocumentation": "Numero de eventos en los que se estableció un valor",
"EventValue": "Valor del evento",
"EventValueTooltip": "El valor total del evento se compone de la suma de %1$s los valores de los eventos %2$s entre un mínimo de %3$s y un máximo de %4$s.",
"MaxValue": "Valor máximo",
"MaxValueDocumentation": "El valor máximo de evento",
"MinValue": "Valor minimo",
"MinValueDocumentation": "El valor minimo de este evento",
"MaxValueDocumentation": "El valor máximo de este evento",
"MinValue": "Valor mínimo",
"MinValueDocumentation": "El valor mínimo de este evento",
"SecondaryDimension": "La dimensión secundaria es %s.",
"SwitchToSecondaryDimension": "Cambiar a %s",
"TopEvents": "Eventos principales",
"TotalEvents": "El total de eventos",
"TotalEventsDocumentation": "El numero total de eventos",
"TotalEventsDocumentation": "El número total de eventos",
"TotalValue": "Valor total",
"TotalValueDocumentation": "Valor total de eventos (la suma del valor de los eventos)"
"TotalValueDocumentation": "La suma del valor de los eventos",
"ViewEvents": "Ver eventos"
}
}

View file

@ -1,10 +1,13 @@
{
"Events": {
"AvgValue": "میانگین",
"Event": "رویداد",
"EventAction": "اقدامات رویداد",
"EventCategory": "دسته رویداد",
"EventName": "نام رویداد",
"Events": "رویداد ها",
"EventValue": "ارزش رویداد"
"EventValue": "ارزش رویداد",
"MaxValue": "بیشترین",
"MinValue": "کمترین"
}
}

View file

@ -1,10 +1,29 @@
{
"Events": {
"AvgEventValue": "Keskimääräinen tapahtuman arvo on %s",
"AvgValue": "Keskiarvo",
"AvgValueDocumentation": "Kaikkien arvojen keskiarvo tälle tapahtumalle",
"Event": "Tapahtuma",
"EventAction": "Tapahtuman toiminto",
"EventActions": "Tapahtuman toiminnot",
"EventCategories": "Tapahtuman kategoriat",
"EventCategory": "Tapahtuman kategoria",
"EventName": "Tapahtuman nimi",
"EventNames": "Tapahtuman nimet",
"Events": "Tapahtumat",
"EventValue": "Tapahtuman arvo"
"EventsWithValue": "Tapahtumat joilla on arvo",
"EventValue": "Tapahtuman arvo",
"MaxValue": "Suurin arvo",
"MaxValueDocumentation": "Suurin arvo tälle tapahtumalle",
"MinValue": "Pienin arvo",
"MinValueDocumentation": "Pienin arvo tälle tapahtumalle",
"SecondaryDimension": "Toisarvoinen koko on %s.",
"SwitchToSecondaryDimension": "Vaihda %s:ään",
"TopEvents": "Tärkeimmät tapahtumat",
"TotalEvents": "Tapahtumia yhteensä",
"TotalEventsDocumentation": "Tapahtumia yhteensä",
"TotalValue": "Arvo yhteensä",
"TotalValueDocumentation": "Arvojen summa",
"ViewEvents": "Näytä tapahtumat"
}
}

View file

@ -1,10 +1,32 @@
{
"Events": {
"PluginDescription": "Suivez les évènements et obtenez des rapports sur l'activité de vous visiteurs.",
"AvgEventValue": "La valeur moyenne de l'évènement est : %s",
"AvgValue": "Valeur moyenne",
"AvgValueDocumentation": "Moyenne de toutes les valeurs pour cet évènement",
"Event": "Evènement",
"EventAction": "Action de l'évènement",
"EventActions": "Actions de l'évènement",
"EventCategories": "Catégories d'évènement",
"EventCategory": "Catégorie d'évènement",
"EventName": "Nom d'évènement",
"EventNames": "Noms d'évènement",
"Events": "Evènements",
"EventValue": "Valeur d'évènement"
"EventsWithValue": "Evènements avec une valeur",
"EventsWithValueDocumentation": "Nombre d'évènements qui ont une valeur de définie",
"EventValue": "Valeur d'évènement",
"EventValueTooltip": "La valeur totale de l'évènement est la somme des %1$s valeurs d'évènements %2$s entre un minimum de %3$s et un maximum de %4$s.",
"MaxValue": "Valeur maximum",
"MaxValueDocumentation": "Valeur maximale pour cet évènement",
"MinValue": "Valeur minimum",
"MinValueDocumentation": "Valeur minimale pour cet évènement",
"SecondaryDimension": "La seconde dimension est %s.",
"SwitchToSecondaryDimension": "Passer à %s",
"TopEvents": "Principaux évènements",
"TotalEvents": "Nombre total d'évènements",
"TotalEventsDocumentation": "Nombre total des évènements",
"TotalValue": "Valeur totale",
"TotalValueDocumentation": "Somme des valeurs d'évènement",
"ViewEvents": "Afficher les évènements"
}
}

View file

@ -0,0 +1,22 @@
{
"Events": {
"PluginDescription": "घटनाक्रम पर नज़र रखें और अपने दर्शकों के गतिविधि पर रिपोर्ट मिलता है।",
"AvgEventValue": "औसत इवेंट मूल्य है: %s",
"AvgValue": "औसत मूल्य",
"AvgValueDocumentation": "इस घटना के लिए सभी मूल्यों का औसत",
"Event": "घटना",
"EventAction": "घटना लड़ाई",
"EventActions": "इवेंट प्रक्रिया",
"EventCategories": "घटना श्रेणियाँ",
"EventCategory": "इवेंट श्रेणी",
"EventName": "घटना नाम",
"EventNames": "घटना नाम",
"Events": "घटनाक्रम",
"EventsWithValue": "एक मूल्य के साथ घटनाक्रम",
"EventsWithValueDocumentation": "एक घटना मूल्य निर्धारित किया गया था, जहां घटनाओं की संख्या",
"EventValue": "घटना मूल्य",
"MaxValue": "ज्यादा से ज्यादा मूल्य",
"MaxValueDocumentation": "इस घटना के लिए अधिकतम मूल्य",
"MinValueDocumentation": "इस घटना के लिए न्यूनतम मूल्य"
}
}

View file

@ -1,5 +1,9 @@
{
"Events": {
"PluginDescription": "Traccia gli eventi e ottieni dei report sull'attività dei visitatori.",
"AvgEventValue": "Il Valore Medio Evento è: %s",
"AvgValue": "Valore medio",
"AvgValueDocumentation": "Media di tutti i valori per questo evento",
"Event": "Evento",
"EventAction": "Azione Evento",
"EventActions": "Azioni Evento",
@ -8,14 +12,21 @@
"EventName": "Nome Evento",
"EventNames": "Nomi Evento",
"Events": "Eventi",
"EventsWithValue": "Eventi con un valore",
"EventsWithValueDocumentation": "Numero di eventi dove è stato impostato un valore Evento",
"EventValue": "Valore Evento",
"EventValueTooltip": "Il valore totale Evento è la somma dei %1$s valori eventi %2$s tra un minimo di %3$s e un massimo di %4$s.",
"MaxValue": "Valore massimo",
"MaxValueDocumentation": "Valore massimo per questo evento",
"MinValue": "Valore minimo",
"MinValueDocumentation": "Valore minimo per questo evento",
"SecondaryDimension": "La dimensione secondaria è %s.",
"SwitchToSecondaryDimension": "Passa a %s",
"TopEvents": "Eventi Top",
"TotalEvents": "Totale eventi",
"TotalEventsDocumentation": "Numero totale degli eventi",
"TotalValue": "Valore totale",
"TotalValueDocumentation": "Valore totale degli eventi (somma dei valori degli eventi)"
"TotalValueDocumentation": "Somma dei valori degli eventi",
"ViewEvents": "Vedi Eventi"
}
}

View file

@ -1,10 +1,32 @@
{
"Events": {
"PluginDescription": "イベントを追跡し、ビジターアクティビティのレポートを取得します。",
"AvgEventValue": "イベントの平均値: %s",
"AvgValue": "平均値",
"AvgValueDocumentation": "このイベントのすべての値の平均値",
"Event": "イベント",
"EventAction": "イベントのアクション",
"EventActions": "イベントのアクション",
"EventCategories": "イベントのカテゴリ",
"EventCategory": "イベントのカテゴリー",
"EventName": "イベントの名称",
"EventNames": "イベント名",
"Events": "イベント",
"EventValue": "イベントの価値"
"EventsWithValue": "値を持つイベント",
"EventsWithValueDocumentation": "イベントの値が設定されたイベント数",
"EventValue": "イベントの値",
"EventValueTooltip": "総イベント値は %1$s 件のイベント値の合計です。 %2$s 最小値は %3$s 、最大値は %4$s です 。",
"MaxValue": "最大値",
"MaxValueDocumentation": "このイベントの最大値",
"MinValue": "最小値",
"MinValueDocumentation": "このイベントの最小値",
"SecondaryDimension": "セカンダリディメンションは %s です。",
"SwitchToSecondaryDimension": "%s へ切替",
"TopEvents": "トップイベント",
"TotalEvents": "イベントの合計",
"TotalEventsDocumentation": "イベントの総数",
"TotalValue": "合計の値",
"TotalValueDocumentation": "イベント値の合計",
"ViewEvents": "イベントをみる"
}
}

View file

@ -0,0 +1,9 @@
{
"Events": {
"PluginDescription": "Sekite įvykius ir gaukite savo lankytojų veiklos ataskaitas.",
"EventActions": "Įvykių veiksmai",
"EventCategories": "Įvykių kategorijos",
"EventNames": "Įvykių pavadinimai",
"Events": "Įvykiai"
}
}

View file

@ -0,0 +1,31 @@
{
"Events": {
"PluginDescription": "Spor hendelser og få rapporter om dine brukeres aktiviteter.",
"AvgEventValue": "Gjennomsnittlig hendelseverdi er: %s",
"AvgValue": "Gjennomsnittlig verdi",
"AvgValueDocumentation": "Gjennomsnittet av alle verdier for denne hendelsen",
"Event": "Hendelse",
"EventAction": "Hendelseshandling",
"EventActions": "Hendelseshandlinger",
"EventCategories": "Hendelseskategorier",
"EventCategory": "Hendelsekategori",
"EventName": "Hendelsesnavn",
"EventNames": "Hendelsesnavn",
"Events": "Hendelser",
"EventsWithValue": "Hendelser med en verdi",
"EventsWithValueDocumentation": "Antall hendelser der en hendelsesverdi er satt",
"EventValue": "Hendelsesverdi",
"MaxValue": "Maksimumsverdi",
"MaxValueDocumentation": "Maksimumsverdien for denne hendelsen",
"MinValue": "Minimumsverdi",
"MinValueDocumentation": "Minimumsverdien for denne hendelsen",
"SecondaryDimension": "Sekundær dimensjon er %s.",
"SwitchToSecondaryDimension": "Bytt til %s",
"TopEvents": "Topphendelser",
"TotalEvents": "Totalt antall hendelser",
"TotalEventsDocumentation": "Totalt antall hendelser",
"TotalValue": "Totalverdi",
"TotalValueDocumentation": "Summen av alle hendelsesverdier",
"ViewEvents": "Vis hendelser"
}
}

View file

@ -1,10 +1,32 @@
{
"Events": {
"PluginDescription": "Houd gebeurtenissen bij en ontvang rapporten over gebruikersactiviteiten.",
"AvgEventValue": "Gemiddelde gebeurtenis waarde is: %s",
"AvgValue": "Gemiddelde waarde",
"AvgValueDocumentation": "Het gemiddelde voor alle waardes van deze gebeurtenis",
"Event": "Gebeurtenis",
"EventAction": "Gebeurtenis Actie",
"EventActions": "Gebeurtenis acties",
"EventCategories": "Gebeurtenis Categorieën",
"EventCategory": "Gebeurtenis Categorie",
"EventName": "Gebeurtenis Naam",
"EventNames": "Gebeurtenis Namen",
"Events": "Gebeurtenissen",
"EventValue": "Gebeurtenis Waarde"
"EventsWithValue": "Gebeurtenissen met een waarde",
"EventsWithValueDocumentation": "Aantal events waar een Event waarde is bepaald",
"EventValue": "Gebeurtenis Waarde",
"EventValueTooltip": "Totale gebeurtenis waarde is de som van %1$s gebeurtenis waarden %2$s tussen minima van %3$s en maxima van %4$s.",
"MaxValue": "Maximale waarde",
"MaxValueDocumentation": "De maximale waarde voor deze gebeurtenis",
"MinValue": "Minimale waarde",
"MinValueDocumentation": "De minimale waarde voor deze gebeurtenis",
"SecondaryDimension": "Tweede dimensie is %s.",
"SwitchToSecondaryDimension": "Omschakelen naar %s",
"TopEvents": "Top Gebeurtenissen",
"TotalEvents": "Totaal gebeurtenissen",
"TotalEventsDocumentation": "Totaal aantal gebeurtenissen",
"TotalValue": "Totale waarde",
"TotalValueDocumentation": "De som van gebeurtenis waardes",
"ViewEvents": "Bekijk gebeurtenissen"
}
}

View file

@ -0,0 +1,29 @@
{
"Events": {
"AvgEventValue": "Średnia wartość zdarzenia: %s",
"AvgValue": "Średnia wartość",
"AvgValueDocumentation": "Średnia wszystkich wartości w tym przypadku",
"Event": "Zdarzenie",
"EventAction": "Akcja zdarzenia.",
"EventActions": "Akcje zdarzeń",
"EventCategories": "Kategorie zdarzeń",
"EventCategory": "Event Category",
"EventName": "Nazwa wydarzenia",
"EventNames": "Nazwy zdarzeń",
"Events": "Zdarzenia",
"EventsWithValue": "Zdarzenia z wartością",
"EventValue": "Wartość wydarzenia",
"MaxValue": "Wartość maksymalna",
"MaxValueDocumentation": "Maksymalna wartość dla tego zdarzenia",
"MinValue": "Minimalna wartość",
"MinValueDocumentation": "Minimalna wartość tego wydarzenia",
"SecondaryDimension": "Drugi wymiar to %s.",
"SwitchToSecondaryDimension": "Przełącz na %s",
"TopEvents": "Najważniejsze wydarzenia",
"TotalEvents": "Liczba zdarzeń",
"TotalEventsDocumentation": "Łączna liczba zdarzeń",
"TotalValue": "Wartość ogółem",
"TotalValueDocumentation": "Suma wartości zdarzeń",
"ViewEvents": "Pokaż zdarzenia"
}
}

View file

@ -1,9 +1,32 @@
{
"Events": {
"PluginDescription": "Acompanhe Eventos e obtenha relatórios das atividades dos seus visitantes.",
"AvgEventValue": "O valor médio do Evento é: %s",
"AvgValue": "Valor médio",
"AvgValueDocumentation": "A média de todos os valores para este evento",
"Event": "Evento",
"EventAction": "Ação do Evento",
"EventActions": "Ações do Evento",
"EventCategories": "Categorias do Evento",
"EventCategory": "Categoria do Evento",
"EventName": "Nome do Evento",
"EventNames": "Nomes dos Eventos",
"Events": "Eventos",
"EventValue": "Valor do Evento"
"EventsWithValue": "Eventos com um valor",
"EventsWithValueDocumentation": "Número de eventos onde foi configurado um valor Event",
"EventValue": "Valor do Evento",
"EventValueTooltip": "O valor total de Evento é a soma de %1$s valores de eventos %2$s entre o mínimo de %3$s e o máximo de %4$s.",
"MaxValue": "Valor máximo",
"MaxValueDocumentation": "O valor máximo para este evento",
"MinValue": "Valor mínimo",
"MinValueDocumentation": "O valor mínimo para este evento",
"SecondaryDimension": "Dimensão secundária é %s.",
"SwitchToSecondaryDimension": "Mudar para %s",
"TopEvents": "Eventos Top",
"TotalEvents": "Total de Eventos",
"TotalEventsDocumentation": "Número total de eventos",
"TotalValue": "Valor total",
"TotalValueDocumentation": "A soma dos valores de evento",
"ViewEvents": "Ver Eventos"
}
}

View file

@ -0,0 +1,6 @@
{
"Events": {
"AvgValue": "Valor médio",
"Event": "Evento"
}
}

View file

@ -1,5 +1,8 @@
{
"Events": {
"AvgEventValue": "Media valorii Evenimentului este: %s",
"AvgValue": "Valoarea medie",
"AvgValueDocumentation": "Media tuturor valorilor pentru acest eveniment",
"Event": "Eveniment",
"EventAction": "Actiunea Evenimentului",
"EventActions": "Actiunile Evenimentului",
@ -8,14 +11,21 @@
"EventName": "Numele Evenimentului",
"EventNames": "Numele Evenimentelor",
"Events": "Evenimente",
"EventsWithValue": "Evenimente cu valoare",
"EventsWithValueDocumentation": "Numărul de evenimente în care a fost stabilit o valoare Eveniment",
"EventValue": "Valoarea Evenimentului",
"EventValueTooltip": "Valoarea totală Eveniment este suma de %1$s valoare evenimente %2$s între minim %3$s și maxim de %4$s.",
"MaxValue": "Valoarea maxima",
"MaxValueDocumentation": "Valoarea maxima pentru acest eveniment",
"MinValue": "Valoarea minima",
"MinValueDocumentation": "Valoarea minima pentru acest eveniment",
"SecondaryDimension": "Dimensiunea secundara este %s.",
"SwitchToSecondaryDimension": "Trece la %s",
"TopEvents": "Top Evenimente",
"TotalEvents": "Totalul evenimentelor",
"TotalEventsDocumentation": "Numarul total al evenimentelor",
"TotalValue": "Valoarea totala",
"TotalValueDocumentation": "Valoarea totala a evenimentelor (suma valorilor evenimentelor)"
"TotalValueDocumentation": "suma valorilor evenimentelor",
"ViewEvents": "Vezi Evenimente"
}
}

View file

@ -0,0 +1,30 @@
{
"Events": {
"AvgEventValue": "Среднее значение события: %s",
"AvgValue": "Среднее значение",
"AvgValueDocumentation": "Среднее всех значений для этого события",
"Event": "Событие",
"EventAction": "Действие события",
"EventActions": "Действия событий",
"EventCategories": "Категории событий",
"EventCategory": "Категория события",
"EventName": "Название события",
"EventNames": "Названия событий",
"Events": "События",
"EventsWithValue": "События со значением",
"EventsWithValueDocumentation": "Количество событий, где было установлено значение для События",
"EventValue": "Значение события",
"EventValueTooltip": "Общие значения событий равны сумме %1$s значениям (событий) %2$s между минимумом %3$s и максимум %4$s.",
"MaxValue": "Максимальное значение",
"MaxValueDocumentation": "Максимальное значения для этого события",
"MinValue": "Минимальное значение",
"MinValueDocumentation": "Минимальное значения для этого события",
"SwitchToSecondaryDimension": "Переключиться на %s",
"TopEvents": "Топ событий",
"TotalEvents": "Всего событий",
"TotalEventsDocumentation": "Общее количество событий",
"TotalValue": "Общее значение",
"TotalValueDocumentation": "Сумма значений событий",
"ViewEvents": "Просмотреть события"
}
}

View file

@ -0,0 +1,14 @@
{
"Events": {
"PluginDescription": "Sledovanie Udalostí a získanie reportu ohľadom aktivity vašich návštevníkov.",
"AvgValue": "Priemerná hodnota",
"Events": "Udalosti",
"EventsWithValue": "Udalosti s hodnotou",
"EventsWithValueDocumentation": "Počet udalostí, kde bola nastavená hodnota Udalosti",
"EventValueTooltip": "Hodnota Udalostí celom je suma %1$s hodnôt udalostí %2$s medzi minimom %3$s a maximom %4$s.",
"TopEvents": "Top Udalosti",
"TotalEvents": "Udalosti celkom",
"TotalEventsDocumentation": "Celkový počet udalostí",
"ViewEvents": "Zobraziť udalosti"
}
}

View file

@ -0,0 +1,6 @@
{
"Events": {
"Events": "Dogodki",
"EventsWithValue": "Dogodki z vrednostjo"
}
}

View file

@ -1,13 +1,32 @@
{
"Events": {
"PluginDescription": "Pratite događaje i dobijajte izveštaje o aktivnostima vaših posetilaca.",
"AvgEventValue": "Prosečna vrednost događaja je: %s",
"AvgValue": "Prosečna vrednost",
"AvgValueDocumentation": "Prosek svih vrednosti ovog događaja",
"Event": "Događaj",
"EventAction": "Akcija događaja",
"EventActions": "Akcije događaja",
"EventCategories": "Kategorije događaja",
"EventCategory": "Kategorije događaja",
"EventName": "Naziv događaja",
"EventNames": "Nazivi događaja",
"Events": "Događaji",
"EventsWithValue": "Događaji sa vrednošću",
"EventsWithValueDocumentation": "Broj događaja u kojima je vrednost postavljena",
"EventValue": "Vrednost događaja",
"EventValueTooltip": "Ukupna vrednost događaja je suma %1$s događaja sa vrednošću %2$s između minimum od %3$s i maksimum od %4$s",
"MaxValue": "Maksimalna vrednost",
"MaxValueDocumentation": "Maksimalna vrednost za ovaj događaj",
"MinValue": "Minimalna vrednost",
"MinValueDocumentation": "Minimalna vrednost za ovaj događaj",
"SecondaryDimension": "Sekundarna dimenzija je %s.",
"SwitchToSecondaryDimension": "Prebaci na %s",
"TopEvents": "Vodeći događaji",
"TotalEvents": "Ukupno događaja",
"TotalEventsDocumentation": "Ukupan broj događaja",
"TotalValueDocumentation": "Ukupna vrednost događaja (suma vrednosti događaja)"
"TotalValue": "Ukupna vrednost",
"TotalValueDocumentation": "suma vrednosti događaja",
"ViewEvents": "Prikaži događaje"
}
}

View file

@ -1,10 +1,32 @@
{
"Events": {
"PluginDescription": "Spåra händelser och få rapporter om besökarnas aktiviteter.",
"AvgEventValue": "Genomsnittligt värde för händelse är: %s",
"AvgValue": "Genomsnittligt värde",
"AvgValueDocumentation": "Medelvärdet för alla värden för denna händelse",
"Event": "Händelse",
"EventAction": "Händelse Åtgärd",
"EventActions": "Händelseförlopp",
"EventCategories": "Händelse kategorier",
"EventCategory": "Händelsekategori",
"EventName": "Händelse Namn",
"EventNames": "Händelsenamn",
"Events": "Händelser",
"EventValue": "Händelse Värde"
"EventsWithValue": "Händelser med ett värde",
"EventsWithValueDocumentation": "Antal händelser där en händelses värde fastställdes",
"EventValue": "Händelse Värde",
"EventValueTooltip": "Totalt händelsevärde är summan av %1$shändelsevärden%2$s mellan minst %3$s och högst %4$s.",
"MaxValue": "Högsta värde",
"MaxValueDocumentation": "Det maximala värdet för denna händelse",
"MinValue": "Minsta värde",
"MinValueDocumentation": "Det lägsta värdet för denna händelse",
"SecondaryDimension": "Sekundär dimension är %s.",
"SwitchToSecondaryDimension": "Växla till %s",
"TopEvents": "Topphändelser",
"TotalEvents": "Totala händelser",
"TotalEventsDocumentation": "Totala antalet händelser",
"TotalValue": "Sammanlagda värdet",
"TotalValueDocumentation": "Summan av händelse värdena",
"ViewEvents": "Visa händelser"
}
}

View file

@ -0,0 +1,31 @@
{
"Events": {
"AvgEventValue": "Average na value ng event ay: %s",
"AvgValue": "Average value",
"AvgValueDocumentation": "Ang average ng lahat ng mga values para sa event na ito.",
"Event": "Resulta",
"EventAction": "Event Action",
"EventActions": "Event Actions",
"EventCategories": "Mga kategorya ng Event",
"EventCategory": "Kategorya ng event",
"EventName": "Pangalan ng Event",
"EventNames": "Event Names",
"Events": "Mga Resulta",
"EventsWithValue": "Mga event na may value",
"EventsWithValueDocumentation": "Bilang ng pangyayari kung saan ang halaga ng Event ay itinakda",
"EventValue": "Event Value",
"EventValueTooltip": "Ang total event value ay resulta ng %1$s events values %2$s sa pagitan ng minimum %3$s at maximum ng %4$s.",
"MaxValue": "Maximum na halaga",
"MaxValueDocumentation": "Ang maximum na halaga para sa kaganapang ito.",
"MinValue": "Minimum na halaga",
"MinValueDocumentation": "Ang minimum na halaga para sa kaganapang ito.",
"SecondaryDimension": "Pangalawang dimensyon ay %s.",
"SwitchToSecondaryDimension": "Lumipat sa %s",
"TopEvents": "Mga nangungunang events",
"TotalEvents": "Total events",
"TotalEventsDocumentation": "Kabuuang bilang ng mga event",
"TotalValue": "Kabuuang halaga",
"TotalValueDocumentation": "Ang kabuuan ng mga value ng event",
"ViewEvents": "View Events"
}
}

View file

@ -0,0 +1,30 @@
{
"Events": {
"AvgEventValue": "Ortalama etkinlik değeri: %s",
"AvgValue": "Ortalama değer",
"AvgValueDocumentation": "Bu etkinlik için ortalama tüm değerler",
"Event": "Etkinlik",
"EventAction": "Etkinlik Aksiyonu",
"EventActions": "Etkinlik Aksiyonu",
"EventCategories": "Etkinlik Kategorileri",
"EventCategory": "Etkinlik Kategorisi",
"EventName": "Etkinlik Adı",
"EventNames": "Etkinlik Adı",
"Events": "Etkinlikler",
"EventsWithValue": "Değeri olan etkinlikler",
"EventsWithValueDocumentation": "Etkinlik değeri ayarlanmış olan etkinlik sayısı",
"EventValue": "Etkinlik Değeri",
"MaxValue": "Maksimum değer",
"MaxValueDocumentation": "Bu etkinlik için maksimum değer",
"MinValue": "Minimum değer",
"MinValueDocumentation": "Bu etkinlik için minimum değer",
"SecondaryDimension": "İkincil boyut %s.",
"SwitchToSecondaryDimension": "Değiştir %s",
"TopEvents": "Top Etkinlikler",
"TotalEvents": "Toplam etkinlikler",
"TotalEventsDocumentation": "Toplam etkinlik sayısı",
"TotalValue": "Toplam değer",
"TotalValueDocumentation": "Etkinlik değerleri toplamı",
"ViewEvents": "Etkinliklere Bak"
}
}

View file

@ -1,6 +0,0 @@
{
"name": "Events",
"version": "1.0",
"description": "Track Custom Events and get reports on your visitors activity.",
"theme": false
}

View file

@ -0,0 +1,7 @@
div[data-report="Events.getAaction"].dataTableVizAllColumns,
div[data-report="Events.getName"].dataTableVizAllColumns,
div[data-report="Events.getCategory"].dataTableVizAllColumns {
.dataTableWrapper {
width:1000px;
}
}