summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/toaster/toastergui/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/toaster/toastergui/views.py')
-rwxr-xr-xbitbake/lib/toaster/toastergui/views.py60
1 files changed, 56 insertions, 4 deletions
diff --git a/bitbake/lib/toaster/toastergui/views.py b/bitbake/lib/toaster/toastergui/views.py
index 4f4ae67ca7..ed27ca0ac9 100755
--- a/bitbake/lib/toaster/toastergui/views.py
+++ b/bitbake/lib/toaster/toastergui/views.py
@@ -419,8 +419,7 @@ def task( request, build_id, task_id ):
419 419
420 return render( request, template, context ) 420 return render( request, template, context )
421 421
422 422def recipe(request, build_id, recipe_id, active_tab="1"):
423def recipe(request, build_id, recipe_id):
424 template = "recipe.html" 423 template = "recipe.html"
425 if Recipe.objects.filter(pk=recipe_id).count() == 0 : 424 if Recipe.objects.filter(pk=recipe_id).count() == 0 :
426 return redirect(builds) 425 return redirect(builds)
@@ -429,7 +428,12 @@ def recipe(request, build_id, recipe_id):
429 layer_version = Layer_Version.objects.get(pk=object.layer_version_id) 428 layer_version = Layer_Version.objects.get(pk=object.layer_version_id)
430 layer = Layer.objects.get(pk=layer_version.layer_id) 429 layer = Layer.objects.get(pk=layer_version.layer_id)
431 tasks = Task.objects.filter(recipe_id = recipe_id, build_id = build_id).exclude(order__isnull=True).exclude(task_name__endswith='_setscene').exclude(outcome=Task.OUTCOME_NA) 430 tasks = Task.objects.filter(recipe_id = recipe_id, build_id = build_id).exclude(order__isnull=True).exclude(task_name__endswith='_setscene').exclude(outcome=Task.OUTCOME_NA)
432 packages = Package.objects.filter(recipe_id = recipe_id).filter(build_id = build_id).filter(size__gte=0) 431 package_count = Package.objects.filter(recipe_id = recipe_id).filter(build_id = build_id).filter(size__gte=0).count()
432
433 if active_tab != '1' and active_tab != '3' and active_tab != '4' :
434 active_tab = '1'
435 tab_states = {'1': '', '3': '', '4': ''}
436 tab_states[active_tab] = 'active'
433 437
434 context = { 438 context = {
435 'build' : Build.objects.get(pk=build_id), 439 'build' : Build.objects.get(pk=build_id),
@@ -437,10 +441,58 @@ def recipe(request, build_id, recipe_id):
437 'layer_version' : layer_version, 441 'layer_version' : layer_version,
438 'layer' : layer, 442 'layer' : layer,
439 'tasks' : tasks, 443 'tasks' : tasks,
440 'packages': packages, 444 'package_count' : package_count,
445 'tab_states' : tab_states,
441 } 446 }
442 return render(request, template, context) 447 return render(request, template, context)
443 448
449def recipe_packages(request, build_id, recipe_id):
450 template = "recipe_packages.html"
451 if Recipe.objects.filter(pk=recipe_id).count() == 0 :
452 return redirect(builds)
453
454 (pagesize, orderby) = _get_parameters_values(request, 10, 'name:+')
455 mandatory_parameters = { 'count': pagesize, 'page' : 1, 'orderby': orderby }
456 retval = _verify_parameters( request.GET, mandatory_parameters )
457 if retval:
458 return _redirect_parameters( 'recipe_packages', request.GET, mandatory_parameters, build_id = build_id, recipe_id = recipe_id)
459 (filter_string, search_term, ordering_string) = _search_tuple(request, Package)
460
461 recipe = Recipe.objects.get(pk=recipe_id)
462 queryset = Package.objects.filter(recipe_id = recipe_id).filter(build_id = build_id).filter(size__gte=0)
463 package_count = queryset.count()
464 queryset = _get_queryset(Package, queryset, filter_string, search_term, ordering_string, 'name')
465
466 packages = _build_page_range(Paginator(queryset, pagesize),request.GET.get('page', 1))
467
468 context = {
469 'build' : Build.objects.get(pk=build_id),
470 'recipe' : recipe,
471 'objects' : packages,
472 'object_count' : package_count,
473 'tablecols':[
474 {
475 'name':'Package',
476 'orderfield': _get_toggle_order(request,"name"),
477 'ordericon': _get_toggle_order_icon(request,"name"),
478 'orderkey': "name",
479 },
480 {
481 'name':'Version',
482 },
483 {
484 'name':'Size',
485 'orderfield': _get_toggle_order(request,"size", True),
486 'ordericon': _get_toggle_order_icon(request,"size"),
487 'orderkey': 'size',
488 'dclass': 'sizecol span2',
489 },
490 ]
491 }
492 response = render(request, template, context)
493 _save_parameters_cookies(response, pagesize, orderby, request)
494 return response
495
444def target_common( request, build_id, target_id, variant ): 496def target_common( request, build_id, target_id, variant ):
445 template = "target.html" 497 template = "target.html"
446 (pagesize, orderby) = _get_parameters_values(request, 25, 'name:+') 498 (pagesize, orderby) = _get_parameters_values(request, 25, 'name:+')