From e34a90314f9032fcf9eef0826b7e9ca53d3d81a3 Mon Sep 17 00:00:00 2001
From: Eliot Berriot <contact@eliotberriot.com>
Date: Mon, 29 Apr 2019 15:26:54 +0200
Subject: [PATCH] Fixed error when accessing profile for anonymous users

---
 front/src/components/library/AlbumBase.vue      | 2 +-
 front/src/components/library/ArtistBase.vue     | 2 +-
 front/src/components/library/TrackBase.vue      | 2 +-
 front/src/views/admin/library/AlbumDetail.vue   | 2 +-
 front/src/views/admin/library/ArtistDetail.vue  | 2 +-
 front/src/views/admin/library/LibraryDetail.vue | 4 ++--
 front/src/views/admin/library/TrackDetail.vue   | 2 +-
 front/src/views/admin/library/UploadDetail.vue  | 4 ++--
 8 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/front/src/components/library/AlbumBase.vue b/front/src/components/library/AlbumBase.vue
index 3ff07b10af..1f89bef889 100644
--- a/front/src/components/library/AlbumBase.vue
+++ b/front/src/components/library/AlbumBase.vue
@@ -74,7 +74,7 @@
                     <translate translate-context="Content/Moderation/Link">Open in moderation interface</translate>
                   </router-link>
                   <a
-                    v-if="$store.state.auth.profile.is_superuser"
+                    v-if="$store.state.auth.profile && $store.state.auth.profile.is_superuser"
                     class="basic item"
                     :href="$store.getters['instance/absoluteUrl'](`/api/admin/music/album/${object.id}`)"
                     target="_blank" rel="noopener noreferrer">
diff --git a/front/src/components/library/ArtistBase.vue b/front/src/components/library/ArtistBase.vue
index 71f3abd5ca..5da7370bac 100644
--- a/front/src/components/library/ArtistBase.vue
+++ b/front/src/components/library/ArtistBase.vue
@@ -85,7 +85,7 @@
                     <translate translate-context="Content/Moderation/Link">Open in moderation interface</translate>
                   </router-link>
                   <a
-                    v-if="$store.state.auth.profile.is_superuser"
+                    v-if="$store.state.auth.profile && $store.state.auth.profile.is_superuser"
                     class="basic item"
                     :href="$store.getters['instance/absoluteUrl'](`/api/admin/music/artist/${object.id}`)"
                     target="_blank" rel="noopener noreferrer">
diff --git a/front/src/components/library/TrackBase.vue b/front/src/components/library/TrackBase.vue
index 6df2f7aa0c..639c8f51b8 100644
--- a/front/src/components/library/TrackBase.vue
+++ b/front/src/components/library/TrackBase.vue
@@ -93,7 +93,7 @@
                     <translate translate-context="Content/Moderation/Link">Open in moderation interface</translate>
                   </router-link>
                   <a
-                    v-if="$store.state.auth.profile.is_superuser"
+                    v-if="$store.state.auth.profile && $store.state.auth.profile.is_superuser"
                     class="basic item"
                     :href="$store.getters['instance/absoluteUrl'](`/api/admin/music/track/${track.id}`)"
                     target="_blank" rel="noopener noreferrer">
diff --git a/front/src/views/admin/library/AlbumDetail.vue b/front/src/views/admin/library/AlbumDetail.vue
index 8de907a72b..b89afb945d 100644
--- a/front/src/views/admin/library/AlbumDetail.vue
+++ b/front/src/views/admin/library/AlbumDetail.vue
@@ -35,7 +35,7 @@
                     <i class="dropdown icon"></i>
                     <div class="menu">
                       <a
-                        v-if="$store.state.auth.profile.is_superuser"
+                        v-if="$store.state.auth.profile && $store.state.auth.profile.is_superuser"
                         class="basic item"
                         :href="$store.getters['instance/absoluteUrl'](`/api/admin/music/album/${object.id}`)"
                         target="_blank" rel="noopener noreferrer">
diff --git a/front/src/views/admin/library/ArtistDetail.vue b/front/src/views/admin/library/ArtistDetail.vue
index 91b3542b2d..0c4175bae4 100644
--- a/front/src/views/admin/library/ArtistDetail.vue
+++ b/front/src/views/admin/library/ArtistDetail.vue
@@ -34,7 +34,7 @@
                     <i class="dropdown icon"></i>
                     <div class="menu">
                       <a
-                        v-if="$store.state.auth.profile.is_superuser"
+                        v-if="$store.state.auth.profile && $store.state.auth.profile.is_superuser"
                         class="basic item"
                         :href="$store.getters['instance/absoluteUrl'](`/api/admin/music/artist/${object.id}`)"
                         target="_blank" rel="noopener noreferrer">
diff --git a/front/src/views/admin/library/LibraryDetail.vue b/front/src/views/admin/library/LibraryDetail.vue
index a4df048da6..beec7e2b40 100644
--- a/front/src/views/admin/library/LibraryDetail.vue
+++ b/front/src/views/admin/library/LibraryDetail.vue
@@ -27,7 +27,7 @@
 
                 <div class="ui icon buttons">
                   <a
-                    v-if="$store.state.auth.profile.is_superuser"
+                    v-if="$store.state.auth.profile && $store.state.auth.profile.is_superuser"
                     class="ui labeled icon button"
                     :href="$store.getters['instance/absoluteUrl'](`/api/admin/music/library/${object.id}`)"
                     target="_blank" rel="noopener noreferrer">
@@ -38,7 +38,7 @@
                     <i class="dropdown icon"></i>
                     <div class="menu">
                       <a
-                        v-if="$store.state.auth.profile.is_superuser"
+                        v-if="$store.state.auth.profile && $store.state.auth.profile.is_superuser"
                         class="basic item"
                         :href="$store.getters['instance/absoluteUrl'](`/api/admin/music/library/${object.id}`)"
                         target="_blank" rel="noopener noreferrer">
diff --git a/front/src/views/admin/library/TrackDetail.vue b/front/src/views/admin/library/TrackDetail.vue
index 3256d0d639..29cd29810e 100644
--- a/front/src/views/admin/library/TrackDetail.vue
+++ b/front/src/views/admin/library/TrackDetail.vue
@@ -34,7 +34,7 @@
                     <i class="dropdown icon"></i>
                     <div class="menu">
                       <a
-                        v-if="$store.state.auth.profile.is_superuser"
+                        v-if="$store.state.auth.profile && $store.state.auth.profile.is_superuser"
                         class="basic item"
                         :href="$store.getters['instance/absoluteUrl'](`/api/admin/music/track/${object.id}`)"
                         target="_blank" rel="noopener noreferrer">
diff --git a/front/src/views/admin/library/UploadDetail.vue b/front/src/views/admin/library/UploadDetail.vue
index 604d0af304..4dbd83793c 100644
--- a/front/src/views/admin/library/UploadDetail.vue
+++ b/front/src/views/admin/library/UploadDetail.vue
@@ -28,7 +28,7 @@
 
                 <div class="ui icon buttons">
                   <a
-                    v-if="$store.state.auth.profile.is_superuser"
+                    v-if="$store.state.auth.profile && $store.state.auth.profile.is_superuser"
                     class="ui labeled icon button"
                     :href="$store.getters['instance/absoluteUrl'](`/api/admin/music/upload/${object.id}`)"
                     target="_blank" rel="noopener noreferrer">
@@ -39,7 +39,7 @@
                     <i class="dropdown icon"></i>
                     <div class="menu">
                       <a
-                        v-if="$store.state.auth.profile.is_superuser"
+                        v-if="$store.state.auth.profile && $store.state.auth.profile.is_superuser"
                         class="basic item"
                         :href="$store.getters['instance/absoluteUrl'](`/api/admin/music/upload/${object.id}`)"
                         target="_blank" rel="noopener noreferrer">
-- 
GitLab