Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/ExampleUI/API.php')
-rw-r--r--plugins/ExampleUI/API.php174
1 files changed, 86 insertions, 88 deletions
diff --git a/plugins/ExampleUI/API.php b/plugins/ExampleUI/API.php
index c88be1d598..91e29806be 100644
--- a/plugins/ExampleUI/API.php
+++ b/plugins/ExampleUI/API.php
@@ -1,109 +1,107 @@
<?php
/**
* Piwik - Open source web analytics
- *
+ *
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
+ *
* @category Piwik_Plugins
* @package Piwik_ExampleUI
*/
/**
* ExampleUI API is also an example API useful if you are developing a Piwik plugin.
- *
- * The functions listed in this API are returning the data used in the Controller to draw graphs and
+ *
+ * The functions listed in this API are returning the data used in the Controller to draw graphs and
* display tables. See also the ExampleAPI plugin for an introduction to Piwik APIs.
- *
+ *
* @package Piwik_ExampleUI
*/
-class Piwik_ExampleUI_API
+class Piwik_ExampleUI_API
{
- static private $instance = null;
- static public function getInstance()
- {
- if (self::$instance == null)
- {
- self::$instance = new self;
- }
- return self::$instance;
- }
-
- public function getTemperaturesEvolution($date, $period)
- {
- $period = new Piwik_Period_Range($period, 'last30');
- $dateStart = $period->getDateStart()->toString('Y-m-d'); // eg. "2009-04-01"
- $dateEnd = $period->getDateEnd()->toString('Y-m-d'); // eg. "2009-04-30"
-
- // here you could select from your custom table in the database, eg.
- $query = "SELECT AVG(temperature)
+ static private $instance = null;
+
+ static public function getInstance()
+ {
+ if (self::$instance == null) {
+ self::$instance = new self;
+ }
+ return self::$instance;
+ }
+
+ public function getTemperaturesEvolution($date, $period)
+ {
+ $period = new Piwik_Period_Range($period, 'last30');
+ $dateStart = $period->getDateStart()->toString('Y-m-d'); // eg. "2009-04-01"
+ $dateEnd = $period->getDateEnd()->toString('Y-m-d'); // eg. "2009-04-30"
+
+ // here you could select from your custom table in the database, eg.
+ $query = "SELECT AVG(temperature)
FROM server_temperatures
WHERE date > ?
AND date < ?
GROUP BY date
ORDER BY date ASC";
- //$result = Piwik_FetchAll($query, array($dateStart, $dateEnd));
- // to keep things simple, we generate the data
- foreach($period->getSubperiods() as $subPeriod)
- {
- $server1 = mt_rand(50,90);
- $server2 = mt_rand(40, 110);
- $value = array('server1' => $server1, 'server2' => $server2);
- $temperatures[$subPeriod->getLocalizedShortString()] = $value;
- }
-
- // convert this array to a DataTable object
- $dataTable = new Piwik_DataTable();
- $dataTable->addRowsFromArrayWithIndexLabel($temperatures);
- return $dataTable;
- }
-
- // we generate an array of random server temperatures
- public function getTemperatures()
- {
- $xAxis = array(
- '0h', '1h', '2h', '3h', '4h', '5h', '6h', '7h', '8h', '9h', '10h', '11h',
- '12h', '13h', '14h', '15h', '16h', '17h', '18h', '19h', '20h', '21h', '22h', '23h',
- );
- $temperatureValues = array_slice(range(50,90), 0, count($xAxis));
- shuffle($temperatureValues);
- $temperatures = array();
- foreach($xAxis as $i => $xAxisLabel) {
- $temperatures[$xAxisLabel] = $temperatureValues[$i];
- }
-
- // convert this array to a DataTable object
- $dataTable = new Piwik_DataTable();
- $dataTable->addRowsFromArrayWithIndexLabel($temperatures);
- return $dataTable;
- }
-
- public function getPlanetRatios()
- {
- $planetRatios = array(
- 'Mercury' => 0.382,
- 'Venus' => 0.949,
- 'Earth' => 1.00,
- 'Mars' => 0.532,
- 'Jupiter' => 11.209,
- 'Saturn' => 9.449,
- 'Uranus' => 4.007,
- 'Neptune' => 3.883,
- );
- // convert this array to a DataTable object
- $dataTable = new Piwik_DataTable();
- $dataTable->addRowsFromArrayWithIndexLabel($planetRatios);
- return $dataTable;
- }
-
- public function getPlanetRatiosWithLogos()
- {
- $planetsDataTable = $this->getPlanetRatios();
- foreach($planetsDataTable->getRows() as $row)
- {
- $row->addMetadata('logo', "plugins/ExampleUI/images/icons-planet/".strtolower($row->getColumn('label').".png"));
- $row->addMetadata('url', "http://en.wikipedia.org/wiki/".$row->getColumn('label'));
- }
- return $planetsDataTable;
- }
+ //$result = Piwik_FetchAll($query, array($dateStart, $dateEnd));
+ // to keep things simple, we generate the data
+ foreach ($period->getSubperiods() as $subPeriod) {
+ $server1 = mt_rand(50, 90);
+ $server2 = mt_rand(40, 110);
+ $value = array('server1' => $server1, 'server2' => $server2);
+ $temperatures[$subPeriod->getLocalizedShortString()] = $value;
+ }
+
+ // convert this array to a DataTable object
+ $dataTable = new Piwik_DataTable();
+ $dataTable->addRowsFromArrayWithIndexLabel($temperatures);
+ return $dataTable;
+ }
+
+ // we generate an array of random server temperatures
+ public function getTemperatures()
+ {
+ $xAxis = array(
+ '0h', '1h', '2h', '3h', '4h', '5h', '6h', '7h', '8h', '9h', '10h', '11h',
+ '12h', '13h', '14h', '15h', '16h', '17h', '18h', '19h', '20h', '21h', '22h', '23h',
+ );
+ $temperatureValues = array_slice(range(50, 90), 0, count($xAxis));
+ shuffle($temperatureValues);
+ $temperatures = array();
+ foreach ($xAxis as $i => $xAxisLabel) {
+ $temperatures[$xAxisLabel] = $temperatureValues[$i];
+ }
+
+ // convert this array to a DataTable object
+ $dataTable = new Piwik_DataTable();
+ $dataTable->addRowsFromArrayWithIndexLabel($temperatures);
+ return $dataTable;
+ }
+
+ public function getPlanetRatios()
+ {
+ $planetRatios = array(
+ 'Mercury' => 0.382,
+ 'Venus' => 0.949,
+ 'Earth' => 1.00,
+ 'Mars' => 0.532,
+ 'Jupiter' => 11.209,
+ 'Saturn' => 9.449,
+ 'Uranus' => 4.007,
+ 'Neptune' => 3.883,
+ );
+ // convert this array to a DataTable object
+ $dataTable = new Piwik_DataTable();
+ $dataTable->addRowsFromArrayWithIndexLabel($planetRatios);
+ return $dataTable;
+ }
+
+ public function getPlanetRatiosWithLogos()
+ {
+ $planetsDataTable = $this->getPlanetRatios();
+ foreach ($planetsDataTable->getRows() as $row) {
+ $row->addMetadata('logo', "plugins/ExampleUI/images/icons-planet/" . strtolower($row->getColumn('label') . ".png"));
+ $row->addMetadata('url', "http://en.wikipedia.org/wiki/" . $row->getColumn('label'));
+ }
+ return $planetsDataTable;
+ }
}