Set 'admins' as the default tab when needed.

fix #405
This commit is contained in:
Antoine Nguyen
2013-04-23 21:13:41 +02:00
parent c9d3e0868b
commit 66d684ed7e
4 changed files with 24 additions and 11 deletions
+2 -1
View File
@@ -125,7 +125,8 @@ class DomainForm(TabForms):
if "instances" in kwargs:
cbargs += [kwargs["instances"]["general"]]
self.forms += events.raiseQueryEvent("ExtraDomainForm", *cbargs)
if not self.forms:
self.active_id = "admins"
super(DomainForm, self).__init__(*args, **kwargs)
def save(self, user):
+5
View File
@@ -719,6 +719,11 @@ class Mailbox(DatesAware):
raise AdminError(_("Failed to remove mailbox: %s" % output))
def set_quota(self, value, override_domain=False):
"""Set or update quota's value for this mailbox.
:param integer value: the quota's value
:param bool override_domain: allow to override domain's limit or not
"""
if value is None:
self.quota = self.domain.quota
elif int(value) > self.domain.quota and not override_domain:
@@ -1,18 +1,24 @@
{% extends "common/tabforms.html" %}{% load i18n libextras admin_extras %}
{% block extratabs %}
<li><a href="#admins" data-toggle="tab">{% trans "Administrators" %}</a></li>
<li><a href="#misc" data-toggle="tab">{% trans "Miscellaneous" %}</a></li>
<li class="{% if tabs.active_id == 'admins' %}active{% endif %}">
<a href="#admins" data-toggle="tab">{% trans "Administrators" %}</a>
</li>
<li class="{% if tabs.active_id == 'misc' %}active{% endif %}">
<a href="#misc" data-toggle="tab">{% trans "Miscellaneous" %}</a>
</li>
{% endblock %}
{% block extratabs_content %}
<div class="tab-pane" id="admins">{% if domadmins %}
<div class="tab-pane{% if tabs.active_id == 'admins' %} active{% endif %}" id="admins">{% if domadmins %}
<table id="domadmins" class="table table-condensed">
<tr><th>{% trans "Username" %}</th><th>{% trans "Name" %}</th><th></th></tr>
{% for da in domadmins %}<tr>
<td>{{ da.username }}</td><td>{{ da.fullname }}</td><td name="actions">{% domadmin_actions da.id domain.id %}</td>
<td>{{ da.username }}</td>
<td>{{ da.fullname }}</td>
<td name="actions">{% if perms.admin.change_domain%}{% domadmin_actions da.id domain.id %}{% endif %}</td>
</tr>{% endfor %}
</table>{% else %}<div class="alert alert-info">{% trans "No domain administrator defined" %}</div>{% endif %}
</div>
<div class="tab-pane" id="misc">
<div class="tab-pane{% if tabs.active_id == 'misc' %} active{% endif %}" id="misc">
<div class="row"><span class="title">{% trans "Creation date" %}</span><span>{{ domain.creation }}</span></div>
<div class="row"><span class="title">{% trans "Last modification date" %}</span><span>{{ domain.last_modification }}</span></div>
<div class="row"><span class="title">{% trans "Domain aliases" %}</span><span>{{ domain.domainalias_count }}</span></div>
+6 -5
View File
@@ -85,22 +85,23 @@ class TabForms(object):
for fd in self.forms:
args = []
kwargs = {}
if fd.has_key("new_args"):
if "new_args" in fd:
args += fd["new_args"]
if data:
if data is not None:
args.append(data)
if instances:
if instances is not None:
if hasattr(self, "check_%s" % fd["id"]):
if not getattr(self, "check_%s" % fd["id"])(instances[fd["id"]]):
to_remove += [fd]
continue
kwargs["instance"] = instances[fd["id"]]
if classes and classes.has_key(fd["id"]):
if classes is not None and fd["id"] in classes:
fd["instance"] = classes[fd["id"]](*args, **kwargs)
else:
fd["instance"] = fd["cls"](*args, **kwargs)
map(lambda fd: self.forms.remove(fd), to_remove)
self.active_id = self.forms[0]["id"]
if self.forms:
self.active_id = self.forms[0]["id"]
def _before_is_valid(self, form):
return True