Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / vendor / chi-teck / drupal-code-generator / templates / d8 / hook / ranking.twig
diff --git a/vendor/chi-teck/drupal-code-generator/templates/d8/hook/ranking.twig b/vendor/chi-teck/drupal-code-generator/templates/d8/hook/ranking.twig
new file mode 100644 (file)
index 0000000..71942cd
--- /dev/null
@@ -0,0 +1,26 @@
+/**
+ * Implements hook_ranking().
+ */
+function {{ machine_name }}_ranking() {
+  // If voting is disabled, we can avoid returning the array, no hard feelings.
+  if (\Drupal::config('vote.settings')->get('node_enabled')) {
+    return [
+      'vote_average' => [
+        'title' => t('Average vote'),
+        // Note that we use i.sid, the search index's search item id, rather than
+        // n.nid.
+        'join' => [
+          'type' => 'LEFT',
+          'table' => 'vote_node_data',
+          'alias' => 'vote_node_data',
+          'on' => 'vote_node_data.nid = i.sid',
+        ],
+        // The highest possible score should be 1, and the lowest possible score,
+        // always 0, should be 0.
+        'score' => 'vote_node_data.average / CAST(%f AS DECIMAL)',
+        // Pass in the highest possible voting score as a decimal argument.
+        'arguments' => [\Drupal::config('vote.settings')->get('score_max')],
+      ],
+    ];
+  }
+}