소스 검색

New function notify_check_time().

default 3 년 전
부모
커밋
211bedd497
2개의 변경된 파일29개의 추가작업 그리고 0개의 파일을 삭제
  1. 28 0
      data.c
  2. 1 0
      snac.h

+ 28 - 0
data.c

@@ -1477,6 +1477,34 @@ xs_list *inbox_list(void)
 
 /** notifications **/
 
+xs_str *notify_check_time(snac *snac, int reset)
+/* gets or resets the latest notification check time */
+{
+    xs_str *t = NULL;
+    xs *fn    = xs_fmt("%s/notifydate.txt", snac->basedir);
+    FILE *f;
+
+    if (reset) {
+        if ((f = fopen(fn, "w")) != NULL) {
+            t = tid(0);
+            fprintf(f, "%s\n", t);
+            fclose(f);
+        }
+    }
+    else {
+        if ((f = fopen(fn, "r")) != NULL) {
+            t = xs_readline(f);
+            fclose(f);
+        }
+        else
+            /* never set before */
+            t = xs_fmt("%16.6f", 0.0);
+    }
+
+    return t;
+}
+
+
 void notify_add(snac *snac, const char *type, const char *utype,
                 const char *actor, const char *objid)
 /* adds a new notification */

+ 1 - 0
snac.h

@@ -137,6 +137,7 @@ d_char *history_list(snac *snac);
 
 void lastlog_write(snac *snac);
 
+xs_str *notify_check_time(snac *snac, int reset);
 void notify_add(snac *snac, const char *type, const char *utype,
                 const char *actor, const char *objid);