/* eslint no-undef: 0*/ import { findCustomWizard, updateCachedWizard } from "../models/custom"; import { ajax } from "wizard/lib/ajax"; import WizardI18n from "../lib/wizard-i18n"; export default Ember.Route.extend({ beforeModel(transition) { this.set("queryParams", transition.intent.queryParams); }, model(params) { return findCustomWizard(params.wizard_id, this.get("queryParams")); }, renderTemplate() { this.render("custom"); const wizardModel = this.modelFor("custom"); const stepModel = this.modelFor("custom.step"); if ( wizardModel.resume_on_revisit && wizardModel.submission_last_updated_at && stepModel.index > 0 ) { this.showDialog(wizardModel); } }, showDialog(wizardModel) { const title = WizardI18n("wizard.incomplete_submission.title", { date: moment(wizardModel.submission_last_updated_at).format( "MMMM Do YYYY" ), }); const buttons = [ { label: WizardI18n("wizard.incomplete_submission.restart"), class: "btn btn-default", callback: () => { wizardModel.restart(); }, }, { label: WizardI18n("wizard.incomplete_submission.resume"), class: "btn btn-primary", }, ]; const options = { onEscape: false, }; bootbox.dialog(title, buttons, options); }, afterModel(model) { updateCachedWizard(model); return ajax({ url: `/site/settings`, type: "GET", }).then((result) => { $.extend(Wizard.SiteSettings, result); }); }, setupController(controller, model) { const background = model ? model.get("background") : "AliceBlue"; Ember.run.scheduleOnce("afterRender", this, function () { $("body.custom-wizard").css("background", background); if (model && model.id) { $("#custom-wizard-main").addClass(model.id.dasherize()); } }); controller.setProperties({ customWizard: true, logoUrl: Wizard.SiteSettings.logo_small, reset: null, }); }, });