0
0
Fork 1
Spiegel von https://github.com/paviliondev/discourse-custom-wizard.git synchronisiert 2024-09-20 07:41:11 +02:00
discourse-custom-wizard/assets/javascripts/discourse/routes/admin-wizard-submissions.js.es6
Angus McLeod dae08e53d4 various
2020-04-12 09:27:16 +10:00

55 Zeilen
1,3 KiB
JavaScript

import CustomWizard from '../models/custom-wizard';
import DiscourseRoute from "discourse/routes/discourse";
export default DiscourseRoute.extend({
beforeModel() {
const param = this.paramsFor('adminWizardSubmissions').wizard_id;
const wizards = this.modelFor('admin-wizards-submissions');
if (wizards.length && (param === 'first')) {
const wizard = wizards.get(`${param}Object`);
if (wizard) {
this.transitionTo('adminWizardSubmissions', wizard.id.dasherize());
}
}
},
model(params) {
const wizardId = params.wizard_id;
if (wizardId && wizardId !== 'new') {
return CustomWizard.submissions(params.wizard_id);
} else {
return {};
}
},
setupController(controller, model) {
if (model.submissions) {
let fields = [];
model.submissions.forEach((s) => {
Object.keys(s).forEach((k) => {
if (fields.indexOf(k) < 0) {
fields.push(k);
}
});
});
let submissions = [];
model.submissions.forEach((s) => {
let submission = {};
fields.forEach((f) => {
submission[f] = s[f];
});
submissions.push(submission);
});
console.log(model.id)
controller.setProperties({
wizard: model.wizard,
submissions,
fields
});
}
}
});