Continue on group moderation error

This commit is contained in:
Natsumi
2024-11-09 00:08:14 +13:00
parent a47c5f8f7a
commit 0c1ba1f162
+284 -300
View File
@@ -3024,263 +3024,251 @@ export default class extends baseClass {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try { for (var i = 0; i < memberCount; i++) {
for (var i = 0; i < memberCount; i++) { if (!D.visible || !D.progressTotal) {
if (!D.visible || !D.progressTotal) { break;
break; }
} var user = D.selectedUsersArray[i];
var user = D.selectedUsersArray[i]; D.progressCurrent = i + 1;
D.progressCurrent = i + 1; if (user.userId === API.currentUser.id) {
if (user.userId === API.currentUser.id) { continue;
continue; }
} console.log(`Kicking ${user.userId} ${i + 1}/${memberCount}`);
try {
await API.kickGroupMember({ await API.kickGroupMember({
groupId: D.id, groupId: D.id,
userId: user.userId userId: user.userId
}); });
console.log( } catch (err) {
`Kicking ${user.userId} ${i + 1}/${memberCount}` console.error(err);
); this.$message({
message: `Failed to kick group member: ${err}`,
type: 'error'
});
} }
this.$message({
message: `Kicked ${memberCount} group members`,
type: 'success'
});
} catch (err) {
console.error(err);
this.$message({
message: `Failed to kick group member: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0;
D.progressTotal = 0;
} }
this.$message({
message: `Kicked ${memberCount} group members`,
type: 'success'
});
D.progressCurrent = 0;
D.progressTotal = 0;
}, },
async groupMembersBan() { async groupMembersBan() {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try { for (var i = 0; i < memberCount; i++) {
for (var i = 0; i < memberCount; i++) { if (!D.visible || !D.progressTotal) {
if (!D.visible || !D.progressTotal) { break;
break; }
} var user = D.selectedUsersArray[i];
var user = D.selectedUsersArray[i]; D.progressCurrent = i + 1;
D.progressCurrent = i + 1; if (user.userId === API.currentUser.id) {
if (user.userId === API.currentUser.id) { continue;
continue; }
} console.log(`Banning ${user.userId} ${i + 1}/${memberCount}`);
try {
await API.banGroupMember({ await API.banGroupMember({
groupId: D.id, groupId: D.id,
userId: user.userId userId: user.userId
}); });
console.log( } catch (err) {
`Banning ${user.userId} ${i + 1}/${memberCount}` console.error(err);
); this.$message({
message: `Failed to ban group member: ${err}`,
type: 'error'
});
} }
this.$message({
message: `Banned ${memberCount} group members`,
type: 'success'
});
} catch (err) {
console.error(err);
this.$message({
message: `Failed to ban group member: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0;
D.progressTotal = 0;
} }
this.$message({
message: `Banned ${memberCount} group members`,
type: 'success'
});
D.progressCurrent = 0;
D.progressTotal = 0;
}, },
async groupMembersUnban() { async groupMembersUnban() {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try {
for (var i = 0; i < memberCount; i++) { for (var i = 0; i < memberCount; i++) {
if (!D.visible || !D.progressTotal) { if (!D.visible || !D.progressTotal) {
break; break;
} }
var user = D.selectedUsersArray[i]; var user = D.selectedUsersArray[i];
D.progressCurrent = i + 1; D.progressCurrent = i + 1;
if (user.userId === API.currentUser.id) { if (user.userId === API.currentUser.id) {
continue; continue;
} }
console.log(`Unbanning ${user.userId} ${i + 1}/${memberCount}`);
try {
await API.unbanGroupMember({ await API.unbanGroupMember({
groupId: D.id, groupId: D.id,
userId: user.userId userId: user.userId
}); });
console.log( } catch (err) {
`Unbanning ${user.userId} ${i + 1}/${memberCount}` console.error(err);
); this.$message({
message: `Failed to unban group member: ${err}`,
type: 'error'
});
} }
this.$message({
message: `Unbanned ${memberCount} group members`,
type: 'success'
});
} catch (err) {
console.error(err);
this.$message({
message: `Failed to unban group member: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0;
D.progressTotal = 0;
} }
this.$message({
message: `Unbanned ${memberCount} group members`,
type: 'success'
});
D.progressCurrent = 0;
D.progressTotal = 0;
}, },
async groupMembersDeleteSentInvite() { async groupMembersDeleteSentInvite() {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try { for (var i = 0; i < memberCount; i++) {
for (var i = 0; i < memberCount; i++) { if (!D.visible || !D.progressTotal) {
if (!D.visible || !D.progressTotal) { break;
break; }
} var user = D.selectedUsersArray[i];
var user = D.selectedUsersArray[i]; D.progressCurrent = i + 1;
D.progressCurrent = i + 1; if (user.userId === API.currentUser.id) {
if (user.userId === API.currentUser.id) { continue;
continue; }
} console.log(
`Deleting group invite ${user.userId} ${i + 1}/${memberCount}`
);
try {
await API.deleteSentGroupInvite({ await API.deleteSentGroupInvite({
groupId: D.id, groupId: D.id,
userId: user.userId userId: user.userId
}); });
console.log( } catch (err) {
`Deleting group invite ${user.userId} ${i + 1}/${memberCount}` console.error(err);
); this.$message({
message: `Failed to delete group invites: ${err}`,
type: 'error'
});
} }
this.$message({
message: `Deleted ${memberCount} group invites`,
type: 'success'
});
} catch (err) {
console.error(err);
this.$message({
message: `Failed to delete group invites: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0;
D.progressTotal = 0;
} }
this.$message({
message: `Deleted ${memberCount} group invites`,
type: 'success'
});
D.progressCurrent = 0;
D.progressTotal = 0;
}, },
async groupMembersDeleteBlockedRequest() { async groupMembersDeleteBlockedRequest() {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try { for (var i = 0; i < memberCount; i++) {
for (var i = 0; i < memberCount; i++) { if (!D.visible || !D.progressTotal) {
if (!D.visible || !D.progressTotal) { break;
break; }
} var user = D.selectedUsersArray[i];
var user = D.selectedUsersArray[i]; D.progressCurrent = i + 1;
D.progressCurrent = i + 1; if (user.userId === API.currentUser.id) {
if (user.userId === API.currentUser.id) { continue;
continue; }
} console.log(
`Deleting blocked group request ${user.userId} ${i + 1}/${memberCount}`
);
try {
await API.deleteBlockedGroupRequest({ await API.deleteBlockedGroupRequest({
groupId: D.id, groupId: D.id,
userId: user.userId userId: user.userId
}); });
console.log( } catch (err) {
`Deleting blocked group request ${user.userId} ${i + 1}/${memberCount}` console.error(err);
); this.$message({
message: `Failed to delete blocked group requests: ${err}`,
type: 'error'
});
} }
this.$message({
message: `Deleted ${memberCount} blocked group requests`,
type: 'success'
});
} catch (err) {
console.error(err);
this.$message({
message: `Failed to delete blocked group requests: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0;
D.progressTotal = 0;
} }
this.$message({
message: `Deleted ${memberCount} blocked group requests`,
type: 'success'
});
D.progressCurrent = 0;
D.progressTotal = 0;
}, },
async groupMembersAcceptInviteRequest() { async groupMembersAcceptInviteRequest() {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try { for (var i = 0; i < memberCount; i++) {
for (var i = 0; i < memberCount; i++) { if (!D.visible || !D.progressTotal) {
if (!D.visible || !D.progressTotal) { break;
break; }
} var user = D.selectedUsersArray[i];
var user = D.selectedUsersArray[i]; D.progressCurrent = i + 1;
D.progressCurrent = i + 1; if (user.userId === API.currentUser.id) {
if (user.userId === API.currentUser.id) { continue;
continue; }
} console.log(
`Accepting group join request ${user.userId} ${i + 1}/${memberCount}`
);
try {
await API.acceptGroupInviteRequest({ await API.acceptGroupInviteRequest({
groupId: D.id, groupId: D.id,
userId: user.userId userId: user.userId
}); });
console.log( } catch (err) {
`Accepting group join request ${user.userId} ${i + 1}/${memberCount}` console.error(err);
); this.$message({
message: `Failed to accept group join requests: ${err}`,
type: 'error'
});
} }
this.$message({
message: `Accepted ${memberCount} group join requests`,
type: 'success'
});
} catch (err) {
console.error(err);
this.$message({
message: `Failed to accept group join requests: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0;
D.progressTotal = 0;
} }
this.$message({
message: `Accepted ${memberCount} group join requests`,
type: 'success'
});
D.progressCurrent = 0;
D.progressTotal = 0;
}, },
async groupMembersRejectInviteRequest() { async groupMembersRejectInviteRequest() {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try { for (var i = 0; i < memberCount; i++) {
for (var i = 0; i < memberCount; i++) { if (!D.visible || !D.progressTotal) {
if (!D.visible || !D.progressTotal) { break;
break; }
} var user = D.selectedUsersArray[i];
var user = D.selectedUsersArray[i]; D.progressCurrent = i + 1;
D.progressCurrent = i + 1; if (user.userId === API.currentUser.id) {
if (user.userId === API.currentUser.id) { continue;
continue; }
} console.log(
`Rejecting group join request ${user.userId} ${i + 1}/${memberCount}`
);
try {
await API.rejectGroupInviteRequest({ await API.rejectGroupInviteRequest({
groupId: D.id, groupId: D.id,
userId: user.userId userId: user.userId
}); });
console.log( } catch (err) {
`Rejecting group join request ${user.userId} ${i + 1}/${memberCount}` console.error(err);
); this.$message({
message: `Failed to reject group join requests: ${err}`,
type: 'error'
});
} }
this.$message({ this.$message({
message: `Rejected ${memberCount} group join requests`, message: `Rejected ${memberCount} group join requests`,
type: 'success' type: 'success'
}); });
} catch (err) {
console.error(err);
this.$message({
message: `Failed to reject group join requests: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0; D.progressCurrent = 0;
D.progressTotal = 0; D.progressTotal = 0;
} }
@@ -3290,178 +3278,174 @@ export default class extends baseClass {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try { for (var i = 0; i < memberCount; i++) {
for (var i = 0; i < memberCount; i++) { if (!D.visible || !D.progressTotal) {
if (!D.visible || !D.progressTotal) { break;
break; }
} var user = D.selectedUsersArray[i];
var user = D.selectedUsersArray[i]; D.progressCurrent = i + 1;
D.progressCurrent = i + 1; if (user.userId === API.currentUser.id) {
if (user.userId === API.currentUser.id) { continue;
continue; }
} console.log(
`Blocking group join request ${user.userId} ${i + 1}/${memberCount}`
);
try {
await API.blockGroupInviteRequest({ await API.blockGroupInviteRequest({
groupId: D.id, groupId: D.id,
userId: user.userId userId: user.userId
}); });
console.log( } catch (err) {
`Blocking group join request ${user.userId} ${i + 1}/${memberCount}` console.error(err);
); this.$message({
message: `Failed to block group join requests: ${err}`,
type: 'error'
});
} }
this.$message({
message: `Blocked ${memberCount} group join requests`,
type: 'success'
});
} catch (err) {
console.error(err);
this.$message({
message: `Failed to block group join requests: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0;
D.progressTotal = 0;
} }
this.$message({
message: `Blocked ${memberCount} group join requests`,
type: 'success'
});
D.progressCurrent = 0;
D.progressTotal = 0;
}, },
async groupMembersSaveNote() { async groupMembersSaveNote() {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try { for (var i = 0; i < memberCount; i++) {
for (var i = 0; i < memberCount; i++) { if (!D.visible || !D.progressTotal) {
if (!D.visible || !D.progressTotal) { break;
break; }
} var user = D.selectedUsersArray[i];
var user = D.selectedUsersArray[i]; D.progressCurrent = i + 1;
D.progressCurrent = i + 1; if (user.managerNotes === D.note) {
if (user.managerNotes === D.note) { continue;
continue; }
} console.log(
`Setting note ${D.note} ${user.userId} ${
i + 1
}/${memberCount}`
);
try {
await API.setGroupMemberProps(user.userId, D.id, { await API.setGroupMemberProps(user.userId, D.id, {
managerNotes: D.note managerNotes: D.note
}); });
console.log( } catch (err) {
`Setting note ${D.note} ${user.userId} ${ console.error(err);
i + 1 this.$message({
}/${memberCount}` message: `Failed to set group member note: ${err}`,
); type: 'error'
});
} }
this.$message({
message: `Saved notes for ${memberCount} group members`,
type: 'success'
});
} catch (err) {
console.error(err);
this.$message({
message: `Failed to set group member note: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0;
D.progressTotal = 0;
} }
this.$message({
message: `Saved notes for ${memberCount} group members`,
type: 'success'
});
D.progressCurrent = 0;
D.progressTotal = 0;
}, },
async groupMembersAddRoles() { async groupMembersAddRoles() {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try { for (var i = 0; i < memberCount; i++) {
for (var i = 0; i < memberCount; i++) { if (!D.visible || !D.progressTotal) {
if (!D.visible || !D.progressTotal) { break;
break; }
var user = D.selectedUsersArray[i];
D.progressCurrent = i + 1;
var rolesToAdd = [];
D.selectedRoles.forEach((roleId) => {
if (!user.roleIds.includes(roleId)) {
rolesToAdd.push(roleId);
} }
var user = D.selectedUsersArray[i]; });
D.progressCurrent = i + 1;
var rolesToAdd = [];
D.selectedRoles.forEach((roleId) => {
if (!user.roleIds.includes(roleId)) {
rolesToAdd.push(roleId);
}
});
if (!rolesToAdd.length) { if (!rolesToAdd.length) {
continue; continue;
} }
for (var j = 0; j < rolesToAdd.length; j++) { for (var j = 0; j < rolesToAdd.length; j++) {
var roleId = rolesToAdd[j]; var roleId = rolesToAdd[j];
console.log( console.log(
`Adding role: ${roleId} ${user.userId} ${ `Adding role: ${roleId} ${user.userId} ${
i + 1 i + 1
}/${memberCount}` }/${memberCount}`
); );
try {
await API.addGroupMemberRole({ await API.addGroupMemberRole({
groupId: D.id, groupId: D.id,
userId: user.userId, userId: user.userId,
roleId roleId
}); });
} catch (err) {
console.error(err);
this.$message({
message: `Failed to add group member roles: ${err}`,
type: 'error'
});
} }
} }
this.$message({
message: 'Added group member roles',
type: 'success'
});
} catch (err) {
console.error(err);
this.$message({
message: `Failed to add group member roles: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0;
D.progressTotal = 0;
} }
this.$message({
message: 'Added group member roles',
type: 'success'
});
D.progressCurrent = 0;
D.progressTotal = 0;
}, },
async groupMembersRemoveRoles() { async groupMembersRemoveRoles() {
var D = this.groupMemberModeration; var D = this.groupMemberModeration;
var memberCount = D.selectedUsersArray.length; var memberCount = D.selectedUsersArray.length;
D.progressTotal = memberCount; D.progressTotal = memberCount;
try { for (var i = 0; i < memberCount; i++) {
for (var i = 0; i < memberCount; i++) { if (!D.visible || !D.progressTotal) {
if (!D.visible || !D.progressTotal) { break;
break; }
var user = D.selectedUsersArray[i];
D.progressCurrent = i + 1;
var rolesToRemove = [];
D.selectedRoles.forEach((roleId) => {
if (user.roleIds.includes(roleId)) {
rolesToRemove.push(roleId);
} }
var user = D.selectedUsersArray[i]; });
D.progressCurrent = i + 1; if (!rolesToRemove.length) {
var rolesToRemove = []; continue;
D.selectedRoles.forEach((roleId) => { }
if (user.roleIds.includes(roleId)) { for (var j = 0; j < rolesToRemove.length; j++) {
rolesToRemove.push(roleId); var roleId = rolesToRemove[j];
} console.log(
}); `Removing role ${roleId} ${user.userId} ${
if (!rolesToRemove.length) { i + 1
continue; }/${memberCount}`
} );
for (var j = 0; j < rolesToRemove.length; j++) { try {
var roleId = rolesToRemove[j];
console.log(
`Removing role ${roleId} ${user.userId} ${
i + 1
}/${memberCount}`
);
await API.removeGroupMemberRole({ await API.removeGroupMemberRole({
groupId: D.id, groupId: D.id,
userId: user.userId, userId: user.userId,
roleId roleId
}); });
} catch (err) {
console.error(err);
this.$message({
message: `Failed to remove group member roles: ${err}`,
type: 'error'
});
} }
} }
this.$message({
message: 'Roles removed',
type: 'success'
});
} catch (err) {
console.error(err);
this.$message({
message: `Failed to remove group member roles: ${err}`,
type: 'error'
});
} finally {
D.progressCurrent = 0;
D.progressTotal = 0;
} }
this.$message({
message: 'Roles removed',
type: 'success'
});
D.progressCurrent = 0;
D.progressTotal = 0;
}, },
async selectGroupMemberUserId() { async selectGroupMemberUserId() {