diff options
-rw-r--r-- | rrs/models.py | 6 | ||||
-rw-r--r-- | rrs/views.py | 2 | ||||
-rw-r--r-- | templates/rrs/base_toplevel.html | 17 |
3 files changed, 25 insertions, 0 deletions
diff --git a/rrs/models.py b/rrs/models.py index c7d8ea01e5..fcf0876e18 100644 --- a/rrs/models.py +++ b/rrs/models.py @@ -27,6 +27,9 @@ class MaintenancePlan(models.Model): email_to = models.CharField(max_length=255, blank=True, help_text='Recipient for automated emails (separate multiple addresses with ;)') admin = models.ForeignKey(User, blank=True, null=True, help_text='Plan administrator') + def get_default_release(self): + return self.release_set.last() + def __str__(self): return '%s' % (self.name) @@ -43,6 +46,9 @@ class Release(models.Model): start_date = models.DateField(db_index=True) end_date = models.DateField(db_index=True) + def get_default_milestone(self): + return self.milestone_set.last() + @staticmethod def get_by_date(maintplan, date): release_qry = Release.objects.filter(plan=maintplan, diff --git a/rrs/views.py b/rrs/views.py index 8711fd323a..d11046c426 100644 --- a/rrs/views.py +++ b/rrs/views.py @@ -508,6 +508,7 @@ class RecipeListView(ListView): context['this_url_name'] = resolve(self.request.path_info).url_name + context['all_maintplans'] = MaintenancePlan.objects.all() context['maintplan_name'] = self.maintplan_name maintplan = get_object_or_404(MaintenancePlan, name=self.maintplan_name) context['release_name'] = self.release_name @@ -793,6 +794,7 @@ class MaintainerListView(ListView): context['this_url_name'] = resolve(self.request.path_info).url_name + context['all_maintplans'] = MaintenancePlan.objects.all() context['maintplan_name'] = self.maintplan_name maintplan = get_object_or_404(MaintenancePlan, name=self.maintplan_name) context['release_name'] = self.release_name diff --git a/templates/rrs/base_toplevel.html b/templates/rrs/base_toplevel.html index ee6790864c..212aaabd1d 100644 --- a/templates/rrs/base_toplevel.html +++ b/templates/rrs/base_toplevel.html @@ -14,6 +14,23 @@ {% block topfunctions %} <ul class="nav"> <li class="divider-vertical" style="display; list-item;"/> +{% block maintplan_selector %} + <li class="dropdown"> + <a href="#" class="dropdown-toggle" data-toggle="dropdown"> + Maintenance Plan: <b>{{ maintplan_name }}</b> + <b class="caret"></b> + </a> + <ul class="dropdown-menu"> + {% for plan in all_maintplans %} + <li><a href="{% url this_url_name plan plan.get_default_release.name plan.get_default_release.get_default_milestone.name %}{{ extra_url_param }}"> + {% if plan.name = maintplan_name %}<b>{% endif %} + {{ plan.name }} + {% if plan.name = maintplan_name %}</b>{% endif %} + </a></li> + {% endfor %} + </ul> + </li> +{% endblock %} {% block release_selector %} <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> |