diff --git a/calsocial/templates/_macros.html b/calsocial/templates/_macros.html
new file mode 100644
index 0000000..633314d
--- /dev/null
+++ b/calsocial/templates/_macros.html
@@ -0,0 +1,21 @@
+{% macro field(field, inline=false) %}
+ {% if field.errors %}
+ {% for error in field.errors %}
+{{ error }}
+ {% endfor %}
+
+ {% endif %}
+ {% if field.widget.input_type != 'checkbox' %}
+{{ field.label }}
+ {% endif %}
+{{ field }}
+ {% if field.widget.input_type == 'checkbox' %}
+{{ field.label }}
+ {% endif %}
+{% if not inline %}
+
+{% endif %}
+ {% if field.description %}
+{{ field.description }}
+ {% endif %}
+{% endmacro %}
diff --git a/calsocial/templates/event-details.html b/calsocial/templates/event-details.html
index 26dff7b..d6bd2ba 100644
--- a/calsocial/templates/event-details.html
+++ b/calsocial/templates/event-details.html
@@ -1,4 +1,5 @@
{% extends 'base.html' %}
+{% from '_macros.html' import field %}
{% block content %}
@@ -28,9 +29,7 @@
diff --git a/calsocial/templates/event-edit.html b/calsocial/templates/event-edit.html
index 831526f..483f2c0 100644
--- a/calsocial/templates/event-edit.html
+++ b/calsocial/templates/event-edit.html
@@ -1,41 +1,24 @@
{% extends 'base.html' %}
+{% from '_macros.html' import field %}
{% block content %}
+Create event
diff --git a/calsocial/templates/registration.html b/calsocial/templates/registration.html
index 95f3977..2cc7c0a 100644
--- a/calsocial/templates/registration.html
+++ b/calsocial/templates/registration.html
@@ -1,29 +1,15 @@
{% extends 'base.html' %}
+{% from '_macros.html' import field %}
{% block content %}
diff --git a/calsocial/templates/user-settings.html b/calsocial/templates/user-settings.html
index 5141f07..a7d8d11 100644
--- a/calsocial/templates/user-settings.html
+++ b/calsocial/templates/user-settings.html
@@ -1,4 +1,5 @@
{% extends 'settings-base.html' %}
+{% from '_macros.html' import field %}
{% block content %}
{{ super() }}
@@ -9,10 +10,7 @@
{{ form.errors }}
- {{ form.timezone.errors }}
- {{ form.timezone.label }}
- {{ form.timezone}}
-
+ {{ field(form.timezone) }}
Cancel