diff --git a/admin/freeposte/forms.py b/admin/freeposte/forms.py
index 5103819d..ce4b34f7 100644
--- a/admin/freeposte/forms.py
+++ b/admin/freeposte/forms.py
@@ -11,23 +11,27 @@ class LoginForm(Form):
class DomainCreateForm(Form):
name = fields.StringField('Domain name', [validators.DataRequired()])
+ comment = fields.StringField('Comment')
submit = fields.SubmitField('Create')
class DomainEditForm(Form):
max_users = fields.IntegerField('Maximum mailbox count')
max_aliases = fields.IntegerField('Maximum aliases count')
+ comment = fields.StringField('Comment')
submit = fields.SubmitField('Save')
class UserCreateForm(Form):
localpart = fields.StringField('E-mail', [validators.DataRequired()])
pw = fields.PasswordField('Password', [validators.DataRequired()])
+ comment = fields.StringField('Comment')
submit = fields.SubmitField('Create')
class UserEditForm(Form):
quota_bytes = fields.IntegerField('Quota')
+ comment = fields.StringField('Comment')
submit = fields.SubmitField('Create')
@@ -58,9 +62,11 @@ class UserReplyForm(Form):
class AliasCreateForm(Form):
localpart = fields.StringField('Alias', [validators.DataRequired()])
destination = fields.StringField('Destination', widget=widgets.TextArea())
+ comment = fields.StringField('Comment')
submit = fields.SubmitField('Create')
class AliasEditForm(Form):
destination = fields.StringField('Destination', widget=widgets.TextArea())
+ comment = fields.StringField('Comment')
submit = fields.SubmitField('Create')
diff --git a/admin/freeposte/models.py b/admin/freeposte/models.py
index 281005a4..4e92a2ba 100644
--- a/admin/freeposte/models.py
+++ b/admin/freeposte/models.py
@@ -25,6 +25,7 @@ class Base(db.Model):
created_at = db.Column(db.Date, nullable=False, default=datetime.now)
updated_at = db.Column(db.Date, nullable=True, onupdate=datetime.now)
+ comment = db.Column(db.String(255), nullable=True)
class Domain(Base):
diff --git a/admin/freeposte/templates/alias/list.html b/admin/freeposte/templates/alias/list.html
index cd4888d8..8b5aab90 100644
--- a/admin/freeposte/templates/alias/list.html
+++ b/admin/freeposte/templates/alias/list.html
@@ -19,6 +19,7 @@ Alias list
Actions |
Address |
Destination |
+ Comment |
Created |
Last edit |
@@ -30,6 +31,7 @@ Alias list
{{ alias }} |
{{ alias.destination or '-' }} |
+ {{ alias.comment or '' }} |
{{ alias.created_at }} |
{{ alias.updated_at or '' }} |
diff --git a/admin/freeposte/templates/domain/list.html b/admin/freeposte/templates/domain/list.html
index f0dbe5fc..adc34a27 100644
--- a/admin/freeposte/templates/domain/list.html
+++ b/admin/freeposte/templates/domain/list.html
@@ -18,6 +18,7 @@ Domain list
Domain name |
Mailbox count |
Alias count |
+ Comemnt |
Created |
Last edit |
@@ -33,6 +34,7 @@ Domain list
{{ domain.name }} |
{{ domain.users | count }} / {{ domain.max_users or '∞' }} |
{{ domain.aliases | count }} / {{ domain.max_aliases or '∞' }} |
+ {{ domain.comment or '' }} |
{{ domain.created_at }} |
{{ domain.updated_at or '' }} |
diff --git a/admin/freeposte/templates/user/list.html b/admin/freeposte/templates/user/list.html
index a049bccf..a0bd9565 100644
--- a/admin/freeposte/templates/user/list.html
+++ b/admin/freeposte/templates/user/list.html
@@ -22,6 +22,7 @@ User list
Forward |
Reply |
Quota |
+ Comment |
Created |
Last edit |
@@ -41,6 +42,7 @@ User list
{% if user.forward %}enabled{% endif %} |
{% if user.reply_subject %}enabled{% endif %} |
{{ user.quota_bytes | filesizeformat }} |
+ {{ user.comment or '' }} |
{{ user.created_at }} |
{{ user.updated_at or '' }} |
diff --git a/admin/freeposte/views/aliases.py b/admin/freeposte/views/aliases.py
index ddd6f635..b4fa1c70 100644
--- a/admin/freeposte/views/aliases.py
+++ b/admin/freeposte/views/aliases.py
@@ -26,10 +26,9 @@ def alias_create(domain_name):
flask.flash('Address %s is already used' % address, 'error')
break
else:
- alias = models.Alias(
- localpart=form.localpart.data, domain=domain,
- destination=form.destination.data
- )
+ alias = models.Alias(localpart=form.localpart.data, domain=domain)
+ alias.destination = form.destination.data
+ alias.comment = form.comment.data
db.session.add(alias)
db.session.commit()
flask.flash('Alias %s created' % alias)
@@ -46,6 +45,7 @@ def alias_edit(alias):
form = forms.AliasEditForm()
if form.validate_on_submit():
alias.destination = form.destination.data
+ alias.comment = form.comment.data
db.session.add(alias)
db.session.commit()
flask.flash('Alias %s updated' % alias)
diff --git a/admin/freeposte/views/domains.py b/admin/freeposte/views/domains.py
index d487907f..e2981400 100644
--- a/admin/freeposte/views/domains.py
+++ b/admin/freeposte/views/domains.py
@@ -21,6 +21,7 @@ def domain_create():
flask.flash('Domain %s is already used' % form.name.data, 'error')
else:
domain = models.Domain(name=form.name.data)
+ domain.comment = form.comment.data
db.session.add(domain)
db.session.commit()
flask.flash('Domain %s created' % domain)
@@ -37,6 +38,7 @@ def domain_edit(domain_name):
if form.validate_on_submit():
domain.max_users = form.max_users.data
domain.max_aliases = form.max_aliases.data
+ domain.comment = form.comment.data
db.session.add(domain)
db.session.commit()
flask.flash('Domain %s saved' % domain)
diff --git a/admin/freeposte/views/users.py b/admin/freeposte/views/users.py
index 64e251f0..e54bdb43 100644
--- a/admin/freeposte/views/users.py
+++ b/admin/freeposte/views/users.py
@@ -27,6 +27,7 @@ def user_create(domain_name):
break
else:
user = models.User(localpart=form.localpart.data, domain=domain)
+ user.comment = form.comment.data
user.set_password(form.pw.data)
db.session.add(user)
db.session.commit()
@@ -44,6 +45,7 @@ def user_edit(user_email):
form = forms.UserEditForm(obj=user)
if form.validate_on_submit():
user.quota_bytes = form.quota_bytes.data
+ user.comment = form.comment.data
db.session.add(user)
db.session.commit()
flask.flash('User %s updated' % user)