Familienverwaltunt vereinfacht.

SetFamilie() und DeleteFamilie() erlauben das Setzen und Loeschen
von expliziten Familien-IDs ohne SQL zu bemuehen.

Change-Id: I25947075486f810b2044f7be347e36fd6ac9fbbc
diff --git a/secure/zweities.c b/secure/zweities.c
index 3501523..d5e8f8c 100644
--- a/secure/zweities.c
+++ b/secure/zweities.c
@@ -166,3 +166,43 @@
   return erstie;
 }
 
+public string SetFamilie(object|string pl, string familie)
+{
+  if (!ARCH_SECURITY)
+    return 0;
+
+  // Wenn Spielerobjekt, UUID ermitteln
+  if (objectp(pl) && query_once_interactive(pl))
+    pl = getuuid(pl);
+
+  sl_exec("INSERT OR REPLACE INTO familien(erstieuuid, familie) "
+          "VALUES(?1, ?2);", pl, familie);
+
+  mixed tmp = sl_exec("SELECT familie FROM familien WHERE "
+                      "erstieuuid=?1", pl);
+  if (sizeof(tmp))
+    return tmp[0][0];
+
+  return 0;
+}
+
+public int DeleteFamilie(object|string pl)
+{
+  if (!ARCH_SECURITY)
+    return 0;
+
+  // Wenn Spielerobjekt, UUID ermitteln
+  if (objectp(pl) && query_once_interactive(pl))
+    pl = getuuid(pl);
+
+  sl_exec("DELETE FROM familien WHERE erstieuuid=?1;",
+          pl);
+
+  mixed tmp = sl_exec("SELECT familie FROM familien WHERE "
+                      "erstieuuid=?1", pl);
+  if (sizeof(tmp))
+    return -1;
+
+  return 1;
+}
+