azkaban-uncached
Changes
src/web/js/azkaban.triggers.view.js 368(+170 -198)
Details
diff --git a/src/java/azkaban/webapp/servlet/velocity/scheduledflowcalendarpage.vm b/src/java/azkaban/webapp/servlet/velocity/scheduledflowcalendarpage.vm
index 621dc5f..6db76fa 100644
--- a/src/java/azkaban/webapp/servlet/velocity/scheduledflowcalendarpage.vm
+++ b/src/java/azkaban/webapp/servlet/velocity/scheduledflowcalendarpage.vm
@@ -17,18 +17,15 @@
<!DOCTYPE html>
<html>
<head>
-#parse( "azkaban/webapp/servlet/velocity/style.vm" )
+
+#parse ("azkaban/webapp/servlet/velocity/style2.vm")
+#parse ("azkaban/webapp/servlet/velocity/javascript.vm")
+
<link rel="stylesheet" type="text/css" href="${context}/css/jquery-ui-1.10.1.custom.css" />
<link rel="stylesheet" type="text/css" href="${context}/css/jquery-ui.css" />
- <script type="text/javascript" src="${context}/js/jquery/jquery-1.9.1.js"></script>
<script type="text/javascript" src="${context}/js/jqueryui/jquery-ui-1.10.1.custom.js"></script>
- <script type="text/javascript" src="${context}/js/underscore-1.4.4-min.js"></script>
- <script type="text/javascript" src="${context}/js/namespace.js"></script>
- <script type="text/javascript" src="${context}/js/backbone-0.9.10-min.js"></script>
- <script type="text/javascript" src="${context}/js/jquery.simplemodal-1.4.4.js"></script>
<script type="text/javascript" src="${context}/js/jquery/jquery.svg.min.js"></script>
-
<script type="text/javascript" src="${context}/js/jqueryui/jquery-ui-timepicker-addon.js"></script>
<script type="text/javascript" src="${context}/js/jqueryui/jquery-ui-sliderAccess.js"></script>
<script type="text/javascript" src="${context}/js/azkaban.table.sort.js"></script>
@@ -46,39 +43,58 @@
<link rel="stylesheet" type="text/css" href="${context}/css/jquery.svg.css" />
</head>
<body>
-#set($current_page="schedule")
-#parse( "azkaban/webapp/servlet/velocity/nav.vm" )
- <div class="messaging"><p id="messageClose">X</p><p id="message"></p></div>
- <div class="content">
-
-#if($errorMsg)
- <div class="box-error-message">$errorMsg</div>
+#set ($current_page="schedule")
+#parse ("azkaban/webapp/servlet/velocity/nav2.vm")
+
+ <div class="container">
+
+## Page error or success message.
+
+#if ($errorMsg)
+ <div class="panel panel-danger">
+ <div class="panel-heading">Error</div>
+ <div class="panel-body">
+ $errorMsg
+ </div>
+ </div>
#else
-#if($error_message != "null")
- <div class="box-error-message">$error_message</div>
-#elseif($success_message != "null")
- <div class="box-success-message">$success_message</div>
+ #if ($error_message != "null")
+ <div class="alert alert-danger">$error_message</div>
+ #elseif ($success_message != "null")
+ <div class="alert alert-success">$success_message</div>
+ #end
#end
-#end
-
- <div id="all-scheduledFlows-content">
- <div class="section-hd">
- <h2>Scheduled Flows</h2>
- </div>
- </div>
-
- <div class="scheduledFlows">
- <span class="nav-prev-week btn1" style="margin: 20px; margin-left: 50px;"><a>Previous Week</a></span>
- <span class="nav-this-week btn1" style="margin: 20px;"><a>Today</a></span>
- <span class="nav-next-week btn1" style="margin: 20px; margin-right: 50px;"><a>Next Week</a></span>
- <div id="svgDivCustom">
-
+
+ ## Alert message
+
+ <div class="alert alert-dismissable alert-messaging" id="messaging">
+ <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
+ <p id="messaging-message"></p>
</div>
</div>
- </div>
-
- <div id="contextMenu">
- </div>
+
+ <div class="az-page-header">
+ <div class="container">
+ <h1>Scheduled Flows</h1>
+ </div>
+ </div>
+
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-12">
+ <div class="pull-right">
+ <button type="button" class="nav-prev-week btn btn-default">Previous Week</button>
+ <button type="button" class="nav-this-week btn btn-default">Today</button>
+ <button type="button" class="nav-next-week btn btn-default">Next Week</button>
+ </div>
+ <div id="svgDivCustom"></div>
+ </div>
+ </div>
+
+ <div id="contextMenu"></div>
+
+#parse ("azkaban/webapp/servlet/velocity/footer.vm")
+ </div>
</body>
</html>
diff --git a/src/java/azkaban/webapp/servlet/velocity/triggerspage.vm b/src/java/azkaban/webapp/servlet/velocity/triggerspage.vm
index 6ccb348..73f0c5c 100644
--- a/src/java/azkaban/webapp/servlet/velocity/triggerspage.vm
+++ b/src/java/azkaban/webapp/servlet/velocity/triggerspage.vm
@@ -16,18 +16,15 @@
<!DOCTYPE html>
<html>
- <head>
-#parse( "azkaban/webapp/servlet/velocity/style.vm" )
+ <head lang="en">
+
+#parse("azkaban/webapp/servlet/velocity/style2.vm")
+#parse("azkaban/webapp/servlet/velocity/javascript.vm")
+
<link rel="stylesheet" type="text/css" href="${context}/css/jquery-ui-1.10.1.custom.css" />
<link rel="stylesheet" type="text/css" href="${context}/css/jquery-ui.css" />
- <script type="text/javascript" src="${context}/js/jquery/jquery-1.9.1.js"></script>
<script type="text/javascript" src="${context}/js/jqueryui/jquery-ui-1.10.1.custom.js"></script>
- <script type="text/javascript" src="${context}/js/underscore-1.4.4-min.js"></script>
- <script type="text/javascript" src="${context}/js/namespace.js"></script>
- <script type="text/javascript" src="${context}/js/backbone-0.9.10-min.js"></script>
- <script type="text/javascript" src="${context}/js/jquery.simplemodal-1.4.4.js"></script>
-
<script type="text/javascript" src="${context}/js/jqueryui/jquery-ui-timepicker-addon.js"></script>
<script type="text/javascript" src="${context}/js/jqueryui/jquery-ui-sliderAccess.js"></script>
<script type="text/javascript" src="${context}/js/azkaban.table.sort.js"></script>
@@ -42,58 +39,78 @@
</script>
</head>
<body>
-#set($current_page="triggers")
-#parse( "azkaban/webapp/servlet/velocity/nav.vm" )
- <div class="messaging"><p id="messageClose">X</p><p id="message"></p></div>
- <div class="content">
-
-#if($errorMsg)
- <div class="box-error-message">$errorMsg</div>
-#else
-#if($error_message != "null")
- <div class="box-error-message">$error_message</div>
-#elseif($success_message != "null")
- <div class="box-success-message">$success_message</div>
-#end
-#end
-
- <div id="all-triggers-content">
- <div class="section-hd">
- <h2>All Triggers</h2>
- </div>
+#set ($current_page="triggers")
+#parse ("azkaban/webapp/servlet/velocity/nav2.vm")
+
+ <div class="container">
+
+## Alert message
+
+ <div class="alert alert-dismissable alert-messaging" id="messaging">
+ <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
+ <p id="messaging-message"></p>
</div>
-
- <div class="triggers">
- <table id="triggersTbl">
- <thead>
- <tr>
- <th>ID</th>
- <th>Source</th>
- <th>Submitted By</th>
- <th>Description</th>
- <th>Status</th>
- <!--th colspan="2" class="action ignoresort">Action</th-->
- </tr>
- </thead>
- <tbody>
- #if($triggers)
-#foreach($trigger in $triggers)
- <tr class="row" >
- <td>${trigger.triggerId}</td>
- <td>${trigger.source}</td>
- <td>${trigger.submitUser}</td>
- <td>${trigger.getDescription()}</td>
- <td>${trigger.getStatus()}</td>
- <!--td><button id="expireTriggerBtn" onclick="expireTrigger(${trigger.triggerId})" >Expire Trigger</button></td-->
- </tr>
+## Page error or success message.
+
+#if ($errorMsg)
+ <div class="panel panel-danger">
+ <div class="panel-heading">Error</div>
+ <div class="panel-body">
+ $errorMsg
+ </div>
+ </div>
+#else
+ #if ($error_message != "null")
+ <div class="alert alert-danger">$error_message</div>
+ #elseif ($success_message != "null")
+ <div class="alert alert-success">$success_message</div>
+ #end
#end
+ </div>
+
+ <div class="az-page-header">
+ <div class="container">
+ <h1>All Triggers</h1>
+ </div>
+ </div>
+
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-12">
+ <table id="triggersTbl" class="table table-striped table-bordered table-condensed table-hover">
+ <thead>
+ <tr>
+ <th>ID</th>
+ <th>Source</th>
+ <th>Submitted By</th>
+ <th>Description</th>
+ <th>Status</th>
+ <!--th colspan="2" class="action ignoresort">Action</th-->
+ </tr>
+ </thead>
+ <tbody>
+#if($triggers)
+ #foreach($trigger in $triggers)
+ <tr class="row">
+ <td>${trigger.triggerId}</td>
+ <td>${trigger.source}</td>
+ <td>${trigger.submitUser}</td>
+ <td>${trigger.getDescription()}</td>
+ <td>${trigger.getStatus()}</td>
+ <!--td><button id="expireTriggerBtn" onclick="expireTrigger(${trigger.triggerId})" >Expire Trigger</button></td-->
+ </tr>
+ #end
#else
- <tr><td class="last">No Trigger Found</td></tr>
+ <tr><td class="last">No Trigger Found</td></tr>
#end
- </tbody>
- </table>
- </div>
+ </tbody>
+ </table>
+ </div>
+ </div>
+
+#parse ("azkaban/webapp/servlet/velocity/footer.vm")
+ </div>
</body>
</html>
diff --git a/src/java/azkaban/webapp/servlet/velocity/viewer.vm b/src/java/azkaban/webapp/servlet/velocity/viewer.vm
index 7d18bee..9887bb9 100644
--- a/src/java/azkaban/webapp/servlet/velocity/viewer.vm
+++ b/src/java/azkaban/webapp/servlet/velocity/viewer.vm
@@ -17,12 +17,9 @@
<!DOCTYPE html>
<html>
<head>
-#parse( "azkaban/webapp/servlet/velocity/style.vm" )
- <script type="text/javascript" src="${context}/js/jquery/jquery-1.9.1.js"></script>
- <script type="text/javascript" src="${context}/js/underscore-1.4.4-min.js"></script>
- <script type="text/javascript" src="${context}/js/namespace.js"></script>
- <script type="text/javascript" src="${context}/js/backbone-0.9.10-min.js"></script>
- <script type="text/javascript" src="${context}/js/jquery.simplemodal-1.4.4.js"></script>
+
+#parse("azkaban/webapp/servlet/velocity/style2.vm")
+#parse("azkaban/webapp/servlet/velocity/javascript.vm")
<script type="text/javascript" src="${context}/js/azkaban.nav.js"></script>
<script type="text/javascript">
@@ -41,22 +38,29 @@
</style>
</head>
<body>
-#set($current_page="viewer")
-#parse( "azkaban/webapp/servlet/velocity/nav.vm" )
- <div class="content">
-
- #if($errorMsg)
- <div class="box-error-message">$errorMsg</div>
- #else
- #if($error_message != "null")
- <div class="box-error-message">$error_message</div>
- #elseif($success_message != "null")
- <div class="box-success-message">$success_message</div>
- #end
- #end
+#set ($current_page="viewer")
+#parse ("azkaban/webapp/servlet/velocity/nav2.vm")
+
+ <div class="container">
+
+#if ($errorMsg)
+ <div class="panel panel-danger">
+ <div class="panel-heading">Error</div>
+ <div class="panel-body">
+ $errorMsg
+ </div>
+ </div>
+#else
+ #if ($error_message != "null")
+ <div class="alert alert-danger">$error_message</div>
+ #elseif ($success_message != "null")
+ <div class="alert alert-success">$success_message</div>
+ #end
+#end
-#parse($viewervm)
+#parse ($viewervm)
+#parse ("azkaban/webapp/servlet/velocity/footer.vm")
</div>
</body>
src/web/js/azkaban.triggers.view.js 368(+170 -198)
diff --git a/src/web/js/azkaban.triggers.view.js b/src/web/js/azkaban.triggers.view.js
index 3b9dfc7..83771e9 100644
--- a/src/web/js/azkaban.triggers.view.js
+++ b/src/web/js/azkaban.triggers.view.js
@@ -19,65 +19,56 @@ $.namespace('azkaban');
function expireTrigger(triggerId) {
var triggerURL = contextURL + "/triggers"
var redirectURL = contextURL + "/triggers"
- $.post(
- triggerURL,
- {"ajax":"expireTrigger", "triggerId":triggerId},
- function(data) {
- if (data.error) {
-// alert(data.error)
- $('#errorMsg').text(data.error);
- }
- else {
-// alert("Schedule "+schedId+" removed!")
- window.location = redirectURL;
- }
- },
- "json"
- )
+ var requestData = {"ajax": "expireTrigger", "triggerId": triggerId};
+ var successHandler = function(data) {
+ if (data.error) {
+ //alert(data.error)
+ $('#errorMsg').text(data.error);
+ }
+ else {
+ //alert("Schedule "+schedId+" removed!")
+ window.location = redirectURL;
+ }
+ };
+ $.post(triggerURL, requestData, successHandler, "json");
}
function removeSched(scheduleId) {
var scheduleURL = contextURL + "/schedule"
var redirectURL = contextURL + "/schedule"
- $.post(
- scheduleURL,
- {"action":"removeSched", "scheduleId":scheduleId},
- function(data) {
- if (data.error) {
-// alert(data.error)
- $('#errorMsg').text(data.error);
- }
- else {
-// alert("Schedule "+schedId+" removed!")
- window.location = redirectURL;
- }
- },
- "json"
- )
+ var requestData = {"action": "removeSched", "scheduleId": scheduleId};
+ var successHandler = function(data) {
+ if (data.error) {
+ //alert(data.error)
+ $('#errorMsg').text(data.error);
+ }
+ else {
+ //alert("Schedule "+schedId+" removed!")
+ window.location = redirectURL;
+ }
+ };
+ $.post(scheduleURL, requestData, successHandler, "json");
}
function removeSla(scheduleId) {
var scheduleURL = contextURL + "/schedule"
var redirectURL = contextURL + "/schedule"
- $.post(
- scheduleURL,
- {"action":"removeSla", "scheduleId":scheduleId},
- function(data) {
- if (data.error) {
-// alert(data.error)
- $('#errorMsg').text(data.error)
- }
- else {
-// alert("Schedule "+schedId+" removed!")
- window.location = redirectURL
- }
- },
- "json"
- )
+ var requestData = {"action": "removeSla", "scheduleId": scheduleId};
+ var successHandler = function(data) {
+ if (data.error) {
+ //alert(data.error)
+ $('#errorMsg').text(data.error)
+ }
+ else {
+ //alert("Schedule "+schedId+" removed!")
+ window.location = redirectURL
+ }
+ };
+ $.post(scheduleURL, requestData, successHandler, "json");
}
azkaban.ChangeSlaView = Backbone.View.extend({
- events : {
+ events: {
"click" : "closeEditingTarget",
"click #set-sla-btn": "handleSetSla",
"click #remove-sla-btn": "handleRemoveSla",
@@ -85,10 +76,11 @@ azkaban.ChangeSlaView = Backbone.View.extend({
"click .modal-close": "handleSlaCancel",
"click #addRow": "handleAddRow"
},
- initialize: function(setting) {
-
+
+ initialize: function(setting) {
},
- handleSlaCancel: function(evt) {
+
+ handleSlaCancel: function(evt) {
console.log("Clicked cancel button");
var scheduleURL = contextURL + "/schedule";
@@ -98,11 +90,11 @@ azkaban.ChangeSlaView = Backbone.View.extend({
var tFlowRules = document.getElementById("flowRulesTbl").tBodies[0];
var rows = tFlowRules.rows;
var rowLength = rows.length
- for(var i = 0; i < rowLength-1; i++) {
+ for (var i = 0; i < rowLength-1; i++) {
tFlowRules.deleteRow(0);
}
-
},
+
initFromSched: function(scheduleId, flowName) {
this.scheduleId = scheduleId;
@@ -117,138 +109,123 @@ azkaban.ChangeSlaView = Backbone.View.extend({
var ruleBoxOptions = ["SUCCESS", "FINISH"];
this.ruleBoxOptions = ruleBoxOptions;
- var fetchScheduleData = {"scheduleId": this.scheduleId, "ajax":"slaInfo"};
-
- $.get(
- this.scheduleURL,
- fetchScheduleData,
- function(data) {
- if (data.error) {
- alert(data.error);
- }
- else {
- if (data.slaEmails) {
- $('#slaEmails').val(data.slaEmails.join());
- }
-
- var allJobNames = data.allJobNames;
-
- indexToName[0] = "";
- nameToIndex[flowName] = 0;
- indexToText[0] = "flow " + flowName;
- for(var i = 1; i <= allJobNames.length; i++) {
- indexToName[i] = allJobNames[i-1];
- nameToIndex[allJobNames[i-1]] = i;
- indexToText[i] = "job " + allJobNames[i-1];
- }
-
-
-
-
-
- // populate with existing settings
- if(data.settings) {
-
- var tFlowRules = document.getElementById("flowRulesTbl").tBodies[0];
-
- for(var setting in data.settings) {
- var rFlowRule = tFlowRules.insertRow(0);
-
- var cId = rFlowRule.insertCell(-1);
- var idSelect = document.createElement("select");
- for(var i in indexToName) {
- idSelect.options[i] = new Option(indexToText[i], indexToName[i]);
- if(data.settings[setting].id == indexToName[i]) {
- idSelect.options[i].selected = true;
- }
- }
- cId.appendChild(idSelect);
-
- var cRule = rFlowRule.insertCell(-1);
- var ruleSelect = document.createElement("select");
- for(var i in ruleBoxOptions) {
- ruleSelect.options[i] = new Option(ruleBoxOptions[i], ruleBoxOptions[i]);
- if(data.settings[setting].rule == ruleBoxOptions[i]) {
- ruleSelect.options[i].selected = true;
- }
- }
- cRule.appendChild(ruleSelect);
-
- var cDuration = rFlowRule.insertCell(-1);
- var duration = document.createElement("input");
- duration.type = "text";
- duration.setAttribute("class", "durationpick");
- var rawMinutes = data.settings[setting].duration;
- var intMinutes = rawMinutes.substring(0, rawMinutes.length-1);
- var minutes = parseInt(intMinutes);
- var hours = Math.floor(minutes / 60);
- minutes = minutes % 60;
- duration.value = hours + ":" + minutes;
- cDuration.appendChild(duration);
+ var fetchScheduleData = {"scheduleId": this.scheduleId, "ajax": "slaInfo"};
+ var successHandler = function(data) {
+ if (data.error) {
+ alert(data.error);
+ return;
+ }
+ if (data.slaEmails) {
+ $('#slaEmails').val(data.slaEmails.join());
+ }
+
+ var allJobNames = data.allJobNames;
+
+ indexToName[0] = "";
+ nameToIndex[flowName] = 0;
+ indexToText[0] = "flow " + flowName;
+ for (var i = 1; i <= allJobNames.length; i++) {
+ indexToName[i] = allJobNames[i-1];
+ nameToIndex[allJobNames[i-1]] = i;
+ indexToText[i] = "job " + allJobNames[i-1];
+ }
+
+ // populate with existing settings
+ if (data.settings) {
+ $('.durationpick').timepicker({hourMax: 99});
+ return;
+ }
+
+ var tFlowRules = document.getElementById("flowRulesTbl").tBodies[0];
+ for (var setting in data.settings) {
+ var rFlowRule = tFlowRules.insertRow(0);
+
+ var cId = rFlowRule.insertCell(-1);
+ var idSelect = document.createElement("select");
+ for (var i in indexToName) {
+ idSelect.options[i] = new Option(indexToText[i], indexToName[i]);
+ if (data.settings[setting].id == indexToName[i]) {
+ idSelect.options[i].selected = true;
+ }
+ }
+ cId.appendChild(idSelect);
+
+ var cRule = rFlowRule.insertCell(-1);
+ var ruleSelect = document.createElement("select");
+ for (var i in ruleBoxOptions) {
+ ruleSelect.options[i] = new Option(ruleBoxOptions[i], ruleBoxOptions[i]);
+ if (data.settings[setting].rule == ruleBoxOptions[i]) {
+ ruleSelect.options[i].selected = true;
+ }
+ }
+ cRule.appendChild(ruleSelect);
+
+ var cDuration = rFlowRule.insertCell(-1);
+ var duration = document.createElement("input");
+ duration.type = "text";
+ duration.setAttribute("class", "durationpick");
+ var rawMinutes = data.settings[setting].duration;
+ var intMinutes = rawMinutes.substring(0, rawMinutes.length-1);
+ var minutes = parseInt(intMinutes);
+ var hours = Math.floor(minutes / 60);
+ minutes = minutes % 60;
+ duration.value = hours + ":" + minutes;
+ cDuration.appendChild(duration);
- var cEmail = rFlowRule.insertCell(-1);
- var emailCheck = document.createElement("input");
- emailCheck.type = "checkbox";
- for(var act in data.settings[setting].actions) {
- if(data.settings[setting].actions[act] == "EMAIL") {
- emailCheck.checked = true;
- }
- }
- cEmail.appendChild(emailCheck);
-
- var cKill = rFlowRule.insertCell(-1);
- var killCheck = document.createElement("input");
- killCheck.type = "checkbox";
- for(var act in data.settings[setting].actions) {
- if(data.settings[setting].actions[act] == "KILL") {
- killCheck.checked = true;
- }
- }
- cKill.appendChild(killCheck);
-
- $('.durationpick').timepicker({hourMax: 99});
- }
- }
- $('.durationpick').timepicker({hourMax: 99});
- }
- },
- "json"
- );
+ var cEmail = rFlowRule.insertCell(-1);
+ var emailCheck = document.createElement("input");
+ emailCheck.type = "checkbox";
+ for (var act in data.settings[setting].actions) {
+ if (data.settings[setting].actions[act] == "EMAIL") {
+ emailCheck.checked = true;
+ }
+ }
+ cEmail.appendChild(emailCheck);
+
+ var cKill = rFlowRule.insertCell(-1);
+ var killCheck = document.createElement("input");
+ killCheck.type = "checkbox";
+ for (var act in data.settings[setting].actions) {
+ if (data.settings[setting].actions[act] == "KILL") {
+ killCheck.checked = true;
+ }
+ }
+ cKill.appendChild(killCheck);
+ $('.durationpick').timepicker({hourMax: 99});
+ }
+ $('.durationpick').timepicker({hourMax: 99});
+ };
+ $.get(this.scheduleURL, fetchScheduleData, successHandler, "json");
$('#slaModalBackground').show();
$('#sla-options').show();
-// this.schedFlowOptions = sched.flowOptions
+ //this.schedFlowOptions = sched.flowOptions
console.log("Loaded schedule info. Ready to set SLA.");
-
},
- handleRemoveSla: function(evt) {
+
+ handleRemoveSla: function(evt) {
console.log("Clicked remove sla button");
var scheduleURL = this.scheduleURL;
var redirectURL = this.scheduleURL;
- $.post(
- scheduleURL,
- {"action":"removeSla", "scheduleId":this.scheduleId},
- function(data) {
- if (data.error) {
- $('#errorMsg').text(data.error)
- }
- else {
- window.location = redirectURL
- }
- "json"
- }
- );
-
+ var requestData = {"action": "removeSla", "scheduleId": this.scheduleId};
+ var successHandler = function(data) {
+ if (data.error) {
+ $('#errorMsg').text(data.error)
+ }
+ else {
+ window.location = redirectURL
+ }
+ };
+ $.post(scheduleURL, requestData, successHandler, "json");
},
- handleSetSla: function(evt) {
-
+
+ handleSetSla: function(evt) {
var slaEmails = $('#slaEmails').val();
var settings = {};
-
var tFlowRules = document.getElementById("flowRulesTbl").tBodies[0];
- for(var row = 0; row < tFlowRules.rows.length-1; row++) {
+ for (var row = 0; row < tFlowRules.rows.length - 1; row++) {
var rFlowRule = tFlowRules.rows[row];
var id = rFlowRule.cells[0].firstChild.value;
var rule = rFlowRule.cells[1].firstChild.value;
@@ -266,24 +243,20 @@ azkaban.ChangeSlaView = Backbone.View.extend({
};
var scheduleURL = this.scheduleURL;
+ var successHandler = function(data) {
+ if (data.error) {
+ alert(data.error);
+ }
+ else {
+ tFlowRules.length = 0;
+ window.location = scheduleURL;
+ }
+ };
- $.post(
- scheduleURL,
- slaData,
- function(data) {
- if (data.error) {
- alert(data.error);
- }
- else {
- tFlowRules.length = 0;
- window.location = scheduleURL;
- }
- },
- "json"
- );
+ $.post(scheduleURL, slaData, successHandler, "json");
},
- handleAddRow: function(evt) {
-
+
+ handleAddRow: function(evt) {
var indexToName = this.indexToName;
var nameToIndex = this.nameToIndex;
var indexToText = this.indexToText;
@@ -294,7 +267,7 @@ azkaban.ChangeSlaView = Backbone.View.extend({
var cId = rFlowRule.insertCell(-1);
var idSelect = document.createElement("select");
- for(var i in indexToName) {
+ for (var i in indexToName) {
idSelect.options[i] = new Option(indexToText[i], indexToName[i]);
}
@@ -302,7 +275,7 @@ azkaban.ChangeSlaView = Backbone.View.extend({
var cRule = rFlowRule.insertCell(-1);
var ruleSelect = document.createElement("select");
- for(var i in ruleBoxOptions) {
+ for (var i in ruleBoxOptions) {
ruleSelect.options[i] = new Option(ruleBoxOptions[i], ruleBoxOptions[i]);
}
cRule.appendChild(ruleSelect);
@@ -324,10 +297,10 @@ azkaban.ChangeSlaView = Backbone.View.extend({
cKill.appendChild(killCheck);
$('.durationpick').timepicker({hourMax: 99});
-
return rFlowRule;
},
- handleEditColumn : function(evt) {
+
+ handleEditColumn: function(evt) {
var curTarget = evt.currentTarget;
if (this.editingTarget != curTarget) {
@@ -346,14 +319,15 @@ azkaban.ChangeSlaView = Backbone.View.extend({
this.editingTarget = curTarget;
}
},
- handleRemoveColumn : function(evt) {
+
+ handleRemoveColumn: function(evt) {
var curTarget = evt.currentTarget;
// Should be the table
var row = curTarget.parentElement.parentElement;
$(row).remove();
},
- closeEditingTarget: function(evt) {
+ closeEditingTarget: function(evt) {
}
});
@@ -362,16 +336,14 @@ var tableSorterView;
$(function() {
var selected;
-
slaView = new azkaban.ChangeSlaView({el:$('#sla-options')});
tableSorterView = new azkaban.TableSorter({el:$('#scheduledFlowsTbl')});
-// var requestURL = contextURL + "/manager";
+ /*
+ var requestURL = contextURL + "/manager";
// Set up the Flow options view. Create a new one every time :p
-// $('#addSlaBtn').click( function() {
-// slaView.show();
-// });
-
-
-
+ $('#addSlaBtn').click( function() {
+ slaView.show();
+ });
+ */
});