mirror of
https://github.com/discourse/discourse.git
synced 2024-11-30 08:34:39 +08:00
b39f823fd3
* FEATURE: add custom date range filter for admin dashboard reports * Improvements per David's review
72 lines
1.7 KiB
JavaScript
72 lines
1.7 KiB
JavaScript
import { action, computed } from "@ember/object";
|
|
import Controller from "@ember/controller";
|
|
import PeriodComputationMixin from "admin/mixins/period-computation";
|
|
import discourseComputed from "discourse-common/utils/decorators";
|
|
import getURL from "discourse-common/lib/get-url";
|
|
import { inject as service } from "@ember/service";
|
|
import CustomDateRangeModal from "../components/modal/custom-date-range";
|
|
|
|
export default class AdminDashboardModerationController extends Controller.extend(
|
|
PeriodComputationMixin
|
|
) {
|
|
@service modal;
|
|
|
|
@discourseComputed
|
|
flagsStatusOptions() {
|
|
return {
|
|
table: {
|
|
total: false,
|
|
perPage: 10,
|
|
},
|
|
};
|
|
}
|
|
|
|
@computed("siteSettings.dashboard_hidden_reports")
|
|
get isModeratorsActivityVisible() {
|
|
return !(this.siteSettings.dashboard_hidden_reports || "")
|
|
.split("|")
|
|
.filter(Boolean)
|
|
.includes("moderators_activity");
|
|
}
|
|
|
|
@discourseComputed
|
|
userFlaggingRatioOptions() {
|
|
return {
|
|
table: {
|
|
total: false,
|
|
perPage: 10,
|
|
},
|
|
};
|
|
}
|
|
|
|
@discourseComputed("startDate", "endDate")
|
|
filters(startDate, endDate) {
|
|
return { startDate, endDate };
|
|
}
|
|
|
|
@discourseComputed("lastWeek", "endDate")
|
|
lastWeekfilters(startDate, endDate) {
|
|
return { startDate, endDate };
|
|
}
|
|
|
|
_reportsForPeriodURL(period) {
|
|
return getURL(`/admin/dashboard/moderation?period=${period}`);
|
|
}
|
|
|
|
@action
|
|
setCustomDateRange(startDate, endDate) {
|
|
this.setProperties({ startDate, endDate });
|
|
}
|
|
|
|
@action
|
|
openCustomDateRangeModal() {
|
|
this.modal.show(CustomDateRangeModal, {
|
|
model: {
|
|
startDate: this.startDate,
|
|
endDate: this.endDate,
|
|
setCustomDateRange: this.setCustomDateRange,
|
|
},
|
|
});
|
|
}
|
|
}
|