Lets you for example check whether advertising is enabled, generate links for different landing pages etc.
Since: 2.16.0
Beispiel #1
0
 public function promoServices()
 {
     $view = new View('@ProfessionalServices/promoServicesWidget');
     $promo = $this->promo->getContent();
     $view->ctaLinkUrl = $this->advertising->getPromoUrlForPiwikProUpgrade();
     $view->ctaText = $promo['text'];
     $view->ctaLinkTitle = $this->promo->getLinkTitle();
     return $view->render();
 }
Beispiel #2
0
 private function enrichPluginInformation($plugin)
 {
     if (empty($plugin)) {
         return $plugin;
     }
     $plugin['isInstalled'] = $this->isPluginInstalled($plugin['name']);
     $plugin['isActivated'] = $this->isPluginActivated($plugin['name']);
     $plugin['isInvalid'] = $this->pluginManager->isPluginThirdPartyAndBogus($plugin['name']);
     $plugin['canBeUpdated'] = $plugin['isInstalled'] && $this->hasPluginUpdate($plugin);
     $plugin['lastUpdated'] = $this->toShortDate($plugin['lastUpdated']);
     $plugin['hasExceededLicense'] = !empty($plugin['isInstalled']) && !empty($plugin['shop']) && empty($plugin['isFree']) && empty($plugin['isDownloadable']) && !empty($plugin['consumer']['license']['isValid']) && !empty($plugin['consumer']['license']['isExceeded']);
     $plugin['isMissingLicense'] = !empty($plugin['isInstalled']) && !empty($plugin['shop']) && empty($plugin['isFree']) && empty($plugin['isDownloadable']) && empty($plugin['consumer']['license']);
     if (!empty($plugin['owner']) && strtolower($plugin['owner']) === 'piwikpro' && !empty($plugin['homepage']) && strpos($plugin['homepage'], 'pk_campaign') === false) {
         $plugin['homepage'] = $this->advertising->addPromoCampaignParametersToUrl($plugin['homepage'], Advertising::CAMPAIGN_NAME_PROFESSIONAL_SERVICES, 'Marketplace', $plugin['name']);
     }
     if ($plugin['canBeUpdated']) {
         $pluginUpdate = $this->getPluginUpdateInformation($plugin);
         $plugin['repositoryChangelogUrl'] = $pluginUpdate['repositoryChangelogUrl'];
         $plugin['currentVersion'] = $pluginUpdate['currentVersion'];
     }
     if (!empty($plugin['activity']['lastCommitDate']) && false === strpos($plugin['activity']['lastCommitDate'], '0000') && false === strpos($plugin['activity']['lastCommitDate'], '1970')) {
         $plugin['activity']['lastCommitDate'] = $this->toLongDate($plugin['activity']['lastCommitDate']);
     } else {
         $plugin['activity']['lastCommitDate'] = null;
     }
     if (!empty($plugin['versions'])) {
         foreach ($plugin['versions'] as $index => $version) {
             $plugin['versions'][$index]['release'] = $this->toLongDate($version['release']);
         }
     }
     $plugin = $this->addMissingRequirements($plugin);
     return $plugin;
 }
Beispiel #3
0
 public function getClientSideOptions()
 {
     $general = $this->General;
     return array('action_url_category_delimiter' => $general['action_url_category_delimiter'], 'autocomplete_min_sites' => $general['autocomplete_min_sites'], 'datatable_export_range_as_day' => $general['datatable_export_range_as_day'], 'datatable_row_limits' => $this->getDatatableRowLimits(), 'are_ads_enabled' => Advertising::isAdsEnabledInConfig($general));
 }
Beispiel #4
0
 public function test_addPromoCampaignParametersToUrl_withQuery()
 {
     $url = $this->exampleUrl . '?foo=bar';
     $link = $this->advertising->addPromoCampaignParametersToUrl($url, 'MyName', 'Installation_Start');
     $this->assertSame($url . '&pk_campaign=MyName&pk_medium=Installation_Start&pk_source=Piwik_App', $link);
 }