|
24 | 24 | from ietf.nomcom.forms import (NominateForm, FeedbackForm, QuestionnaireForm, |
25 | 25 | MergeForm, NomComTemplateForm, PositionForm, |
26 | 26 | PrivateKeyForm, EditNomcomForm, EditNomineeForm, |
27 | | - PendingFeedbackForm, ReminderDatesForm, FullFeedbackFormSet) |
| 27 | + PendingFeedbackForm, ReminderDatesForm, FullFeedbackFormSet, |
| 28 | + FeedbackEmailForm) |
28 | 29 | from ietf.nomcom.models import Position, NomineePosition, Nominee, Feedback, NomCom, ReminderDates |
29 | 30 | from ietf.nomcom.utils import (get_nomcom_by_year, store_nomcom_private_key, |
30 | 31 | get_hash_nominee_position, send_reminder_to_nominees, |
@@ -304,6 +305,38 @@ def feedback(request, year, public): |
304 | 305 | 'selected': 'feedback'}, RequestContext(request)) |
305 | 306 |
|
306 | 307 |
|
| 308 | +@nomcom_member_required(role='chair') |
| 309 | +def private_feedback_email(request, year): |
| 310 | + nomcom = get_nomcom_by_year(year) |
| 311 | + has_publickey = nomcom.public_key and True or False |
| 312 | + message = None |
| 313 | + template = 'nomcom/private_feedback_email.html' |
| 314 | + |
| 315 | + if not has_publickey: |
| 316 | + message = ('warning', "This Nomcom is not yet accepting feedback email") |
| 317 | + return render_to_response(template, |
| 318 | + {'message': message, |
| 319 | + 'nomcom': nomcom, |
| 320 | + 'year': year, |
| 321 | + 'selected': 'feedback_email'}, RequestContext(request)) |
| 322 | + |
| 323 | + form = FeedbackEmailForm(nomcom=nomcom) |
| 324 | + |
| 325 | + if request.method == 'POST': |
| 326 | + form = FeedbackEmailForm(data=request.POST, |
| 327 | + nomcom=nomcom) |
| 328 | + if form.is_valid(): |
| 329 | + form.save() |
| 330 | + message = ('success', 'The feedback email has been registered.') |
| 331 | + |
| 332 | + return render_to_response(template, |
| 333 | + {'form': form, |
| 334 | + 'message': message, |
| 335 | + 'nomcom': nomcom, |
| 336 | + 'year': year, |
| 337 | + 'selected': 'feedback_email'}, RequestContext(request)) |
| 338 | + |
| 339 | + |
307 | 340 | @nomcom_member_required(role='chair') |
308 | 341 | def private_questionnaire(request, year): |
309 | 342 | nomcom = get_nomcom_by_year(year) |
|
0 commit comments