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:
authorMatthieu Aubry <mattab@users.noreply.github.com>2017-05-09 12:42:21 +0300
committerGitHub <noreply@github.com>2017-05-09 12:42:21 +0300
commit41e37ae7cb965bf152ee9bd60745f454a356f769 (patch)
tree74576c62377b8658012131860920d161525b75b8 /plugins
parent317700513cc732bb2371edbe645555feadbbc545 (diff)
parent125d502da360f84476ae22a5249ab3db3045d3dd (diff)
Merge pull request #11679 from piwik/3.x-dev3.0.4-b3
Release Piwik 3.0.4-b3
Diffstat (limited to 'plugins')
-rw-r--r--plugins/API/Controller.php2
-rw-r--r--plugins/CoreHome/CoreHome.php1
-rw-r--r--plugins/CoreHome/javascripts/broadcast.js20
-rw-r--r--plugins/CorePluginsAdmin/Controller.php21
-rw-r--r--plugins/CorePluginsAdmin/angularjs/plugins/plugin-upload.directive.js46
-rw-r--r--plugins/CorePluginsAdmin/lang/en.json4
-rw-r--r--plugins/CorePluginsAdmin/templates/plugins.twig10
-rw-r--r--plugins/CoreUpdater/Model.php2
-rw-r--r--plugins/Dashboard/angularjs/dashboard/dashboard.directive.js3
-rw-r--r--plugins/DevicesDetection/functions.php9
-rw-r--r--plugins/DevicesDetection/images/brand/3Q.pngbin577 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Acer.pngbin673 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Alcatel.pngbin577 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Apple.pngbin1179 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Archos.pngbin205 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Asus.pngbin1016 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Audiovox.pngbin807 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Avvio.pngbin964 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/BBK.pngbin263 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/BangOlufsen.pngbin3692 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Barnes_Noble.pngbin799 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Becker.pngbin519 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Beetel.pngbin1645 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/BenQ.pngbin846 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Cat.pngbin809 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Celkon.pngbin332 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Cherry_Mobile.pngbin808 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/CnM.pngbin421 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Compal.pngbin432 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Compaq.pngbin453 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/ConCorde.pngbin602 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Coolpad.pngbin485 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/CreNova.pngbin3142 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Cricket.pngbin1483 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Crius_Mea.pngbin566 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Crosscall.pngbin3236 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/DMM.pngbin3623 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Danew.pngbin3221 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Dell.pngbin886 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Denver.pngbin552 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/DoCoMo.pngbin636 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Easypix.pngbin881 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Ericsson.pngbin684 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Evertek.pngbin571 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Fly.pngbin572 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Fujitsu.pngbin298 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Gemini.pngbin323 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Gigabyte.pngbin343 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Gigaset.pngbin354 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Gionee.pngbin3018 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Google.pngbin863 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Gradiente.pngbin1012 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Grundig.pngbin3029 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/HP.pngbin936 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/HTC.pngbin1161 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Haier.pngbin957 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Huawei.pngbin1022 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Humax.pngbin3010 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Hyundai.pngbin407 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/INQ.pngbin1059 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Ikea.pngbin3291 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Intek.pngbin3121 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Inverto.pngbin3292 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Jolla.pngbin494 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/KDDI.pngbin473 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Karbonn.pngbin1042 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Kindle.pngbin720 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Kyocera.pngbin639 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/LG.pngbin1510 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/LGUPlus.pngbin1081 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Lanix.pngbin437 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Le_Pan.pngbin408 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Lenovo.pngbin237 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Loewe.pngbin2938 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/MSI.pngbin377 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Manta_Multimedia.pngbin800 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/MediaTek.pngbin2976 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Medion.pngbin3161 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Metz.pngbin3244 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/MicroMax.pngbin1531 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Microsoft.pngbin285 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Mio.pngbin753 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Mitsubishi.pngbin342 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Motorola.pngbin465 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/MyPhone.pngbin933 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/NEC.pngbin450 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/NGM.pngbin1298 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Nexian.pngbin2041 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Nikon.pngbin607 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Nintendo.pngbin740 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Nokia.pngbin1283 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/O2.pngbin768 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/OPPO.pngbin870 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Onda.pngbin732 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/OnePlus.pngbin181 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Orange.pngbin461 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/PEAQ.pngbin3060 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Panasonic.pngbin3649 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Pantech.pngbin605 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Philips.pngbin3749 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Polaroid.pngbin737 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/PolyPad.pngbin1381 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Quechua.pngbin296 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/RIM.pngbin705 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/SFR.pngbin686 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Sagem.pngbin694 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Samsung.pngbin3095 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Sanyo.pngbin639 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Sega.pngbin706 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Selevision.pngbin3497 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Sencor.pngbin885 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Sharp.pngbin403 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Siemens.pngbin395 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Smart.pngbin3419 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Smartfren.pngbin691 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Softbank.pngbin381 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Sony.pngbin3525 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Sony_Ericsson.pngbin628 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Spice.pngbin556 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/T-Mobile.pngbin499 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/TCL.pngbin2927 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/TechniSat.pngbin3347 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/TechnoTrend.pngbin3500 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Tecno_Mobile.pngbin437 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Telefunken.pngbin3651 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Telit.pngbin527 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Thomson.pngbin2974 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/TiPhone.pngbin1179 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Tolino.pngbin321 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Toshiba.pngbin248 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Tunisie_Telecom.pngbin3463 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Unknown.pngbin1077 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Vertu.pngbin387 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Vestel.pngbin3096 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Videocon.pngbin617 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Videoweb.pngbin3129 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/ViewSonic.pngbin605 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Voxtel.pngbin222 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Wiko.pngbin1558 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Wolder.pngbin513 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Woxter.pngbin775 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Xiaomi.pngbin492 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Yarvik.pngbin439 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Yuandao.pngbin639 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/ZTE.pngbin555 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Zonda.pngbin371 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/Zopo.pngbin397 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/bq.pngbin497 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/eTouch.pngbin889 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/i-mobile.pngbin615 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/iBerry.pngbin3613 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/images/brand/teXet.pngbin643 -> 0 bytes
-rw-r--r--plugins/DevicesDetection/tests/System/expected/test___DevicesDetection.getBrand_day.xml12
-rw-r--r--plugins/Diagnostics/Diagnostic/PageSpeedCheck.php6
-rw-r--r--plugins/ImageGraph/StaticGraph.php35
-rw-r--r--plugins/ImageGraph/StaticGraph/HorizontalBar.php10
m---------plugins/LoginLdap0
-rw-r--r--plugins/Marketplace/angularjs/marketplace/marketplace.directive.js18
-rw-r--r--plugins/Marketplace/templates/overview.twig20
-rw-r--r--plugins/Marketplace/templates/uploadPluginDialog.twig19
-rw-r--r--plugins/Morpheus/fonts/piwik.svg9
-rwxr-xr-xplugins/Morpheus/fonts/piwik.ttfbin22604 -> 23116 bytes
-rw-r--r--plugins/Morpheus/fonts/piwik.woffbin22680 -> 23192 bytes
-rw-r--r--plugins/Morpheus/fonts/selection.json487
m---------plugins/Morpheus/icons0
-rw-r--r--plugins/Morpheus/stylesheets/base/icons.css23
-rw-r--r--plugins/Morpheus/templates/demo.twig7
-rw-r--r--plugins/SEO/Metric/DomainAge.php19
-rw-r--r--plugins/ScheduledReports/API.php2
-rw-r--r--plugins/ScheduledReports/angularjs/manage-scheduled-report/manage-scheduled-report.controller.js2
-rwxr-xr-xplugins/UserCountry/GeoIPAutoUpdater.php1
-rwxr-xr-xplugins/UserCountry/stylesheets/userCountry.less2
-rw-r--r--plugins/UsersManager/angularjs/manage-users/manage-users.controller.js1
-rw-r--r--plugins/VisitTime/API.php8
174 files changed, 574 insertions, 225 deletions
diff --git a/plugins/API/Controller.php b/plugins/API/Controller.php
index 25bfb7212d..41234d5c9a 100644
--- a/plugins/API/Controller.php
+++ b/plugins/API/Controller.php
@@ -49,6 +49,8 @@ class Controller extends \Piwik\Plugin\Controller
public function listAllMethods()
{
+ Piwik::checkUserHasSomeViewAccess();
+
$ApiDocumentation = new DocumentationGenerator();
$prefixUrls = Common::getRequestVar('prefixUrl', 'http://demo.piwik.org/', 'string');
if (!UrlHelper::isLookLikeUrl($prefixUrls)) {
diff --git a/plugins/CoreHome/CoreHome.php b/plugins/CoreHome/CoreHome.php
index 7a221bc7db..fd3e729f74 100644
--- a/plugins/CoreHome/CoreHome.php
+++ b/plugins/CoreHome/CoreHome.php
@@ -241,6 +241,7 @@ class CoreHome extends \Piwik\Plugin
$jsFiles[] = "plugins/CorePluginsAdmin/angularjs/save-button/save-button.directive.js";
$jsFiles[] = "plugins/CorePluginsAdmin/angularjs/plugins/plugin-filter.directive.js";
$jsFiles[] = "plugins/CorePluginsAdmin/angularjs/plugins/plugin-management.directive.js";
+ $jsFiles[] = "plugins/CorePluginsAdmin/angularjs/plugins/plugin-upload.directive.js";
$jsFiles[] = "plugins/CoreHome/javascripts/iframeResizer.min.js";
}
diff --git a/plugins/CoreHome/javascripts/broadcast.js b/plugins/CoreHome/javascripts/broadcast.js
index 7117a0fb69..a58868261f 100644
--- a/plugins/CoreHome/javascripts/broadcast.js
+++ b/plugins/CoreHome/javascripts/broadcast.js
@@ -92,6 +92,7 @@ var broadcast = {
hash = (''+hash).substr(1);
}
+
if (hash) {
if (/^popover=/.test(hash)) {
@@ -124,7 +125,7 @@ var broadcast = {
popoverParamUpdated = (popoverParam != '');
}
- if (pageUrlUpdated || broadcast.forceReload) {
+ if (!broadcast.isWidgetizedDashboard() && (pageUrlUpdated || broadcast.forceReload)) {
Piwik_Popover.close();
if (hashUrl != broadcast.currentHashUrl || broadcast.forceReload) {
@@ -159,10 +160,16 @@ var broadcast = {
} else {
// start page
Piwik_Popover.close();
- $('.pageWrap #content:not(.admin)').empty();
+ if (!broadcast.isWidgetizedDashboard()) {
+ $('.pageWrap #content:not(.admin)').empty();
+ }
}
},
+ isWidgetizedDashboard: function() {
+ return broadcast.getValueFromUrl('module') == 'Widgetize' && broadcast.getValueFromUrl('moduleToWidgetize') == 'Dashboard';
+ },
+
/**
* Returns if the current page is the login page
* @return {boolean}
@@ -304,6 +311,11 @@ var broadcast = {
// available in global scope
var currentSearchStr = window.location.search;
var currentHashStr = broadcast.getHashFromUrl();
+
+ if (!currentSearchStr) {
+ currentSearchStr = '?';
+ }
+
var oldUrl = currentSearchStr + currentHashStr;
for (var i = 0; i < params_vals.length; i++) {
@@ -420,7 +432,9 @@ var broadcast = {
*/
propagateNewPopoverParameter: function (handlerName, value) {
// init broadcast if not already done (it is required to make popovers work in widgetize mode)
- //broadcast.init(true);
+ if (broadcast.isWidgetizedDashboard()) {
+ broadcast.init(true);
+ }
var $location = angular.element(document).injector().get('$location');
diff --git a/plugins/CorePluginsAdmin/Controller.php b/plugins/CorePluginsAdmin/Controller.php
index d2b0b305e4..5defcac356 100644
--- a/plugins/CorePluginsAdmin/Controller.php
+++ b/plugins/CorePluginsAdmin/Controller.php
@@ -11,7 +11,6 @@ namespace Piwik\Plugins\CorePluginsAdmin;
use Exception;
use Piwik\API\Request;
use Piwik\Common;
-use Piwik\Config;
use Piwik\Container\StaticContainer;
use Piwik\Exception\MissingFilePermissionException;
use Piwik\Filechecks;
@@ -184,6 +183,9 @@ class Controller extends Plugin\ControllerAdmin
}
}
+ $view->isPluginUploadEnabled = CorePluginsAdmin::isPluginUploadEnabled();
+ $view->installNonce = Nonce::getNonce(MarketplaceController::INSTALL_NONCE);
+
return $view;
}
@@ -247,10 +249,19 @@ class Controller extends Plugin\ControllerAdmin
$suffix = "You may uninstall the plugin or manually delete the files in piwik/plugins/$pluginName/";
}
- $description = '<strong>'
- . $this->translator->translate('CorePluginsAdmin_PluginNotCompatibleWith', array($pluginName, self::getPiwikVersion()))
- . '</strong><br/>'
- . $suffix;
+ if ($this->pluginManager->isPluginInFilesystem($pluginName)) {
+ $description = '<strong>'
+ . $this->translator->translate('CorePluginsAdmin_PluginNotCompatibleWith',
+ array($pluginName, self::getPiwikVersion()))
+ . '</strong><br/>'
+ . $suffix;
+ } else {
+ $description = '<strong>'
+ . $this->translator->translate('CorePluginsAdmin_PluginNotFound',
+ array($pluginName))
+ . '</strong><br/>'
+ . $this->translator->translate('CorePluginsAdmin_PluginNotFoundAlternative');
+ }
$plugin['info'] = array(
'description' => $description,
'version' => $this->translator->translate('General_Unknown'),
diff --git a/plugins/CorePluginsAdmin/angularjs/plugins/plugin-upload.directive.js b/plugins/CorePluginsAdmin/angularjs/plugins/plugin-upload.directive.js
new file mode 100644
index 0000000000..a18a2defde
--- /dev/null
+++ b/plugins/CorePluginsAdmin/angularjs/plugins/plugin-upload.directive.js
@@ -0,0 +1,46 @@
+/*!
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+
+/**
+ * Usage:
+ * <div piwik-plugin-upload>
+ */
+(function () {
+
+ angular.module('piwikApp').directive('piwikPluginUpload', piwikPluginUpload);
+
+ piwikPluginUpload.$inject = ['piwik'];
+
+ function piwikPluginUpload(piwik){
+
+ return {
+ restrict: 'A',
+ compile: function (element, attrs) {
+
+ return function (scope, element, attrs) {
+
+ $('.uploadPlugin').click(function (event) {
+ event.preventDefault();
+
+ piwikHelper.modalConfirm('#installPluginByUpload', {});
+ });
+
+ $('#uploadPluginForm').submit(function (event) {
+
+ var $zipFile = $('[name=pluginZip]');
+ var fileName = $zipFile.val();
+
+ if (!fileName || '.zip' != fileName.slice(-4)) {
+ event.preventDefault();
+ alert(_pk_translate('CorePluginsAdmin_NoZipFileSelected'));
+ }
+ });
+ };
+ }
+ };
+ }
+})(); \ No newline at end of file
diff --git a/plugins/CorePluginsAdmin/lang/en.json b/plugins/CorePluginsAdmin/lang/en.json
index 5247ae19d9..0da98b6179 100644
--- a/plugins/CorePluginsAdmin/lang/en.json
+++ b/plugins/CorePluginsAdmin/lang/en.json
@@ -41,6 +41,8 @@
"OriginThirdParty": "Third-party",
"PluginHomepage": "Plugin Homepage",
"PluginNotCompatibleWith": "%1$s plugin is not compatible with %2$s.",
+ "PluginNotFound": "Plugin %1$s not found on filesystem.",
+ "PluginNotFoundAlternative": "If you've been using this plugin, try reuploading or reinstalling it from the marketplace. If not, click uninstall to remove it from the list.",
"PluginNotWorkingAlternative": "If you've been using this plugin, maybe you can find a more recent version in the Marketplace. If not, you may want to uninstall it.",
"PluginRequirement": "%1$s requires %2$s.",
"PluginsManagement": "Manage Plugins",
@@ -51,7 +53,7 @@
"Status": "Status",
"SuccessfullyActicated": "You have successfully activated <strong>%s<\/strong>.",
"TeaserExtendPiwik": "Extend Piwik with Plugins and Themes",
- "TeaserExtendPiwikByPlugin": "Extend Piwik by %1$sinstalling a new plugin%2$s.",
+ "TeaserExtendPiwikByPlugin": "Extend Piwik by %1$sinstalling plugins from the Marketplace%2$s or %3$supload a plugin in .zip format%4$s.",
"TeaserExtendPiwikByTheme": "Enjoy another look & feel by %1$sinstalling a new theme%2$s.",
"InstallingNewPluginViaMarketplaceOrUpload": "You may automatically install plugins from the Marketplace or %1$supload a plugin%2$s in .zip format.",
"Theme": "Theme",
diff --git a/plugins/CorePluginsAdmin/templates/plugins.twig b/plugins/CorePluginsAdmin/templates/plugins.twig
index 4822c89d88..6fdb8c15b6 100644
--- a/plugins/CorePluginsAdmin/templates/plugins.twig
+++ b/plugins/CorePluginsAdmin/templates/plugins.twig
@@ -7,6 +7,8 @@
{% block content %}
+ {% include '@Marketplace/uploadPluginDialog.twig' %}
+
<div piwik-content-intro>
<h2 piwik-enriched-headline>
{{ title|e('html_attr') }}
@@ -16,14 +18,18 @@
{{ 'CorePluginsAdmin_OncePluginIsInstalledYouMayActivateHere'|translate }}
{% if isMarketplaceEnabled %}
- {{ 'CorePluginsAdmin_TeaserExtendPiwikByPlugin'|translate('<a href="' ~ linkTo({'action':'browsePlugins', 'sort': ''}) ~ '">', '</a>')|raw }}
+ {{ 'CorePluginsAdmin_TeaserExtendPiwikByPlugin'|translate(
+ '<a href="' ~ linkTo({'action':'browsePlugins', 'sort': ''}) ~ '">',
+ '</a>',
+ '<a href="#" class="uploadPlugin">',
+ '</a>'
+ )|raw }}
{% endif %}
{% if not isPluginsAdminEnabled %}
<br/>{{ 'CorePluginsAdmin_DoMoreContactPiwikAdmins'|translate }}
{% endif %}
- <br />
{{ 'CorePluginsAdmin_ChangeLookByManageThemes'|translate('<a href="' ~ linkTo({'action': 'themes'}) ~'">', '</a>')|raw }}
</p>
</div>
diff --git a/plugins/CoreUpdater/Model.php b/plugins/CoreUpdater/Model.php
index e03015e1b3..fa0ab59785 100644
--- a/plugins/CoreUpdater/Model.php
+++ b/plugins/CoreUpdater/Model.php
@@ -26,6 +26,8 @@ class Model
public function removeGoneFiles($source, $target)
{
Filesystem::unlinkTargetFilesNotPresentInSource($source . '/core', $target . '/core');
+ Filesystem::unlinkTargetFilesNotPresentInSource($source . '/libs', $target . '/libs');
+ Filesystem::unlinkTargetFilesNotPresentInSource($source . '/vendor', $target . '/vendor');
foreach ($this->getPluginsFromDirectoy($source) as $pluginDir) {
Filesystem::unlinkTargetFilesNotPresentInSource($source . $pluginDir, $target . $pluginDir);
diff --git a/plugins/Dashboard/angularjs/dashboard/dashboard.directive.js b/plugins/Dashboard/angularjs/dashboard/dashboard.directive.js
index 3231d60a52..04c1a8e6a5 100644
--- a/plugins/Dashboard/angularjs/dashboard/dashboard.directive.js
+++ b/plugins/Dashboard/angularjs/dashboard/dashboard.directive.js
@@ -93,7 +93,8 @@
function onLocationChange(event, newUrl, oldUrl)
{
- if (newUrl !== oldUrl && newUrl.indexOf('category=Dashboard_Dashboard') === -1) {
+ if (broadcast.getValueFromUrl('module') != 'Widgetize' && newUrl !== oldUrl &&
+ newUrl.indexOf('category=Dashboard_Dashboard') === -1) {
// we remove the dashboard only if we no longer show a dashboard.
clearDashboard();
}
diff --git a/plugins/DevicesDetection/functions.php b/plugins/DevicesDetection/functions.php
index 8aa6f312d3..663e3361e9 100644
--- a/plugins/DevicesDetection/functions.php
+++ b/plugins/DevicesDetection/functions.php
@@ -16,13 +16,12 @@ use DeviceDetector\Parser\Client\Browser AS BrowserParser;
function getBrandLogo($label)
{
+ $path = 'plugins/Morpheus/icons/dist/brand/%s.png';
$label = preg_replace("/[^a-z0-9_-]+/i", "_", $label);
- $path = dirname(__FILE__) . '/images/brand/' . $label . '.png';
- if (file_exists($path)) {
- return 'plugins/DevicesDetection/images/brand/' . $label . '.png';
- } else {
- return 'plugins/DevicesDetection/images/brand/Unknown.png';
+ if (!file_exists(PIWIK_INCLUDE_PATH . '/' . sprintf($path, $label))) {
+ $label = "unk";
}
+ return sprintf($path, $label);
}
function getBrowserFamilyFullName($label)
diff --git a/plugins/DevicesDetection/images/brand/3Q.png b/plugins/DevicesDetection/images/brand/3Q.png
deleted file mode 100644
index 8a2e5e2f1c..0000000000
--- a/plugins/DevicesDetection/images/brand/3Q.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Acer.png b/plugins/DevicesDetection/images/brand/Acer.png
deleted file mode 100644
index 33e2e60ca3..0000000000
--- a/plugins/DevicesDetection/images/brand/Acer.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Alcatel.png b/plugins/DevicesDetection/images/brand/Alcatel.png
deleted file mode 100644
index 91ccc70297..0000000000
--- a/plugins/DevicesDetection/images/brand/Alcatel.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Apple.png b/plugins/DevicesDetection/images/brand/Apple.png
deleted file mode 100644
index 3ce2b7d569..0000000000
--- a/plugins/DevicesDetection/images/brand/Apple.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Archos.png b/plugins/DevicesDetection/images/brand/Archos.png
deleted file mode 100644
index a397830f7b..0000000000
--- a/plugins/DevicesDetection/images/brand/Archos.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Asus.png b/plugins/DevicesDetection/images/brand/Asus.png
deleted file mode 100644
index d5e7e4a436..0000000000
--- a/plugins/DevicesDetection/images/brand/Asus.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Audiovox.png b/plugins/DevicesDetection/images/brand/Audiovox.png
deleted file mode 100644
index d674fc28d8..0000000000
--- a/plugins/DevicesDetection/images/brand/Audiovox.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Avvio.png b/plugins/DevicesDetection/images/brand/Avvio.png
deleted file mode 100644
index 9f28e1750c..0000000000
--- a/plugins/DevicesDetection/images/brand/Avvio.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/BBK.png b/plugins/DevicesDetection/images/brand/BBK.png
deleted file mode 100644
index 6352fd1b02..0000000000
--- a/plugins/DevicesDetection/images/brand/BBK.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/BangOlufsen.png b/plugins/DevicesDetection/images/brand/BangOlufsen.png
deleted file mode 100644
index c3260f449d..0000000000
--- a/plugins/DevicesDetection/images/brand/BangOlufsen.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Barnes_Noble.png b/plugins/DevicesDetection/images/brand/Barnes_Noble.png
deleted file mode 100644
index 2eb62cb8e1..0000000000
--- a/plugins/DevicesDetection/images/brand/Barnes_Noble.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Becker.png b/plugins/DevicesDetection/images/brand/Becker.png
deleted file mode 100644
index 133ff9ac2b..0000000000
--- a/plugins/DevicesDetection/images/brand/Becker.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Beetel.png b/plugins/DevicesDetection/images/brand/Beetel.png
deleted file mode 100644
index d7602ecb37..0000000000
--- a/plugins/DevicesDetection/images/brand/Beetel.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/BenQ.png b/plugins/DevicesDetection/images/brand/BenQ.png
deleted file mode 100644
index 10414987cf..0000000000
--- a/plugins/DevicesDetection/images/brand/BenQ.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Cat.png b/plugins/DevicesDetection/images/brand/Cat.png
deleted file mode 100644
index a6b262f172..0000000000
--- a/plugins/DevicesDetection/images/brand/Cat.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Celkon.png b/plugins/DevicesDetection/images/brand/Celkon.png
deleted file mode 100644
index c35d5864b4..0000000000
--- a/plugins/DevicesDetection/images/brand/Celkon.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Cherry_Mobile.png b/plugins/DevicesDetection/images/brand/Cherry_Mobile.png
deleted file mode 100644
index 393f1ca49d..0000000000
--- a/plugins/DevicesDetection/images/brand/Cherry_Mobile.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/CnM.png b/plugins/DevicesDetection/images/brand/CnM.png
deleted file mode 100644
index dae12ed0fc..0000000000
--- a/plugins/DevicesDetection/images/brand/CnM.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Compal.png b/plugins/DevicesDetection/images/brand/Compal.png
deleted file mode 100644
index 8f89ab9894..0000000000
--- a/plugins/DevicesDetection/images/brand/Compal.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Compaq.png b/plugins/DevicesDetection/images/brand/Compaq.png
deleted file mode 100644
index b0738259bd..0000000000
--- a/plugins/DevicesDetection/images/brand/Compaq.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/ConCorde.png b/plugins/DevicesDetection/images/brand/ConCorde.png
deleted file mode 100644
index 27efdbab49..0000000000
--- a/plugins/DevicesDetection/images/brand/ConCorde.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Coolpad.png b/plugins/DevicesDetection/images/brand/Coolpad.png
deleted file mode 100644
index 75caa69358..0000000000
--- a/plugins/DevicesDetection/images/brand/Coolpad.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/CreNova.png b/plugins/DevicesDetection/images/brand/CreNova.png
deleted file mode 100644
index 282b466ec6..0000000000
--- a/plugins/DevicesDetection/images/brand/CreNova.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Cricket.png b/plugins/DevicesDetection/images/brand/Cricket.png
deleted file mode 100644
index 1e45f3ae52..0000000000
--- a/plugins/DevicesDetection/images/brand/Cricket.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Crius_Mea.png b/plugins/DevicesDetection/images/brand/Crius_Mea.png
deleted file mode 100644
index 4c3473a737..0000000000
--- a/plugins/DevicesDetection/images/brand/Crius_Mea.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Crosscall.png b/plugins/DevicesDetection/images/brand/Crosscall.png
deleted file mode 100644
index 39eab86c5d..0000000000
--- a/plugins/DevicesDetection/images/brand/Crosscall.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/DMM.png b/plugins/DevicesDetection/images/brand/DMM.png
deleted file mode 100644
index 07d2fd3e09..0000000000
--- a/plugins/DevicesDetection/images/brand/DMM.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Danew.png b/plugins/DevicesDetection/images/brand/Danew.png
deleted file mode 100644
index 373eded938..0000000000
--- a/plugins/DevicesDetection/images/brand/Danew.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Dell.png b/plugins/DevicesDetection/images/brand/Dell.png
deleted file mode 100644
index 0a719c2cfd..0000000000
--- a/plugins/DevicesDetection/images/brand/Dell.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Denver.png b/plugins/DevicesDetection/images/brand/Denver.png
deleted file mode 100644
index 0ae2e6211a..0000000000
--- a/plugins/DevicesDetection/images/brand/Denver.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/DoCoMo.png b/plugins/DevicesDetection/images/brand/DoCoMo.png
deleted file mode 100644
index cf9f3ef0e6..0000000000
--- a/plugins/DevicesDetection/images/brand/DoCoMo.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Easypix.png b/plugins/DevicesDetection/images/brand/Easypix.png
deleted file mode 100644
index a14cd928ba..0000000000
--- a/plugins/DevicesDetection/images/brand/Easypix.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Ericsson.png b/plugins/DevicesDetection/images/brand/Ericsson.png
deleted file mode 100644
index a377acd22e..0000000000
--- a/plugins/DevicesDetection/images/brand/Ericsson.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Evertek.png b/plugins/DevicesDetection/images/brand/Evertek.png
deleted file mode 100644
index c09bf2c331..0000000000
--- a/plugins/DevicesDetection/images/brand/Evertek.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Fly.png b/plugins/DevicesDetection/images/brand/Fly.png
deleted file mode 100644
index a4ae584c37..0000000000
--- a/plugins/DevicesDetection/images/brand/Fly.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Fujitsu.png b/plugins/DevicesDetection/images/brand/Fujitsu.png
deleted file mode 100644
index e2ac9cae5c..0000000000
--- a/plugins/DevicesDetection/images/brand/Fujitsu.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Gemini.png b/plugins/DevicesDetection/images/brand/Gemini.png
deleted file mode 100644
index deeb01e570..0000000000
--- a/plugins/DevicesDetection/images/brand/Gemini.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Gigabyte.png b/plugins/DevicesDetection/images/brand/Gigabyte.png
deleted file mode 100644
index ced0200cd8..0000000000
--- a/plugins/DevicesDetection/images/brand/Gigabyte.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Gigaset.png b/plugins/DevicesDetection/images/brand/Gigaset.png
deleted file mode 100644
index 5ad69fb6d2..0000000000
--- a/plugins/DevicesDetection/images/brand/Gigaset.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Gionee.png b/plugins/DevicesDetection/images/brand/Gionee.png
deleted file mode 100644
index 704085f1be..0000000000
--- a/plugins/DevicesDetection/images/brand/Gionee.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Google.png b/plugins/DevicesDetection/images/brand/Google.png
deleted file mode 100644
index fe481b517c..0000000000
--- a/plugins/DevicesDetection/images/brand/Google.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Gradiente.png b/plugins/DevicesDetection/images/brand/Gradiente.png
deleted file mode 100644
index 28d671dfbc..0000000000
--- a/plugins/DevicesDetection/images/brand/Gradiente.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Grundig.png b/plugins/DevicesDetection/images/brand/Grundig.png
deleted file mode 100644
index 0a0351a95a..0000000000
--- a/plugins/DevicesDetection/images/brand/Grundig.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/HP.png b/plugins/DevicesDetection/images/brand/HP.png
deleted file mode 100644
index 5ca41db9b7..0000000000
--- a/plugins/DevicesDetection/images/brand/HP.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/HTC.png b/plugins/DevicesDetection/images/brand/HTC.png
deleted file mode 100644
index 28c75f0c66..0000000000
--- a/plugins/DevicesDetection/images/brand/HTC.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Haier.png b/plugins/DevicesDetection/images/brand/Haier.png
deleted file mode 100644
index 03ccce3ff8..0000000000
--- a/plugins/DevicesDetection/images/brand/Haier.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Huawei.png b/plugins/DevicesDetection/images/brand/Huawei.png
deleted file mode 100644
index 441a40221c..0000000000
--- a/plugins/DevicesDetection/images/brand/Huawei.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Humax.png b/plugins/DevicesDetection/images/brand/Humax.png
deleted file mode 100644
index cdb27bf41d..0000000000
--- a/plugins/DevicesDetection/images/brand/Humax.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Hyundai.png b/plugins/DevicesDetection/images/brand/Hyundai.png
deleted file mode 100644
index 3565bcf03f..0000000000
--- a/plugins/DevicesDetection/images/brand/Hyundai.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/INQ.png b/plugins/DevicesDetection/images/brand/INQ.png
deleted file mode 100644
index 3d012cf243..0000000000
--- a/plugins/DevicesDetection/images/brand/INQ.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Ikea.png b/plugins/DevicesDetection/images/brand/Ikea.png
deleted file mode 100644
index d9c160a039..0000000000
--- a/plugins/DevicesDetection/images/brand/Ikea.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Intek.png b/plugins/DevicesDetection/images/brand/Intek.png
deleted file mode 100644
index b0d505a3e9..0000000000
--- a/plugins/DevicesDetection/images/brand/Intek.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Inverto.png b/plugins/DevicesDetection/images/brand/Inverto.png
deleted file mode 100644
index 88729a4ed6..0000000000
--- a/plugins/DevicesDetection/images/brand/Inverto.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Jolla.png b/plugins/DevicesDetection/images/brand/Jolla.png
deleted file mode 100644
index 92b8535708..0000000000
--- a/plugins/DevicesDetection/images/brand/Jolla.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/KDDI.png b/plugins/DevicesDetection/images/brand/KDDI.png
deleted file mode 100644
index 0142b8b082..0000000000
--- a/plugins/DevicesDetection/images/brand/KDDI.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Karbonn.png b/plugins/DevicesDetection/images/brand/Karbonn.png
deleted file mode 100644
index 8f200aeaaf..0000000000
--- a/plugins/DevicesDetection/images/brand/Karbonn.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Kindle.png b/plugins/DevicesDetection/images/brand/Kindle.png
deleted file mode 100644
index cbf915881b..0000000000
--- a/plugins/DevicesDetection/images/brand/Kindle.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Kyocera.png b/plugins/DevicesDetection/images/brand/Kyocera.png
deleted file mode 100644
index 5bc4da8b73..0000000000
--- a/plugins/DevicesDetection/images/brand/Kyocera.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/LG.png b/plugins/DevicesDetection/images/brand/LG.png
deleted file mode 100644
index 8e7d07b93a..0000000000
--- a/plugins/DevicesDetection/images/brand/LG.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/LGUPlus.png b/plugins/DevicesDetection/images/brand/LGUPlus.png
deleted file mode 100644
index db5f4fe1a4..0000000000
--- a/plugins/DevicesDetection/images/brand/LGUPlus.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Lanix.png b/plugins/DevicesDetection/images/brand/Lanix.png
deleted file mode 100644
index 790f8ad843..0000000000
--- a/plugins/DevicesDetection/images/brand/Lanix.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Le_Pan.png b/plugins/DevicesDetection/images/brand/Le_Pan.png
deleted file mode 100644
index cea70792e3..0000000000
--- a/plugins/DevicesDetection/images/brand/Le_Pan.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Lenovo.png b/plugins/DevicesDetection/images/brand/Lenovo.png
deleted file mode 100644
index 42c92f4eb6..0000000000
--- a/plugins/DevicesDetection/images/brand/Lenovo.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Loewe.png b/plugins/DevicesDetection/images/brand/Loewe.png
deleted file mode 100644
index aabc403d55..0000000000
--- a/plugins/DevicesDetection/images/brand/Loewe.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/MSI.png b/plugins/DevicesDetection/images/brand/MSI.png
deleted file mode 100644
index 88cb1029d8..0000000000
--- a/plugins/DevicesDetection/images/brand/MSI.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Manta_Multimedia.png b/plugins/DevicesDetection/images/brand/Manta_Multimedia.png
deleted file mode 100644
index 05c79869d3..0000000000
--- a/plugins/DevicesDetection/images/brand/Manta_Multimedia.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/MediaTek.png b/plugins/DevicesDetection/images/brand/MediaTek.png
deleted file mode 100644
index 0901a828de..0000000000
--- a/plugins/DevicesDetection/images/brand/MediaTek.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Medion.png b/plugins/DevicesDetection/images/brand/Medion.png
deleted file mode 100644
index 7873a80802..0000000000
--- a/plugins/DevicesDetection/images/brand/Medion.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Metz.png b/plugins/DevicesDetection/images/brand/Metz.png
deleted file mode 100644
index 5801781743..0000000000
--- a/plugins/DevicesDetection/images/brand/Metz.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/MicroMax.png b/plugins/DevicesDetection/images/brand/MicroMax.png
deleted file mode 100644
index 1b3beda0cf..0000000000
--- a/plugins/DevicesDetection/images/brand/MicroMax.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Microsoft.png b/plugins/DevicesDetection/images/brand/Microsoft.png
deleted file mode 100644
index f1417973d0..0000000000
--- a/plugins/DevicesDetection/images/brand/Microsoft.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Mio.png b/plugins/DevicesDetection/images/brand/Mio.png
deleted file mode 100644
index a7abb66268..0000000000
--- a/plugins/DevicesDetection/images/brand/Mio.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Mitsubishi.png b/plugins/DevicesDetection/images/brand/Mitsubishi.png
deleted file mode 100644
index 248a92fc4d..0000000000
--- a/plugins/DevicesDetection/images/brand/Mitsubishi.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Motorola.png b/plugins/DevicesDetection/images/brand/Motorola.png
deleted file mode 100644
index 7a4daa95a7..0000000000
--- a/plugins/DevicesDetection/images/brand/Motorola.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/MyPhone.png b/plugins/DevicesDetection/images/brand/MyPhone.png
deleted file mode 100644
index 3717270632..0000000000
--- a/plugins/DevicesDetection/images/brand/MyPhone.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/NEC.png b/plugins/DevicesDetection/images/brand/NEC.png
deleted file mode 100644
index f2c60d1cd1..0000000000
--- a/plugins/DevicesDetection/images/brand/NEC.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/NGM.png b/plugins/DevicesDetection/images/brand/NGM.png
deleted file mode 100644
index 533c88ba67..0000000000
--- a/plugins/DevicesDetection/images/brand/NGM.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Nexian.png b/plugins/DevicesDetection/images/brand/Nexian.png
deleted file mode 100644
index fba9dd7dba..0000000000
--- a/plugins/DevicesDetection/images/brand/Nexian.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Nikon.png b/plugins/DevicesDetection/images/brand/Nikon.png
deleted file mode 100644
index 99d714d1bd..0000000000
--- a/plugins/DevicesDetection/images/brand/Nikon.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Nintendo.png b/plugins/DevicesDetection/images/brand/Nintendo.png
deleted file mode 100644
index 20c6f4b5eb..0000000000
--- a/plugins/DevicesDetection/images/brand/Nintendo.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Nokia.png b/plugins/DevicesDetection/images/brand/Nokia.png
deleted file mode 100644
index 5af67b3573..0000000000
--- a/plugins/DevicesDetection/images/brand/Nokia.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/O2.png b/plugins/DevicesDetection/images/brand/O2.png
deleted file mode 100644
index 468e9f5e62..0000000000
--- a/plugins/DevicesDetection/images/brand/O2.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/OPPO.png b/plugins/DevicesDetection/images/brand/OPPO.png
deleted file mode 100644
index d947bb8c5a..0000000000
--- a/plugins/DevicesDetection/images/brand/OPPO.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Onda.png b/plugins/DevicesDetection/images/brand/Onda.png
deleted file mode 100644
index 386ea8ed58..0000000000
--- a/plugins/DevicesDetection/images/brand/Onda.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/OnePlus.png b/plugins/DevicesDetection/images/brand/OnePlus.png
deleted file mode 100644
index 1f9c73a7d5..0000000000
--- a/plugins/DevicesDetection/images/brand/OnePlus.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Orange.png b/plugins/DevicesDetection/images/brand/Orange.png
deleted file mode 100644
index d3303f5825..0000000000
--- a/plugins/DevicesDetection/images/brand/Orange.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/PEAQ.png b/plugins/DevicesDetection/images/brand/PEAQ.png
deleted file mode 100644
index 0626e7a93e..0000000000
--- a/plugins/DevicesDetection/images/brand/PEAQ.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Panasonic.png b/plugins/DevicesDetection/images/brand/Panasonic.png
deleted file mode 100644
index 6480c23af7..0000000000
--- a/plugins/DevicesDetection/images/brand/Panasonic.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Pantech.png b/plugins/DevicesDetection/images/brand/Pantech.png
deleted file mode 100644
index f3ff1432eb..0000000000
--- a/plugins/DevicesDetection/images/brand/Pantech.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Philips.png b/plugins/DevicesDetection/images/brand/Philips.png
deleted file mode 100644
index 6f952a104b..0000000000
--- a/plugins/DevicesDetection/images/brand/Philips.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Polaroid.png b/plugins/DevicesDetection/images/brand/Polaroid.png
deleted file mode 100644
index 3c1dc59aca..0000000000
--- a/plugins/DevicesDetection/images/brand/Polaroid.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/PolyPad.png b/plugins/DevicesDetection/images/brand/PolyPad.png
deleted file mode 100644
index d6ef005892..0000000000
--- a/plugins/DevicesDetection/images/brand/PolyPad.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Quechua.png b/plugins/DevicesDetection/images/brand/Quechua.png
deleted file mode 100644
index b720b484b0..0000000000
--- a/plugins/DevicesDetection/images/brand/Quechua.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/RIM.png b/plugins/DevicesDetection/images/brand/RIM.png
deleted file mode 100644
index 3263638840..0000000000
--- a/plugins/DevicesDetection/images/brand/RIM.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/SFR.png b/plugins/DevicesDetection/images/brand/SFR.png
deleted file mode 100644
index 59a47182cc..0000000000
--- a/plugins/DevicesDetection/images/brand/SFR.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Sagem.png b/plugins/DevicesDetection/images/brand/Sagem.png
deleted file mode 100644
index 1f2f11d894..0000000000
--- a/plugins/DevicesDetection/images/brand/Sagem.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Samsung.png b/plugins/DevicesDetection/images/brand/Samsung.png
deleted file mode 100644
index ddef8460a2..0000000000
--- a/plugins/DevicesDetection/images/brand/Samsung.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Sanyo.png b/plugins/DevicesDetection/images/brand/Sanyo.png
deleted file mode 100644
index 5bc4da8b73..0000000000
--- a/plugins/DevicesDetection/images/brand/Sanyo.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Sega.png b/plugins/DevicesDetection/images/brand/Sega.png
deleted file mode 100644
index 58e505f18a..0000000000
--- a/plugins/DevicesDetection/images/brand/Sega.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Selevision.png b/plugins/DevicesDetection/images/brand/Selevision.png
deleted file mode 100644
index 7f54997696..0000000000
--- a/plugins/DevicesDetection/images/brand/Selevision.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Sencor.png b/plugins/DevicesDetection/images/brand/Sencor.png
deleted file mode 100644
index bc0540c337..0000000000
--- a/plugins/DevicesDetection/images/brand/Sencor.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Sharp.png b/plugins/DevicesDetection/images/brand/Sharp.png
deleted file mode 100644
index 5d7b8523cf..0000000000
--- a/plugins/DevicesDetection/images/brand/Sharp.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Siemens.png b/plugins/DevicesDetection/images/brand/Siemens.png
deleted file mode 100644
index f11c4d6a5a..0000000000
--- a/plugins/DevicesDetection/images/brand/Siemens.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Smart.png b/plugins/DevicesDetection/images/brand/Smart.png
deleted file mode 100644
index 9e3d779c63..0000000000
--- a/plugins/DevicesDetection/images/brand/Smart.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Smartfren.png b/plugins/DevicesDetection/images/brand/Smartfren.png
deleted file mode 100644
index 853f640448..0000000000
--- a/plugins/DevicesDetection/images/brand/Smartfren.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Softbank.png b/plugins/DevicesDetection/images/brand/Softbank.png
deleted file mode 100644
index d0b8dc8dc2..0000000000
--- a/plugins/DevicesDetection/images/brand/Softbank.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Sony.png b/plugins/DevicesDetection/images/brand/Sony.png
deleted file mode 100644
index 8d9dbf3796..0000000000
--- a/plugins/DevicesDetection/images/brand/Sony.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Sony_Ericsson.png b/plugins/DevicesDetection/images/brand/Sony_Ericsson.png
deleted file mode 100644
index a3cb9d2909..0000000000
--- a/plugins/DevicesDetection/images/brand/Sony_Ericsson.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Spice.png b/plugins/DevicesDetection/images/brand/Spice.png
deleted file mode 100644
index e9d7e0602a..0000000000
--- a/plugins/DevicesDetection/images/brand/Spice.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/T-Mobile.png b/plugins/DevicesDetection/images/brand/T-Mobile.png
deleted file mode 100644
index 8908033d19..0000000000
--- a/plugins/DevicesDetection/images/brand/T-Mobile.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/TCL.png b/plugins/DevicesDetection/images/brand/TCL.png
deleted file mode 100644
index a66cd3e924..0000000000
--- a/plugins/DevicesDetection/images/brand/TCL.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/TechniSat.png b/plugins/DevicesDetection/images/brand/TechniSat.png
deleted file mode 100644
index f29d4e26ee..0000000000
--- a/plugins/DevicesDetection/images/brand/TechniSat.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/TechnoTrend.png b/plugins/DevicesDetection/images/brand/TechnoTrend.png
deleted file mode 100644
index 9ef288505f..0000000000
--- a/plugins/DevicesDetection/images/brand/TechnoTrend.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Tecno_Mobile.png b/plugins/DevicesDetection/images/brand/Tecno_Mobile.png
deleted file mode 100644
index 7ea787c5ba..0000000000
--- a/plugins/DevicesDetection/images/brand/Tecno_Mobile.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Telefunken.png b/plugins/DevicesDetection/images/brand/Telefunken.png
deleted file mode 100644
index 9656092a10..0000000000
--- a/plugins/DevicesDetection/images/brand/Telefunken.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Telit.png b/plugins/DevicesDetection/images/brand/Telit.png
deleted file mode 100644
index f06186c545..0000000000
--- a/plugins/DevicesDetection/images/brand/Telit.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Thomson.png b/plugins/DevicesDetection/images/brand/Thomson.png
deleted file mode 100644
index 89c5133956..0000000000
--- a/plugins/DevicesDetection/images/brand/Thomson.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/TiPhone.png b/plugins/DevicesDetection/images/brand/TiPhone.png
deleted file mode 100644
index da1531ac76..0000000000
--- a/plugins/DevicesDetection/images/brand/TiPhone.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Tolino.png b/plugins/DevicesDetection/images/brand/Tolino.png
deleted file mode 100644
index 23b44b02b7..0000000000
--- a/plugins/DevicesDetection/images/brand/Tolino.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Toshiba.png b/plugins/DevicesDetection/images/brand/Toshiba.png
deleted file mode 100644
index 3ea1260dab..0000000000
--- a/plugins/DevicesDetection/images/brand/Toshiba.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Tunisie_Telecom.png b/plugins/DevicesDetection/images/brand/Tunisie_Telecom.png
deleted file mode 100644
index 44e87d65ed..0000000000
--- a/plugins/DevicesDetection/images/brand/Tunisie_Telecom.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Unknown.png b/plugins/DevicesDetection/images/brand/Unknown.png
deleted file mode 100644
index 2c75a533a1..0000000000
--- a/plugins/DevicesDetection/images/brand/Unknown.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Vertu.png b/plugins/DevicesDetection/images/brand/Vertu.png
deleted file mode 100644
index caa2ec1a17..0000000000
--- a/plugins/DevicesDetection/images/brand/Vertu.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Vestel.png b/plugins/DevicesDetection/images/brand/Vestel.png
deleted file mode 100644
index 74466e4d31..0000000000
--- a/plugins/DevicesDetection/images/brand/Vestel.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Videocon.png b/plugins/DevicesDetection/images/brand/Videocon.png
deleted file mode 100644
index aee145d59e..0000000000
--- a/plugins/DevicesDetection/images/brand/Videocon.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Videoweb.png b/plugins/DevicesDetection/images/brand/Videoweb.png
deleted file mode 100644
index 8892f58f13..0000000000
--- a/plugins/DevicesDetection/images/brand/Videoweb.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/ViewSonic.png b/plugins/DevicesDetection/images/brand/ViewSonic.png
deleted file mode 100644
index 0a57879b00..0000000000
--- a/plugins/DevicesDetection/images/brand/ViewSonic.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Voxtel.png b/plugins/DevicesDetection/images/brand/Voxtel.png
deleted file mode 100644
index b2b4b9afe5..0000000000
--- a/plugins/DevicesDetection/images/brand/Voxtel.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Wiko.png b/plugins/DevicesDetection/images/brand/Wiko.png
deleted file mode 100644
index 5ab15ac0c8..0000000000
--- a/plugins/DevicesDetection/images/brand/Wiko.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Wolder.png b/plugins/DevicesDetection/images/brand/Wolder.png
deleted file mode 100644
index 2d7884166d..0000000000
--- a/plugins/DevicesDetection/images/brand/Wolder.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Woxter.png b/plugins/DevicesDetection/images/brand/Woxter.png
deleted file mode 100644
index 9ca46b13a7..0000000000
--- a/plugins/DevicesDetection/images/brand/Woxter.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Xiaomi.png b/plugins/DevicesDetection/images/brand/Xiaomi.png
deleted file mode 100644
index 662a1a843b..0000000000
--- a/plugins/DevicesDetection/images/brand/Xiaomi.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Yarvik.png b/plugins/DevicesDetection/images/brand/Yarvik.png
deleted file mode 100644
index 0b24f3935f..0000000000
--- a/plugins/DevicesDetection/images/brand/Yarvik.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Yuandao.png b/plugins/DevicesDetection/images/brand/Yuandao.png
deleted file mode 100644
index 50b25f57bd..0000000000
--- a/plugins/DevicesDetection/images/brand/Yuandao.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/ZTE.png b/plugins/DevicesDetection/images/brand/ZTE.png
deleted file mode 100644
index b1e74f2aae..0000000000
--- a/plugins/DevicesDetection/images/brand/ZTE.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Zonda.png b/plugins/DevicesDetection/images/brand/Zonda.png
deleted file mode 100644
index 6002ce66e4..0000000000
--- a/plugins/DevicesDetection/images/brand/Zonda.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/Zopo.png b/plugins/DevicesDetection/images/brand/Zopo.png
deleted file mode 100644
index 03d6f4530e..0000000000
--- a/plugins/DevicesDetection/images/brand/Zopo.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/bq.png b/plugins/DevicesDetection/images/brand/bq.png
deleted file mode 100644
index 088f3d1144..0000000000
--- a/plugins/DevicesDetection/images/brand/bq.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/eTouch.png b/plugins/DevicesDetection/images/brand/eTouch.png
deleted file mode 100644
index 30e09812b6..0000000000
--- a/plugins/DevicesDetection/images/brand/eTouch.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/i-mobile.png b/plugins/DevicesDetection/images/brand/i-mobile.png
deleted file mode 100644
index 2b02066876..0000000000
--- a/plugins/DevicesDetection/images/brand/i-mobile.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/iBerry.png b/plugins/DevicesDetection/images/brand/iBerry.png
deleted file mode 100644
index 528e04a4c5..0000000000
--- a/plugins/DevicesDetection/images/brand/iBerry.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/images/brand/teXet.png b/plugins/DevicesDetection/images/brand/teXet.png
deleted file mode 100644
index 2d046b9f73..0000000000
--- a/plugins/DevicesDetection/images/brand/teXet.png
+++ /dev/null
Binary files differ
diff --git a/plugins/DevicesDetection/tests/System/expected/test___DevicesDetection.getBrand_day.xml b/plugins/DevicesDetection/tests/System/expected/test___DevicesDetection.getBrand_day.xml
index 0f038157ba..6f23cb8eb7 100644
--- a/plugins/DevicesDetection/tests/System/expected/test___DevicesDetection.getBrand_day.xml
+++ b/plugins/DevicesDetection/tests/System/expected/test___DevicesDetection.getBrand_day.xml
@@ -18,7 +18,7 @@
</goals>
<nb_conversions>2</nb_conversions>
<revenue>52.26</revenue>
- <logo>plugins/DevicesDetection/images/brand/Apple.png</logo>
+ <logo>plugins/Morpheus/icons/dist/brand/Apple.png</logo>
<segment>deviceBrand==Apple</segment>
</row>
<row>
@@ -39,7 +39,7 @@
</goals>
<nb_conversions>3</nb_conversions>
<revenue>62.26</revenue>
- <logo>plugins/DevicesDetection/images/brand/Unknown.png</logo>
+ <logo>plugins/Morpheus/icons/dist/brand/Unknown.png</logo>
<segment>deviceBrand==Unknown</segment>
</row>
<row>
@@ -60,7 +60,7 @@
</goals>
<nb_conversions>1</nb_conversions>
<revenue>42.26</revenue>
- <logo>plugins/DevicesDetection/images/brand/HTC.png</logo>
+ <logo>plugins/Morpheus/icons/dist/brand/HTC.png</logo>
<segment>deviceBrand==HTC</segment>
</row>
<row>
@@ -73,7 +73,7 @@
<sum_visit_length>0</sum_visit_length>
<bounce_count>1</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
- <logo>plugins/DevicesDetection/images/brand/Philips.png</logo>
+ <logo>plugins/Morpheus/icons/dist/brand/Philips.png</logo>
<segment>deviceBrand==Philips</segment>
</row>
<row>
@@ -86,7 +86,7 @@
<sum_visit_length>0</sum_visit_length>
<bounce_count>1</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
- <logo>plugins/DevicesDetection/images/brand/Samsung.png</logo>
+ <logo>plugins/Morpheus/icons/dist/brand/Samsung.png</logo>
<segment>deviceBrand==Samsung</segment>
</row>
<row>
@@ -107,7 +107,7 @@
</goals>
<nb_conversions>1</nb_conversions>
<revenue>10</revenue>
- <logo>plugins/DevicesDetection/images/brand/ViewSonic.png</logo>
+ <logo>plugins/Morpheus/icons/dist/brand/ViewSonic.png</logo>
<segment>deviceBrand==ViewSonic</segment>
</row>
</result> \ No newline at end of file
diff --git a/plugins/Diagnostics/Diagnostic/PageSpeedCheck.php b/plugins/Diagnostics/Diagnostic/PageSpeedCheck.php
index 8f456a04bb..495e13ee45 100644
--- a/plugins/Diagnostics/Diagnostic/PageSpeedCheck.php
+++ b/plugins/Diagnostics/Diagnostic/PageSpeedCheck.php
@@ -72,9 +72,7 @@ class PageSpeedCheck implements Diagnostic
// If the test failed, we assume Page speed is not enabled
return false;
}
-
- $headers = $page['headers'];
-
- return isset($headers['X-Mod-Pagespeed']) || isset($headers['X-Page-Speed']);
+
+ return isset($page['headers']['X-Mod-Pagespeed']) || isset($page['headers']['X-Page-Speed']);
}
}
diff --git a/plugins/ImageGraph/StaticGraph.php b/plugins/ImageGraph/StaticGraph.php
index 1f74457e7d..44c9309a59 100644
--- a/plugins/ImageGraph/StaticGraph.php
+++ b/plugins/ImageGraph/StaticGraph.php
@@ -239,8 +239,9 @@ abstract class StaticGraph extends BaseFactory
foreach ($this->ordinateSeries as $column => $data) {
$this->pData->addPoints($data, $column);
$this->pData->setSerieDescription($column, $this->ordinateLabels[$column]);
+
if (isset($this->ordinateLogos[$column])) {
- $ordinateLogo = $this->ordinateLogos[$column];
+ $ordinateLogo = $this->createResizedImageCopyIfNeeded($this->ordinateLogos[$column]);
$this->pData->setSeriePicture($column, $ordinateLogo);
}
}
@@ -251,6 +252,38 @@ abstract class StaticGraph extends BaseFactory
$this->pData->setAbscissa(self::ABSCISSA_SERIE_NAME);
}
+ protected function createResizedImageCopyIfNeeded($image)
+ {
+ $size = getimagesize($image);
+
+ if ($size[0] <= 16 && $size[1] <= 16) {
+ return $image; // use original image if size fits
+ }
+
+ $ratio = $size[0] / $size[1];
+ if ($ratio > 1) {
+ $width = 16;
+ $height = 16 / $ratio;
+ } else {
+ $width = 16 * $ratio;
+ $height = 16;
+ }
+
+ $newImage = self::getOutputPath(md5($image) . '.png');
+
+ $src = imagecreatefromstring(file_get_contents($image));
+ $dst = imagecreatetruecolor($width, $height);
+ imagesavealpha($dst, true);
+ $color = imagecolorallocatealpha($dst, 0, 0, 0, 127);
+ imagefill($dst, 0, 0, $color);
+ imagecopyresampled($dst, $src, 0, 0, 0, 0, $width, $height, $size[0], $size[1]);
+ imagedestroy($src);
+ imagepng($dst, $newImage);
+ imagedestroy($dst);
+
+ return $newImage;
+ }
+
protected function initpImage()
{
$this->pImage = new Image($this->width, $this->height, $this->pData);
diff --git a/plugins/ImageGraph/StaticGraph/HorizontalBar.php b/plugins/ImageGraph/StaticGraph/HorizontalBar.php
index 2f6f4b8ca5..c8ae7345ee 100644
--- a/plugins/ImageGraph/StaticGraph/HorizontalBar.php
+++ b/plugins/ImageGraph/StaticGraph/HorizontalBar.php
@@ -24,14 +24,16 @@ class HorizontalBar extends GridGraph
{
$verticalLegend = false;
- // determine the maximum logo width & height
- list($maxLogoWidth, $maxLogoHeight) = self::getMaxLogoSize($this->abscissaLogos);
-
- foreach ($this->abscissaLogos as $logoPath) {
+ // create resized copies of logo to match maximum width / height
+ foreach ($this->abscissaLogos as &$logoPath) {
+ $logoPath = $this->createResizedImageCopyIfNeeded($logoPath);
list($logoWidth, $logoHeight) = self::getLogoSize($logoPath);
$logoPathToHeight[$logoPath] = $logoHeight;
}
+ // determine the maximum logo width & height
+ list($maxLogoWidth, $maxLogoHeight) = self::getMaxLogoSize($this->abscissaLogos);
+
// truncate report
$graphHeight = $this->getGraphBottom($horizontalGraph = true) - $this->getGridTopMargin($horizontalGraph = true, $verticalLegend);
diff --git a/plugins/LoginLdap b/plugins/LoginLdap
new file mode 160000
+Subproject e4b5faedcab4a9de793f72dc32b5212383c4a09
diff --git a/plugins/Marketplace/angularjs/marketplace/marketplace.directive.js b/plugins/Marketplace/angularjs/marketplace/marketplace.directive.js
index 96812865d6..0ae4d9e63d 100644
--- a/plugins/Marketplace/angularjs/marketplace/marketplace.directive.js
+++ b/plugins/Marketplace/angularjs/marketplace/marketplace.directive.js
@@ -32,24 +32,6 @@
piwikHelper.modalConfirm('#installAllPaidPluginsAtOnce');
});
- $('.uploadPlugin').click(function (event) {
- event.preventDefault();
-
- piwikHelper.modalConfirm('#installPluginByUpload', {});
- });
-
-
- $('#uploadPluginForm').submit(function (event) {
-
- var $zipFile = $('[name=pluginZip]');
- var fileName = $zipFile.val();
-
- if (!fileName || '.zip' != fileName.slice(-4)) {
- event.preventDefault();
- alert(_pk_translate('CorePluginsAdmin_NoZipFileSelected'));
- }
- });
-
// Keeps the plugin descriptions the same height
$('.marketplace .plugin .description').dotdotdot({
after: 'a.more',
diff --git a/plugins/Marketplace/templates/overview.twig b/plugins/Marketplace/templates/overview.twig
index 76123fc2a1..f158b2522a 100644
--- a/plugins/Marketplace/templates/overview.twig
+++ b/plugins/Marketplace/templates/overview.twig
@@ -28,25 +28,7 @@
{% include '@Marketplace/licenseform.twig' %}
- <div class="ui-confirm" id="installPluginByUpload">
- <h2>{{ 'Marketplace_TeaserExtendPiwikByUpload'|translate }}</h2>
-
- {% if isPluginUploadEnabled %}
- <p class="description"> {{ 'Marketplace_AllowedUploadFormats'|translate }} </p>
-
- <form enctype="multipart/form-data" method="post" id="uploadPluginForm"
- action="{{ linkTo({'module':'CorePluginsAdmin', 'action':'uploadPlugin', 'nonce': installNonce}) }}">
- <input type="file" name="pluginZip">
- <br />
- <input class="startUpload btn" type="submit" value="{{ 'Marketplace_UploadZipFile'|translate }}">
- </form>
- {% else %}
- <p class="description"> {{ 'Marketplace_PluginUploadDisabled'|translate|raw }} </p>
- <pre>[General]
-enable_plugin_upload = 1</pre>
- <input role="yes" type="button" value="{{ 'General_Ok'|translate }}"/>
- {% endif %}
- </div>
+ {% include '@Marketplace/uploadPluginDialog.twig' %}
<div class="row marketplaceActions" ng-controller="PiwikMarketplaceController as marketplace">
<div piwik-field uicontrol="select" name="plugin_type"
diff --git a/plugins/Marketplace/templates/uploadPluginDialog.twig b/plugins/Marketplace/templates/uploadPluginDialog.twig
new file mode 100644
index 0000000000..5770d5fb31
--- /dev/null
+++ b/plugins/Marketplace/templates/uploadPluginDialog.twig
@@ -0,0 +1,19 @@
+<div class="ui-confirm" id="installPluginByUpload" piwik-plugin-upload>
+ <h2>{{ 'Marketplace_TeaserExtendPiwikByUpload'|translate }}</h2>
+
+ {% if isPluginUploadEnabled %}
+ <p class="description"> {{ 'Marketplace_AllowedUploadFormats'|translate }} </p>
+
+ <form enctype="multipart/form-data" method="post" id="uploadPluginForm"
+ action="{{ linkTo({'module':'CorePluginsAdmin', 'action':'uploadPlugin', 'nonce': installNonce}) }}">
+ <input type="file" name="pluginZip">
+ <br />
+ <input class="startUpload btn" type="submit" value="{{ 'Marketplace_UploadZipFile'|translate }}">
+ </form>
+ {% else %}
+ <p class="description"> {{ 'Marketplace_PluginUploadDisabled'|translate|raw }} </p>
+ <pre>[General]
+enable_plugin_upload = 1</pre>
+ <input role="yes" type="button" value="{{ 'General_Ok'|translate }}"/>
+ {% endif %}
+</div> \ No newline at end of file
diff --git a/plugins/Morpheus/fonts/piwik.svg b/plugins/Morpheus/fonts/piwik.svg
index 1d0176dd66..2e361d9270 100644
--- a/plugins/Morpheus/fonts/piwik.svg
+++ b/plugins/Morpheus/fonts/piwik.svg
@@ -24,6 +24,14 @@
<font-face units-per-em="1024" ascent="960" descent="-64" />
<missing-glyph horiz-adv-x="1024" />
<glyph unicode="&#x20;" horiz-adv-x="512" d="" />
+<glyph unicode="&#xe01f;" glyph-name="fast-forward" data-tags="fast_forward" d="M557.5 704l394.333-277.333-394.333-277.333v554.667zM141.5 149.334v554.667l394.333-277.333z" />
+<glyph unicode="&#xe020;" glyph-name="fast-rewind" data-tags="fast_rewind" d="M488.167 426.667l394.333 277.333v-554.667zM466.5 149.334l-394.333 277.333 394.333 277.333v-554.667z" />
+<glyph unicode="&#xe035;" glyph-name="pause" data-tags="pause_circle_filled" d="M665.84 222.348v408.639h-103.362v-408.639h103.362zM461.521 222.348v408.639h-103.362v-408.639h103.362zM512 938.667c283.643 0 512-228.357 512-512s-228.357-512-512-512-512 228.357-512 512 228.357 512 512 512z" />
+<glyph unicode="&#xe038;" glyph-name="play" data-tags="play_circle_filled" d="M408.639 195.907l307.681 230.76-307.681 230.76v-461.521zM512 938.667c283.643 0 512-228.357 512-512s-228.357-512-512-512-512 228.357-512 512 228.357 512 512 512z" />
+<glyph unicode="&#xe042;" glyph-name="replay" data-tags="replay" d="M512 709.515c206.638 0 375.906-167.070 375.906-373.708s-169.268-375.906-375.906-375.906-375.906 169.268-375.906 375.906h94.525c0-156.079 125.3-281.38 281.38-281.38s281.38 125.3 281.38 281.38-125.3 281.38-281.38 281.38v-189.053l-235.216 235.216 235.216 235.216v-189.053z" />
+<glyph unicode="&#xe044;" glyph-name="skip-next" data-tags="skip_next" d="M710.334 725.333h100.334v-597.334h-100.334v597.334zM213.334 128.001v597.334l422.334-298.666z" />
+<glyph unicode="&#xe045;" glyph-name="skip_previous" data-tags="skip_previous" d="M388.332 426.667l422.33 298.668v-597.33zM213.332 725.335h100.331v-597.33h-100.331v597.33z" />
+<glyph unicode="&#xe047;" glyph-name="stop" data-tags="stop" d="M213.334 725.333h597.334v-597.334h-597.334v597.334z" />
<glyph unicode="&#xe600;" glyph-name="alien" data-tags="ico-alien" d="M576 896c0-35.346-28.654-64-64-64s-64 28.654-64 64c0 35.346 28.654 64 64 64s64-28.654 64-64zM480 864h64v-128h-64v128zM897.024-64h-770.048c-70.144 0-126.976 56.832-126.976 126.976v0c0 70.144 56.832 126.976 126.976 126.976h769.984c70.144 0 126.976-56.832 126.976-126.976v0c0.064-70.144-56.768-126.976-126.912-126.976zM512 768c-194.432 0-352-157.568-352-352v-160h704v160c0 194.432-157.568 352-352 352zM384 352c-52.992 0-96 43.008-96 96s43.008 96 96 96 96-43.008 96-96-43.008-96-96-96zM640 352c-52.992 0-96 43.008-96 96s43.008 96 96 96 96-43.008 96-96-43.008-96-96-96z" />
<glyph unicode="&#xe601;" glyph-name="annotation" data-tags="ico-annotation" d="M736 704h-448c-17.664 0-32-14.336-32-32s14.336-32 32-32h448c17.664 0 32 14.336 32 32s-14.336 32-32 32zM736 576h-448c-17.664 0-32-14.336-32-32s14.336-32 32-32h448c17.664 0 32 14.336 32 32s-14.336 32-32 32zM608 448h-320c-17.664 0-32-14.336-32-32s14.336-32 32-32h320c17.664 0 32 14.336 32 32s-14.336 32-32 32zM832 960h-640c-106.048 0-192-85.952-192-192v-448c0-106.048 85.952-192 192-192h320l195.2-184.32c25.024-18.816 60.8-0.896 60.8 30.4v153.92h64c106.048 0 192 85.952 192 192v448c0 106.048-85.952 192-192 192zM896 320c0-35.264-28.736-64-64-64h-640c-35.264 0-64 28.736-64 64v448c0 35.264 28.736 64 64 64h640c35.264 0 64-28.736 64-64v-448z" />
<glyph unicode="&#xe602;" glyph-name="arrow-left" data-tags="ico-arrow-left" d="M704 736v-576l-321.024 286.976z" />
@@ -91,7 +99,6 @@
<glyph unicode="&#xe640;" glyph-name="tag-cloud" data-tags="ico-tag-cloud" d="M740.288 448.64c0 0.576 0.064 1.088 0.064 1.664 0 55.232-44.8 100.032-100.032 100.032-23.36 0-44.8-8.064-61.824-21.504-26.24 48.96-77.824 82.368-137.28 82.368-85.888 0-155.584-69.632-155.584-155.584 0-2.048 0.256-4.032 0.32-6.080-31.488-12.544-53.952-43.392-53.952-79.296v-0.128c0-46.976 38.4-85.376 85.376-85.376h389.312c46.976 0 85.376 38.4 85.376 85.376v0.128c-0.064 35.072-21.44 65.28-51.776 78.4zM832 832c35.264 0 64-28.736 64-64v-640c0-35.264-28.736-64-64-64h-640c-35.264 0-64 28.736-64 64v640c0 35.264 28.736 64 64 64h640zM832 960h-640c-106.048 0-192-85.952-192-192v-640c0-106.048 85.952-192 192-192h640c106.048 0 192 85.952 192 192v640c0 106.048-85.952 192-192 192v0z" />
<glyph unicode="&#xe641;" glyph-name="user" data-tags="ico-user" d="M605.632 375.104c0.384 3.072 1.792 5.696 1.792 8.832 0 7.296-2.368 13.888-4.16 20.608 90.304 62.784 154.176 206.656 154.176 309.952 0 135.616-109.888 245.504-245.44 245.504s-245.44-109.888-245.44-245.44c0-103.296 63.872-247.168 154.176-309.952-1.792-6.784-4.16-13.312-4.16-20.672 0-3.136 1.472-5.824 1.792-8.832-238.016-33.728-418.368-193.152-418.368-385.088 0-0.192 0-0.384 0-0.576 0.064-29.824 22.72-53.44 49.28-53.44h925.44c26.496 0 49.216 23.616 49.28 53.504 0 0.192 0 0.384 0 0.576 0 191.872-180.352 351.296-418.368 385.024z" />
<glyph unicode="&#xe642;" glyph-name="user-add" data-tags="ico-user-add" d="M615.424 568.576c0-110.144-89.28-277.504-199.424-277.504s-199.424 167.36-199.424 277.504 89.28 199.424 199.424 199.424 199.424-89.28 199.424-199.424zM792-64c21.568 0 40 19.2 40 43.456 0 0.128 0 0.32 0 0.448 0 175.872-186.24 318.4-416 318.4s-416-142.528-416-318.4c0-0.128 0-0.32 0-0.448 0.064-24.256 18.496-43.456 40-43.456h752zM832 576v0c-35.328 0-64 28.672-64 64v256c0 35.328 28.672 64 64 64v0c35.328 0 64-28.672 64-64v-256c0-35.328-28.672-64-64-64zM640 768v0c0 35.328 28.672 64 64 64h256c35.328 0 64-28.672 64-64v0c0-35.328-28.672-64-64-64h-256c-35.328 0-64 28.672-64 64z" />
-<glyph unicode="&#xe643;" glyph-name="play" data-tags="ico-play" d="M512 960c-282.752 0-512-229.248-512-512s229.248-512 512-512 512 229.248 512 512-229.248 512-512 512zM384 224.64v446.72l320-222.656-320-224.064z" />
<glyph unicode="&#xe644;" glyph-name="visitor-profile" data-tags="ico-visitor-profile" d="M832 768c35.264 0 64-28.736 64-64v-512c0-35.264-28.736-64-64-64h-640c-35.264 0-64 28.736-64 64v512c0 35.264 28.736 64 64 64h640zM832 896h-640c-106.048 0-192-85.952-192-192v-512c0-106.048 85.952-192 192-192h640c106.048 0 192 85.952 192 192v512c0 106.048-85.952 192-192 192v0zM570.752 581.248c0-67.776-54.976-170.752-122.752-170.752s-122.752 102.976-122.752 170.752 54.976 122.752 122.752 122.752 122.752-54.976 122.752-122.752zM679.36 192c13.248 0 24.64 11.84 24.64 26.752 0 0.064 0 0.192 0 0.256 0 108.224-114.624 195.968-256 195.968s-256-87.744-256-195.968c0-0.064 0-0.192 0-0.256 0-14.912 11.392-26.752 24.64-26.752h462.72zM800 640h-128c-17.664 0-32-14.336-32-32s14.336-32 32-32h128c17.664 0 32 14.336 32 32s-14.336 32-32 32zM800 512h-128c-17.664 0-32-14.336-32-32s14.336-32 32-32h128c17.664 0 32 14.336 32 32s-14.336 32-32 32zM800 384h-64c-17.664 0-32-14.336-32-32s14.336-32 32-32h64c17.664 0 32 14.336 32 32s-14.336 32-32 32z" />
<glyph unicode="&#xe645;" glyph-name="zoom-in" data-tags="ico-zoom-in" d="M448 832c176.448 0 320-143.552 320-320s-143.552-320-320-320-320 143.552-320 320 143.552 320 320 320zM448 960c-247.424 0-448-200.576-448-448s200.576-448 448-448 448 200.576 448 448-200.576 448-448 448v0zM640 192l229.504-229.504c35.328-35.328 92.672-35.328 128 0v0c35.328 35.328 35.328 92.672 0 128l-229.504 229.504-128-128zM448 320v0c-35.328 0-64 28.672-64 64v256c0 35.328 28.672 64 64 64v0c35.328 0 64-28.672 64-64v-256c0-35.328-28.672-64-64-64zM256 512v0c0 35.328 28.672 64 64 64h256c35.328 0 64-28.672 64-64v0c0-35.328-28.672-64-64-64h-256c-35.328 0-64 28.672-64 64z" />
<glyph unicode="&#xe646;" glyph-name="zoom-out" data-tags="ico-zoom-out" d="M448 832c176.448 0 320-143.552 320-320s-143.552-320-320-320-320 143.552-320 320 143.552 320 320 320zM448 960c-247.424 0-448-200.576-448-448s200.576-448 448-448 448 200.576 448 448-200.576 448-448 448v0zM640 192l229.504-229.504c35.328-35.328 92.672-35.328 128 0v0c35.328 35.328 35.328 92.672 0 128l-229.504 229.504-128-128zM256 512v0c0 35.328 28.672 64 64 64h256c35.328 0 64-28.672 64-64v0c0-35.328-28.672-64-64-64h-256c-35.328 0-64 28.672-64 64z" />
diff --git a/plugins/Morpheus/fonts/piwik.ttf b/plugins/Morpheus/fonts/piwik.ttf
index 83d95f1742..71de816461 100755
--- a/plugins/Morpheus/fonts/piwik.ttf
+++ b/plugins/Morpheus/fonts/piwik.ttf
Binary files differ
diff --git a/plugins/Morpheus/fonts/piwik.woff b/plugins/Morpheus/fonts/piwik.woff
index ee16b4a277..5dc05341d1 100644
--- a/plugins/Morpheus/fonts/piwik.woff
+++ b/plugins/Morpheus/fonts/piwik.woff
Binary files differ
diff --git a/plugins/Morpheus/fonts/selection.json b/plugins/Morpheus/fonts/selection.json
index cc873bd6ef..f321e25925 100644
--- a/plugins/Morpheus/fonts/selection.json
+++ b/plugins/Morpheus/fonts/selection.json
@@ -26,7 +26,7 @@
"name": "alien"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 0
},
{
@@ -54,7 +54,7 @@
"name": "annotation"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 1
},
{
@@ -79,7 +79,7 @@
"name": "arrow-left"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 2
},
{
@@ -104,7 +104,7 @@
"name": "arrow-right"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 3
},
{
@@ -131,7 +131,7 @@
"name": "business"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 4
},
{
@@ -162,7 +162,7 @@
"name": "calendar"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 5
},
{
@@ -189,7 +189,7 @@
"name": "chart-bar"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 6
},
{
@@ -214,7 +214,7 @@
"name": "chart-line-details"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 7
},
{
@@ -239,7 +239,7 @@
"name": "chart-line"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 8
},
{
@@ -265,7 +265,7 @@
"name": "chart-pie"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 9
},
{
@@ -291,7 +291,7 @@
"name": "close"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 10
},
{
@@ -317,7 +317,7 @@
"name": "collapsed-arrows"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 11
},
{
@@ -343,7 +343,7 @@
"name": "configure"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 12
},
{
@@ -368,7 +368,7 @@
"name": "datepicker-arr-l"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 13
},
{
@@ -393,7 +393,7 @@
"name": "datepicker-arr-r"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 14
},
{
@@ -419,7 +419,7 @@
"name": "delete"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 15
},
{
@@ -450,7 +450,7 @@
"name": "document"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 16
},
{
@@ -478,7 +478,7 @@
"name": "download"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 17
},
{
@@ -504,7 +504,7 @@
"name": "drop"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 18
},
{
@@ -530,7 +530,7 @@
"name": "ecommerce-abandoned"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 19
},
{
@@ -556,7 +556,7 @@
"name": "ecommerce-order"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 20
},
{
@@ -581,7 +581,7 @@
"name": "email"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 21
},
{
@@ -606,7 +606,7 @@
"name": "error"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 22
},
{
@@ -632,7 +632,7 @@
"name": "export"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 23
},
{
@@ -657,7 +657,7 @@
"name": "feed"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 24
},
{
@@ -683,7 +683,7 @@
"name": "finance"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 25
},
{
@@ -708,7 +708,7 @@
"name": "folder-charts"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 26
},
{
@@ -733,7 +733,7 @@
"name": "folder"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 27
},
{
@@ -761,7 +761,7 @@
"name": "fullscreen"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 28
},
{
@@ -788,7 +788,7 @@
"name": "goal"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 29
},
{
@@ -813,7 +813,7 @@
"name": "help-alt"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 30
},
{
@@ -838,7 +838,7 @@
"name": "help"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 31
},
{
@@ -866,7 +866,7 @@
"name": "code"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 32
},
{
@@ -891,7 +891,7 @@
"name": "alert"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 33
},
{
@@ -918,7 +918,7 @@
"name": "edit"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 34
},
{
@@ -945,7 +945,7 @@
"name": "image"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 35
},
{
@@ -973,7 +973,7 @@
"name": "info"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 36
},
{
@@ -999,7 +999,7 @@
"name": "insights"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 37
},
{
@@ -1031,7 +1031,7 @@
"name": "locked-2"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 38
},
{
@@ -1056,7 +1056,7 @@
"name": "locked"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 39
},
{
@@ -1081,7 +1081,7 @@
"name": "locked-3"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 40
},
{
@@ -1106,7 +1106,7 @@
"name": "locked-4"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 41
},
{
@@ -1134,7 +1134,7 @@
"name": "maximise"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 42
},
{
@@ -1159,7 +1159,7 @@
"name": "minimise"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 43
},
{
@@ -1184,7 +1184,7 @@
"name": "minus"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 44
},
{
@@ -1209,7 +1209,7 @@
"name": "newtab"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 45
},
{
@@ -1234,7 +1234,7 @@
"name": "ok"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 46
},
{
@@ -1259,7 +1259,7 @@
"name": "open-source"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 47
},
{
@@ -1284,7 +1284,7 @@
"name": "add"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 48
},
{
@@ -1309,7 +1309,7 @@
"name": "puzzle"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 49
},
{
@@ -1334,7 +1334,7 @@
"name": "refresh"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 50
},
{
@@ -1360,7 +1360,7 @@
"name": "reload"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 51
},
{
@@ -1386,7 +1386,7 @@
"name": "search"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 52
},
{
@@ -1416,7 +1416,7 @@
"name": "users"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 53
},
{
@@ -1445,7 +1445,7 @@
"name": "server-alt"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 54
},
{
@@ -1474,7 +1474,7 @@
"name": "server"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 55
},
{
@@ -1499,7 +1499,7 @@
"name": "hide"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 56
},
{
@@ -1525,7 +1525,7 @@
"name": "show"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 57
},
{
@@ -1550,7 +1550,7 @@
"name": "arrow-top"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 58
},
{
@@ -1575,7 +1575,7 @@
"name": "arrow-bottom"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 59
},
{
@@ -1600,7 +1600,7 @@
"name": "star"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 60
},
{
@@ -1625,7 +1625,7 @@
"name": "success"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 61
},
{
@@ -1658,7 +1658,7 @@
"name": "table-more"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 62
},
{
@@ -1689,7 +1689,7 @@
"name": "table"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 63
},
{
@@ -1715,7 +1715,7 @@
"name": "tag-cloud"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 64
},
{
@@ -1740,7 +1740,7 @@
"name": "user"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 65
},
{
@@ -1768,37 +1768,12 @@
"name": "user-add"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 66
},
{
"icon": {
"paths": [
- "M512 0c-282.752 0-512 229.248-512 512s229.248 512 512 512 512-229.248 512-512-229.248-512-512-512zM384 735.36v-446.72l320 222.656-320 224.064z"
- ],
- "attrs": [],
- "isMulticolor": false,
- "isMulticolor2": false,
- "tags": [
- "ico-play"
- ],
- "grid": 0
- },
- "attrs": [],
- "properties": {
- "order": 174,
- "id": 67,
- "prevSize": 32,
- "code": 58947,
- "name": "play"
- },
- "setIdx": 0,
- "setId": 15,
- "iconIdx": 67
- },
- {
- "icon": {
- "paths": [
"M832 192c35.264 0 64 28.736 64 64v512c0 35.264-28.736 64-64 64h-640c-35.264 0-64-28.736-64-64v-512c0-35.264 28.736-64 64-64h640zM832 64h-640c-106.048 0-192 85.952-192 192v512c0 106.048 85.952 192 192 192h640c106.048 0 192-85.952 192-192v-512c0-106.048-85.952-192-192-192v0z",
"M570.752 378.752c0 67.776-54.976 170.752-122.752 170.752s-122.752-102.976-122.752-170.752 54.976-122.752 122.752-122.752 122.752 54.976 122.752 122.752z",
"M679.36 768c13.248 0 24.64-11.84 24.64-26.752 0-0.064 0-0.192 0-0.256 0-108.224-114.624-195.968-256-195.968s-256 87.744-256 195.968c0 0.064 0 0.192 0 0.256 0 14.912 11.392 26.752 24.64 26.752h462.72z",
@@ -1823,7 +1798,7 @@
"name": "visitor-profile"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 68
},
{
@@ -1851,7 +1826,7 @@
"name": "zoom-in"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 69
},
{
@@ -1878,7 +1853,7 @@
"name": "zoom-out"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 70
},
{
@@ -1906,7 +1881,7 @@
"name": "sign-out"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 71
},
{
@@ -1933,7 +1908,7 @@
"name": "sign-in"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 72
},
{
@@ -1960,7 +1935,7 @@
"name": "menu-hamburger"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 73
},
{
@@ -1987,7 +1962,7 @@
"name": "menu-horiz"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 74
},
{
@@ -2014,7 +1989,7 @@
"name": "menu-verti"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 75
},
{
@@ -2041,7 +2016,7 @@
"name": "admin-administration"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 76
},
{
@@ -2068,7 +2043,7 @@
"name": "admin-development"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 77
},
{
@@ -2095,7 +2070,7 @@
"name": "admin-diagnostic"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 78
},
{
@@ -2122,7 +2097,7 @@
"name": "admin-platform"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 79
},
{
@@ -2149,7 +2124,7 @@
"name": "admin-settings"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 80
},
{
@@ -2176,7 +2151,7 @@
"name": "reporting-actions"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 81
},
{
@@ -2203,7 +2178,7 @@
"name": "reporting-dashboard"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 82
},
{
@@ -2230,7 +2205,7 @@
"name": "reporting-ecommerce"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 83
},
{
@@ -2257,7 +2232,7 @@
"name": "reporting-goal"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 84
},
{
@@ -2284,7 +2259,7 @@
"name": "reporting-referer"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 85
},
{
@@ -2311,7 +2286,7 @@
"name": "reporting-visitors"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 86
},
{
@@ -2338,7 +2313,7 @@
"name": "user-manage"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 87
},
{
@@ -2365,7 +2340,7 @@
"name": "user-personal"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 88
},
{
@@ -2392,12 +2367,39 @@
"name": "user-platform"
},
"setIdx": 0,
- "setId": 15,
+ "setId": 19,
"iconIdx": 89
},
{
"icon": {
"paths": [
+ "M742.038 374.408v-92.444h-460.074v92.444h460.074zM742.038 557.148v-90.296h-460.074v90.296h460.074zM604.444 742.038v-92.444h-322.482v92.444h322.482zM512 99.222c-25.798 0-45.148 19.348-45.148 45.148s19.348 47.298 45.148 47.298 45.148-21.498 45.148-47.298-19.348-45.148-45.148-45.148zM832.332 99.222c49.448 0 92.444 42.998 92.444 92.444v640.666c0 49.448-42.998 92.444-92.444 92.444h-640.666c-49.448 0-92.444-42.998-92.444-92.444v-640.666c0-49.448 42.998-92.444 92.444-92.444h191.34c19.348-53.748 68.796-92.444 128.992-92.444s109.644 38.698 128.992 92.444h191.34z"
+ ],
+ "attrs": [],
+ "isMulticolor": false,
+ "isMulticolor2": false,
+ "tags": [
+ "assignment"
+ ],
+ "defaultCode": 59485,
+ "grid": 32
+ },
+ "attrs": [],
+ "properties": {
+ "order": 210,
+ "ligatures": "assignment",
+ "id": 0,
+ "prevSize": 24,
+ "code": 59485,
+ "name": "assignment"
+ },
+ "setIdx": 1,
+ "setId": 18,
+ "iconIdx": 0
+ },
+ {
+ "icon": {
+ "paths": [
"M562.479 358.16v-103.361h-100.958v103.361h100.958zM562.479 769.202v-307.681h-100.958v307.681h100.958zM512 0c283.643 0 512 228.357 512 512s-228.357 512-512 512-512-228.357-512-512 228.357-512 512-512z"
],
"attrs": [],
@@ -2418,8 +2420,8 @@
"code": 59534,
"name": "info2"
},
- "setIdx": 1,
- "setId": 14,
+ "setIdx": 2,
+ "setId": 17,
"iconIdx": 0
},
{
@@ -2445,8 +2447,8 @@
"code": 59535,
"name": "info_outline"
},
- "setIdx": 1,
- "setId": 14,
+ "setIdx": 2,
+ "setId": 17,
"iconIdx": 1
},
{
@@ -2472,36 +2474,225 @@
"code": 59576,
"name": "settings"
},
- "setIdx": 1,
- "setId": 14,
+ "setIdx": 2,
+ "setId": 17,
"iconIdx": 2
},
{
"icon": {
"paths": [
- "M742.038 374.408v-92.444h-460.074v92.444h460.074zM742.038 557.148v-90.296h-460.074v90.296h460.074zM604.444 742.038v-92.444h-322.482v92.444h322.482zM512 99.222c-25.798 0-45.148 19.348-45.148 45.148s19.348 47.298 45.148 47.298 45.148-21.498 45.148-47.298-19.348-45.148-45.148-45.148zM832.332 99.222c49.448 0 92.444 42.998 92.444 92.444v640.666c0 49.448-42.998 92.444-92.444 92.444h-640.666c-49.448 0-92.444-42.998-92.444-92.444v-640.666c0-49.448 42.998-92.444 92.444-92.444h191.34c19.348-53.748 68.796-92.444 128.992-92.444s109.644 38.698 128.992 92.444h191.34z"
+ "M557.5 234.667l394.333 277.333-394.333 277.333v-554.667zM141.5 789.333v-554.667l394.333 277.333z"
],
"attrs": [],
"isMulticolor": false,
"isMulticolor2": false,
"tags": [
- "assignment"
+ "fast_forward"
],
- "defaultCode": 59485,
- "grid": 32
+ "defaultCode": 57375,
+ "grid": 24
},
"attrs": [],
"properties": {
- "order": 210,
- "ligatures": "assignment",
- "id": 3,
+ "order": 215,
+ "ligatures": "fast_forward",
+ "id": 267,
"prevSize": 24,
- "code": 59485,
- "name": "assignment"
+ "code": 57375,
+ "name": "fast-forward"
},
- "setIdx": 1,
- "setId": 14,
- "iconIdx": 3
+ "setIdx": 15,
+ "setId": 4,
+ "iconIdx": 267
+ },
+ {
+ "icon": {
+ "paths": [
+ "M488.167 512l394.333-277.333v554.667zM466.5 789.333l-394.333-277.333 394.333-277.333v554.667z"
+ ],
+ "attrs": [],
+ "isMulticolor": false,
+ "isMulticolor2": false,
+ "tags": [
+ "fast_rewind"
+ ],
+ "defaultCode": 57376,
+ "grid": 24
+ },
+ "attrs": [],
+ "properties": {
+ "order": 218,
+ "ligatures": "fast_rewind",
+ "id": 268,
+ "prevSize": 24,
+ "code": 57376,
+ "name": "fast-rewind"
+ },
+ "setIdx": 15,
+ "setId": 4,
+ "iconIdx": 268
+ },
+ {
+ "icon": {
+ "paths": [
+ "M665.84 716.319v-408.639h-103.362v408.639h103.362zM461.521 716.319v-408.639h-103.362v408.639h103.362zM512 0c283.643 0 512 228.357 512 512s-228.357 512-512 512-512-228.357-512-512 228.357-512 512-512z"
+ ],
+ "attrs": [],
+ "isMulticolor": false,
+ "isMulticolor2": false,
+ "tags": [
+ "pause_circle_filled"
+ ],
+ "defaultCode": 57397,
+ "grid": 24
+ },
+ "attrs": [],
+ "properties": {
+ "order": 225,
+ "ligatures": "pause_circle_filled",
+ "id": 546,
+ "prevSize": 24,
+ "code": 57397,
+ "name": "pause"
+ },
+ "setIdx": 15,
+ "setId": 4,
+ "iconIdx": 546
+ },
+ {
+ "icon": {
+ "paths": [
+ "M408.639 742.76l307.681-230.76-307.681-230.76v461.521zM512 0c283.643 0 512 228.357 512 512s-228.357 512-512 512-512-228.357-512-512 228.357-512 512-512z"
+ ],
+ "attrs": [],
+ "isMulticolor": false,
+ "isMulticolor2": false,
+ "tags": [
+ "play_circle_filled"
+ ],
+ "defaultCode": 57400,
+ "grid": 24
+ },
+ "attrs": [],
+ "properties": {
+ "order": 234,
+ "ligatures": "play_circle_filled",
+ "id": 588,
+ "prevSize": 24,
+ "code": 57400,
+ "name": "play"
+ },
+ "setIdx": 15,
+ "setId": 4,
+ "iconIdx": 588
+ },
+ {
+ "icon": {
+ "paths": [
+ "M512 229.152c206.638 0 375.906 167.070 375.906 373.708s-169.268 375.906-375.906 375.906-375.906-169.268-375.906-375.906h94.525c0 156.079 125.3 281.38 281.38 281.38s281.38-125.3 281.38-281.38-125.3-281.38-281.38-281.38v189.053l-235.216-235.216 235.216-235.216v189.053z"
+ ],
+ "attrs": [],
+ "isMulticolor": false,
+ "isMulticolor2": false,
+ "tags": [
+ "replay"
+ ],
+ "defaultCode": 57410,
+ "grid": 24
+ },
+ "attrs": [],
+ "properties": {
+ "order": 219,
+ "ligatures": "replay",
+ "id": 625,
+ "prevSize": 24,
+ "code": 57410,
+ "name": "replay"
+ },
+ "setIdx": 15,
+ "setId": 4,
+ "iconIdx": 625
+ },
+ {
+ "icon": {
+ "paths": [
+ "M710.334 213.334h100.334v597.334h-100.334v-597.334zM213.334 810.666v-597.334l422.334 298.666z"
+ ],
+ "attrs": [],
+ "isMulticolor": false,
+ "isMulticolor2": false,
+ "tags": [
+ "skip_next"
+ ],
+ "defaultCode": 57412,
+ "grid": 24
+ },
+ "attrs": [],
+ "properties": {
+ "order": 216,
+ "ligatures": "skip_next",
+ "id": 697,
+ "prevSize": 24,
+ "code": 57412,
+ "name": "skip-next"
+ },
+ "setIdx": 15,
+ "setId": 4,
+ "iconIdx": 697
+ },
+ {
+ "icon": {
+ "paths": [
+ "M388.332 512l422.33-298.668v597.33zM213.332 213.332h100.331v597.33h-100.331v-597.33z"
+ ],
+ "attrs": [],
+ "isMulticolor": false,
+ "isMulticolor2": false,
+ "tags": [
+ "skip_previous"
+ ],
+ "defaultCode": 57413,
+ "grid": 24
+ },
+ "attrs": [],
+ "properties": {
+ "order": 217,
+ "ligatures": "skip_previous",
+ "id": 698,
+ "prevSize": 24,
+ "code": 57413,
+ "name": "skip_previous"
+ },
+ "setIdx": 15,
+ "setId": 4,
+ "iconIdx": 698
+ },
+ {
+ "icon": {
+ "paths": [
+ "M213.334 213.334h597.334v597.334h-597.334v-597.334z"
+ ],
+ "attrs": [],
+ "isMulticolor": false,
+ "isMulticolor2": false,
+ "tags": [
+ "stop"
+ ],
+ "defaultCode": 57415,
+ "grid": 24
+ },
+ "attrs": [],
+ "properties": {
+ "order": 228,
+ "ligatures": "stop",
+ "id": 720,
+ "prevSize": 24,
+ "code": 57415,
+ "name": "stop"
+ },
+ "setIdx": 15,
+ "setId": 4,
+ "iconIdx": 720
},
{
"icon": {
@@ -2527,8 +2718,8 @@
"prevSize": 32,
"code": 59995
},
- "setIdx": 2,
- "setId": 13,
+ "setIdx": 3,
+ "setId": 16,
"iconIdx": 0
},
{
@@ -2536,6 +2727,9 @@
"paths": [
"M832 64h-640l-192 192v672c0 17.674 14.326 32 32 32h960c17.672 0 32-14.326 32-32v-672l-192-192zM512 832l-320-256h192v-192h256v192h192l-320 256zM154.51 192l64-64h586.978l64 64h-714.978z"
],
+ "attrs": [],
+ "isMulticolor": false,
+ "isMulticolor2": false,
"tags": [
"box-add",
"box",
@@ -2545,27 +2739,29 @@
"archive"
],
"defaultCode": 59742,
- "grid": 16,
- "attrs": []
+ "grid": 16
},
"attrs": [],
"properties": {
"ligatures": "box-add, box3",
"name": "archive",
"order": 211,
- "id": 95,
+ "id": 1,
"prevSize": 32,
"code": 59742
},
- "setIdx": 14,
- "setId": 1,
- "iconIdx": 94
+ "setIdx": 3,
+ "setId": 16,
+ "iconIdx": 1
},
{
"icon": {
"paths": [
"M956.29 804.482l-316.29-527.024v-213.458h32c17.6 0 32-14.4 32-32s-14.4-32-32-32h-320c-17.6 0-32 14.4-32 32s14.4 32 32 32h32v213.458l-316.288 527.024c-72.442 120.734-16.512 219.518 124.288 219.518h640c140.8 0 196.73-98.784 124.29-219.518zM241.038 640l206.962-344.938v-231.062h128v231.062l206.964 344.938h-541.926z"
],
+ "attrs": [],
+ "isMulticolor": false,
+ "isMulticolor2": false,
"tags": [
"lab",
"beta",
@@ -2574,21 +2770,20 @@
"experiment"
],
"defaultCode": 59818,
- "grid": 16,
- "attrs": []
+ "grid": 16
},
"attrs": [],
"properties": {
"ligatures": "lab, beta",
"name": "lab",
"order": 212,
- "id": 171,
+ "id": 2,
"prevSize": 32,
"code": 59818
},
- "setIdx": 14,
- "setId": 1,
- "iconIdx": 170
+ "setIdx": 3,
+ "setId": 16,
+ "iconIdx": 2
}
],
"height": 1024,
diff --git a/plugins/Morpheus/icons b/plugins/Morpheus/icons
-Subproject 3937b5daef048afb3446fbbeb6cdca5b9f6d6f5
+Subproject 1b5597760791b2b305e6b9c26ca1a6b8b15ee0e
diff --git a/plugins/Morpheus/stylesheets/base/icons.css b/plugins/Morpheus/stylesheets/base/icons.css
index 2c19c30050..219e355d78 100644
--- a/plugins/Morpheus/stylesheets/base/icons.css
+++ b/plugins/Morpheus/stylesheets/base/icons.css
@@ -236,7 +236,7 @@
content: "\e641";
}
.icon-play:before {
- content: "\e643";
+ content: "\e038";
}
.icon-visitor-profile:before {
content: "\e644";
@@ -315,4 +315,25 @@
}
.icon-archive:before {
content: "\e95e";
+}
+.icon-fast-forward:before {
+ content: "\e01f";
+}
+.icon-fast-rewind:before {
+ content: "\e020";
+}
+.icon-pause:before {
+ content: "\e035";
+}
+.icon-replay:before {
+ content: "\e042";
+}
+.icon-skip-next:before {
+ content: "\e044";
+}
+.icon-skip-previous:before {
+ content: "\e045";
+}
+.icon-stop:before {
+ content: "\e047";
} \ No newline at end of file
diff --git a/plugins/Morpheus/templates/demo.twig b/plugins/Morpheus/templates/demo.twig
index 621a8a6fdc..e1bb02ee60 100644
--- a/plugins/Morpheus/templates/demo.twig
+++ b/plugins/Morpheus/templates/demo.twig
@@ -706,6 +706,13 @@
'server-alt',
'tag-cloud',
'play',
+ 'pause',
+ 'replay',
+ 'stop',
+ 'fast-forward',
+ 'fast-rewind',
+ 'skip-next',
+ 'skip-previous',
'sign-in',
'sign-out',
'settings'
diff --git a/plugins/SEO/Metric/DomainAge.php b/plugins/SEO/Metric/DomainAge.php
index e08dc3fa98..54038a7dae 100644
--- a/plugins/SEO/Metric/DomainAge.php
+++ b/plugins/SEO/Metric/DomainAge.php
@@ -74,7 +74,7 @@ class DomainAge implements MetricsProvider
*/
private function getAgeArchiveOrg($domain)
{
- $data = $this->getUrl('http://wayback.archive.org/web/*/' . urlencode($domain));
+ $data = $this->getUrl('https://wayback.archive.org/web/*/' . urlencode($domain));
preg_match('#<a href=\"([^>]*)' . preg_quote($domain) . '/\">([^<]*)<\/a>#', $data, $p);
if (!empty($p[2])) {
$value = strtotime($p[2]);
@@ -94,7 +94,7 @@ class DomainAge implements MetricsProvider
*/
private function getAgeWhoIs($domain)
{
- $data = $this->getUrl('http://www.who.is/whois/' . urlencode($domain));
+ $data = $this->getUrl('https://www.who.is/whois/' . urlencode($domain));
preg_match('#(?:Creation Date|Created On|created|Registered on)\.*:\s*([ \ta-z0-9\/\-:\.]+)#si', $data, $p);
if (!empty($p[1])) {
$value = strtotime(trim($p[1]));
@@ -114,7 +114,7 @@ class DomainAge implements MetricsProvider
*/
private function getAgeWhoisCom($domain)
{
- $data = $this->getUrl('http://www.whois.com/whois/' . urlencode($domain));
+ $data = $this->getUrl('https://www.whois.com/whois/' . urlencode($domain));
preg_match('#(?:Creation Date|Created On|created):\s*([ \ta-z0-9\/\-:\.]+)#si', $data, $p);
if (!empty($p[1])) {
$value = strtotime(trim($p[1]));
@@ -129,10 +129,21 @@ class DomainAge implements MetricsProvider
private function getUrl($url)
{
try {
- return str_replace('&nbsp;', ' ', Http::sendHttpRequest($url, $timeout = 10, @$_SERVER['HTTP_USER_AGENT']));
+ return $this->getHttpResponse($url);
+ } catch (\Exception $e) {
+ }
+
+ $httpUrl = str_replace('https://', 'http://', $url);
+ try {
+ return $this->getHttpResponse($httpUrl);
} catch (\Exception $e) {
$this->logger->warning('Error while getting SEO stats (domain age): {message}', array('message' => $e->getMessage()));
return '';
}
}
+
+ private function getHttpResponse($url)
+ {
+ return str_replace('&nbsp;', ' ', Http::sendHttpRequest($url, $timeout = 10, @$_SERVER['HTTP_USER_AGENT']));
+ }
}
diff --git a/plugins/ScheduledReports/API.php b/plugins/ScheduledReports/API.php
index 35b3f078b0..7674634120 100644
--- a/plugins/ScheduledReports/API.php
+++ b/plugins/ScheduledReports/API.php
@@ -478,7 +478,7 @@ class API extends \Piwik\Plugin\API
$reportRenderer->setReport($report);
// render report
- $description = str_replace(array("\r", "\n"), ' ', $report['description']);
+ $description = str_replace(array("\r", "\n"), ' ', Common::unsanitizeInputValue($report['description']));
list($reportSubject, $reportTitle) = self::getReportSubjectAndReportTitle(Common::unsanitizeInputValue(Site::getNameFor($idSite)), $report['reports']);
diff --git a/plugins/ScheduledReports/angularjs/manage-scheduled-report/manage-scheduled-report.controller.js b/plugins/ScheduledReports/angularjs/manage-scheduled-report/manage-scheduled-report.controller.js
index afc2932898..35a5223c32 100644
--- a/plugins/ScheduledReports/angularjs/manage-scheduled-report/manage-scheduled-report.controller.js
+++ b/plugins/ScheduledReports/angularjs/manage-scheduled-report/manage-scheduled-report.controller.js
@@ -133,7 +133,7 @@
apiParameters.reportFormat = this.report['format' + this.report.type];
var period = self.report.period;
- var hour = adjustHourToTimezone(this.report.hour, timeZoneDifference);
+ var hour = adjustHourToTimezone(this.report.hour, -timeZoneDifference);
var reports = [];
$('[name=reportsList].' + apiParameters.reportType + ' input:checked').each(function () {
diff --git a/plugins/UserCountry/GeoIPAutoUpdater.php b/plugins/UserCountry/GeoIPAutoUpdater.php
index 1359c8ac2e..77636afdd1 100755
--- a/plugins/UserCountry/GeoIPAutoUpdater.php
+++ b/plugins/UserCountry/GeoIPAutoUpdater.php
@@ -485,6 +485,7 @@ class GeoIPAutoUpdater extends Task
if ($ext != 'tar.gz'
&& $ext != 'gz'
&& $ext != 'dat.gz'
+ && $ext != 'mmdb.gz'
) {
throw new \Exception(Piwik::translate('UserCountry_UnsupportedArchiveType', "'$ext'"));
}
diff --git a/plugins/UserCountry/stylesheets/userCountry.less b/plugins/UserCountry/stylesheets/userCountry.less
index c035ece395..147666fc24 100755
--- a/plugins/UserCountry/stylesheets/userCountry.less
+++ b/plugins/UserCountry/stylesheets/userCountry.less
@@ -1,5 +1,5 @@
#widgetUserCountrygetRegion, #widgetUserCountrygetCountry, #widgetUserCountrygetCity {
- .dataTable .label img {
+ .dataTable .label > img {
border: 1px solid lightgray;
box-sizing: content-box;
margin-top: -1px;
diff --git a/plugins/UsersManager/angularjs/manage-users/manage-users.controller.js b/plugins/UsersManager/angularjs/manage-users/manage-users.controller.js
index a10d331e4f..78f776de26 100644
--- a/plugins/UsersManager/angularjs/manage-users/manage-users.controller.js
+++ b/plugins/UsersManager/angularjs/manage-users/manage-users.controller.js
@@ -163,6 +163,7 @@
piwikHelper.hideAjaxError();
$(this).parents('tr').remove();
$('.add-user').toggle();
+ self.showCreateUser = true;
});
};
diff --git a/plugins/VisitTime/API.php b/plugins/VisitTime/API.php
index f706860b4e..28b73b99a4 100644
--- a/plugins/VisitTime/API.php
+++ b/plugins/VisitTime/API.php
@@ -54,7 +54,13 @@ class API extends \Piwik\Plugin\API
$table->filter('Piwik\Plugins\VisitTime\DataTable\Filter\AddSegmentByLabelInUTC', array($timezone, $period, $date));
if ($hideFutureHoursWhenToday) {
- $table = $this->removeHoursInFuture($table, $idSite, $period, $date);
+ if ($table instanceof DataTable\Map) {
+ foreach ($table->getDataTables() as &$dataTable) {
+ $dataTable = $this->removeHoursInFuture($dataTable, $idSite, $period, $date);
+ }
+ } else {
+ $table = $this->removeHoursInFuture($table, $idSite, $period, $date);
+ }
}
return $table;