diff --git a/ietf/liaisons/forms.py b/ietf/liaisons/forms.py
index 069f90bfd..8196e766e 100644
--- a/ietf/liaisons/forms.py
+++ b/ietf/liaisons/forms.py
@@ -64,6 +64,9 @@ class LiaisonForm(forms.ModelForm):
def __unicode__(self):
return self.as_div()
+ def get_post_only(self):
+ return False
+
def set_required_fields(self):
purpose = self.data.get('purpose', None)
if purpose == '5':
@@ -193,6 +196,16 @@ class IncomingLiaisonForm(LiaisonForm):
def set_organization_field(self):
self.fields['organization'].choices = self.hm.get_all_incoming_entities()
+ def get_post_only(self):
+ if self.user.groups.filter(name='Liaison_Manager'):
+ return True
+ return False
+
+ def clean(self):
+ if self.data.has_key('send') and self.get_post_only():
+ self._errors['from_field'] = ErrorList([u'As an IETF Liaison Manager you can not send an incoming liaison statements, you only can post them'])
+ return super(IncomingLiaisonForm, self).clean()
+
class OutgoingLiaisonForm(LiaisonForm):
diff --git a/ietf/templates/liaisons/liaisonform.html b/ietf/templates/liaisons/liaisonform.html
index 5871db9e4..f4fd48b27 100644
--- a/ietf/templates/liaisons/liaisonform.html
+++ b/ietf/templates/liaisons/liaisonform.html
@@ -46,7 +46,9 @@
{% if form.liaison %}
{% else %}
+ {% if not form.get_post_only %}
+ {% endif %}
{% endif %}