2023-09-29 17:14:17 +08:00
|
|
|
import { action, computed } from "@ember/object";
|
2019-10-24 01:06:54 +08:00
|
|
|
import Controller from "@ember/controller";
|
2018-07-20 02:33:11 +08:00
|
|
|
import PeriodComputationMixin from "admin/mixins/period-computation";
|
2019-11-08 05:38:28 +08:00
|
|
|
import discourseComputed from "discourse-common/utils/decorators";
|
2020-06-04 00:45:26 +08:00
|
|
|
import getURL from "discourse-common/lib/get-url";
|
2023-09-29 17:14:17 +08:00
|
|
|
import { inject as service } from "@ember/service";
|
|
|
|
import CustomDateRangeModal from "../components/modal/custom-date-range";
|
2018-07-20 02:33:11 +08:00
|
|
|
|
2023-03-15 17:42:12 +08:00
|
|
|
export default class AdminDashboardModerationController extends Controller.extend(
|
|
|
|
PeriodComputationMixin
|
|
|
|
) {
|
2023-09-29 17:14:17 +08:00
|
|
|
@service modal;
|
|
|
|
|
2019-11-08 05:38:28 +08:00
|
|
|
@discourseComputed
|
2018-07-20 02:33:11 +08:00
|
|
|
flagsStatusOptions() {
|
|
|
|
return {
|
|
|
|
table: {
|
|
|
|
total: false,
|
|
|
|
perPage: 10,
|
|
|
|
},
|
|
|
|
};
|
2023-03-15 17:42:12 +08:00
|
|
|
}
|
2018-07-20 02:33:11 +08:00
|
|
|
|
2023-03-15 17:42:12 +08:00
|
|
|
@computed("siteSettings.dashboard_hidden_reports")
|
|
|
|
get isModeratorsActivityVisible() {
|
|
|
|
return !(this.siteSettings.dashboard_hidden_reports || "")
|
|
|
|
.split("|")
|
|
|
|
.filter(Boolean)
|
|
|
|
.includes("moderators_activity");
|
|
|
|
}
|
2020-04-30 23:31:04 +08:00
|
|
|
|
2019-11-08 05:38:28 +08:00
|
|
|
@discourseComputed
|
2018-11-13 05:23:10 +08:00
|
|
|
userFlaggingRatioOptions() {
|
2018-10-26 21:59:04 +08:00
|
|
|
return {
|
|
|
|
table: {
|
|
|
|
total: false,
|
|
|
|
perPage: 10,
|
|
|
|
},
|
|
|
|
};
|
2023-03-15 17:42:12 +08:00
|
|
|
}
|
2018-10-26 21:59:04 +08:00
|
|
|
|
2019-11-08 05:38:28 +08:00
|
|
|
@discourseComputed("startDate", "endDate")
|
2018-07-27 13:22:00 +08:00
|
|
|
filters(startDate, endDate) {
|
|
|
|
return { startDate, endDate };
|
2023-03-15 17:42:12 +08:00
|
|
|
}
|
2018-07-27 13:22:00 +08:00
|
|
|
|
2019-11-08 05:38:28 +08:00
|
|
|
@discourseComputed("lastWeek", "endDate")
|
2018-07-27 13:22:00 +08:00
|
|
|
lastWeekfilters(startDate, endDate) {
|
|
|
|
return { startDate, endDate };
|
2023-03-15 17:42:12 +08:00
|
|
|
}
|
2018-07-27 13:22:00 +08:00
|
|
|
|
2018-07-20 02:33:11 +08:00
|
|
|
_reportsForPeriodURL(period) {
|
2020-06-04 00:45:26 +08:00
|
|
|
return getURL(`/admin/dashboard/moderation?period=${period}`);
|
2023-03-15 17:42:12 +08:00
|
|
|
}
|
2023-09-29 17:14:17 +08:00
|
|
|
|
|
|
|
@action
|
|
|
|
setCustomDateRange(startDate, endDate) {
|
|
|
|
this.setProperties({ startDate, endDate });
|
|
|
|
}
|
|
|
|
|
|
|
|
@action
|
|
|
|
openCustomDateRangeModal() {
|
|
|
|
this.modal.show(CustomDateRangeModal, {
|
|
|
|
model: {
|
|
|
|
startDate: this.startDate,
|
|
|
|
endDate: this.endDate,
|
|
|
|
setCustomDateRange: this.setCustomDateRange,
|
|
|
|
},
|
|
|
|
});
|
|
|
|
}
|
2023-03-15 17:42:12 +08:00
|
|
|
}
|