Browse Source

Added ldoc comments for all lua modules and generated docs in documentation index.html

SkylarHew 2 years ago
parent
commit
da7b996a8b
41 changed files with 4307 additions and 35 deletions
  1. 2 0
      documentation/config.ld
  2. 164 0
      documentation/doc/index.html
  3. 303 0
      documentation/doc/ldoc.css
  4. 144 0
      documentation/doc/modules/add_child_org_consent.html
  5. 148 0
      documentation/doc/modules/change_modules.html
  6. 149 0
      documentation/doc/modules/consent.html
  7. 125 0
      documentation/doc/modules/join_org.html
  8. 145 0
      documentation/doc/modules/join_org_consent.html
  9. 145 0
      documentation/doc/modules/join_org_consent.lua.html
  10. 125 0
      documentation/doc/modules/leave_org.html
  11. 125 0
      documentation/doc/modules/message_org.html
  12. 307 0
      documentation/doc/modules/modpol.interactions.html
  13. 475 0
      documentation/doc/modules/modpol.orgs.base.html
  14. 295 0
      documentation/doc/modules/modpol.orgs.process.html
  15. 159 0
      documentation/doc/modules/modpol.util.misc.html
  16. 145 0
      documentation/doc/modules/modpol_core.modules.join_org_consent.html
  17. 127 0
      documentation/doc/modules/modpol_core.modules.remove_org_consent.html
  18. 90 0
      documentation/doc/modules/modpol_minetest.api.html
  19. 221 0
      documentation/doc/modules/module_template.html
  20. 125 0
      documentation/doc/modules/priv_to_org.html
  21. 127 0
      documentation/doc/modules/remove_child_consent.html
  22. 124 0
      documentation/doc/modules/remove_member_consent.html
  23. 125 0
      documentation/doc/modules/remove_org.html
  24. 127 0
      documentation/doc/modules/remove_org_consent.html
  25. 145 0
      documentation/doc/modules/rename_org_consent.html
  26. 63 0
      documentation/headers_template.html
  27. 7 4
      modpol_core/modules/add_child_org_consent.lua
  28. 4 2
      modpol_core/modules/change_modules.lua
  29. 8 2
      modpol_core/modules/consent.lua
  30. 5 0
      modpol_core/modules/join_org.lua
  31. 7 1
      modpol_core/modules/join_org_consent.lua
  32. 4 6
      modpol_core/modules/leave_org.lua
  33. 3 2
      modpol_core/modules/message_org.lua
  34. 4 0
      modpol_core/modules/remove_child_consent.lua
  35. 4 2
      modpol_core/modules/remove_member_consent.lua
  36. 5 6
      modpol_core/modules/remove_org.lua
  37. 4 0
      modpol_core/modules/remove_org_consent.lua
  38. 6 0
      modpol_core/modules/rename_org_consent.lua
  39. 1 1
      modpol_core/modules/template.lua
  40. 11 4
      modpol_core/util/misc.lua
  41. 4 5
      modpol_minetest/modules/priv_to_org.lua

+ 2 - 0
documentation/config.ld

@@ -0,0 +1,2 @@
+project = 'modpol'
+description = 'modpol core'

+ 164 - 0
documentation/doc/index.html

@@ -0,0 +1,164 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="modules/change_modules.html">change_modules</a></li>
+  <li><a href="modules/consent.html">consent</a></li>
+  <li><a href="modules/join_org.html">join_org</a></li>
+  <li><a href="modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="modules/leave_org.html">leave_org</a></li>
+  <li><a href="modules/message_org.html">message_org</a></li>
+  <li><a href="modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="modules/remove_org.html">remove_org</a></li>
+  <li><a href="modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+
+  <h2>modpol core</h2>
+
+<h2>Modules</h2>
+<table class="module_list">
+	<tr>
+		<td class="name"  nowrap><a href="modules/modpol.interactions.html">modpol.interactions</a></td>
+		<td class="summary">INTERACTIONS.LUA (CLI).</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/add_child_org_consent.html">add_child_org_consent</a></td>
+		<td class="summary">Adds a child org.</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/change_modules.html">change_modules</a></td>
+		<td class="summary">change_modules
+ Depends on consent</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/consent.html">consent</a></td>
+		<td class="summary">A utility module for checking consent</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/join_org.html">join_org</a></td>
+		<td class="summary">Adds a user to org</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/join_org_consent.html">join_org_consent</a></td>
+		<td class="summary">Join org (consent).</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/leave_org.html">leave_org</a></td>
+		<td class="summary">Removes initiator from org</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/message_org.html">message_org</a></td>
+		<td class="summary">Messages all org members</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/remove_child_consent.html">remove_child_consent</a></td>
+		<td class="summary">Remove child (consent)
+ A simple module that calls a consent process on an org to remove its child
+ Depends on the Consent module.</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/remove_member_consent.html">remove_member_consent</a></td>
+		<td class="summary">Calls consent to remove member from org</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/remove_org.html">remove_org</a></td>
+		<td class="summary">A simple module that removes an org.</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/remove_org_consent.html">remove_org_consent</a></td>
+		<td class="summary">Remove org (consent)
+ A simple module that calls a consent process on an org to remove it.</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/rename_org_consent.html">rename_org_consent</a></td>
+		<td class="summary">Rename org (consent)
+ A simple module that calls a consent process on an org to rename it.</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/module_template.html">module_template</a></td>
+		<td class="summary">Template for module writers</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/modpol.orgs.base.html">modpol.orgs.base</a></td>
+		<td class="summary">Basic function for orgs</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/modpol.orgs.process.html">modpol.orgs.process</a></td>
+		<td class="summary">Process functions for orgs</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/modpol.util.misc.html">modpol.util.misc</a></td>
+		<td class="summary">Miscellaneous functions</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/modpol_minetest.api.html">modpol_minetest.api</a></td>
+		<td class="summary">Script for loading Minetest files</td>
+	</tr>
+	<tr>
+		<td class="name"  nowrap><a href="modules/priv_to_org.html">priv_to_org</a></td>
+		<td class="summary">Set privilege to org members
+ Allows initiator to grant a priv they have to all members of an org</td>
+	</tr>
+</table>
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 303 - 0
documentation/doc/ldoc.css

@@ -0,0 +1,303 @@
+/* BEGIN RESET
+
+Copyright (c) 2010, Yahoo! Inc. All rights reserved.
+Code licensed under the BSD License:
+http://developer.yahoo.com/yui/license.html
+version: 2.8.2r1
+*/
+html {
+    color: #000;
+    background: #FFF;
+}
+body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td {
+    margin: 0;
+    padding: 0;
+}
+table {
+    border-collapse: collapse;
+    border-spacing: 0;
+}
+fieldset,img {
+    border: 0;
+}
+address,caption,cite,code,dfn,em,strong,th,var,optgroup {
+    font-style: inherit;
+    font-weight: inherit;
+}
+del,ins {
+    text-decoration: none;
+}
+li {
+    margin-left: 20px;
+}
+caption,th {
+    text-align: left;
+}
+h1,h2,h3,h4,h5,h6 {
+    font-size: 100%;
+    font-weight: bold;
+}
+q:before,q:after {
+    content: '';
+}
+abbr,acronym {
+    border: 0;
+    font-variant: normal;
+}
+sup {
+    vertical-align: baseline;
+}
+sub {
+    vertical-align: baseline;
+}
+legend {
+    color: #000;
+}
+input,button,textarea,select,optgroup,option {
+    font-family: inherit;
+    font-size: inherit;
+    font-style: inherit;
+    font-weight: inherit;
+}
+input,button,textarea,select {*font-size:100%;
+}
+/* END RESET */
+
+body {
+    margin-left: 1em;
+    margin-right: 1em;
+    font-family: arial, helvetica, geneva, sans-serif;
+    background-color: #ffffff; margin: 0px;
+}
+
+code, tt { font-family: monospace; font-size: 1.1em; }
+span.parameter { font-family:monospace; }
+span.parameter:after { content:":"; }
+span.types:before { content:"("; }
+span.types:after { content:")"; }
+.type { font-weight: bold; font-style:italic }
+
+body, p, td, th { font-size: .95em; line-height: 1.2em;}
+
+p, ul { margin: 10px 0 0 0px;}
+
+strong { font-weight: bold;}
+
+em { font-style: italic;}
+
+h1 {
+    font-size: 1.5em;
+    margin: 20px 0 20px 0;
+}
+h2, h3, h4 { margin: 15px 0 10px 0; }
+h2 { font-size: 1.25em; }
+h3 { font-size: 1.15em; }
+h4 { font-size: 1.06em; }
+
+a:link { font-weight: bold; color: #004080; text-decoration: none; }
+a:visited { font-weight: bold; color: #006699; text-decoration: none; }
+a:link:hover { text-decoration: underline; }
+
+hr {
+    color:#cccccc;
+    background: #00007f;
+    height: 1px;
+}
+
+blockquote { margin-left: 3em; }
+
+ul { list-style-type: disc; }
+
+p.name {
+    font-family: "Andale Mono", monospace;
+    padding-top: 1em;
+}
+
+pre {
+    background-color: rgb(245, 245, 245);
+    border: 1px solid #C0C0C0; /* silver */
+    padding: 10px;
+    margin: 10px 0 10px 0;
+    overflow: auto;
+    font-family: "Andale Mono", monospace;
+}
+
+pre.example {
+    font-size: .85em;
+}
+
+table.index { border: 1px #00007f; }
+table.index td { text-align: left; vertical-align: top; }
+
+#container {
+    margin-left: 1em;
+    margin-right: 1em;
+    background-color: #f0f0f0;
+}
+
+#product {
+    text-align: center;
+    border-bottom: 1px solid #cccccc;
+    background-color: #ffffff;
+}
+
+#product big {
+    font-size: 2em;
+}
+
+#main {
+    background-color: #f0f0f0;
+    border-left: 2px solid #cccccc;
+}
+
+#navigation {
+    float: left;
+    width: 14em;
+    vertical-align: top;
+    background-color: #f0f0f0;
+    overflow: visible;
+}
+
+#navigation h2 {
+    background-color:#e7e7e7;
+    font-size:1.1em;
+    color:#000000;
+    text-align: left;
+    padding:0.2em;
+    border-top:1px solid #dddddd;
+    border-bottom:1px solid #dddddd;
+}
+
+#navigation ul
+{
+    font-size:1em;
+    list-style-type: none;
+    margin: 1px 1px 10px 1px;
+}
+
+#navigation li {
+    text-indent: -1em;
+    display: block;
+    margin: 3px 0px 0px 22px;
+}
+
+#navigation li li a {
+    margin: 0px 3px 0px -1em;
+}
+
+#content {
+    margin-left: 14em;
+    padding: 1em;
+    width: 700px;
+    border-left: 2px solid #cccccc;
+    border-right: 2px solid #cccccc;
+    background-color: #ffffff;
+}
+
+#about {
+    clear: both;
+    padding: 5px;
+    border-top: 2px solid #cccccc;
+    background-color: #ffffff;
+}
+
+@media print {
+    body {
+        font: 12pt "Times New Roman", "TimeNR", Times, serif;
+    }
+    a { font-weight: bold; color: #004080; text-decoration: underline; }
+
+    #main {
+        background-color: #ffffff;
+        border-left: 0px;
+    }
+
+    #container {
+        margin-left: 2%;
+        margin-right: 2%;
+        background-color: #ffffff;
+    }
+
+    #content {
+        padding: 1em;
+        background-color: #ffffff;
+    }
+
+    #navigation {
+        display: none;
+    }
+    pre.example {
+        font-family: "Andale Mono", monospace;
+        font-size: 10pt;
+        page-break-inside: avoid;
+    }
+}
+
+table.module_list {
+    border-width: 1px;
+    border-style: solid;
+    border-color: #cccccc;
+    border-collapse: collapse;
+}
+table.module_list td {
+    border-width: 1px;
+    padding: 3px;
+    border-style: solid;
+    border-color: #cccccc;
+}
+table.module_list td.name { background-color: #f0f0f0; min-width: 200px; }
+table.module_list td.summary { width: 100%; }
+
+
+table.function_list {
+    border-width: 1px;
+    border-style: solid;
+    border-color: #cccccc;
+    border-collapse: collapse;
+}
+table.function_list td {
+    border-width: 1px;
+    padding: 3px;
+    border-style: solid;
+    border-color: #cccccc;
+}
+table.function_list td.name { background-color: #f0f0f0; min-width: 200px; }
+table.function_list td.summary { width: 100%; }
+
+ul.nowrap {
+    overflow:auto;
+    white-space:nowrap;
+}
+
+dl.table dt, dl.function dt {border-top: 1px solid #ccc; padding-top: 1em;}
+dl.table dd, dl.function dd {padding-bottom: 1em; margin: 10px 0 0 20px;}
+dl.table h3, dl.function h3 {font-size: .95em;}
+
+/* stop sublists from having initial vertical space */
+ul ul { margin-top: 0px; }
+ol ul { margin-top: 0px; }
+ol ol { margin-top: 0px; }
+ul ol { margin-top: 0px; }
+
+/* make the target distinct; helps when we're navigating to a function */
+a:target + * {
+  background-color: #FF9;
+}
+
+
+/* styles for prettification of source */
+pre .comment { color: #558817; }
+pre .constant { color: #a8660d; }
+pre .escape { color: #844631; }
+pre .keyword { color: #aa5050; font-weight: bold; }
+pre .library { color: #0e7c6b; }
+pre .marker { color: #512b1e; background: #fedc56; font-weight: bold; }
+pre .string { color: #8080ff; }
+pre .number { color: #f8660d; }
+pre .operator { color: #2239a8; font-weight: bold; }
+pre .preprocessor, pre .prepro { color: #a33243; }
+pre .global { color: #800080; }
+pre .user-keyword { color: #800080; }
+pre .prompt { color: #558817; }
+pre .url { color: #272fc2; text-decoration: underline; }
+

+ 144 - 0
documentation/doc/modules/add_child_org_consent.html

@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>add_child_org_consent</code></h1>
+<p>Adds a child org.</p>
+<p>
+ Depends on `consent`</p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Initiate consent for new child org</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#create_child_org">create_child_org ()</a></td>
+	<td class="summary">Create a new child orgg</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Initiate consent for new child org
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "create_child_org"></a>
+    <strong>create_child_org ()</strong>
+    </dt>
+    <dd>
+    Create a new child orgg
+
+
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 148 - 0
documentation/doc/modules/change_modules.html

@@ -0,0 +1,148 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>change_modules</code></h1>
+<p>change_modules
+ Depends on consent</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate ()</a></td>
+	<td class="summary">Initiate change in modules.</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#propose_change">propose_change (type, mod_text)</a></td>
+	<td class="summary">propose_change</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate ()</strong>
+    </dt>
+    <dd>
+    Initiate change in modules.
+ Either adds or removes module depending on user input
+
+
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "propose_change"></a>
+    <strong>propose_change (type, mod_text)</strong>
+    </dt>
+    <dd>
+    propose_change
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">type</span>
+
+        </li>
+        <li><span class="parameter">mod_text</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 149 - 0
documentation/doc/modules/consent.html

@@ -0,0 +1,149 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>consent</code></h1>
+<p>A utility module for checking consent</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Initiate consent</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#callback">callback (member)</a></td>
+	<td class="summary">Callback</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Initiate consent
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "callback"></a>
+    <strong>callback (member)</strong>
+    </dt>
+    <dd>
+    Callback
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">member</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 125 - 0
documentation/doc/modules/join_org.html

@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>join_org</code></h1>
+<p>Adds a user to org</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Adds the user to the org</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Adds the user to the org
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 145 - 0
documentation/doc/modules/join_org_consent.html

@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>join_org_consent</code></h1>
+<p>Join org (consent).</p>
+<p>
+ A simple module that calls a consent process on an org to add a member.
+ Depends on the Consent module.</p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Initiate join org with consent</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#complete">complete ()</a></td>
+	<td class="summary">Adds member to org, notifies org, and deletes process</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Initiate join org with consent
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "complete"></a>
+    <strong>complete ()</strong>
+    </dt>
+    <dd>
+    Adds member to org, notifies org, and deletes process
+
+
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 145 - 0
documentation/doc/modules/join_org_consent.lua.html

@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>join_org_consent.lua</code></h1>
+<p>Join org (consent).</p>
+<p>
+ A simple module that calls a consent process on an org to add a member.
+ Depends on the Consent module.</p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#join_org_consent:initiate">join_org_consent:initiate (result)</a></td>
+	<td class="summary">Initiate join org with consent</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#join_org_consent:complete">join_org_consent:complete ()</a></td>
+	<td class="summary">Adds member to org, notifies org, and deletes process</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "join_org_consent:initiate"></a>
+    <strong>join_org_consent:initiate (result)</strong>
+    </dt>
+    <dd>
+    Initiate join org with consent
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "join_org_consent:complete"></a>
+    <strong>join_org_consent:complete ()</strong>
+    </dt>
+    <dd>
+    Adds member to org, notifies org, and deletes process
+
+
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:46:26 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 125 - 0
documentation/doc/modules/leave_org.html

@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>leave_org</code></h1>
+<p>Removes initiator from org</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Removes user from org</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Removes user from org
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 125 - 0
documentation/doc/modules/message_org.html

@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>message_org</code></h1>
+<p>Messages all org members</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Allows user to send input message to all org members</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Allows user to send input message to all org members
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 307 - 0
documentation/doc/modules/modpol.interactions.html

@@ -0,0 +1,307 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>modpol.interactions</code></h1>
+<p>INTERACTIONS.LUA (CLI).</p>
+<p>
+ User interaction functions for Modular Politics
+ Called by modpol.lua</p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#modpol.interactions.dashboard">modpol.interactions.dashboard (user)</a></td>
+	<td class="summary">Output: Display a menu of commands to the user</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.interactions.org_dashboard">modpol.interactions.org_dashboard (user, org_string)</a></td>
+	<td class="summary">Output: Displays a menu of org-specific commands to the user</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.interactions.message">modpol.interactions.message (user, message)</a></td>
+	<td class="summary">Output: Prints message to CLI</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.interactions.text_query">modpol.interactions.text_query (user, query, func)</a></td>
+	<td class="summary">Output: Applies "func" to user input.</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.interactions.dropdown_query">modpol.interactions.dropdown_query (user, label, options, func)</a></td>
+	<td class="summary">Output: Calls func on choice.</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.binary_poll_user">modpol.binary_poll_user (user, question, func)</a></td>
+	<td class="summary">Output: Applies "func" to user input.</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.interactions.message_org">modpol.interactions.message_org (initiator, org, message)</a></td>
+	<td class="summary">Output: broadcasts message to all org members</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "modpol.interactions.dashboard"></a>
+    <strong>modpol.interactions.dashboard (user)</strong>
+    </dt>
+    <dd>
+    Output: Display a menu of commands to the user
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+         (string)
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.interactions.org_dashboard"></a>
+    <strong>modpol.interactions.org_dashboard (user, org_string)</strong>
+    </dt>
+    <dd>
+    Output: Displays a menu of org-specific commands to the user
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+         (string)
+        </li>
+        <li><span class="parameter">org_string</span>
+         (string or id)
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.interactions.message"></a>
+    <strong>modpol.interactions.message (user, message)</strong>
+    </dt>
+    <dd>
+    Output: Prints message to CLI
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+         (string)
+        </li>
+        <li><span class="parameter">message</span>
+         (string)
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.interactions.text_query"></a>
+    <strong>modpol.interactions.text_query (user, query, func)</strong>
+    </dt>
+    <dd>
+    Output: Applies "func" to user input.
+ Func input: user input (string)
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+         (string)
+        </li>
+        <li><span class="parameter">query</span>
+         (string)
+        </li>
+        <li><span class="parameter">func</span>
+         (function)
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.interactions.dropdown_query"></a>
+    <strong>modpol.interactions.dropdown_query (user, label, options, func)</strong>
+    </dt>
+    <dd>
+    Output: Calls func on choice.
+ func input: choice (string)
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+         (string)
+        </li>
+        <li><span class="parameter">label</span>
+         (string)
+        </li>
+        <li><span class="parameter">options</span>
+         (table of strings)
+        </li>
+        <li><span class="parameter">func</span>
+         (choice) (function)
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.binary_poll_user"></a>
+    <strong>modpol.binary_poll_user (user, question, func)</strong>
+    </dt>
+    <dd>
+    Output: Applies "func" to user input.
+ Func input: user input (string: y/n)
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+         (string)
+        </li>
+        <li><span class="parameter">question</span>
+         (string)
+        </li>
+        <li><span class="parameter">func</span>
+         (function)
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.interactions.message_org"></a>
+    <strong>modpol.interactions.message_org (initiator, org, message)</strong>
+    </dt>
+    <dd>
+    Output: broadcasts message to all org members
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">initiator</span>
+         (string)
+        </li>
+        <li><span class="parameter">org</span>
+         (number or string)
+        </li>
+        <li><span class="parameter">message</span>
+         (string)
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 475 - 0
documentation/doc/modules/modpol.orgs.base.html

@@ -0,0 +1,475 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>modpol.orgs.base</code></h1>
+<p>Basic function for orgs</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs.get_org">modpol.orgs.get_org (arg)</a></td>
+	<td class="summary">Return org when given its id or name</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs.list_all">modpol.orgs.list_all ()</a></td>
+	<td class="summary">Return a table list of all org names</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs.user_orgs">modpol.orgs.user_orgs (user)</a></td>
+	<td class="summary">Return the orgs of a user</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs.reset">modpol.orgs.reset ()</a></td>
+	<td class="summary">Deletes all orgs except for the</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs.init_instance">modpol.orgs.init_instance ()</a></td>
+	<td class="summary">Initializes the instance (root org)
+ can only be run once, as only one instance can exist</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:record">modpol.orgs:record ()</a></td>
+	<td class="summary">Records a log message to the modpol ledger</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:add_org">modpol.orgs:add_org (name, user)</a></td>
+	<td class="summary">Adds a new sub org to the org it is called on.</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:delete">modpol.orgs:delete ()</a></td>
+	<td class="summary">Recursively deletes an org and its suborgs
+ Leaves entry in modpol.orgs.array as a string "removed".</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:get_member_index">modpol.orgs:get_member_index (member)</a></td>
+	<td class="summary">Internal function to get the index of a member name</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:add_member">modpol.orgs:add_member (user)</a></td>
+	<td class="summary">Adds a user to an org</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:remove_member">modpol.orgs:remove_member (user)</a></td>
+	<td class="summary">Removes a user from an org</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:has_member">modpol.orgs:has_member (user)</a></td>
+	<td class="summary">Boolean check whether user is an org</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:list_members">modpol.orgs:list_members ()</a></td>
+	<td class="summary"></td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:get_member_count">modpol.orgs:get_member_count ()</a></td>
+	<td class="summary">Because member list uses lazy deletion, using #org.members will not show an accurate number</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:set_policy">modpol.orgs:set_policy (policy_type, process_type, must_be_member)</a></td>
+	<td class="summary">Adds a new policy to the policy table.</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "modpol.orgs.get_org"></a>
+    <strong>modpol.orgs.get_org (arg)</strong>
+    </dt>
+    <dd>
+    Return org when given its id or name
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">arg</span>
+         string for name of org or id of org
+        </li>
+    </ul>
+
+    <h3>Returns:</h3>
+    <ol>
+
+        org specified by id or name
+    </ol>
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs.list_all"></a>
+    <strong>modpol.orgs.list_all ()</strong>
+    </dt>
+    <dd>
+    Return a table list of all org names
+
+
+
+    <h3>Returns:</h3>
+    <ol>
+
+        a table list of all org names
+    </ol>
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs.user_orgs"></a>
+    <strong>modpol.orgs.user_orgs (user)</strong>
+    </dt>
+    <dd>
+    Return the orgs of a user
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+         string of user name
+        </li>
+    </ul>
+
+    <h3>Returns:</h3>
+    <ol>
+
+        table of strings of org names
+    </ol>
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs.reset"></a>
+    <strong>modpol.orgs.reset ()</strong>
+    </dt>
+    <dd>
+    Deletes all orgs except for the
+
+
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs.init_instance"></a>
+    <strong>modpol.orgs.init_instance ()</strong>
+    </dt>
+    <dd>
+    Initializes the instance (root org)
+ can only be run once, as only one instance can exist
+
+
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:record"></a>
+    <strong>modpol.orgs:record ()</strong>
+    </dt>
+    <dd>
+    Records a log message to the modpol ledger
+
+
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:add_org"></a>
+    <strong>modpol.orgs:add_org (name, user)</strong>
+    </dt>
+    <dd>
+    Adds a new sub org to the org it is called on.
+ Ex: instance:add_org('town hall')
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">name</span>
+         (string) name of new org
+        </li>
+        <li><span class="parameter">user</span>
+         (string)
+        </li>
+    </ul>
+
+    <h3>Returns:</h3>
+    <ol>
+
+        child org created
+    </ol>
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:delete"></a>
+    <strong>modpol.orgs:delete ()</strong>
+    </dt>
+    <dd>
+    Recursively deletes an org and its suborgs
+ Leaves entry in modpol.orgs.array as a string "removed".
+ Note: "reason" param was removed, can be added back
+
+
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:get_member_index"></a>
+    <strong>modpol.orgs:get_member_index (member)</strong>
+    </dt>
+    <dd>
+    Internal function to get the index of a member name
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">member</span>
+
+        </li>
+    </ul>
+
+    <h3>Returns:</h3>
+    <ol>
+
+        index of given member
+    </ol>
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:add_member"></a>
+    <strong>modpol.orgs:add_member (user)</strong>
+    </dt>
+    <dd>
+    Adds a user to an org
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:remove_member"></a>
+    <strong>modpol.orgs:remove_member (user)</strong>
+    </dt>
+    <dd>
+    Removes a user from an org
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:has_member"></a>
+    <strong>modpol.orgs:has_member (user)</strong>
+    </dt>
+    <dd>
+    Boolean check whether user is an org
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+
+        </li>
+    </ul>
+
+    <h3>Returns:</h3>
+    <ol>
+
+        true if user is in org, false if not
+    </ol>
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:list_members"></a>
+    <strong>modpol.orgs:list_members ()</strong>
+    </dt>
+    <dd>
+
+
+
+
+    <h3>Returns:</h3>
+    <ol>
+
+        a table of the names (string) of members
+    </ol>
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:get_member_count"></a>
+    <strong>modpol.orgs:get_member_count ()</strong>
+    </dt>
+    <dd>
+    Because member list uses lazy deletion, using #org.members will not show an accurate number
+
+
+
+    <h3>Returns:</h3>
+    <ol>
+
+        numbers of members
+    </ol>
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:set_policy"></a>
+    <strong>modpol.orgs:set_policy (policy_type, process_type, must_be_member)</strong>
+    </dt>
+    <dd>
+    Adds a new policy to the policy table.
+ Must define the policy type, process associated with it, and whether the request must be made by an org member
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">policy_type</span>
+
+        </li>
+        <li><span class="parameter">process_type</span>
+
+        </li>
+        <li><span class="parameter">must_be_member</span>
+         Boolean
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 295 - 0
documentation/doc/modules/modpol.orgs.process.html

@@ -0,0 +1,295 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>modpol.orgs.process</code></h1>
+<p>Process functions for orgs</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs.call_module">modpol.orgs.call_module (module_slug, intiator, config, result)</a></td>
+	<td class="summary">Call modules</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:delete_process">modpol.orgs:delete_process (id)</a></td>
+	<td class="summary">Delete process by id</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:add_pending_action">modpol.orgs:add_pending_action (process_id, user, callback)</a></td>
+	<td class="summary">Add a new pending action</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:remove_pending_action">modpol.orgs:remove_pending_action (process_id, user)</a></td>
+	<td class="summary">Remove a pending action</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:wipe_pending_actions">modpol.orgs:wipe_pending_actions (process_id)</a></td>
+	<td class="summary">Wipe all pending actions for process</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:has_pending_actions">modpol.orgs:has_pending_actions (user)</a></td>
+	<td class="summary">Check if there are pending actions for user</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.orgs:interact">modpol.orgs:interact (process_id, user)</a></td>
+	<td class="summary">Interact a user with given process</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "modpol.orgs.call_module"></a>
+    <strong>modpol.orgs.call_module (module_slug, intiator, config, result)</strong>
+    </dt>
+    <dd>
+    Call modules
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">module_slug</span>
+         Same as module name
+        </li>
+        <li><span class="parameter">intiator</span>
+         Initiator for module
+        </li>
+        <li><span class="parameter">config</span>
+         Config for module
+        </li>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:delete_process"></a>
+    <strong>modpol.orgs:delete_process (id)</strong>
+    </dt>
+    <dd>
+    Delete process by id
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">id</span>
+         Id of process
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:add_pending_action"></a>
+    <strong>modpol.orgs:add_pending_action (process_id, user, callback)</strong>
+    </dt>
+    <dd>
+    Add a new pending action
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">process_id</span>
+         Process id
+        </li>
+        <li><span class="parameter">user</span>
+         User adding the action
+        </li>
+        <li><span class="parameter">callback</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:remove_pending_action"></a>
+    <strong>modpol.orgs:remove_pending_action (process_id, user)</strong>
+    </dt>
+    <dd>
+    Remove a pending action
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">process_id</span>
+         Process id to be removed
+        </li>
+        <li><span class="parameter">user</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:wipe_pending_actions"></a>
+    <strong>modpol.orgs:wipe_pending_actions (process_id)</strong>
+    </dt>
+    <dd>
+    Wipe all pending actions for process
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">process_id</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:has_pending_actions"></a>
+    <strong>modpol.orgs:has_pending_actions (user)</strong>
+    </dt>
+    <dd>
+    Check if there are pending actions for user
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">user</span>
+         User
+        </li>
+    </ul>
+
+    <h3>Returns:</h3>
+    <ol>
+
+        True if there are pending actions for a user, false if not
+    </ol>
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.orgs:interact"></a>
+    <strong>modpol.orgs:interact (process_id, user)</strong>
+    </dt>
+    <dd>
+    Interact a user with given process
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">process_id</span>
+
+        </li>
+        <li><span class="parameter">user</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 159 - 0
documentation/doc/modules/modpol.util.misc.html

@@ -0,0 +1,159 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>modpol.util.misc</code></h1>
+<p>Miscellaneous functions</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#modpol.util.copy_table">modpol.util.copy_table (t)</a></td>
+	<td class="summary">Returns a copy of the table inputted</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#modpol.util.num_pairs">modpol.util.num_pairs (t)</a></td>
+	<td class="summary">Returns the number of elements in a pairs table</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "modpol.util.copy_table"></a>
+    <strong>modpol.util.copy_table (t)</strong>
+    </dt>
+    <dd>
+    Returns a copy of the table inputted
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">t</span>
+         table to copy
+        </li>
+    </ul>
+
+    <h3>Returns:</h3>
+    <ol>
+
+        copy of table
+    </ol>
+
+
+
+
+</dd>
+    <dt>
+    <a name = "modpol.util.num_pairs"></a>
+    <strong>modpol.util.num_pairs (t)</strong>
+    </dt>
+    <dd>
+    Returns the number of elements in a pairs table
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">t</span>
+         pairs table
+        </li>
+    </ul>
+
+    <h3>Returns:</h3>
+    <ol>
+
+        number of elements in pairs table
+    </ol>
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 145 - 0
documentation/doc/modules/modpol_core.modules.join_org_consent.html

@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>modpol_core.modules.join_org_consent</code></h1>
+<p>Join org (consent).</p>
+<p>
+ A simple module that calls a consent process on an org to add a member.
+ Depends on the Consent module.</p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Initiate join org with consent</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#complete">complete ()</a></td>
+	<td class="summary">Adds member to org, notifies org, and deletes process</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Initiate join org with consent
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "complete"></a>
+    <strong>complete ()</strong>
+    </dt>
+    <dd>
+    Adds member to org, notifies org, and deletes process
+
+
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:46:04 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 127 - 0
documentation/doc/modules/modpol_core.modules.remove_org_consent.html

@@ -0,0 +1,127 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>modpol_core.modules.remove_org_consent</code></h1>
+<p>Remove org (consent)
+ A simple module that calls a consent process on an org to remove it.</p>
+<p>
+ Depends on the Consent module.</p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Remove org if all members consent</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Remove org if all members consent
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:30:14 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 90 - 0
documentation/doc/modules/modpol_minetest.api.html

@@ -0,0 +1,90 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>modpol_minetest.api</code></h1>
+<p>Script for loading Minetest files</p>
+<p></p>
+
+
+
+<br/>
+<br/>
+
+
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 221 - 0
documentation/doc/modules/module_template.html

@@ -0,0 +1,221 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+<li><a href="#Tables">Tables</a></li>
+<li><a href="#Fields">Fields</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>module_template</code></h1>
+<p>Template for module writers</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">(Required): Initiate function
+ Modules have access to the following instance variables:
+ <li><code>self.org</code> (the org the module was called in),</li>
+ <li><code>self.initiator</code> (the user that callced the module),</li>
+ <li><code>self.id</code> (the process id of the module instance)</li></td>
+	</tr>
+</table>
+<h2><a href="#Tables">Tables</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#data">data</a></td>
+	<td class="summary">(Required) Data for module
+ Variables that module uses during the course of a process.</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#config">config</a></td>
+	<td class="summary">(Required): Config for module
+ Defines the input parameters to the module initiate function.</td>
+	</tr>
+</table>
+<h2><a href="#Fields">Fields</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#modpol.modules.module_template">modpol.modules.module_template</a></td>
+	<td class="summary">(Required) Add to module table</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    (Required): Initiate function
+ Modules have access to the following instance variables:
+ <li><code>self.org</code> (the org the module was called in),</li>
+ <li><code>self.initiator</code> (the user that callced the module),</li>
+ <li><code>self.id</code> (the process id of the module instance)</li>
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+         (optional) Callback if this module is embedded in other modules
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+    <h2 class="section-header "><a name="Tables"></a>Tables</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "data"></a>
+    <strong>data</strong>
+    </dt>
+    <dd>
+    (Required) Data for module
+ Variables that module uses during the course of a process.
+ Can be blank
+
+
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "config"></a>
+    <strong>config</strong>
+    </dt>
+    <dd>
+    (Required): Config for module
+ Defines the input parameters to the module initiate function.
+ Can be blank
+ When calling a module from within another module,
+ variables not defined in config will be ignored.
+ Default values set in config can be overridden
+
+
+    <h3>Fields:</h3>
+    <ul>
+        <li><span class="parameter">field_1</span>
+         ex: votes_required, default = 5
+        </li>
+        <li><span class="parameter">field_2</span>
+         ex: voting_type, default = "majority"
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+    <h2 class="section-header "><a name="Fields"></a>Fields</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "modpol.modules.module_template"></a>
+    <strong>modpol.modules.module_template</strong>
+    </dt>
+    <dd>
+    (Required) Add to module table
+
+
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 125 - 0
documentation/doc/modules/priv_to_org.html

@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+</div>
+
+<div id="content">
+
+<h1>Module <code>priv_to_org</code></h1>
+<p>Set privilege to org members
+ Allows initiator to grant a priv they have to all members of an org</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Initiate function</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Initiate function
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 127 - 0
documentation/doc/modules/remove_child_consent.html

@@ -0,0 +1,127 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>remove_child_consent</code></h1>
+<p>Remove child (consent)
+ A simple module that calls a consent process on an org to remove its child
+ Depends on the Consent module.</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Removes a child org with consent</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Removes a child org with consent
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 124 - 0
documentation/doc/modules/remove_member_consent.html

@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+</div>
+
+<div id="content">
+
+<h1>Module <code>remove_member_consent</code></h1>
+<p>Calls consent to remove member from org</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Removes given member from org</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Removes given member from org
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 125 - 0
documentation/doc/modules/remove_org.html

@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>remove_org</code></h1>
+<p>A simple module that removes an org.</p>
+<p></p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Removes org</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Removes org
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 127 - 0
documentation/doc/modules/remove_org_consent.html

@@ -0,0 +1,127 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>remove_org_consent</code></h1>
+<p>Remove org (consent)
+ A simple module that calls a consent process on an org to remove it.</p>
+<p>
+ Depends on the Consent module.</p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Remove org if all members consent</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Remove org if all members consent
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 145 - 0
documentation/doc/modules/rename_org_consent.html

@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<head>
+    <title>Reference</title>
+    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
+</head>
+<body>
+
+<div id="container">
+
+<div id="product">
+	<div id="product_logo"></div>
+	<div id="product_name"><big><b></b></big></div>
+	<div id="product_description"></div>
+</div> <!-- id="product" -->
+
+
+<div id="main">
+
+
+<!-- Menu -->
+
+<div id="navigation">
+<br/>
+<h1>modpol</h1>
+
+<ul>
+  <li><a href="../index.html">Index</a></li>
+</ul>
+
+<h2>Contents</h2>
+<ul>
+<li><a href="#Functions">Functions</a></li>
+</ul>
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+</div>
+
+<div id="content">
+
+<h1>Module <code>rename_org_consent</code></h1>
+<p>Rename org (consent)
+ A simple module that calls a consent process on an org to rename it.</p>
+<p>
+ Depends on the Consent module.</p>
+
+
+<h2><a href="#Functions">Functions</a></h2>
+<table class="function_list">
+	<tr>
+	<td class="name" nowrap><a href="#initiate">initiate (result)</a></td>
+	<td class="summary">Renames the org after consent is reached</td>
+	</tr>
+	<tr>
+	<td class="name" nowrap><a href="#complete">complete ()</a></td>
+	<td class="summary">Changes the name of the org after consent is reached</td>
+	</tr>
+</table>
+
+<br/>
+<br/>
+
+
+    <h2 class="section-header "><a name="Functions"></a>Functions</h2>
+
+    <dl class="function">
+    <dt>
+    <a name = "initiate"></a>
+    <strong>initiate (result)</strong>
+    </dt>
+    <dd>
+    Renames the org after consent is reached
+
+
+    <h3>Parameters:</h3>
+    <ul>
+        <li><span class="parameter">result</span>
+
+        </li>
+    </ul>
+
+
+
+
+
+</dd>
+    <dt>
+    <a name = "complete"></a>
+    <strong>complete ()</strong>
+    </dt>
+    <dd>
+    Changes the name of the org after consent is reached
+
+
+
+
+
+
+
+</dd>
+</dl>
+
+
+</div> <!-- id="content" -->
+</div> <!-- id="main" -->
+<div id="about">
+<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
+<i style="float:right;">Last updated 2022-01-20 10:54:01 </i>
+</div> <!-- id="about" -->
+</div> <!-- id="container" -->
+</body>
+</html>

+ 63 - 0
documentation/headers_template.html

@@ -0,0 +1,63 @@
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="modules/change_modules.html">change_modules</a></li>
+  <li><a href="modules/consent.html">consent</a></li>
+  <li><a href="modules/join_org.html">join_org</a></li>
+  <li><a href="modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="modules/leave_org.html">leave_org</a></li>
+  <li><a href="modules/message_org.html">message_org</a></li>
+  <li><a href="modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="modules/remove_org.html">remove_org</a></li>
+  <li><a href="modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="modules/priv_to_org.html">priv_to_org</a></li>
+</ul>
+
+
+
+<h2>Basic Functions</h2>
+<ul class="nowrap">
+  <li><a href="../modules/modpol.interactions.html">modpol.interactions</a></li>
+  <li><a href="../modules/modpol.orgs.base.html">modpol.orgs.base</a></li>
+  <li><a href="../modules/modpol.orgs.process.html">modpol.orgs.process</a></li>
+  <li><a href="../modules/modpol.util.misc.html">modpol.util.misc</a></li>
+  <li><a href="../modules/modpol_minetest.api.html">modpol_minetest.api</a></li>
+</ul>
+
+<h2>Core Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/add_child_org_consent.html">add_child_org_consent</a></li>
+  <li><a href="../modules/change_modules.html">change_modules</a></li>
+  <li><a href="../modules/consent.html">consent</a></li>
+  <li><a href="../modules/join_org.html">join_org</a></li>
+  <li><a href="../modules/join_org_consent.html">join_org_consent</a></li>
+  <li><a href="../modules/leave_org.html">leave_org</a></li>
+  <li><a href="../modules/message_org.html">message_org</a></li>
+  <li><a href="../modules/remove_child_consent.html">remove_child_consent</a></li>
+  <li><a href="../modules/remove_member_consent.html">remove_member_consent</a></li>
+  <li><a href="../modules/remove_org.html">remove_org</a></li>
+  <li><a href="../modules/remove_org_consent.html">remove_org_consent</a></li>
+  <li><a href="../modules/rename_org_consent.html">rename_org_consent</a></li>
+  <li><a href="../modules/module_template.html">module_template</a></li>
+</ul>
+
+<h2>Minetest Modules</h2>
+<ul class="nowrap">
+  <li><a href="../modules/priv_to_org.html">priv_to_org</a></li>
+</ul>

+ 7 - 4
modpol_core/modules/add_child_org_consent.lua

@@ -1,6 +1,6 @@
---- @module add_child_org_consent
--- Adds a child org
+--- Adds a child org.
 -- Depends on `consent`
+-- @module add_child_org_consent
 
 local add_child_org_consent = {
     name = "Add child org (consent)",
@@ -14,7 +14,9 @@ add_child_org_consent.data = {
 add_child_org_consent.config = {
 }
 
--- @function initiate
+--- Initiate consent for new child org
+-- @function add_child_org_consent:initiate(result)
+-- @param result
 function add_child_org_consent:initiate(result)
    modpol.interactions.text_query(
       self.initiator,"Child org name: ",
@@ -61,6 +63,8 @@ function add_child_org_consent:initiate(result)
    )
 end
 
+--- Create a new child orgg
+-- @function add_child_org_consent:create_child_org
 function add_child_org_consent:create_child_org()
    self.org:add_org(self.data.child_name, self.initiator)
    modpol.interactions.message_org(
@@ -71,5 +75,4 @@ function add_child_org_consent:create_child_org()
    self.org:delete_process(self.id)
 end
       
---- (Required) Add to module table
 modpol.modules.add_child_org_consent = add_child_org_consent

+ 4 - 2
modpol_core/modules/change_modules.lua

@@ -1,6 +1,6 @@
 --- change_modules
--- @module change_modules
 -- Depends on consent
+-- @module change_modules
 
 local change_modules = {
     name = "Change modules (consent)",
@@ -16,6 +16,9 @@ change_modules.data = {
 change_modules.config = {
 }
 
+--- Initiate change in modules.
+-- Either adds or removes module depending on user input
+-- @function change_modules:initiate
 function change_modules:initiate(result)
    self.data.result = result
    -- Step 1: add or remove?
@@ -167,5 +170,4 @@ function change_modules:propose_change(type, mod_text)
    self.org:delete_process(self.id)
 end
    
---- (Required) Add to module table
 modpol.modules.change_modules = change_modules

+ 8 - 2
modpol_core/modules/consent.lua

@@ -1,5 +1,5 @@
---- @module consent
--- A utility module for checking consent
+--- A utility module for checking consent
+-- @module consent
 
 local consent = {
     name = "Consent process utility",
@@ -17,6 +17,9 @@ consent.config = {
     votes_required = 1
 }
 
+--- Initiate consent
+-- @function consent:initiate
+-- @param result
 function consent:initiate(result)
    self.data.result = result
    -- if org is empty, consent is given automatically
@@ -32,6 +35,9 @@ function consent:initiate(result)
    end
 end
 
+--- Callback
+-- @function consent:callback
+-- @param member
 function consent:callback(member)
     modpol.interactions.binary_poll_user(
         member,

+ 5 - 0
modpol_core/modules/join_org.lua

@@ -1,3 +1,5 @@
+--- Adds a user to org
+-- @module join_org
 
 join_org = {}
 
@@ -7,6 +9,9 @@ join_org.setup = {
    desc = "If consent process is passed, initiator joins this org."
 }
 
+--- Adds the user to the org
+-- @function join_org.initiate
+-- @param result
 function join_org.initiate(result) 
     modpol.interactions.binary_poll_user(
         initiator, 

+ 7 - 1
modpol_core/modules/join_org_consent.lua

@@ -1,6 +1,7 @@
---- Join org (consent)
+--- Join org (consent).
 -- A simple module that calls a consent process on an org to add a member.
 -- Depends on the Consent module.
+-- @module join_org_consent
 
 local join_org_consent = {
     name = "Join this org (consent)",
@@ -15,6 +16,9 @@ join_org_consent.data = {
 join_org_consent.config = {
 }
 
+--- Initiate join org with consent
+-- @function join_org_consent:initiate
+-- @param result
 function join_org_consent:initiate(result)
    if self.org:has_member(self.initiator) then
       modpol.interactions.message(
@@ -38,6 +42,8 @@ function join_org_consent:initiate(result)
    end
 end
 
+--- Adds member to org, notifies org, and deletes process
+-- @function join_org_consent:complete
 function join_org_consent:complete()
    self.org:add_member(self.initiator)
    modpol.interactions.message_org(

+ 4 - 6
modpol_core/modules/leave_org.lua

@@ -1,4 +1,4 @@
---- leave_org
+--- Removes initiator from org
 -- @module leave_org
 
 local leave_org = {
@@ -13,10 +13,9 @@ leave_org.data = {
 leave_org.config = {
 }
 
---- (Required): initiate function
--- Modules have access to the following instance variables:
--- @param result (optional) Callback if this module is embedded in other modules
--- @function initiate
+--- Removes user from org
+-- @function leave_org:initiate
+-- @param result
 function leave_org:initiate(result)
    if self.org == modpol.instance then
       modpol.interactions.message(
@@ -35,5 +34,4 @@ function leave_org:initiate(result)
    self.org:delete_process(self.id)
 end
 
---- (Required) Add to module table
 modpol.modules.leave_org = leave_org

+ 3 - 2
modpol_core/modules/message_org.lua

@@ -1,4 +1,4 @@
---- message_org
+--- Messages all org members
 -- @module message_org
 
 local message_org = {
@@ -14,7 +14,9 @@ message_org.data = {
 message_org.config = {
 }
 
+--- Allows user to send input message to all org members
 -- @function initiate
+-- @param result
 function message_org:initiate(result)
    modpol.interactions.text_query(
       self.initiator, "Message to all org members: ",
@@ -34,5 +36,4 @@ function message_org:initiate(result)
    self.org:delete_process(self.id)
 end
 
---- (Required) Add to module table
 modpol.modules.message_org = message_org

+ 4 - 0
modpol_core/modules/remove_child_consent.lua

@@ -1,6 +1,7 @@
 --- Remove child (consent)
 -- A simple module that calls a consent process on an org to remove its child
 -- Depends on the Consent module.
+-- @module remove_child_consent
 
 local remove_child_consent = {
     name = "Remove child (consent)",
@@ -16,6 +17,9 @@ remove_child_consent.data = {
 remove_child_consent.config = {
 }
 
+--- Removes a child org with consent
+-- @function remove_child_consent:initiate
+-- @param result
 function remove_child_consent:initiate(result)
    local children = {}
    for i,v in ipairs(self.org.children) do

+ 4 - 2
modpol_core/modules/remove_member_consent.lua

@@ -1,4 +1,4 @@
---- remove_member_consent
+--- Calls consent to remove member from org
 -- @module remove_member_consent
 
 local remove_member_consent = {
@@ -15,6 +15,9 @@ remove_member_consent.data = {
 remove_member_consent.config = {
 }
 
+--- Removes given member from org
+-- @function remove_member_consent:initiate
+-- @param result
 function remove_member_consent:initiate(result)
    -- Abort if in root org
    if self.org == modpol.instance then
@@ -60,5 +63,4 @@ function remove_member_consent:complete()
    if self.data.result then self.data.result() end
 end
 
---- (Required) Add to module table
 modpol.modules.remove_member_consent = remove_member_consent

+ 5 - 6
modpol_core/modules/remove_org.lua

@@ -1,8 +1,6 @@
---- @module Remove Org
--- A simple module that removes an org.
+--- A simple module that removes an org.
+-- @module remove_org
 
-
---- Main module table
 remove_org = {
     name = "Remove this org",
     slug = "remove_org",
@@ -12,8 +10,9 @@ remove_org = {
 remove_org.config = {}
 remove_org.data = {}
 
---- Initiate function
--- @function initiate
+--- Removes org
+-- @function remove_org:initiate
+-- @param result
 function remove_org:initiate(result)
    if self.org == modpol.instance then
    modpol.interactions.message(

+ 4 - 0
modpol_core/modules/remove_org_consent.lua

@@ -1,6 +1,7 @@
 --- Remove org (consent)
 -- A simple module that calls a consent process on an org to remove it.
 -- Depends on the Consent module.
+-- @module remove_org_consent
 
 local remove_org_consent = {
     name = "Remove this org (consent)",
@@ -15,6 +16,9 @@ remove_org_consent.data = {
 remove_org_consent.config = {
 }
 
+--- Remove org if all members consent
+-- @function remove_org_consent:initiate
+-- @param result
 function remove_org_consent:initiate(result)
    if self.org == modpol.instance then
       modpol.interactions.message(

+ 6 - 0
modpol_core/modules/rename_org_consent.lua

@@ -1,6 +1,7 @@
 --- Rename org (consent)
 -- A simple module that calls a consent process on an org to rename it.
 -- Depends on the Consent module.
+-- @module rename_org_consent
 
 local rename_org_consent = {
     name = "Rename this org (consent)",
@@ -16,6 +17,9 @@ rename_org_consent.data = {
 rename_org_consent.config = {
 }
 
+--- Renames the org after consent is reached
+-- @function rename_org_consent:initiate
+-- @param result
 function rename_org_consent:initiate(result)
    modpol.interactions.text_query(
       self.initiator,"New org name: ",
@@ -63,6 +67,8 @@ function rename_org_consent:initiate(result)
    )
 end
 
+--- Changes the name of the org after consent is reached
+-- @funciton rename_org_consent
 function rename_org_consent:complete()
    modpol.interactions.message_org(
       self.initiator,

+ 1 - 1
modpol_core/modules/template.lua

@@ -38,7 +38,7 @@ module_template.config = {
 -- <li><code>self.initiator</code> (the user that callced the module),</li>
 -- <li><code>self.id</code> (the process id of the module instance)</li>
 -- @param result (optional) Callback if this module is embedded in other modules
--- @function initiate
+-- @function module_template:initiate
 function module_template:initiate(result)
    -- call interaction functions here!
 

+ 11 - 4
modpol_core/util/misc.lua

@@ -1,7 +1,12 @@
+--- Miscellaneous functions
+-- @module modpol.util.misc
+
 modpol.util = {}
 
---- @function modpol.copy_table
--- Returns a copy of the table inputted
+--- Returns a copy of the table inputted
+-- @function modpol.util.copy_table
+-- @param t table to copy
+-- @return copy of table
 function modpol.util.copy_table(t)
    local t2 = {}
    for k,v in pairs(t) do
@@ -10,8 +15,10 @@ function modpol.util.copy_table(t)
    return t2
 end
 
---- @function modpol.copy_table
--- Returns the number of elements in a pairs table
+--- Returns the number of elements in a pairs table
+-- @function modpol.util.num_pairs
+-- @param t pairs table
+-- @return number of elements in pairs table
 function modpol.util.num_pairs(t)
    local i = 0
    for k,v in pairs(t) do

+ 4 - 5
modpol_minetest/modules/priv_to_org.lua

@@ -1,6 +1,6 @@
 --- Set privilege to org members
--- @module priv_to_org
 -- Allows initiator to grant a priv they have to all members of an org
+-- @module priv_to_org
 
 local priv_to_org = {
     name = "Set privilege to org members",
@@ -14,9 +14,9 @@ priv_to_org.data = {
 priv_to_org.config = {
 }
 
---- (Required): initiate function
--- @param result (optional) Callback if this module is embedded in other modules
--- @function initiate
+--- Initiate function
+-- @function priv_to_org:initiate
+-- @param result
 function priv_to_org:initiate(result) 
    local player_privs = minetest.get_player_privs(self.initiator)
    -- construct table for display
@@ -45,5 +45,4 @@ function priv_to_org:initiate(result)
     if result then result() end
 end
 
---- (Required) Add to module table
 modpol.modules.priv_to_org = priv_to_org