xref: /plugin/bpmnio/script.js (revision 135664741dcec9e119ef6a486f8d92379dc1b45c)
1jQuery(document).ready(function() {
2    jQuery("textarea[id^=__bpmnio_]").each(function(i, tag) { try {
3        var xml = jQuery(tag).text();
4	var id = jQuery(tag).attr('id');
5	// avoid doing it twice
6	jQuery(tag).removeAttr('id');
7
8	// bundle exposes the viewer / modeler via the BpmnJS variable
9  	var BpmnViewer = window.BpmnJS;
10  	var containerdiv = document.createElement('div');
11  	containerdiv.className = "canvas";
12  	jQuery(tag).parent().append(containerdiv);
13  	var viewer = new BpmnViewer({ container: containerdiv });
14	viewer.importXML(xml, function(err) {
15	    if (err) {
16	        containerdiv.text = err;
17      	        console.log('error rendering', err);
18    	    } else {
19                var canvas = viewer.get('canvas');
20                var bboxViewport = canvas.getDefaultLayer().getBBox(true);
21                var bboxSvg = canvas.getSize();
22                canvas.viewbox({ x: bboxViewport.x, y: bboxViewport.y, width: bboxSvg.width, height: bboxSvg.height });
23                var height = bboxViewport.height + 4;
24                // hack: adjust the div height because it doesn't automatically..
25                containerdiv.style.height = "" + height + 'px';
26            }
27	});
28	jQuery(tag).remove();
29    }catch(err){
30        console.warn(err.message);
31    }});
32});
33