Author: Mikael Mattsson (mikael@wallmanderco.se)
Ejemplo n.º 1
0
 /**
  * Setup hooks.
  */
 public static function setup()
 {
     static::setupInstall();
     static::setupProfiler();
     static::setupAdmin();
     if (!Elasticsearch::isAvailable()) {
         return;
     }
     if (Config::option('user_index_version') < Config::option('plugin_index_version')) {
         return;
     }
     static::setupSync();
     static::setupQueryIntegration();
     static::setupWooCommerce();
     static::setupWooCommerceAdmin();
 }
Ejemplo n.º 2
0
 private static function getStatusText()
 {
     if (!Elasticsearch::isAvailable()) {
         return ['Unable to connect', '#e14d43'];
     }
     if (Config::option('user_index_version') < Config::option('plugin_index_version')) {
         return ['Reindex required', '#e14d43'];
     }
     if ($time = Config::option('is_indexing')) {
         if ($time + 20 < time()) {
             return ['Indexing process interrupted', '#e14d43'];
         }
         return ['Indexing...', '#ccaf0b'];
     }
     if (!Config::option('enable_integration')) {
         return ['Disabled Integration', '#999'];
     }
     return ['Enabled', '#a3b745'];
 }
Ejemplo n.º 3
0
 /**
  * Set refresh_interval on all indexes.
  *
  * @param string $interval
  */
 public function setRefreshInterval($interval = '1s')
 {
     $sites = is_multisite() ? wp_get_sites() : [['blog_id' => get_current_blog_id()]];
     foreach ($sites as $site) {
         $index = $this->getIndexName($site['blog_id']);
         Elasticsearch::setSettings($index, ['index' => ['refresh_interval' => $interval]]);
     }
 }