{"id":306,"date":"2026-07-25T14:30:40","date_gmt":"2026-07-25T14:30:40","guid":{"rendered":"https:\/\/efiwe.com\/blog\/?p=306"},"modified":"2026-07-25T14:39:30","modified_gmt":"2026-07-25T14:39:30","slug":"you-decide-who-joins-moderation-promotions-and-tighter-control-over-your-group","status":"publish","type":"post","link":"https:\/\/efiwe.com\/blog\/you-decide-who-joins-moderation-promotions-and-tighter-control-over-your-group\/","title":{"rendered":"You Decide Who Joins: Moderation, Promotions, and Tighter Control Over Your Group"},"content":{"rendered":"\n<p class=\"has-text-align-center wp-block-paragraph\"><em>When Group Plans launched in June, we said member limits were enforced everywhere a learner could join a group. That was true, and it solved a real problem. But it solved the wrong half of it.<\/em><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/efiwe.com\/blog\/wp-content\/uploads\/2026\/07\/moderation-2-1024x576.png\" alt=\"\" class=\"wp-image-313\" srcset=\"https:\/\/efiwe.com\/blog\/wp-content\/uploads\/2026\/07\/moderation-2-1024x576.png 1024w, https:\/\/efiwe.com\/blog\/wp-content\/uploads\/2026\/07\/moderation-2-300x169.png 300w, https:\/\/efiwe.com\/blog\/wp-content\/uploads\/2026\/07\/moderation-2-768x432.png 768w, https:\/\/efiwe.com\/blog\/wp-content\/uploads\/2026\/07\/moderation-2-1536x864.png 1536w, https:\/\/efiwe.com\/blog\/wp-content\/uploads\/2026\/07\/moderation-2.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">The invite link has always worked the same way: share it, and anyone who registers through it becomes part of your group immediately. For a bootcamp sharing a link in a private cohort channel, that is exactly right. For a secondary school that posted its link in a parents&#8217; WhatsApp group, or an NGO running a competitive selection process, or a Teach For Nigeria Fellow whose students forwarded the link to their friends across three other schools, it is not. Admins told us the same thing in different words: the link is a door, and right now there is no lock on it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There was a second gap, quieter but more persistent. Group dashboards have always shown each learner&#8217;s grade, and admins have always been able to filter by it. But grades are not permanent. Students move up. Terms end. New academic years start. And until today, there was no way to reflect that inside Efiwe. An admin running a programme across five grades had to watch their entire dashboard slowly drift out of alignment with reality, with no way to correct it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Both of those change today.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Moderation: approval before entry<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Group owners can now switch on <strong>moderation<\/strong> from the dashboard. It is off by default, and nothing changes for any existing group unless the owner deliberately turns it on.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With moderation on, the invite link stops being an open door. Someone who registers through it still creates a full Efiwe account and can start learning immediately; they simply are not part of your group yet. Instead, they appear in a new <strong>Membership Moderation<\/strong> section on your dashboard, waiting for review.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">From there, an admin sees each request with the person&#8217;s name, email address, grade, country, and the date they applied. Select one, or select the whole queue, and choose Approve or Reject. Approved members join the group and appear in your user table with their progress tracked from that moment on. Rejected requests are removed from the queue and nothing else happens to that person: their Efiwe account, their progress, their certificates, and their streaks are all untouched. They simply are not affiliated with your group. That last detail was deliberate. Rejecting someone from a school cohort should not cost them their coding education.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Approvals also respect your plan. When you approve a batch, Efiwe checks the number of seats you actually have left before anything happens. If approving all fifteen selected people would put a 300-member Group Pro over its limit, the whole action is blocked and you are told precisely why: how many members you have, what your limit is, how many seats remain, and how many you tried to approve. Nothing is partially approved and nothing silently fails. You choose whether to approve fewer people, remove inactive members, or upgrade.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Who can do what:<\/strong> only the group owner can switch moderation on or off. Both the owner and sub-admins can approve and reject. That split reflects how groups actually run: a school coordinator or TFN Fellow managing day-to-day enrolment should be able to clear the queue without needing the account holder, but the decision about whether the group is gated at all belongs to the person who owns it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Email notifications, for paid groups<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A moderation queue is only useful if someone knows there is something in it. Nobody should have to open the dashboard speculatively to find out whether anyone applied.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For groups on <strong>Group Pro<\/strong> and <strong>Group Pro Plus<\/strong> with moderation switched on, every new signup through the invite link now triggers an email to the group owner and every sub-admin. The email includes who applied, their email address, their grade and country where available, how many requests are now waiting in total, and how many seats you have left, including a clear warning when the queue already exceeds your remaining capacity. A link takes you straight to the dashboard to review.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Each admin receives their own copy, so no admin&#8217;s address is ever exposed to another. And the notification only fires when it is genuinely useful: a paid plan, moderation on, and a real pending request behind it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Promotions: moving learners up a grade<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The third change is smaller in scope and larger in daily use.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Owners and sub-admins can now select learners in the dashboard and promote them to a higher grade. Select the students, click <strong>Promote Users<\/strong>, choose the new grade from a dropdown that runs from their current grade up to Grade 12, and confirm. Their grades update immediately, and every grade filter, level breakdown, and export reflects the change.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The rules around it are strict on purpose:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Everyone in a selection must currently be in the <strong>same grade<\/strong>. A mixed selection leaves the button disabled, because &#8220;promote these thirty students&#8221; has no single correct answer if they are spread across four grades.<\/li>\n\n\n\n<li>Learners already in <strong>Grade 12<\/strong> cannot be promoted, since there is nowhere above it to go. If even one Grade 12 student is in a selection, the button stays disabled rather than quietly skipping them.<\/li>\n\n\n\n<li>Promotion only moves <strong>upward<\/strong>. The dropdown starts at the current grade and offers nothing below it.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">When the button is disabled, hovering over it explains which of these rules is the reason. And every one of these rules is enforced again on our servers, not just in the interface, so the outcome is the same regardless of how the request arrives.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is built for the moment that happens in every school in Nigeria and India at the same time each year: a new academic session begins, and an entire class needs to move up together. Filter your dashboard to Grade 8, select all, promote to Grade 9. What used to be impossible now takes about four seconds.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Getting started<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Open your group dashboard. The Membership Moderation section sits just below the group invite link. If you are the group owner, the toggle is there waiting; switch it on when you want approval before entry, and off when you do not.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To promote learners, use the grade filter to narrow your table, select the students you want to move, and click <strong>Promote Users<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you are setting up a group for the first time, visit <strong><a href=\"https:\/\/efiwe.com\/register\" data-type=\"link\" data-id=\"https:\/\/efiwe.com\/register\" target=\"_blank\" rel=\"noreferrer noopener\">efiwe.com\/register<\/a><\/strong>, select <strong>Group<\/strong> as your account type, and follow the steps.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Group Accounts started as a way to see what your learners were doing. With moderation, notifications, and promotions, they become a way to actually manage them, which, for the schools, NGOs, and government partners running structured programmes on Efiwe, was always the harder half of the job.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Group owners can now switch on moderation from the dashboard. It is off by default, and nothing changes for any existing group unless the owner deliberately turns it on. With moderation on, the invite link stops being an open door. Someone who registers through it still creates a full Efiwe account and can start learning immediately; they simply are not part of your group yet. Instead, they appear in a new Membership Moderation section on your dashboard, waiting for review. From there, an admin sees each request with the person&#8217;s name, email address, grade, country, and the date they applied. Select one, or select the whole queue, and choose Approve or Reject. Approved members join the group and appear in your user table with their progress tracked from that moment on.<\/p>\n","protected":false},"author":1,"featured_media":313,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[286,4,287,285,282,288,289,284],"class_list":["post-306","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-control","tag-efiwe","tag-email","tag-grade-promotion","tag-moderation","tag-notiification","tag-paid-group","tag-promotion"],"_links":{"self":[{"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/posts\/306","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/comments?post=306"}],"version-history":[{"count":5,"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/posts\/306\/revisions"}],"predecessor-version":[{"id":314,"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/posts\/306\/revisions\/314"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/media\/313"}],"wp:attachment":[{"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/media?parent=306"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/categories?post=306"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/efiwe.com\/blog\/wp-json\/wp\/v2\/tags?post=306"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}