Skip to content

Commit be2a228

Browse files
committed
Added small orange or green yang symbols to draft info- and list-pages, signifying fail or pass for the submission yang validation.
- Legacy-Id: 10994
1 parent 2dc0745 commit be2a228

10 files changed

Lines changed: 38 additions & 7 deletions

File tree

ietf/doc/models.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -521,6 +521,11 @@ def last_presented(self):
521521
else:
522522
return None
523523

524+
def submission(self):
525+
s = self.submission_set.filter(rev=self.rev)
526+
s = s.first()
527+
return s
528+
524529
class RelatedDocHistory(models.Model):
525530
source = models.ForeignKey('DocHistory')
526531
target = models.ForeignKey('DocAlias', related_name="reversely_related_document_history_set")

ietf/secr/drafts/views.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,6 @@ def process_files(request,draft):
124124
file_size=txt_size,
125125
document_date=wrapper.get_creation_date(),
126126
submission_date=datetime.date.today(),
127-
idnits_message='idnits bypassed by manual posting',
128127
group_id=draft.group.id,
129128
remote_ip=request.META['REMOTE_ADDR'],
130129
first_two_pages=''.join(wrapper.pages[:2]),

ietf/submit/admin.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55
from ietf.submit.models import Preapproval, Submission, SubmissionCheck
66

77
class SubmissionAdmin(admin.ModelAdmin):
8-
list_display = ['id', 'draft_link', 'status_link', 'submission_date',]
8+
list_display = ['id', 'rev', 'draft_link', 'status_link', 'submission_date',]
99
ordering = [ '-id' ]
1010
search_fields = ['name', ]
11-
raw_id_fields = ['group']
11+
raw_id_fields = ['group', 'draft']
1212

1313
def status_link(self, instance):
1414
url = urlreverse('submit_submission_status_by_hash',

ietf/submit/checkers.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,11 @@ class DraftIdnitsChecker(object):
4444
"""
4545
name = "idnits check"
4646

47+
# start using this when we provide more in the way of warnings during
48+
# submission checking:
49+
# symbol = '<span class="fa fa-check-square"></span>'
50+
symbol = ""
51+
4752
def check_file_txt(self, path):
4853
"""
4954
Run an idnits check, and return a passed/failed indication, a message,
@@ -107,6 +112,7 @@ def check_file_txt(self, path):
107112
class DraftYangChecker(object):
108113

109114
name = "yang validation"
115+
symbol = u'<span class="large">\u262f</span>'
110116

111117
def check_file_txt(self, path):
112118
name = os.path.basename(path)

ietf/submit/models.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ class Submission(models.Model):
4545

4646
submitter = models.CharField(max_length=255, blank=True, help_text="Name and email of submitter, e.g. \"John Doe &lt;john@example.org&gt;\".")
4747

48-
idnits_message = models.TextField(blank=True)
48+
draft = models.ForeignKey(Document, null=True, blank=True)
4949

5050
def __unicode__(self):
5151
return u"%s-%s" % (self.name, self.rev)
@@ -76,6 +76,7 @@ class SubmissionCheck(models.Model):
7676
errors = models.IntegerField(null=True, blank=True, default=None)
7777
warnings = models.IntegerField(null=True, blank=True, default=None)
7878
items = jsonfield.JSONField(null=True, blank=True, default='{}')
79+
symbol = models.CharField(max_length=64, default='')
7980
#
8081
def __unicode__(self):
8182
return "%s submission check: %s: %s" % (self.checker, 'Passed' if self.passed else 'Failed', self.message[:48]+'...')

ietf/submit/resources.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,11 @@ class Meta:
2525

2626
from ietf.group.resources import GroupResource
2727
from ietf.name.resources import DraftSubmissionStateNameResource
28+
from ietf.doc.resources import DocumentResource
2829
class SubmissionResource(ModelResource):
2930
state = ToOneField(DraftSubmissionStateNameResource, 'state')
3031
group = ToOneField(GroupResource, 'group', null=True)
32+
draft = ToOneField(DocumentResource, 'draft', null=True)
3133
class Meta:
3234
queryset = Submission.objects.all()
3335
serializer = api.Serializer()
@@ -53,6 +55,7 @@ class Meta:
5355
"submitter": ALL,
5456
"state": ALL_WITH_RELATIONS,
5557
"group": ALL_WITH_RELATIONS,
58+
"draft": ALL_WITH_RELATIONS,
5659
}
5760
api.submit.register(SubmissionResource())
5861

ietf/submit/utils.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,7 @@ def post_submission(request, submission):
212212
if new_possibly_replaces:
213213
send_review_possibly_replaces_request(request, draft, submitter_info)
214214

215+
submission.draft = draft
215216
submission.save()
216217

217218
def update_replaces_from_submission(request, submission, draft):

ietf/submit/views.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ def upload_submission(request):
121121
def apply_check(submission, checker, method, fn):
122122
func = getattr(checker, method)
123123
passed, message, errors, warnings, items = func(fn)
124-
check = SubmissionCheck(submission=submission, checker=checker.name, passed=passed, message=message, errors=errors, warnings=warnings, items=items)
124+
check = SubmissionCheck(submission=submission, checker=checker.name, passed=passed, message=message, errors=errors, warnings=warnings, items=items, symbol=checker.symbol)
125125
check.save()
126126

127127
for checker_path in settings.IDSUBMIT_CHECKER_CLASSES:

ietf/templates/doc/document_draft.html

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,13 @@
7676
{% if latest_revision and latest_revision.time.date != doc.time.date %}
7777
(latest revision {{ latest_revision.time|date:"Y-m-d" }})
7878
{% endif %}
79+
{% for check in doc.submission.checks.all %}
80+
{% if check.errors or check.warnings %}
81+
<span class="checker-warning" title="Submission {{check.checker|title}} returned warnings or errors.">{{ check.symbol|safe }}</span>
82+
{% else %}
83+
<span class="checker-success" title="Submission {{check.checker|title}} passed">{{ check.symbol|safe }}</span>
84+
{% endif %}
85+
{% endfor %}
7986
</td>
8087
</tr>
8188

ietf/templates/doc/search/search_result_row.html

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,13 +59,22 @@
5959
{% if doc.latest_revision_date|timesince_days|new_enough:request and doc.get_state_slug != "rfc" %}</a>{% endif %}
6060
</span>
6161

62+
{% for check in doc.submission.checks.all %}
63+
{% if check.symbol.strip %}
64+
{% if check.errors or check.warnings %}
65+
<span class="checker-warning pull-right" title="{{check.checker|title}} returned warnings or errors.">{{ check.symbol|safe }}</span>
66+
{% else %}
67+
<span class="checker-success pull-right" title="{{check.checker|title}} passed">{{ check.symbol|safe }}</span>
68+
{% endif %}
69+
{% endif %}
70+
{% endfor %}
71+
6272
{% if doc.pages %}
6373
<br><small class="text-muted">{{doc.pages}} page{{ doc.pages|pluralize }}</small>
6474
{% endif %}
6575

66-
6776
{% if doc.latest_revision_date|timesince_days|new_enough:request %}
68-
<wbr><span class="label label-success pull-right">New</span>
77+
<wbr><span class="label label-success">New</span>
6978
{% endif %}
7079

7180
{% if doc.get_state_slug == "active" and doc.expirable and doc.expires|timesince_days|expires_soon:request %}

0 commit comments

Comments
 (0)