# HG changeset patch
# User Sonny Piers <sonny.piers@gmail.com>
# Date 1300716901 -3600
# Node ID e6c2c66c200231d862707c18bfd20d490338d31d
# Parent  7e421278b31b51bdd20814ea5a7024bc4e3b18a9
Handle 'none' on set affiliation bug #2246

diff --git a/storage.js b/storage.js
--- a/storage.js
+++ b/storage.js
@@ -378,6 +378,25 @@ storage.setAffiliation = function(nodeID
 		node.member.push(jid);
 	else if (config.enabled('outcast-affiliation') && affil == 'outcast')
 		node.outcast.push(jid);
+  else if (affil == 'none') {
+    (function() {
+      for (var i in node.outcast)
+        if(node.outcast[i] == jid)
+          return node.outcast.splice(i, 1);
+      for (var i in node.owner)
+        if(node.owner[i] == jid)
+          return node.owner.splice(i, 1);
+      for (var i in node.publisher)
+        if(node.publisher[i] == jid)
+          return node.publisher.splice(i, 1);
+      for (var i in node.publishOnly)
+        if(node.publishOnly[i] == jid)
+           return node.publishOnly.splice(i, 1);
+      for (var i in node.member)
+        if(node.member[i] == jid)
+          return node.member.splice(i, 1);
+    })()
+  }
 
 	storage.save();
 	return errors.success;