瀏覽代碼

Added muted functions.

default 3 年之前
父節點
當前提交
065773c703
共有 2 個文件被更改,包括 45 次插入0 次删除
  1. 42 0
      data.c
  2. 3 0
      snac.h

+ 42 - 0
data.c

@@ -477,3 +477,45 @@ int following_check(snac *snac, char *actor)
 
 
     return !!(mtime(fn) != 0.0);
     return !!(mtime(fn) != 0.0);
 }
 }
+
+
+d_char *_muted_fn(snac *snac, char *actor)
+{
+    xs *md5 = xs_md5_hex(actor, strlen(actor));
+    return xs_fmt("%s/muted/%s.json", snac->basedir, md5);
+}
+
+
+void mute(snac *snac, char *actor)
+/* mutes a moron */
+{
+    xs *fn = _muted_fn(snac, actor);
+    FILE *f;
+
+    if ((f = fopen(fn, "w")) != NULL) {
+        fprintf(f, "%s\n", actor);
+        fclose(f);
+
+        snac_debug(snac, 2, xs_fmt("muted %s %s", actor, fn));
+    }
+}
+
+
+void unmute(snac *snac, char *actor)
+/* actor is no longer a moron */
+{
+    xs *fn = _muted_fn(snac, actor);
+
+    unlink(fn);
+
+    snac_debug(snac, 2, xs_fmt("unmuted %s %s", actor, fn));
+}
+
+
+int is_muted(snac *snac, char *actor)
+/* check if someone is muted */
+{
+    xs *fn = _muted_fn(snac, actor);
+
+    return !!(mtime(fn) != 0.0);
+}

+ 3 - 0
snac.h

@@ -54,3 +54,6 @@ int following_add(snac *snac, char *actor, char *msg);
 int following_del(snac *snac, char *actor);
 int following_del(snac *snac, char *actor);
 int following_check(snac *snac, char *actor);
 int following_check(snac *snac, char *actor);
 
 
+void mute(snac *snac, char *actor);
+void unmute(snac *snac, char *actor);
+int is_muted(snac *snac, char *actor);