Fix URL schema of change stream state to use the state type (to be
more in line with the IANA ones), remove debug output, link to the new change state page from the draft main page - Legacy-Id: 6295
This commit is contained in:
parent
8c88bc5aec
commit
74966fac88
|
@ -1030,7 +1030,7 @@ class ChangeStreamStateTests(django.test.TestCase):
|
|||
draft.tags = DocTagName.objects.filter(slug="w-expert")
|
||||
draft.group.unused_tags.add("w-refdoc")
|
||||
|
||||
url = urlreverse('doc_change_stream_state', kwargs=dict(name=draft.name))
|
||||
url = urlreverse('doc_change_stream_state', kwargs=dict(name=draft.name, state_type="draft-stream-ietf"))
|
||||
login_testing_unauthorized(self, "marschairman", url)
|
||||
|
||||
# get
|
||||
|
@ -1068,7 +1068,7 @@ class ChangeStreamStateTests(django.test.TestCase):
|
|||
def test_set_state(self):
|
||||
draft = make_test_data()
|
||||
|
||||
url = urlreverse('doc_change_stream_state', kwargs=dict(name=draft.name))
|
||||
url = urlreverse('doc_change_stream_state', kwargs=dict(name=draft.name, state_type="draft-stream-ietf"))
|
||||
login_testing_unauthorized(self, "marschairman", url)
|
||||
|
||||
# get
|
||||
|
|
|
@ -87,7 +87,7 @@ urlpatterns += patterns('',
|
|||
url(r'^(?P<name>[A-Za-z0-9._+-]+)/edit/shepherdwriteup/$', views_draft.edit_shepherd_writeup, name='doc_edit_shepherd_writeup'),
|
||||
url(r'^(?P<name>[A-Za-z0-9._+-]+)/edit/requestpublication/$', views_draft.request_publication, name='doc_request_publication'),
|
||||
url(r'^(?P<name>[A-Za-z0-9._+-]+)/edit/adopt/$', views_draft.adopt_draft, name='doc_adopt_draft'),
|
||||
url(r'^(?P<name>[A-Za-z0-9._+-]+)/edit/state/stream/$', views_draft.change_stream_state, name='doc_change_stream_state'),
|
||||
url(r'^(?P<name>[A-Za-z0-9._+-]+)/edit/state/(?P<state_type>draft-stream-[a-z]+)/$', views_draft.change_stream_state, name='doc_change_stream_state'),
|
||||
|
||||
url(r'^(?P<name>[A-Za-z0-9._+-]+)/edit/clearballot/$', views_ballot.clear_ballot, name='doc_clear_ballot'),
|
||||
url(r'^(?P<name>[A-Za-z0-9._+-]+)/edit/deferballot/$', views_ballot.defer_ballot, name='doc_defer_ballot'),
|
||||
|
|
|
@ -258,9 +258,11 @@ def document_main(request, name, rev=None):
|
|||
resurrected_by = e.by
|
||||
|
||||
# stream info
|
||||
stream_state_type_slug = None
|
||||
stream_state = None
|
||||
if doc.stream:
|
||||
stream_state = doc.get_state("draft-stream-%s" % doc.stream_id)
|
||||
stream_state_type_slug = "draft-stream-%s" % doc.stream_id
|
||||
stream_state = doc.get_state(stream_state_type_slug)
|
||||
stream_tags = doc.tags.filter(slug__in=get_tags_for_stream_id(doc.stream_id))
|
||||
|
||||
shepherd_writeup = doc.latest_event(WriteupDocEvent, type="changed_protocol_writeup")
|
||||
|
@ -356,6 +358,7 @@ def document_main(request, name, rev=None):
|
|||
has_errata=doc.tags.filter(slug="errata"),
|
||||
published=doc.latest_event(type="published_rfc"),
|
||||
file_urls=file_urls,
|
||||
stream_state_type_slug=stream_state_type_slug,
|
||||
stream_state=stream_state,
|
||||
stream_tags=stream_tags,
|
||||
milestones=doc.groupmilestone_set.filter(state="active"),
|
||||
|
|
|
@ -1198,7 +1198,7 @@ def adopt_draft(request, name):
|
|||
context_instance=RequestContext(request))
|
||||
|
||||
class ChangeStreamStateForm(forms.Form):
|
||||
new_state = forms.ModelChoiceField(queryset=State.objects.filter(used=True), label='State')
|
||||
new_state = forms.ModelChoiceField(queryset=State.objects.filter(used=True), label='State', help_text=u"Only select 'Submitted to IESG for Publication' to correct errors. Use the document's main page to request publication.")
|
||||
weeks = forms.IntegerField(label='Expected weeks in state',required=False)
|
||||
comment = forms.CharField(widget=forms.Textarea, required=False, help_text="Optional comment for the document history")
|
||||
tags = forms.ModelMultipleChoiceField(queryset=DocTagName.objects.filter(used=True), widget=forms.CheckboxSelectMultiple, required=False)
|
||||
|
@ -1244,15 +1244,16 @@ def next_states_for_stream_state(doc, state_type, current_state):
|
|||
return next_states
|
||||
|
||||
@login_required
|
||||
def change_stream_state(request, name):
|
||||
def change_stream_state(request, name, state_type):
|
||||
doc = get_object_or_404(Document, type="draft", name=name)
|
||||
if not doc.stream:
|
||||
raise Http404
|
||||
|
||||
state_type = get_object_or_404(StateType, slug=state_type)
|
||||
|
||||
if not is_authorized_in_doc_stream(request.user, doc):
|
||||
return HttpResponseForbidden("You don't have permission to access this page")
|
||||
|
||||
state_type = StateType.objects.get(slug="draft-stream-%s" % doc.stream_id)
|
||||
prev_state = doc.get_state(state_type.slug)
|
||||
next_states = next_states_for_stream_state(doc, state_type, prev_state)
|
||||
|
||||
|
@ -1308,7 +1309,7 @@ def change_stream_state(request, name):
|
|||
|
||||
return HttpResponseRedirect(doc.get_absolute_url())
|
||||
else:
|
||||
form = ChangeStreamStateForm(initial=dict(new_state=prev_state.pk),
|
||||
form = ChangeStreamStateForm(initial=dict(new_state=prev_state.pk if prev_state else None),
|
||||
doc=doc, state_type=state_type)
|
||||
|
||||
milestones = doc.groupmilestone_set.all()
|
||||
|
|
|
@ -95,7 +95,7 @@
|
|||
{% if doc.stream %}
|
||||
<td>{{ doc.stream }} State:</td>
|
||||
<td class="stream-state">
|
||||
<a {% if doc.stream and can_edit_stream_info %}class="editlink" href="{% url edit_state name=doc.name %}"{% endif %}>
|
||||
<a {% if doc.stream and can_edit_stream_info %}class="editlink" href="{% url doc_change_stream_state name=doc.name state_type=stream_state_type_slug %}"{% endif %}>
|
||||
{{ stream_state|default:"(None)" }}
|
||||
</a>
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ form.change-state ul li label { cursor: pointer; }
|
|||
|
||||
{% if next_states %}
|
||||
<div class="next-states">
|
||||
<span>Recommended next state{{next_states|pluralize}}:</span>
|
||||
<span>Recommended next state{{ next_states|pluralize }}:</span>
|
||||
{% for state in next_states %}<a tabindex="0" data-state="{{ state.pk }}">{{ state.name }}</a> {% if not forloop.last %} or {% endif %}{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
@ -65,7 +65,6 @@ jQuery(document).ready(function () {
|
|||
jQuery(".next-states a").click(function (e) {
|
||||
e.preventDefault();
|
||||
var s = jQuery(this).data("state");
|
||||
console.log(s)
|
||||
jQuery("#id_new_state").val(s);
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue