Squashed 'yocto-poky/' content from commit ea562de

git-subtree-dir: yocto-poky
git-subtree-split: ea562de57590c966cd5a75fda8defecd397e6436
diff --git a/bitbake/lib/toaster/toastergui/templates/tasks.html b/bitbake/lib/toaster/toastergui/templates/tasks.html
new file mode 100644
index 0000000..b18b5c7
--- /dev/null
+++ b/bitbake/lib/toaster/toastergui/templates/tasks.html
@@ -0,0 +1,136 @@
+{% extends "basebuildpage.html" %}
+{% load projecttags %}
+
+{% block localbreadcrumb %}
+<li>{{title}}</li>
+{% endblock %}
+
+{% block nav-tasks %}
+  {% if 'Tasks' == title %}
+    <li class="active"><a href="{% url 'tasks' build.pk %}">Tasks</a></li>
+  {% else %}
+    <li><a href="{% url 'tasks' build.pk %}">Tasks</a></li>
+  {% endif %}
+{% endblock %}
+{% block nav-buildtime %}
+  {% if 'Time' == title %}
+    <li class="active"><a href="{% url 'buildtime' build.pk %}">Time</a></li>
+  {% else %}
+    <li><a href="{% url 'buildtime' build.pk %}">Time</a></li>
+  {% endif %}
+{% endblock %}
+{% block nav-cpuusage %}
+  {% if 'CPU usage' == title %}
+    <li class="active"><a href="{% url 'cpuusage' build.pk %}">CPU usage</a></li>
+  {% else %}
+    <li><a href="{% url 'cpuusage' build.pk %}">CPU usage</a></li>
+  {% endif %}
+{% endblock %}
+{% block nav-diskio %}
+  {% if 'Disk I/O' == title %}
+    <li class="active"><a href="{% url 'diskio' build.pk %}">Disk I/O</a></li>
+  {% else %}
+    <li><a href="{% url 'diskio' build.pk %}">Disk I/O</a></li>
+  {% endif %}
+{% endblock %}
+
+{% block buildinfomain %}
+<div class="span10">
+{% if not request.GET.filter and not request.GET.search and not objects.paginator.count %}
+  <!-- Empty - no data in database -->
+  <div class="page-header">
+  <h1>{{title}}</h1>
+  </div>
+  <div class="alert alert-info lead">
+  No data was recorded for this build.
+  </div>
+
+{% else %}
+
+  <div class="page-header">
+  <h1>
+  {% if  request.GET.filter and objects.paginator.count >  0 or request.GET.search and objects.paginator.count >  0 %}
+      {{objects.paginator.count}} task{{objects.paginator.count|pluralize}} found
+  {%elif request.GET.filter and objects.paginator.count == 0 or request.GET.search and objects.paginator.count == 0 %}
+      No tasks found
+  {%else%}
+      {{title}}
+  {%endif%}
+  </h1>
+  </div>
+
+  {% if objects.paginator.count == 0 %}
+  <div class="row-fluid">
+      <div class="alert">
+        <form class="no-results input-append" id="searchform">
+            <input id="search" name="search" class="input-xxlarge" type="text" value="{{request.GET.search}}"/>{% if request.GET.search %}<a href="javascript:$('#search').val('');searchform.submit()" class="add-on btn" tabindex="-1"><i class="icon-remove"></i></a>{% endif %}
+            <button class="btn" type="submit" value="Search">Search</button>
+            <button class="btn btn-link" onclick="javascript:$('#search').val('');searchform.submit()">Show all tasks</button>
+        </form>
+      </div>
+  </div>
+
+
+  {% else %}
+  {% include "basetable_top.html" %}
+
+    {% for task in objects %}
+        <tr {{ task|task_color }} id="{{task.order}}">
+            <td class="order">
+                <a href="{%url "task" build.pk task.pk%}">{{task.order}}</a>
+            </td>
+            <td class="recipe_name" >
+                <a href="{% url "recipe" build.pk task.recipe.pk %}">{{task.recipe.name}}</a>
+            </td>
+            <td class="recipe_version">
+                <a href="{% url "recipe" build.pk task.recipe.pk %}">{{task.recipe.version}}</a>
+            </td>
+            <td class="task_name">
+                <a href="{%url "task" build.pk task.pk%}">{{task.task_name}}</a> {% if task.get_description %}<i class="icon-question-sign get-help hover-help" title="{{task.get_description}}"></i> {% endif %}
+            </td>
+            <td class="executed">
+                <a href="{%url "task" build.pk task.pk%}">{{task.get_executed_display}}</a>
+            </td>
+            <td class="outcome">
+                <a href="{%url "task" build.pk task.pk%}">{{task.get_outcome_display}} </a>
+                {% if task.outcome = task.OUTCOME_FAILED %}
+                    <a href="{% url 'build_artifact' build.pk "tasklogfile" task.pk %}">
+                        <i class="icon-download-alt" title="Download task log file"></i>
+                    </a>
+                {% endif %}
+                <i class="icon-question-sign get-help hover-help" title="{{task.get_outcome_help}}"></i>
+            </td>
+            <td class="cache_attempt">
+                <a href="{%url "task" build.pk task.pk%}">{{task.get_sstate_result_display|format_none_and_zero}}</a>
+            </td>
+            <td class="time_taken">
+                {{task.elapsed_time|format_none_and_zero|floatformat:2}}
+            </td>
+            <td class="cpu_used">
+                {{task.cpu_usage|format_none_and_zero|floatformat:2}}{% if task.cpu_usage %}%{% endif %}
+            </td>
+            <td class="disk_io">
+                {{task.disk_io|format_none_and_zero}}
+            </td>
+
+        </tr>
+    {% endfor %}
+
+  {% include "basetable_bottom.html" %}
+  {% endif %} {# objects.paginator.count #}
+{% endif %} {# empty #}
+</div>
+
+<script type="text/javascript">
+
+    $(document).ready(function() {
+        // enable blue hightlight animation for the order link
+        if (location.href.search('#') > -1) {
+            var task_order = location.href.split('#')[1];
+            $("#" + task_order).addClass("highlight");
+        }
+    });
+
+</script>
+
+{% endblock %}