diff --git a/models/forms.py b/models/forms.py
index 8dcf735db318e6d67f790ad3c372e391e01518f5..20489601e348e28585a7879f09cef1c0309469f0 100644
--- a/models/forms.py
+++ b/models/forms.py
@@ -23,11 +23,12 @@ class AdminUserForm(Form):
     roles = SelectMultipleField("User roles", choices=[(x.lower().strip(), x) for x in shared.roles])
 
 class AddStatementForm(Form):
-    speaker_name = StringField("Speaker", validators=[InputRequired("Entering the speaker is required.")])
+    speaker_name = StringField("Speaker", validators=[InputRequired("Entering the speaker name or number is required.")])
     topic = HiddenField("Topic")
     
 class EditSpeakerForm(Form):
     name = StringField("Speaker", validators=[InputRequired("Entering the speaker is required.")])
+    number = IntegerField("Number", validators=[Optional(), NumberRange(min=0)])
     topic_id = HiddenField("Topic_id")
     id = HiddenField("Speaker_id")
 
diff --git a/modules/admin.py b/modules/admin.py
index b9a087502626938e1ed236ba8131d14c0b1f75de..942cced8c36c007aa8963e2b2cd26df420641299 100644
--- a/modules/admin.py
+++ b/modules/admin.py
@@ -252,10 +252,11 @@ def speaker_edit():
     speaker = Speaker.query.filter_by(id=speaker_id).first()
     form = EditSpeakerForm(obj=speaker)
     form.topic_id.data=topic_id
-        
+    
     if speaker is not None:
         if form.validate_on_submit():
             speaker.name = form.name.data
+            speaker.number = form.number.data
             db.session.commit()
             return redirect(url_for(".topic_show",id=form.topic_id.data))
         else: 
diff --git a/templates/macros.html b/templates/macros.html
index 4a2ac7e958bb48fbd0f285819a9c1789189c994f..907b1e4e6a405b4bf497be7c9d3575e0bb7c0145 100644
--- a/templates/macros.html
+++ b/templates/macros.html
@@ -22,6 +22,22 @@
     </div>
 {%- endmacro %}
 
+{% macro render_integerfield(field) -%}
+    <div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
+        <input id="{{ field.id }}" name="{{ field.id }}" class="mdl-textfield__input" type="text" {% if field.data is not none %}value="{{ field.data }}"{% endif %} />
+        <label class="mdl-textfield__label" for="{{ field.id }}">{{ field.label.text }}</label>
+        {% if field.errors %}
+            {% for e in field.errors %}
+                <div class="mdl-card__supporting-text">
+                    {{ e }}
+                </div>
+            {% endfor %}
+        {% endif %}
+    </div>
+{%- endmacro %}
+
+
+
 {% macro render_passwordfield(field) -%}
     <div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
         <input id="{{ field.id }}" name="{{ field.id }}" class="mdl-textfield__input" type="password" />
@@ -116,6 +132,8 @@
                         {{ render_stringfield(f) }}
                     {% elif f.type == "PasswordField" %}
                         {{ render_passwordfield(f) }}
+                    {% elif f.type == "IntegerField" %}
+                        {{ render_integerfield(f) }}
                     {% elif f.type == "BooleanField" %}
                         {{ render_booleanfield(f) }}
                     {% elif f.type == "CSRFTokenField" %}