1
0
Fork 0
discourse-custom-wizard-unl.../assets/javascripts/discourse/models/custom-wizard-logs.js.es6
2021-09-09 14:07:12 +08:00

51 Zeilen
1,2 KiB
JavaScript

import { ajax } from "discourse/lib/ajax";
import { popupAjaxError } from "discourse/lib/ajax-error";
import EmberObject from "@ember/object";
const CustomWizardLogs = EmberObject.extend();
const logItemTypes = {
date: "date_time",
action: "text",
message: "long_text",
user: "user",
username: "text",
};
function logItem(item, attr) {
return {
value: item[attr],
type: logItemTypes[attr],
};
}
CustomWizardLogs.reopenClass({
list(wizardId, page = 0) {
let data = {
page,
};
return ajax(`/admin/wizards/logs/${wizardId}`, { data })
.catch(popupAjaxError)
.then((result) => {
if (result.logs) {
result.logs = result.logs.map((item) => {
let map = {};
if (item.date) {map.date = logItem(item, "date");}
if (item.action) {map.action = logItem(item, "action");}
if (item.user) {
map.user = item.user;
} else {
map.user = logItem(item, "username");
}
if (item.message) {map.message = logItem(item, "message");}
return map;
});
}
return result;
});
},
});
export default CustomWizardLogs;