Ver código fonte

Close the question over due date in update_question().

default 3 anos atrás
pai
commit
32ce1fb28e
1 arquivos alterados com 10 adições e 0 exclusões
  1. 10 0
      activitypub.c

+ 10 - 0
activitypub.c

@@ -1038,6 +1038,16 @@ int update_question(snac *user, const char *id)
     /* update the list */
     /* update the list */
     msg = xs_dict_set(msg, xs_dict_get(msg, "oneOf") != NULL ? "oneOf" : "anyOf", nopts);
     msg = xs_dict_set(msg, xs_dict_get(msg, "oneOf") != NULL ? "oneOf" : "anyOf", nopts);
 
 
+    /* due date? */
+    const char *end_time = xs_dict_get(msg, "endTime");
+    if (!xs_is_null(end_time)) {
+        xs *now = xs_str_utctime(0, ISO_DATE_SPEC);
+
+        /* it's now greater than the endTime? */
+        if (strcmp(now, end_time) > 0)
+            msg = xs_dict_set(msg, "closed", end_time);
+    }
+
     /* store */
     /* store */
     object_add_ow(id, msg);
     object_add_ow(id, msg);