mirror of
git://git.yoctoproject.org/layerindex-web.git
synced 2025-07-19 12:49:01 +02:00
Add separate templates for review list and detail
This cuts out a lot of the elements that aren't needed for the review list, shows fields in a more suitable way for review purposes than the standard detail (and includes some fields that don't currently get shown on the standard detail e.g. layer type and short description). Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
This commit is contained in:
parent
fecc907687
commit
a643aeba33
|
@ -7,7 +7,7 @@
|
||||||
from django.conf.urls.defaults import *
|
from django.conf.urls.defaults import *
|
||||||
from django.views.generic import TemplateView, DetailView, ListView
|
from django.views.generic import TemplateView, DetailView, ListView
|
||||||
from layerindex.models import LayerItem, Recipe
|
from layerindex.models import LayerItem, Recipe
|
||||||
from layerindex.views import LayerListView, LayerReviewListView, RecipeSearchView, MachineSearchView, PlainTextListView, LayerDetailView, edit_layer_view, delete_layer_view, edit_layernote_view, delete_layernote_view, switch_branch_view
|
from layerindex.views import LayerListView, LayerReviewListView, LayerReviewDetailView, RecipeSearchView, MachineSearchView, PlainTextListView, LayerDetailView, edit_layer_view, delete_layer_view, edit_layernote_view, delete_layernote_view, switch_branch_view
|
||||||
|
|
||||||
urlpatterns = patterns('',
|
urlpatterns = patterns('',
|
||||||
url(r'^$',
|
url(r'^$',
|
||||||
|
@ -30,8 +30,12 @@ urlpatterns = patterns('',
|
||||||
name='machine_search'),
|
name='machine_search'),
|
||||||
url(r'^review/$',
|
url(r'^review/$',
|
||||||
LayerReviewListView.as_view(
|
LayerReviewListView.as_view(
|
||||||
template_name='layerindex/index.html'),
|
template_name='layerindex/reviewlist.html'),
|
||||||
name='layer_list_review'),
|
name='layer_list_review'),
|
||||||
|
url(r'^review/(?P<slug>[-\w]+)/$',
|
||||||
|
LayerReviewDetailView.as_view(
|
||||||
|
template_name='layerindex/reviewdetail.html'),
|
||||||
|
name='layer_review'),
|
||||||
url(r'^layer/(?P<slug>[-\w]+)/$',
|
url(r'^layer/(?P<slug>[-\w]+)/$',
|
||||||
LayerDetailView.as_view(
|
LayerDetailView.as_view(
|
||||||
template_name='layerindex/detail.html'),
|
template_name='layerindex/detail.html'),
|
||||||
|
|
|
@ -128,7 +128,7 @@ def edit_layer_view(request, template_name, slug=None):
|
||||||
d = Context({
|
d = Context({
|
||||||
'user_name': user.get_full_name(),
|
'user_name': user.get_full_name(),
|
||||||
'layer_name': layeritem.name,
|
'layer_name': layeritem.name,
|
||||||
'layer_url': request.build_absolute_uri(layeritem.get_absolute_url()) + '?branch=master',
|
'layer_url': request.build_absolute_uri(reverse('layer_review', args=(layeritem.name,))) + '?branch=master',
|
||||||
})
|
})
|
||||||
subject = '%s - %s' % (settings.SUBMIT_EMAIL_SUBJECT, layeritem.name)
|
subject = '%s - %s' % (settings.SUBMIT_EMAIL_SUBJECT, layeritem.name)
|
||||||
from_email = settings.SUBMIT_EMAIL_FROM
|
from_email = settings.SUBMIT_EMAIL_FROM
|
||||||
|
@ -216,6 +216,12 @@ class LayerDetailView(DetailView):
|
||||||
context['layerbranch'] = layer.get_layerbranch(self.request.session.get('branch', 'master'))
|
context['layerbranch'] = layer.get_layerbranch(self.request.session.get('branch', 'master'))
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
class LayerReviewDetailView(LayerDetailView):
|
||||||
|
def dispatch(self, request, *args, **kwargs):
|
||||||
|
if not request.user.has_perm('layerindex.publish_layer'):
|
||||||
|
raise PermissionDenied
|
||||||
|
return super(LayerReviewDetailView, self).dispatch(request, *args, **kwargs)
|
||||||
|
|
||||||
class RecipeSearchView(ListView):
|
class RecipeSearchView(ListView):
|
||||||
context_object_name = 'recipe_list'
|
context_object_name = 'recipe_list'
|
||||||
paginate_by = 50
|
paginate_by = 50
|
||||||
|
|
|
@ -38,10 +38,6 @@
|
||||||
<a href="{% url add_layernote layeritem.name %}" class="btn">Add note</a>
|
<a href="{% url add_layernote layeritem.name %}" class="btn">Add note</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if layeritem.status = "N" and perms.layeritem.publish_layer %}
|
|
||||||
<a href="{% url delete_layer layeritem.name %}" class="btn btn-warning">Delete layer</a>
|
|
||||||
<a href="{% url publish layeritem.name %}" class="btn btn-primary">Publish layer</a>
|
|
||||||
{% endif %}
|
|
||||||
</span>
|
</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</h1>
|
</h1>
|
||||||
|
@ -154,28 +150,6 @@
|
||||||
</div> <!-- end of row-fluid -->
|
</div> <!-- end of row-fluid -->
|
||||||
</div> <!-- end of container-fluid -->
|
</div> <!-- end of container-fluid -->
|
||||||
|
|
||||||
{% if layeritem.status = 'N' and layerbranch %}
|
|
||||||
<div class="container-fluid" style="margin-bottom:1em;">
|
|
||||||
{% if layeritem.vcs_web_file_base_url %}
|
|
||||||
<span class="label label-important">
|
|
||||||
<a href="{{ layerbranch.test_file_url }}">test file link</a>
|
|
||||||
</span>
|
|
||||||
{% else %}
|
|
||||||
<span class="label">
|
|
||||||
No base file URL provided
|
|
||||||
</span>
|
|
||||||
{% endif %}
|
|
||||||
{% if layeritem.vcs_web_tree_base_url %}
|
|
||||||
<span class="label label-important">
|
|
||||||
<a href="{{ layerbranch.test_tree_url }}">test tree link</a>
|
|
||||||
</span>
|
|
||||||
{% else %}
|
|
||||||
<span class="label">
|
|
||||||
No base tree URL provided
|
|
||||||
</span>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
{% else %}
|
|
||||||
{% if layerbranch.machine_set.count > 0 %}
|
{% if layerbranch.machine_set.count > 0 %}
|
||||||
<div class="container-fluid" style="margin-bottom:1em;">
|
<div class="container-fluid" style="margin-bottom:1em;">
|
||||||
<div class="row-fluid">
|
<div class="row-fluid">
|
||||||
|
@ -239,7 +213,6 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% endautoescape %}
|
{% endautoescape %}
|
||||||
|
|
||||||
|
|
190
templates/layerindex/reviewdetail.html
Normal file
190
templates/layerindex/reviewdetail.html
Normal file
|
@ -0,0 +1,190 @@
|
||||||
|
{% extends "base.html" %}
|
||||||
|
{% load i18n %}
|
||||||
|
{% load static %}
|
||||||
|
|
||||||
|
{% comment %}
|
||||||
|
|
||||||
|
layerindex-web - review layer detail page template
|
||||||
|
|
||||||
|
Copyright (C) 2013 Intel Corporation
|
||||||
|
Licensed under the MIT license, see COPYING.MIT for details
|
||||||
|
|
||||||
|
{% endcomment %}
|
||||||
|
|
||||||
|
|
||||||
|
<!--
|
||||||
|
{% autoescape on %}
|
||||||
|
{% block title_append %} - {{ layeritem.name }}{% endblock %}
|
||||||
|
{% endautoescape %}
|
||||||
|
-->
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
|
||||||
|
{% autoescape on %}
|
||||||
|
|
||||||
|
|
||||||
|
<div class="container-fluid">
|
||||||
|
<div class="row-fluid">
|
||||||
|
<div class="page-header">
|
||||||
|
<h1>{{ layeritem.name }}
|
||||||
|
{% if layeritem.status = "N" %}
|
||||||
|
<span class="label label-warning">Unpublished</span>
|
||||||
|
{% else %}
|
||||||
|
<span class="label label-info">Published</span>
|
||||||
|
{% endif %}
|
||||||
|
{% if user.is_authenticated %}
|
||||||
|
<span class="pull-right">
|
||||||
|
{% if perms.layeritem.publish_layer or useredit %}
|
||||||
|
<a href="{% url edit_layer layeritem.name %}" class="btn">Edit layer</a>
|
||||||
|
{% if layeritem.layernote_set.count = 0 %}
|
||||||
|
<a href="{% url add_layernote layeritem.name %}" class="btn">Add note</a>
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
{% if layeritem.status = "N" and perms.layeritem.publish_layer %}
|
||||||
|
<a href="{% url delete_layer layeritem.name %}" class="btn btn-warning">Delete layer</a>
|
||||||
|
<a href="{% url publish layeritem.name %}" class="btn btn-primary">Publish layer</a>
|
||||||
|
{% endif %}
|
||||||
|
</span>
|
||||||
|
{% endif %}
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
|
</div> <!-- end of row-fluid -->
|
||||||
|
</div> <!-- end of container-fluid -->
|
||||||
|
|
||||||
|
<div class="container-fluid">
|
||||||
|
{% if not layerbranch %}
|
||||||
|
<div class="row-fluid">
|
||||||
|
<div class="alert alert-error">
|
||||||
|
This layer does not exist for branch {{ current_branch }}.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
<div class="row-fluid">
|
||||||
|
{% for note in layeritem.layernote_set.all %}
|
||||||
|
<div class="alert">
|
||||||
|
<p>{{ note.text }}</p>
|
||||||
|
{% if perms.layeritem.publish_layer or useredit %}
|
||||||
|
<p>
|
||||||
|
<a href="{% url edit_layernote layeritem.name note.pk %}" class="btn">Edit note</a>
|
||||||
|
<a href="{% url delete_layernote layeritem.name note.pk %}" class='btn'>Delete note</a>
|
||||||
|
</p>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row-fluid">
|
||||||
|
<div>
|
||||||
|
|
||||||
|
<table class="table table-striped table-bordered">
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<th>Name</th>
|
||||||
|
<td>{{ layeritem.name }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Type</th>
|
||||||
|
<td>{{ layeritem.get_layer_type_display }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Summary</th>
|
||||||
|
<td>{{ layeritem.summary }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Description</th>
|
||||||
|
<td>{{ layeritem.description }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Repository</th>
|
||||||
|
<td>{{ layeritem.vcs_url }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Repository subdirectory</th>
|
||||||
|
<td>{{ layeritem.vcs_subdir }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Repo web interface</th>
|
||||||
|
<td>
|
||||||
|
{% if layeritem.vcs_web_url %}
|
||||||
|
<a href="{{ layeritem.vcs_web_url }}">{{ layeritem.vcs_web_url }}</a>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Repo web interface test links</th>
|
||||||
|
<td>
|
||||||
|
{% if layeritem.vcs_web_file_base_url %}
|
||||||
|
<span class="label label-important">
|
||||||
|
<a href="{{ layerbranch.test_file_url }}">test file link</a>
|
||||||
|
</span>
|
||||||
|
{% else %}
|
||||||
|
<span class="label">
|
||||||
|
No base file URL provided
|
||||||
|
</span>
|
||||||
|
{% endif %}
|
||||||
|
{% if layeritem.vcs_web_tree_base_url %}
|
||||||
|
<span class="label label-important">
|
||||||
|
<a href="{{ layerbranch.test_tree_url }}">test tree link</a>
|
||||||
|
</span>
|
||||||
|
{% else %}
|
||||||
|
<span class="label">
|
||||||
|
No base tree URL provided
|
||||||
|
</span>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Setup info URL</th>
|
||||||
|
<td>
|
||||||
|
{% if layeritem.usage_url %}
|
||||||
|
<a href="{{ layerbranch.get_usage_url }}">{{ layeritem.usage_url }}</a>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Mailing list URL</th>
|
||||||
|
<td>
|
||||||
|
{% if layeritem.mailing_list_url %}
|
||||||
|
<a href="{{ layerbranch.mailing_list_url }}">{{ layeritem.mailing_list_url }}</a>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Maintainers</th>
|
||||||
|
<td>
|
||||||
|
<ul class="unstyled">
|
||||||
|
{% for maintainer in layerbranch.active_maintainers %}
|
||||||
|
<li>
|
||||||
|
{{ maintainer.name }}
|
||||||
|
{% if maintainer.responsibility %}
|
||||||
|
<span>({{ maintainer.responsibility }})</span>
|
||||||
|
{% endif %}
|
||||||
|
- <a href="mailto:{{ maintainer.email }}">{{ maintainer.email }}</a>
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>Dependencies</th>
|
||||||
|
<td>
|
||||||
|
<ul class="unstyled">
|
||||||
|
{% for dep in layerbranch.dependencies_set.all %}
|
||||||
|
<li><a href="{% url layer_item dep.dependency.name %}">{{ dep.dependency.name }}</a></li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div> <!-- end of row-fluid -->
|
||||||
|
</div> <!-- end of container-fluid -->
|
||||||
|
|
||||||
|
|
||||||
|
{% endautoescape %}
|
||||||
|
|
||||||
|
{% endblock %}
|
||||||
|
|
77
templates/layerindex/reviewlist.html
Normal file
77
templates/layerindex/reviewlist.html
Normal file
|
@ -0,0 +1,77 @@
|
||||||
|
{% extends "base.html" %}
|
||||||
|
{% load i18n %}
|
||||||
|
{% load static %}
|
||||||
|
|
||||||
|
{% comment %}
|
||||||
|
|
||||||
|
layerindex-web - layer review list page template
|
||||||
|
|
||||||
|
Copyright (C) 2013 Intel Corporation
|
||||||
|
Licensed under the MIT license, see COPYING.MIT for details
|
||||||
|
|
||||||
|
{% endcomment %}
|
||||||
|
|
||||||
|
|
||||||
|
<!--
|
||||||
|
{% block title_append %} - review{% endblock %}
|
||||||
|
-->
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
{% autoescape on %}
|
||||||
|
|
||||||
|
{% if layerbranch_list %}
|
||||||
|
<div class="row-fluid">
|
||||||
|
<div class="span9 offset1">
|
||||||
|
|
||||||
|
<table class="table table-striped table-bordered layerstable">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Layer name</th>
|
||||||
|
<th class="span4">Description</th>
|
||||||
|
<th>Type</th>
|
||||||
|
<th>Repository</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
|
||||||
|
<tbody>
|
||||||
|
{% for layerbranch in layerbranch_list %}
|
||||||
|
<tr class="layertype_{{ layerbranch.layer.layer_type }}">
|
||||||
|
<td><a href="{% url layer_review layerbranch.layer.name %}">{{ layerbranch.layer.name }}</a></td>
|
||||||
|
<td>{{ layerbranch.layer.summary }}</td>
|
||||||
|
<td>{{ layerbranch.layer.get_layer_type_display }}</td>
|
||||||
|
<td class="showRollie">
|
||||||
|
{{ layerbranch.layer.vcs_url }}
|
||||||
|
{% if layerbranch.layer.vcs_web_url %}
|
||||||
|
<a class="rollie" href="{{ layerbranch.layer.vcs_web_url }}">
|
||||||
|
<span class="label label-info">
|
||||||
|
web repo
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
|
{% if layerbranch.tree_url %}
|
||||||
|
<a class="rollie" href="{{ layerbranch.tree_url }}">
|
||||||
|
<span class="label label-info">
|
||||||
|
tree
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% if is_paginated %}
|
||||||
|
{% load pagination %}
|
||||||
|
{% pagination page_obj %}
|
||||||
|
{% endif %}
|
||||||
|
{% else %}
|
||||||
|
<p>No unpublished layers to review.</p>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% endautoescape %}
|
||||||
|
|
||||||
|
{% endblock %}
|
Loading…
Reference in New Issue
Block a user