summaryrefslogtreecommitdiff
path: root/sh_helpdesk/static/src/js/helpdesk_ticket_dasboard.js
blob: 6f2ab06b26cfe4ffdb2b6bfb4cdda134048e2679 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
odoo.define('sh_helpdesk.helpdesk_ticket_dasboard', function (require) {
	var ajax = require('web.ajax');
    var core = require('web.core');
    var rpc = require('web.rpc');

    var qweb = core.qweb;
    var _t = core._t;
    var KanbanRenderer = require("web.KanbanRenderer");
KanbanRenderer.include({
	events: _.extend({}, KanbanRenderer.prototype.events || {}, {
		"click .sh_tile_click": "action_all_tickets",
    }),
    action_all_tickets: function (event) {
    	console.log("clicked");
		event.stopPropagation();
        event.preventDefault();
        var self = this;
        var $el = $(event.currentTarget).attr("data-res_ids");
        if ($el == undefined){
        	this._rpc({
                model: "ir.model.data",
                method: "xmlid_to_res_model_res_id",
                args: ["sh_helpdesk.helpdesk_ticket_form_view"],
            }).then(function (data) {
                self.do_action(
                    {
                        name: _t("Tickets"),
                        type: "ir.actions.act_window",
                        res_model: "helpdesk.ticket",
                        view_mode: "kanban,tree,form",
                        views: [
                        	[false, "kanban"],
                            [false, "list"],
                            [data[1], "form"],
                        ],
                        domain: [["id", "in", []]],
                        target: "current",
                    },
                );
            });
        }
        else{
        	var list_value = JSON.parse($el);
        	this._rpc({
                model: "ir.model.data",
                method: "xmlid_to_res_model_res_id",
                args: ["sh_helpdesk.helpdesk_ticket_form_view"],
            }).then(function (data) {
                self.do_action(
                    {
                        name: _t("Tickets"),
                        type: "ir.actions.act_window",
                        res_model: "helpdesk.ticket",
                        view_mode: "kanban,tree,form",
                        views: [
                        	[false, "kanban"],
                            [false, "list"],
                            [data[1], "form"],
                        ],
                        domain: [["id", "in", list_value]],
                        target: "current",
                    },
                );
            });
        }
    },
});
});