mirror of
git://git.yoctoproject.org/layerindex-web.git
synced 2025-07-19 12:39:02 +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.views.generic import TemplateView, DetailView, ListView
|
||||
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('',
|
||||
url(r'^$',
|
||||
|
@ -30,8 +30,12 @@ urlpatterns = patterns('',
|
|||
name='machine_search'),
|
||||
url(r'^review/$',
|
||||
LayerReviewListView.as_view(
|
||||
template_name='layerindex/index.html'),
|
||||
template_name='layerindex/reviewlist.html'),
|
||||
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]+)/$',
|
||||
LayerDetailView.as_view(
|
||||
template_name='layerindex/detail.html'),
|
||||
|
|
|
@ -128,7 +128,7 @@ def edit_layer_view(request, template_name, slug=None):
|
|||
d = Context({
|
||||
'user_name': user.get_full_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)
|
||||
from_email = settings.SUBMIT_EMAIL_FROM
|
||||
|
@ -216,6 +216,12 @@ class LayerDetailView(DetailView):
|
|||
context['layerbranch'] = layer.get_layerbranch(self.request.session.get('branch', 'master'))
|
||||
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):
|
||||
context_object_name = 'recipe_list'
|
||||
paginate_by = 50
|
||||
|
|
|
@ -38,10 +38,6 @@
|
|||
<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>
|
||||
|
@ -154,28 +150,6 @@
|
|||
</div> <!-- end of row-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 %}
|
||||
<div class="container-fluid" style="margin-bottom:1em;">
|
||||
<div class="row-fluid">
|
||||
|
@ -239,7 +213,6 @@
|
|||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% 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