Просмотр исходного кода

Tweak release template variables

Jeremy Stretch 6 лет назад
Родитель
Сommit
356de985d2
2 измененных файлов с 10 добавлено и 10 удалено
  1. 6 7
      netbox/netbox/views.py
  2. 4 3
      netbox/templates/home.html

+ 6 - 7
netbox/netbox/views.py

@@ -243,17 +243,17 @@ class HomeView(View):
 
         }
 
+        # Check whether a new release is available. (Only for staff/superusers.)
         new_release = None
-        new_release_url = None
-
         if request.user.is_staff or request.user.is_superuser:
-            # Only check for new releases if the current user might be able to do anything about it
-            latest_release, github_url = get_latest_release()
+            latest_release, release_url = get_latest_release()
             if isinstance(latest_release, version.Version):
                 current_version = version.parse(settings.VERSION)
                 if latest_release > current_version:
-                    new_release = str(latest_release)
-                    new_release_url = github_url
+                    new_release = {
+                        'version': str(latest_release),
+                        'url': release_url,
+                    }
 
         return render(request, self.template_name, {
             'search_form': SearchForm(),
@@ -261,7 +261,6 @@ class HomeView(View):
             'report_results': ReportResult.objects.order_by('-created')[:10],
             'changelog': ObjectChange.objects.prefetch_related('user', 'changed_object_type')[:15],
             'new_release': new_release,
-            'new_release_url': new_release_url,
         })
 
 

+ 4 - 3
netbox/templates/home.html

@@ -3,13 +3,14 @@
 
 {% block header %}
     {{ block.super }}
-    {% if new_release %}{% if request.user.is_staff or request.user.is_superuser %}
+    {% if new_release %}
+        {# new_release is set only if the current user is a superuser or staff member #}
         <div class="alert alert-info text-center" role="alert">
             <i class="fa fa-info-circle"></i>
-            A new release is available: <a href="{{ new_release_url }}">NetBox v{{ new_release }}</a> |
+            A new release is available: <a href="{{ new_release.url }}">NetBox v{{ new_release.version }}</a> |
             <a href="https://netbox.readthedocs.io/en/stable/installation/upgrading/">Upgrade instructions</a>
         </div>
-    {% endif %}{% endif %}
+    {% endif %}
 {% endblock %}