azkaban-memoizeit
Details
diff --git a/src/java/azkaban/webapp/servlet/velocity/projectpage.vm b/src/java/azkaban/webapp/servlet/velocity/projectpage.vm
index 4be989d..aeafad4 100644
--- a/src/java/azkaban/webapp/servlet/velocity/projectpage.vm
+++ b/src/java/azkaban/webapp/servlet/velocity/projectpage.vm
@@ -81,8 +81,7 @@
<a href="${context}/manager?project=${project.name}&flow=${flow.id}">${flow.id}</a>
</div>
<div id="${flow.id}-child" class="panel-collapse panel-list collapse">
- <ul class="list-group list-group-collapse" id="${flow.id}-tbody">
- </ul>
+ <div class="list-group list-group-collapse job-list" id="${flow.id}-tbody"></div>
</div>
</div>
#end
src/less/project.less 8(+8 -0)
diff --git a/src/less/project.less b/src/less/project.less
index df01264..00a77e8 100644
--- a/src/less/project.less
+++ b/src/less/project.less
@@ -7,6 +7,14 @@
cursor: pointer;
}
+.dependency {
+ background-color: #f0f0f0;
+}
+
+.dependent {
+ background-color: #fafafa;
+}
+
// Permissions page table.
.permission-table {
.tb-perm {
src/web/js/azkaban.project.view.js 44(+18 -26)
diff --git a/src/web/js/azkaban.project.view.js b/src/web/js/azkaban.project.view.js
index c278d3b..5f08bb2 100644
--- a/src/web/js/azkaban.project.view.js
+++ b/src/web/js/azkaban.project.view.js
@@ -20,8 +20,8 @@ var flowTableView;
azkaban.FlowTableView = Backbone.View.extend({
events : {
"click .flow-expander": "expandFlowProject",
- "mouseover .expandedFlow a": "highlight",
- "mouseout .expandedFlow a": "unhighlight",
+ "mouseover .job-list a": "highlight",
+ "mouseout .job-list a": "unhighlight",
"click .runJob": "runJob",
"click .runWithDep": "runWithDep",
"click .execute-flow": "executeFlow",
@@ -33,7 +33,7 @@ azkaban.FlowTableView = Backbone.View.extend({
},
expandFlowProject: function(evt) {
- if (evt.target.tagName == "A") {
+ if (evt.target.tagName == "A" || evt.target.tagName == "BUTTON") {
return;
}
@@ -81,11 +81,17 @@ azkaban.FlowTableView = Backbone.View.extend({
var level = job.level;
var nodeId = flowId + "-" + name;
- var li = document.createElement("li");
- $(li).addClass("list-group-item");
- li.flowId = flowId;
- li.projectName = project;
- li.jobName = name;
+ var ida = document.createElement("a");
+ $(ida).addClass("list-group-item");
+ $(ida).attr("id", nodeId);
+ $(ida).css("padding-left", (level * 20) + 15);
+ $(ida).attr("href", requestURL + name);
+ $(ida).text(name);
+ ida.flowId = flowId;
+ ida.dependents = job.dependents;
+ ida.dependencies = job.dependencies;
+ ida.projectName = project;
+ ida.jobName = name;
if (execAccess) {
var hoverMenuDiv = document.createElement("div");
@@ -113,21 +119,10 @@ azkaban.FlowTableView = Backbone.View.extend({
divRunWithDep.flowId = flowId;
$(hoverMenuDiv).append(divRunWithDep);
- $(li).append(hoverMenuDiv);
+ $(ida).append(hoverMenuDiv);
}
- var ida = document.createElement("a");
- ida.dependents = job.dependents;
- ida.dependencies = job.dependencies;
- ida.flowid = flowId;
- $(ida).text(name);
- $(ida).addClass("jobLink");
- $(ida).attr("id", nodeId);
- $(ida).css("margin-left", level * 20);
- $(ida).attr("href", requestURL + name);
-
- $(li).append(ida);
- $(innerTable).append(li);
+ $(innerTable).append(ida);
}
},
@@ -141,16 +136,13 @@ azkaban.FlowTableView = Backbone.View.extend({
var currentTarget = evt.currentTarget;
$(".dependent").removeClass("dependent");
$(".dependency").removeClass("dependency");
-
- if ($(currentTarget).hasClass("jobLink")) {
- this.highlightJob(currentTarget);
- }
+ this.highlightJob(currentTarget);
},
highlightJob: function(currentTarget) {
var dependents = currentTarget.dependents;
var dependencies = currentTarget.dependencies;
- var flowid = currentTarget.flowid;
+ var flowid = currentTarget.flowId;
if (dependents) {
for (var i = 0; i < dependents.length; ++i) {