1
0
Fork 0
discourse-custom-wizard-unl.../assets/javascripts/discourse/routes/admin-wizard-submissions.js.es6

56 Zeilen
1,3 KiB
Text

2017-10-22 05:37:58 +02:00
import CustomWizard from '../models/custom-wizard';
2020-03-21 18:30:11 +01:00
import DiscourseRoute from "discourse/routes/discourse";
2017-10-22 05:37:58 +02:00
2020-03-21 18:30:11 +01:00
export default DiscourseRoute.extend({
2020-04-12 01:27:16 +02:00
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());
}
}
},
2017-10-05 02:36:46 +02:00
model(params) {
2020-04-12 01:27:16 +02:00
const wizardId = params.wizard_id;
if (wizardId && wizardId !== 'new') {
return CustomWizard.submissions(params.wizard_id);
} else {
return {};
}
2017-10-05 02:36:46 +02:00
},
setupController(controller, model) {
2020-04-12 01:27:16 +02:00
if (model.submissions) {
let fields = [];
model.submissions.forEach((s) => {
Object.keys(s).forEach((k) => {
if (fields.indexOf(k) < 0) {
fields.push(k);
}
});
2017-11-01 10:50:03 +01:00
});
2017-10-30 07:24:51 +01:00
2020-04-12 01:27:16 +02:00
let submissions = [];
model.submissions.forEach((s) => {
let submission = {};
fields.forEach((f) => {
submission[f] = s[f];
});
submissions.push(submission);
2017-11-01 10:50:03 +01:00
});
2020-04-12 01:27:16 +02:00
console.log(model.id)
2017-11-01 10:50:03 +01:00
2020-04-12 01:27:16 +02:00
controller.setProperties({
wizard: model.wizard,
submissions,
fields
});
}
2017-10-05 02:36:46 +02:00
}
});