odoo.define('web.planner.website', function (require) { 'use strict'; var ajax = require('web.ajax'); var core = require('web.core'); var Model = require('web.Model'); var Widget = require('web.Widget'); var planner = require('web.planner.common'); require('web_editor.base'); // wait for implicit dependencies to load var qweb = core.qweb; if(!$('#oe_main_menu_navbar').length) { return $.Deferred().reject("DOM doesn't contain #oe_main_menu_navbar"); } var WebsitePlannerLauncher = Widget.extend({ template: "PlannerLauncher", start: function () { var self = this; var res = this._super.apply(this, arguments); this.$('.progress').show(); return res.then(this.get_website_planner.bind(this)).then(function(planner) { self.$el.on('click', self, self.show_dialog.bind(self)); if (planner.length) { self.planner = planner[0]; self.planner.data = $.parseJSON(planner[0].data) || {}; self.setup(); } }); }, get_website_planner: function () { return (new Model('web.planner')).call('search_read', [[['planner_application', '=', 'planner_website']]]); }, setup: function () { var self = this; this.dialog = new planner.PlannerDialog(this, this.planner); this.dialog.appendTo($('