diff --git a/addons/web_diagram/controllers/main.py b/addons/web_diagram/controllers/main.py index 2c0bcffb9d6..28f31ac0c19 100644 --- a/addons/web_diagram/controllers/main.py +++ b/addons/web_diagram/controllers/main.py @@ -10,7 +10,8 @@ class DiagramView(View): return {'fields_view': fields_view} @openerpweb.jsonrequest - def get_diagram_info(self, req, id, model, node, connector, src_node, des_node, **kw): + def get_diagram_info(self, req, id, model, node, connector, + src_node, des_node, label, **kw): visible_node_fields = kw.get('visible_node_fields',[]) invisible_node_fields = kw.get('invisible_node_fields',[]) @@ -36,8 +37,9 @@ class DiagramView(View): shapes[shape_colour] = shape_color_state ir_view = req.session.model('ir.ui.view') - graphs = ir_view.graph_get(int(id), model, node, connector, src_node, des_node, False, - (140, 180), req.session.context) + graphs = ir_view.graph_get( + int(id), model, node, connector, src_node, des_node, label, + (140, 180), req.session.context) nodes = graphs['nodes'] transitions = graphs['transitions'] isolate_nodes = {} @@ -62,14 +64,15 @@ class DiagramView(View): data_connectors =connector_tr.read(connector_ids, connector_fields, req.session.context) - for tr in data_connectors: - t = connectors[str(tr['id'])] + transition_id = str(tr['id']) + _sourceid, label = graphs['label'][transition_id] + t = connectors[transition_id] t.update( source=tr[src_node][1], destination=tr[des_node][1], options={}, - signal=tr.get('signal') + signal=label ) for i, fld in enumerate(connector_fields): diff --git a/addons/web_diagram/static/src/js/diagram.js b/addons/web_diagram/static/src/js/diagram.js index a92eb8c2895..14eea8c669a 100644 --- a/addons/web_diagram/static/src/js/diagram.js +++ b/addons/web_diagram/static/src/js/diagram.js @@ -74,6 +74,7 @@ openerp.web.DiagramView = openerp.web.View.extend({ 'shape': this.nodes.attrs.shape, 'src_node': this.connectors.attrs.source, 'des_node': this.connectors.attrs.destination, + 'label': this.connectors.attrs.label || false, 'visible_nodes': [], 'invisible_nodes': [], 'node_fields': [],