From 2444ed5c88998a2c99ba5917eab26923f7d7ffb1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?=
 <barisusakli@gmail.com>
Date: Tue, 1 Oct 2019 10:16:36 -0400
Subject: [PATCH] feat: #7932, redirect to group details after creation

add private/hidden on group creation modal
---
 public/src/admin/manage/groups.js |  6 ++++--
 src/socket.io/admin/groups.js     |  2 ++
 src/views/admin/manage/groups.tpl | 13 +++++++++++++
 3 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/public/src/admin/manage/groups.js b/public/src/admin/manage/groups.js
index 5b42e9eb64..de6f515d57 100644
--- a/public/src/admin/manage/groups.js
+++ b/public/src/admin/manage/groups.js
@@ -31,9 +31,11 @@ define('admin/manage/groups', ['translator', 'benchpress'], function (translator
 			var submitObj = {
 				name: createGroupName.val(),
 				description: $('#create-group-desc').val(),
+				private: $('#create-group-private').is(':checked') ? 1 : 0,
+				hidden: $('#create-group-hidden').is(':checked') ? 1 : 0,
 			};
 
-			socket.emit('admin.groups.create', submitObj, function (err) {
+			socket.emit('admin.groups.create', submitObj, function (err, groupData) {
 				if (err) {
 					if (err.hasOwnProperty('message') && utils.hasLanguageKey(err.message)) {
 						err = '[[admin/manage/groups:alerts.create-failure]]';
@@ -43,7 +45,7 @@ define('admin/manage/groups', ['translator', 'benchpress'], function (translator
 					createModalError.addClass('hide');
 					createGroupName.val('');
 					createModal.on('hidden.bs.modal', function () {
-						ajaxify.refresh();
+						ajaxify.go('admin/manage/groups/' + groupData.slug);
 					});
 					createModal.modal('hide');
 				}
diff --git a/src/socket.io/admin/groups.js b/src/socket.io/admin/groups.js
index 98325c656b..b58bc81e03 100644
--- a/src/socket.io/admin/groups.js
+++ b/src/socket.io/admin/groups.js
@@ -14,6 +14,8 @@ Groups.create = async function (socket, data) {
 	return await groups.create({
 		name: data.name,
 		description: data.description,
+		private: data.private,
+		hidden: data.hidden,
 		ownerUid: socket.uid,
 	});
 };
diff --git a/src/views/admin/manage/groups.tpl b/src/views/admin/manage/groups.tpl
index b65cae462e..662ae2428a 100644
--- a/src/views/admin/manage/groups.tpl
+++ b/src/views/admin/manage/groups.tpl
@@ -77,6 +77,19 @@
 							<label for="create-group-desc">[[admin/manage/groups:description]]</label>
 							<input type="text" class="form-control" id="create-group-desc" placeholder="[[admin/manage/groups:description-placeholder]]" />
 						</div>
+						<div class="form-group">
+							<label>
+								<input id="create-group-private" name="private" type="checkbox" checked>
+								<strong>[[admin/manage/groups:private]]</strong>
+							</label>
+						</div>
+						<div class="form-group">
+							<label>
+								<input id="create-group-hidden" name="hidden" type="checkbox">
+								<strong>[[admin/manage/groups:hidden]]</strong>
+							</label>
+						</div>
+
 					</form>
 				</div>
 				<div class="modal-footer">