diff --git a/Odoo Access.canvas b/Odoo Access.canvas index 7caa1ba5..589ac6e3 100644 --- a/Odoo Access.canvas +++ b/Odoo Access.canvas @@ -3,13 +3,13 @@ {"type":"text","text":"User","id":"e4453b07c7efb110","x":-320,"y":-300,"width":100,"height":60,"color":"4"}, {"type":"text","text":"Role","id":"6f83bef240cef0a0","x":-35,"y":-300,"width":100,"height":60,"color":"4"}, {"type":"text","text":"Group","id":"516af98a002c6f8a","x":-320,"y":-150,"width":100,"height":60,"color":"4"}, - {"type":"text","text":"Inherited Group","id":"a53bf8944bdb649a","x":-640,"y":-150,"width":170,"height":60,"color":"4"}, {"type":"text","text":"Menu","id":"d9f6873f51bb0add","x":-605,"y":30,"width":100,"height":60,"color":"3"}, {"type":"text","text":"Views","id":"296c822362e95946","x":-420,"y":30,"width":100,"height":60,"color":"3"}, {"type":"text","text":"Access Rights","id":"39e667b4bb0e6748","x":-220,"y":30,"width":170,"height":60,"color":"1"}, {"type":"text","text":"Model + Domain + Access Type","id":"f63c21d203fff995","x":130,"y":170,"width":175,"height":60,"color":"3"}, {"type":"text","text":"Model + Access Type","id":"0327dc932901ada1","x":-205,"y":170,"width":140,"height":60,"color":"3"}, - {"type":"text","text":"Record Roles","id":"eb6e29f1e861d07c","x":130,"y":30,"width":170,"height":60,"color":"1"} + {"type":"text","text":"Record Roles","id":"eb6e29f1e861d07c","x":130,"y":30,"width":170,"height":60,"color":"1"}, + {"type":"text","text":"Inherited Group","id":"a53bf8944bdb649a","x":-675,"y":-150,"width":170,"height":60,"color":"4"} ], "edges":[ {"id":"dd8f3c35a30ff885","fromNode":"6f83bef240cef0a0","fromSide":"left","toNode":"e4453b07c7efb110","toSide":"right","label":"assign"}, @@ -18,11 +18,10 @@ {"id":"27abfa98f7847086","fromNode":"516af98a002c6f8a","fromSide":"left","toNode":"a53bf8944bdb649a","toSide":"right","label":"include"}, {"id":"cfee08be00958a5c","fromNode":"516af98a002c6f8a","fromSide":"bottom","toNode":"d9f6873f51bb0add","toSide":"top","label":"grant"}, {"id":"1dbc344b6d38d8d4","fromNode":"516af98a002c6f8a","fromSide":"bottom","toNode":"296c822362e95946","toSide":"top","label":"grant"}, - {"id":"07ab12d0a33df69e","fromNode":"516af98a002c6f8a","fromSide":"bottom","toNode":"39e667b4bb0e6748","toSide":"top","label":"include"}, {"id":"c1b494761ae52b4a","fromNode":"516af98a002c6f8a","fromSide":"bottom","toNode":"eb6e29f1e861d07c","toSide":"top","label":"include"}, - {"id":"c19956127b4edab2","fromNode":"39e667b4bb0e6748","fromSide":"top","toNode":"516af98a002c6f8a","toSide":"bottom"}, {"id":"5037b48eee560a2e","fromNode":"39e667b4bb0e6748","fromSide":"bottom","toNode":"0327dc932901ada1","toSide":"top","label":"grant"}, {"id":"0f4a0e62d9c4ef36","fromNode":"eb6e29f1e861d07c","fromSide":"bottom","toNode":"f63c21d203fff995","toSide":"top","label":"grant"}, - {"id":"0d2daca977ce8fad","fromNode":"f63c21d203fff995","fromSide":"left","toNode":"0327dc932901ada1","toSide":"right","label":"overwrite"} + {"id":"0d2daca977ce8fad","fromNode":"f63c21d203fff995","fromSide":"left","toNode":"0327dc932901ada1","toSide":"right","label":"overwrite"}, + {"id":"98749a5c68e477a3","fromNode":"516af98a002c6f8a","fromSide":"bottom","toNode":"39e667b4bb0e6748","toSide":"top","label":"include"} ] } \ No newline at end of file diff --git a/build.js b/build.js index b5b8c279..556e75af 100644 --- a/build.js +++ b/build.js @@ -11,6 +11,7 @@ sitemap */ // settings +const debug = false const ignoreFiles = ['_navbar.md', '_sidbar.md'] const scheme = 'https://' const hostname = 'wiki.mint-system.ch' @@ -229,25 +230,33 @@ function renderEdge(edge) { if(edge['label']) { - // Calculate position with offset + // Calculate position of label let labelLength = edge['label'].length*4 let labelX = fromX - labelLength let labelY = fromY - + + if (toX < fromX) { + labelX -= Math.abs(toX - fromX)/2 + } if (toX > fromX) { - labelX += Math.abs((fromX-toX)/2) - } - if (toY > fromY) { - labelY += Math.abs((fromY-toY)/2) - } - if (toX < fromX) { - labelX -= Math.abs((toX-fromY)/2) + labelX += Math.abs(fromX - toX)/2 } if (toY < fromY) { - labelY -= Math.abs((toY-fromY)/2) + labelY += Math.abs(toY - fromY)/2 + } + if (toY > fromY) { + labelY += Math.abs(fromY - toY)/2 + } + // console.log(`(${labelX}/${labelY}) toX:${toX} fromX:${fromX} toY:${toY} fromY:${fromY}`) + + label_text = edge['label'] + if (debug) { + label_text += ` (${labelX}/${labelY})` } - label = content = `${edge['label']}` + label = ` + ${label_text} + ` } return ` @@ -257,7 +266,7 @@ function renderEdge(edge) { - + ${label} ` }