| <?php |
|
|
| |
| |
| |
| |
| |
| |
|
|
| namespace Piwik\Settings\Measurable; |
|
|
| use Piwik\Container\StaticContainer; |
| use Piwik\Piwik; |
|
|
| |
| |
| |
| |
| |
| class MeasurableSetting extends \Piwik\Settings\Setting |
| { |
| |
| |
| |
| private $idSite = 0; |
|
|
| |
| |
| |
| |
| |
| |
| |
| public function __construct($name, $defaultValue, $type, $pluginName, $idSite) |
| { |
| parent::__construct($name, $defaultValue, $type, $pluginName); |
|
|
| $this->idSite = $idSite; |
|
|
| $storageFactory = StaticContainer::get('Piwik\Settings\Storage\Factory'); |
| $this->storage = $storageFactory->getMeasurableSettingsStorage($idSite, $this->pluginName); |
| } |
|
|
| |
| |
| |
| |
| |
| public function isWritableByCurrentUser() |
| { |
| if (isset($this->hasWritePermission)) { |
| return $this->hasWritePermission; |
| } |
|
|
| |
| if ($this->hasSiteBeenCreated()) { |
| $this->hasWritePermission = Piwik::isUserHasAdminAccess($this->idSite); |
| } else { |
| $this->hasWritePermission = Piwik::hasUserSuperUserAccess(); |
| } |
|
|
| return $this->hasWritePermission; |
| } |
|
|
| private function hasSiteBeenCreated() |
| { |
| return !empty($this->idSite); |
| } |
| } |
|
|