aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMilo Casagrande <milo.casagrande@linaro.org>2014-10-17 14:36:40 +0200
committerMilo Casagrande <milo.casagrande@linaro.org>2014-10-17 14:36:40 +0200
commit03611706dcf04a3a23c6f881e88d3fff06ab8fad (patch)
tree604e33bc33b9f057cde9a84b874aeea11754179a
parentdd1404712e64f5b8c1287631f5c62e9b6c9416de (diff)
template: Move JavaScript code into its own file.
Change-Id: I729f313b1ce4db3feaf6236018614131646e9037
-rw-r--r--app/dashboard/static/js/linaro-builds-job-kernel-defconfig-1.0.0.js99
-rw-r--r--app/dashboard/templates/builds-job-kernel-defconf.html108
2 files changed, 101 insertions, 106 deletions
diff --git a/app/dashboard/static/js/linaro-builds-job-kernel-defconfig-1.0.0.js b/app/dashboard/static/js/linaro-builds-job-kernel-defconfig-1.0.0.js
new file mode 100644
index 0000000..eadb479
--- /dev/null
+++ b/app/dashboard/static/js/linaro-builds-job-kernel-defconfig-1.0.0.js
@@ -0,0 +1,99 @@
+function populatePage(data) {
+ 'use strict';
+ var localData = data.result,
+ len = localData.length,
+ i = 0,
+ totalColumns = 3,
+ columnIndex = 1,
+ columns = {
+ 'col1': '<div class="col-xs-4 col-sm-4 col-md-4 ' +
+ 'col-lg-4"><ul class="list-unstyled">',
+ 'col2': '<div class="col-xs-4 col-sm-4 col-md-4 ' +
+ 'col-lg-4">' + '<ul class="list-unstyled">',
+ 'col3' : '<div class="col-xs-4 col-sm-4 col-md-4 ' +
+ 'col-lg-4"><ul class="list-unstyled">'
+ };
+
+ if (len > 0) {
+ for (i; i < len; i++) {
+ columnIndex = (i + 1) % totalColumns;
+ columns['col' + columnIndex] += '<li>' +
+ '<a href="/boot/' + localData[i].board +
+ '/job/' + localData[i].job + '/kernel/' +
+ localData[i].kernel +
+ '/defconfig/' + localData[i].defconfig + '">' +
+ localData[i].board +
+ '&nbsp;<i class="fa fa-search"></i></a></li>';
+ }
+
+ columns.col1 += '</ul></div>';
+ columns.col2 += '</ul></div>';
+ columns.col3 += '</ul></div>';
+
+ $('#boot-report').empty().append(
+ columns.col1 + columns.col2 + columns.col3);
+ } else {
+ $('#boot-report').empty().append(
+ '<div class="text-center">' +
+ '<h5><strong>No boot reports available.</strong></h5>' +
+ '</div>'
+ );
+ }
+}
+
+function ajaxCallFailed() {
+ 'use strict';
+ $("#boot-report").empty().append(
+ '<div class="text-center">' +
+ '<h3>Error loading data.</h3>' +
+ '</div>'
+ );
+}
+
+$(document).ready(function () {
+ 'use strict';
+
+ $('body').tooltip({
+ 'selector': '[rel=tooltip]',
+ 'placement': 'auto top'
+ });
+
+ $('#li-build').addClass('active');
+
+ var errorReason = 'Builds data call failed.';
+
+ $.ajax({
+ 'url': '/_ajax/boot',
+ 'traditional': true,
+ 'cache': true,
+ 'dataType': 'json',
+ 'data': {
+ 'field': ['board', 'job', 'kernel', 'defconfig', 'created_on'],
+ 'job': '{{ job }}',
+ 'kernel': '{{ result.kernel }}',
+ 'defconfig': '{{ result.dirname }}'
+ },
+ 'beforeSend': function (jqXHR) {
+ setXhrHeader(jqXHR);
+ },
+ 'error': function() {
+ ajaxCallFailed();
+ },
+ 'timeout': 6000,
+ 'statusCode': {
+ 403: function () {
+ setErrorAlert('build-403-error', 403, errorReason);
+ },
+ 404: function () {
+ setErrorAlert('build-404-error', 404, errorReason);
+ },
+ 408: function () {
+ errorReason = 'Defconfing data call failed: timeout.';
+ setErrorAlert('build-408-error', 408, errorReason);
+ },
+ 500: function () {
+ setErrorAlert('build-500-error', 500, errorReason);
+ }
+ }
+ }).done(populatePage);
+}); \ No newline at end of file
diff --git a/app/dashboard/templates/builds-job-kernel-defconf.html b/app/dashboard/templates/builds-job-kernel-defconf.html
index 9e81216..89bf23a 100644
--- a/app/dashboard/templates/builds-job-kernel-defconf.html
+++ b/app/dashboard/templates/builds-job-kernel-defconf.html
@@ -346,110 +346,6 @@
{%- endblock %}
{%- block scripts %}
{{ super() }}
-<script type="text/javascript">
-var csrftoken = $('meta[name=csrf-token]').attr('content');
-
-$(document).ready(function () {
- "use strict";
-
- $('body').tooltip({
- 'selector': '[rel=tooltip]',
- 'placement': 'auto top'
- });
-
- $('#li-build').addClass('active');
-
- $.ajax({
- 'url': '/_ajax/boot',
- 'traditional': true,
- 'cache': true,
- 'dataType': 'json',
- 'data': {
- 'field': ['board', 'job', 'kernel', 'defconfig', 'created_on'],
- 'job': '{{ job }}',
- 'kernel': '{{ result.kernel }}',
- 'defconfig': '{{ result.dirname }}'
- },
- 'beforeSend': function (xhr) {
- xhr.setRequestHeader("X-CSRFToken", csrftoken);
- },
- 'statusCode': {
- 404: function () {
- $("#boot-report").empty().append(
- '<div class="text-center">' +
- '<h3>Error loading data.</h3>' +
- '</div>'
- );
- var text = '<div id="boot-404-error" ' +
- 'class="alert alert-danger alert-dismissable">' +
- '<button type="button" class="close" ' +
- 'data-dismiss="alert" aria-hidden="true">&times;</button>' +
- 'Error while searching boot reports from the server.\n' +
- 'Please contact the website administrators.&nbsp;' +
- 'Error code was: 404' +
- '</div>';
- $('#errors-container').append(text);
- $('#boot-404-error').alert();
- },
- 500: function () {
- $('#boot-report').empty().append(
- '<div class="text-center">' +
- '<h3>Error loading data.</h3>' +
- '</div>'
- );
- var text = '<div id="boot-500-error" ' +
- 'class="alert alert-danger alert-dismissable">' +
- '<button type="button" class="close" ' +
- 'data-dismiss="alert" aria-hidden="true">&times;</button>' +
- 'Error while searching boot reports from the server.\n' +
- 'Please contact the website administrators.&nbsp;' +
- 'Error code was: 500' +
- '</div>';
- $('#errors-container').append(text);
- $('#boot-500-error').alert();
- }
- }
- }).done(function (data) {
- data = data.result;
-
- var len = data.length,
- i = 0,
- totalColumns = 3,
- columnIndex = 1,
- columns = {
- 'col1': '<div class="col-xs-4 col-sm-4 col-md-4 ' +
- 'col-lg-4"><ul class="list-unstyled">',
- 'col2': '<div class="col-xs-4 col-sm-4 col-md-4 ' +
- 'col-lg-4">' + '<ul class="list-unstyled">',
- 'col3' : '<div class="col-xs-4 col-sm-4 col-md-4 ' +
- 'col-lg-4"><ul class="list-unstyled">'
- };
-
- if (len > 0) {
- for (i; i < len; i++) {
- columnIndex = (i + 1) % totalColumns;
- columns['col' + columnIndex] += '<li>' +
- '<a href="/boot/' + data[i].board +
- '/job/' + data[i].job + '/kernel/' + data[i].kernel +
- '/defconfig/' + data[i].defconfig + '">' +
- data[i].board +
- '&nbsp;<i class="fa fa-search"></i></a></li>';
- }
-
- columns.col1 += '</ul></div>';
- columns.col2 += '</ul></div>';
- columns.col3 += '</ul></div>';
-
- $('#boot-report').empty().append(
- columns.col1 + columns.col2 + columns.col3);
- } else {
- $('#boot-report').empty().append(
- '<div class="text-center">' +
- '<h5><strong>No boot reports available.</strong></h5>' +
- '</div>'
- );
- }
- });
-});
-</script>
+<script type="text/javascript"
+ src="/static/js/linaro-builds-job-kernel-defconfig-1.0.0.js"></script>
{%- endblock %}