Configuration for default sort order
[phinde.git] / src / phinde / Elasticsearch.php
index 9babfee21324988fbde6ac0f88e7b763d570594b..c24f6cd60b690f49baf32539d35c69d2be08071d 100644 (file)
@@ -58,6 +58,20 @@ class Elasticsearch
         $r->send();
     }
 
+    public function getIndexStatus()
+    {
+        $r = new Elasticsearch_Request(
+            $this->baseUrl . '_stats/docs,store',
+            \HTTP_Request2::METHOD_GET
+        );
+        $res = $r->send();
+        $data = json_decode($res->getBody());
+        return array(
+            'documents' => $data->_all->total->docs->count,
+            'size'      => $data->_all->total->store->size_in_bytes,
+        );
+    }
+
     public function search($query, $filters, $site, $page, $perPage, $sort)
     {
         if (preg_match_all('#nick:([^ ]*)#', $query, $matches)) {
@@ -121,6 +135,9 @@ class Elasticsearch
             )
         );
 
+        if ($sort == '' && $GLOBALS['phinde']['defaultSort'] == 'date') {
+            $sort = 'date';
+        }
         if ($sort == 'date') {
             $sortCfg = array('status.modate' => array('order' => 'desc'));
         } else {