changeset 4778:dba66b0768f4

graph: don't hardcode chg_ prefix ... and just assume canvas and table are aligned
author Mads Kiilerich <madski@unity3d.com>
date Wed, 21 Jan 2015 17:35:11 +0100
parents 18f932dc9001
children fee908b9bd2d
files kallithea/public/js/graph.js kallithea/templates/changelog/changelog.html kallithea/templates/compare/compare_cs.html kallithea/templates/pullrequests/pullrequest.html
diffstat 4 files changed, 17 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/kallithea/public/js/graph.js	Wed Jan 21 17:35:11 2015 +0100
+++ b/kallithea/public/js/graph.js	Wed Jan 21 17:35:11 2015 +0100
@@ -22,10 +22,12 @@
 	[ 0.0, 0.0, 0.0 ]
 ];
 
-function BranchRenderer(canvas_id, content_id) {
-
+function BranchRenderer(canvas_id, content_id, row_id_prefix) {
+	// canvas_id is canvas to render into
+	// content_id's height is applied to canvas
+	// row_id_prefix is prefix that is applied to get row id's
 	this.canvas = document.getElementById(canvas_id);
-	var t = document.getElementById(content_id);
+	var content = document.getElementById(content_id);
 	
 	if (!document.createElement("canvas").getContext)
 		this.canvas = window.G_vmlCanvasManager.initElement(this.canvas);
@@ -62,10 +64,9 @@
 
 	this.render = function(data,canvasWidth) {
 		var idx = 1;
-		var rela = this.canvas;
 
 		this.canvas.setAttribute('width',canvasWidth);
-		this.canvas.setAttribute('height',t.clientHeight);
+		this.canvas.setAttribute('height',content.clientHeight);
 
 		var lineCount = 1;
 		for (var i=0;i<data.length;i++) {
@@ -82,13 +83,12 @@
 		var base_x = canvasWidth - edge_pad;
 
 		for (var i=0; i < data.length; ++i) {
-
-			var row = document.getElementById("chg_"+idx);
+			var row = document.getElementById(row_id_prefix+idx);
 			if (row == null) {
-				console.log("error: row chg_"+idx+" not found");
+				console.log("error: row "+row_id_prefix+idx+" not found");
 				continue;
 			}
-			var	next = document.getElementById("chg_"+(idx+1));
+			var next = document.getElementById(row_id_prefix+(idx+1));
 			var extra = 0;
 			
 			cur = data[i];
@@ -96,8 +96,8 @@
 			in_l = cur[1];
 			closing = cur[2];
 
-			var rowY = row.offsetTop + row.offsetHeight/2 - rela.offsetTop;
-			var nextY = (next == null) ? rowY + row.offsetHeight/2 : next.offsetTop + next.offsetHeight/2 - rela.offsetTop;
+			var rowY = row.offsetTop + row.offsetHeight/2;
+			var nextY = (next == null) ? rowY + row.offsetHeight/2 : next.offsetTop + next.offsetHeight/2;
 
 			for (var j in in_l) {
 				line = in_l[j];
@@ -149,7 +149,6 @@
 				this.ctx.lineWidth=this.line_width;
 				this.ctx.beginPath();
 				this.ctx.moveTo(x, rowY);
-
 				if (start == end)
 				{
 					this.ctx.lineTo(x,nextY+extra,3);
--- a/kallithea/templates/changelog/changelog.html	Wed Jan 21 17:35:11 2015 +0100
+++ b/kallithea/templates/changelog/changelog.html	Wed Jan 21 17:35:11 2015 +0100
@@ -165,7 +165,7 @@
             </div>
         </div>
 
-        <script type="text/javascript" src="${h.url('/js/graph.js')}"></script>
+        <script type="text/javascript" src="${h.url('/js/graph.js', ver=c.kallithea_version)}"></script>
         <script type="text/javascript">
             $(document).ready(function(){
                 //Monitor range checkboxes and build a link to changesets ranges
@@ -284,7 +284,7 @@
                 });
 
                 var jsdata = ${c.jsdata|n};
-                var r = new BranchRenderer('graph_canvas', 'graph_content');
+                var r = new BranchRenderer('graph_canvas', 'graph_content', 'chg_');
                 r.render(jsdata,100);
             });
 
--- a/kallithea/templates/compare/compare_cs.html	Wed Jan 21 17:35:11 2015 +0100
+++ b/kallithea/templates/compare/compare_cs.html	Wed Jan 21 17:35:11 2015 +0100
@@ -92,7 +92,7 @@
 %if c.as_form:
 <div id="jsdata" style="display:none">${c.jsdata|n}</div>
 %else:
-<script type="text/javascript" src="${h.url('/js/graph.js')}"></script>
+<script type="text/javascript" src="${h.url('/js/graph.js', ver=c.kallithea_version)}"></script>
 %endif
 
 <script type="text/javascript">
@@ -100,7 +100,7 @@
     $(document).ready(function(){
 %if not c.as_form:
         var jsdata = ${c.jsdata|n};
-        var r = new BranchRenderer('graph_canvas', 'graph_content_pr');
+        var r = new BranchRenderer('graph_canvas', 'graph_content_pr', 'chg_');
         r.render(jsdata,100);
 %endif
 
--- a/kallithea/templates/pullrequests/pullrequest.html	Wed Jan 21 17:35:11 2015 +0100
+++ b/kallithea/templates/pullrequests/pullrequest.html	Wed Jan 21 17:35:11 2015 +0100
@@ -138,7 +138,7 @@
 
 </div>
 
-<script type="text/javascript" src="${h.url('/js/graph.js')}"></script>
+<script type="text/javascript" src="${h.url('/js/graph.js', ver=c.kallithea_version)}"></script>
 <script type="text/javascript">
   var _USERS_AC_DATA = ${c.users_array|n};
   var _GROUPS_AC_DATA = ${c.user_groups_array|n};
@@ -230,7 +230,7 @@
       pendingajax = asynchtml(url, $('#pull_request_overview'), function(o){
           pendingajax = undefined;
           var jsdata = eval('('+YUD.get('jsdata').innerHTML+')'); // TODO: just get json
-          var r = new BranchRenderer('graph_canvas', 'graph_content_pr');
+          var r = new BranchRenderer('graph_canvas', 'graph_content_pr', 'chg_');
           r.render(jsdata,100);
       });
   }