relevance-h now calculates some kind of round-robin score
[pazpar2-moved-to-github.git] / src / reclists.c
index b16a60e..bec6268 100644 (file)
@@ -101,6 +101,10 @@ struct reclist_sortparms *reclist_parse_sortparms(NMEM nmem, const char *parms,
             {
                 type = Metadata_sortkey_relevance;
             }
+            else if (!strcmp(parm, "relevance_h"))
+            {
+                type = Metadata_sortkey_relevance_h;
+            }
             else if (!strcmp(parm, "position"))
             {
                 type = Metadata_sortkey_position;
@@ -159,6 +163,9 @@ static int reclist_cmp(const void *p1, const void *p2)
         case Metadata_sortkey_relevance:
             res = r2->relevance_score - r1->relevance_score;
             break;
+        case Metadata_sortkey_relevance_h:
+            res = r2->relevance_score - r1->relevance_score;
+            break;
         case Metadata_sortkey_string:
             s1 = ut1 ? ut1->text.sort : "";
             s2 = ut2 ? ut2->text.sort : "";