odoo.define('website_support.new_help_group', function (require) {
'use strict';

    var core = require('web.core');
    var base = require('web_editor.base');
    var WebsiteNewMenu = require("website.newMenu");
    var wUtils = require('website.utils');

    var _t = core._t;

    WebsiteNewMenu.include({
        actions: _.extend({}, WebsiteNewMenu.prototype.actions || {}, {
            new_help_group: 'new_help_group',
        }),

        new_help_group: function() {
            wUtils.prompt({
                id: "editor_new_help_group",
                window_title: _t("New Help Group"),
                input: _t("Help Group"),
                init: function () {

                }
            }).then(function (val, field, $dialog) {
                if (val) {
                    var url = '/helpgroup/new/' + encodeURIComponent(val);
                    document.location = url;
                }
            });
        },

    });
});
Example #2
0
odoo.define('website_forum.editor', function (require) {
"use strict";

var core = require('web.core');
var wUtils = require('website.utils');
var WebsiteNewMenu = require("website.newMenu");

var _t = core._t;

WebsiteNewMenu.include({
    actions: _.extend({}, WebsiteNewMenu.prototype.actions || {}, {
        new_forum: '_createNewForum',
    }),

    //----------------------------------------------------------------------
    // Actions
    //----------------------------------------------------------------------

    /**
     * Asks the user information about a new forum to create, then creates it
     * and redirects the user to this new forum.
     *
     * @private
     */
    _createNewForum: function () {
        var self = this;
        wUtils.prompt({
            id: "editor_new_forum",
            window_title: _t("New Forum"),
            input: "Forum Name",init: function () {
                var $group = this.$dialog.find("div.form-group");
                $group.removeClass("mb0");

                var $add = $(
                    '<div class="form-group mb0">'+
                        '<label class="col-sm-offset-3 col-sm-9 text-left">'+
                        '    <input type="checkbox" required="required"/> '+
                        '</label>'+
                    '</div>');
                $add.find('label').append(_t("Add page in menu"));
                $group.after($add);
            }
        }).then(function (forum_name, field, $dialog) {
            var add_menu = ($dialog.find('input[type="checkbox"]').is(':checked'));
            self._rpc({
                route: '/forum/new',
                params: {
                    forum_name: forum_name,
                    add_menu: add_menu || "",
                },
            }).then(function (url) {
                window.location.href = url;
            });
        });
    },
});
});
Example #3
0
odoo.define('website_blog.new_blog_post', function (require) {
'use strict';

var core = require('web.core');
var wUtils = require('website.utils');
var WebsiteNewMenu = require('website.newMenu');

var _t = core._t;

WebsiteNewMenu.include({
    actions: _.extend({}, WebsiteNewMenu.prototype.actions || {}, {
        new_blog_post: '_createNewBlogPost',
    }),

    //--------------------------------------------------------------------------
    // Actions
    //--------------------------------------------------------------------------

    /**
     * Asks the user information about a new blog post to create, then creates
     * it and redirects the user to this new post.
     *
     * @private
     * @returns {Promise} Unresolved if there is a redirection
     */
    _createNewBlogPost: function () {
        return this._rpc({
            model: 'blog.blog',
            method: 'name_search',
        }).then(function (blog_ids) {
            if (blog_ids.length === 1) {
                document.location = '/blog/' + blog_ids[0][0] + '/post/new';
                return new Promise(function () {});
            } else if (blog_ids.length > 1) {
                return wUtils.prompt({
                    id: 'editor_new_blog',
                    window_title: _t("New Blog Post"),
                    select: _t("Select Blog"),
                    init: function (field) {
                        return blog_ids;
                    },
                }).then(function (result) {
                    var blog_id = result.val;
                    if (!blog_id) {
                        return;
                    }
                    document.location = '/blog/' + blog_id + '/post/new';
                    return new Promise(function () {});
                });
            }
        });
    },
});
});
odoo.define('website_slides_forum.editor', function (require) {
"use strict";

var core = require('web.core');
var QWeb = core.qweb;
var WebsiteNewMenu = require('website.newMenu');

 WebsiteNewMenu.include({
    xmlDependencies: WebsiteNewMenu.prototype.xmlDependencies.concat(
        ['/website_slides_forum/static/src/xml/website_slides_forum_channel.xml']
    ),
});
});
Example #5
0
odoo.define('website_sale.add_product', function (require) {
'use strict';

var core = require('web.core');
var wUtils = require('website.utils');
var WebsiteNewMenu = require('website.newMenu');

var _t = core._t;

WebsiteNewMenu.include({
    actions: _.extend({}, WebsiteNewMenu.prototype.actions || {}, {
        new_product: '_createNewProduct',
    }),

    //--------------------------------------------------------------------------
    // Actions
    //--------------------------------------------------------------------------

    /**
     * Asks the user information about a new product to create, then creates it
     * and redirects the user to this new product.
     *
     * @private
     * @returns {Deferred} Unresolved if there is a redirection
     */
    _createNewProduct: function () {
        var self = this;
        return wUtils.prompt({
            id: "editor_new_product",
            window_title: _t("New Product"),
            input: _t("Name"),
        }).then(function (name) {
            if (!name) {
                return;
            }
            return self._rpc({
                route: '/shop/add_product',
                params: {
                    name: name,
                },
            }).then(function (url) {
                window.location.href = url;
                return $.Deferred();
            });
        });
    },
});
});
odoo.define('website_support.new_help_page', function (require) {
'use strict';

    var core = require('web.core');
    var base = require('web_editor.base');
    var WebsiteNewMenu = require("website.newMenu");
    var wUtils = require('website.utils');
    var rpc = require('web.rpc');
    var weContext = require('web_editor.context');

    var _t = core._t;

    WebsiteNewMenu.include({
        actions: _.extend({}, WebsiteNewMenu.prototype.actions || {}, {
            new_help_page: 'new_help_page',
        }),

        new_help_page: function() {

             rpc.query({
			    model: 'website.support.help.groups',
				method: 'name_search',
				args: [],
				context: weContext.get()
		     }).then(function(action_ids){
                 wUtils.prompt({
                     id: "editor_new_help_page",
                     window_title: _t("New Help Page"),
                     select: "Select Help Group",
                     init: function (field) {
                         return action_ids;
                     },
                 }).then(function (cat_id) {
                     document.location = '/helppage/new?group_id=' + cat_id;
                 });
            });
        },
    });
});