当前位置: 首页>>代码示例>>PHP>>正文


PHP Rules::isArchivingDisabledFor方法代码示例

本文整理汇总了PHP中Piwik\ArchiveProcessor\Rules::isArchivingDisabledFor方法的典型用法代码示例。如果您正苦于以下问题:PHP Rules::isArchivingDisabledFor方法的具体用法?PHP Rules::isArchivingDisabledFor怎么用?PHP Rules::isArchivingDisabledFor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Piwik\ArchiveProcessor\Rules的用法示例。


在下文中一共展示了Rules::isArchivingDisabledFor方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: getMinTimeProcessedForTemporaryArchive

 public static function getMinTimeProcessedForTemporaryArchive(Date $dateStart, \Piwik\Period $period, Segment $segment, Site $site)
 {
     $now = time();
     $minimumArchiveTime = $now - Rules::getTodayArchiveTimeToLive();
     $idSites = array($site->getId());
     $isArchivingDisabled = Rules::isArchivingDisabledFor($idSites, $segment, $period->getLabel());
     if ($isArchivingDisabled) {
         if ($period->getNumberOfSubperiods() == 0 && $dateStart->getTimestamp() <= $now) {
             // Today: accept any recent enough archive
             $minimumArchiveTime = false;
         } else {
             // This week, this month, this year:
             // accept any archive that was processed today after 00:00:01 this morning
             $timezone = $site->getTimezone();
             $minimumArchiveTime = Date::factory(Date::factory('now', $timezone)->getDateStartUTC())->setTimezone($timezone)->getTimestamp();
         }
     }
     return $minimumArchiveTime;
 }
开发者ID:diosmosis,项目名称:piwik,代码行数:19,代码来源:Rules.php

示例2: getArchiveIds

 /**
  * Returns archive IDs for the sites, periods and archive names that are being
  * queried. This function will use the idarchive cache if it has the right data,
  * query archive tables for IDs w/o launching archiving, or launch archiving and
  * get the idarchive from ArchiveProcessor instances.
  */
 private function getArchiveIds($archiveNames)
 {
     $plugins = $this->getRequestedPlugins($archiveNames);
     // figure out which archives haven't been processed (if an archive has been processed,
     // then we have the archive IDs in $this->idarchives)
     $doneFlags = array();
     $archiveGroups = array();
     foreach ($plugins as $plugin) {
         $doneFlag = $this->getDoneStringForPlugin($plugin);
         $doneFlags[$doneFlag] = true;
         if (!isset($this->idarchives[$doneFlag])) {
             $archiveGroup = $this->getArchiveGroupOfPlugin($plugin);
             if ($archiveGroup == self::ARCHIVE_ALL_PLUGINS_FLAG) {
                 $archiveGroup = reset($plugins);
             }
             $archiveGroups[] = $archiveGroup;
         }
     }
     $archiveGroups = array_unique($archiveGroups);
     // cache id archives for plugins we haven't processed yet
     if (!empty($archiveGroups)) {
         if (!Rules::isArchivingDisabledFor($this->params->getIdSites(), $this->params->getSegment(), $this->getPeriodLabel())) {
             $this->cacheArchiveIdsAfterLaunching($archiveGroups, $plugins);
         } else {
             $this->cacheArchiveIdsWithoutLaunching($plugins);
         }
     }
     // order idarchives by the table month they belong to
     $idArchivesByMonth = array();
     foreach (array_keys($doneFlags) as $doneFlag) {
         if (empty($this->idarchives[$doneFlag])) {
             continue;
         }
         foreach ($this->idarchives[$doneFlag] as $dateRange => $idarchives) {
             foreach ($idarchives as $id) {
                 $idArchivesByMonth[$dateRange][] = $id;
             }
         }
     }
     return $idArchivesByMonth;
 }
开发者ID:carriercomm,项目名称:piwik,代码行数:47,代码来源:Archive.php

示例3: getArchiveIds

 /**
  * Returns archive IDs for the sites, periods and archive names that are being
  * queried. This function will use the idarchive cache if it has the right data,
  * query archive tables for IDs w/o launching archiving, or launch archiving and
  * get the idarchive from ArchiveProcessor instances.
  *
  * @param string $archiveNames
  * @return array
  */
 private function getArchiveIds($archiveNames)
 {
     $plugins = $this->getRequestedPlugins($archiveNames);
     // figure out which archives haven't been processed (if an archive has been processed,
     // then we have the archive IDs in $this->idarchives)
     $doneFlags = array();
     $archiveGroups = array();
     foreach ($plugins as $plugin) {
         $doneFlag = $this->getDoneStringForPlugin($plugin, $this->params->getIdSites());
         $doneFlags[$doneFlag] = true;
         if (!isset($this->idarchives[$doneFlag])) {
             $archiveGroup = $this->getArchiveGroupOfPlugin($plugin);
             if ($archiveGroup == self::ARCHIVE_ALL_PLUGINS_FLAG) {
                 $archiveGroup = reset($plugins);
             }
             $archiveGroups[] = $archiveGroup;
         }
         $globalDoneFlag = Rules::getDoneFlagArchiveContainsAllPlugins($this->params->getSegment());
         if ($globalDoneFlag !== $doneFlag) {
             $doneFlags[$globalDoneFlag] = true;
         }
     }
     $archiveGroups = array_unique($archiveGroups);
     // cache id archives for plugins we haven't processed yet
     if (!empty($archiveGroups)) {
         if (!Rules::isArchivingDisabledFor($this->params->getIdSites(), $this->params->getSegment(), $this->getPeriodLabel())) {
             $this->cacheArchiveIdsAfterLaunching($archiveGroups, $plugins);
         } else {
             $this->cacheArchiveIdsWithoutLaunching($plugins);
         }
     }
     $idArchivesByMonth = $this->getIdArchivesByMonth($doneFlags);
     return $idArchivesByMonth;
 }
开发者ID:diosmosis,项目名称:piwik,代码行数:43,代码来源:Archive.php


注:本文中的Piwik\ArchiveProcessor\Rules::isArchivingDisabledFor方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。