diff --git a/src/App.vue b/src/App.vue
index b4b78ea0..d0f06f24 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -111,7 +111,7 @@ watchEffect(() => {
     <v-main>
       <router-view />
     </v-main>
-    <AddPanel />
+    <AddPanel v-if="authStore.isAuthenticated" />
     <DnDZone />
   </v-app>
 </template>
diff --git a/src/pages/MagnetHandler.vue b/src/pages/MagnetHandler.vue
index 8e4e6a03..d47455e8 100644
--- a/src/pages/MagnetHandler.vue
+++ b/src/pages/MagnetHandler.vue
@@ -6,14 +6,15 @@ import { useRoute, useRouter } from 'vue-router'
 
 const route = useRoute()
 const router = useRouter()
+const addTorrentStore = useAddTorrentStore()
+const dialogStore = useDialogStore()
 
 onBeforeMount(async () => {
   const magnetLink = decodeURIComponent(route.params.url as string)
   if (magnetLink.startsWith('magnet:')) {
-    const addTorrentStore = useAddTorrentStore()
     addTorrentStore.isFirstInit = false
     addTorrentStore.pushTorrentToQueue(magnetLink)
-    useDialogStore().createDialog(AddTorrentDialog, {})
+    dialogStore.createDialog(AddTorrentDialog, {})
   }
   await router.push({ name: 'dashboard' })
 })
diff --git a/src/pages/index.ts b/src/pages/index.ts
index 489980aa..abd2e9e5 100644
--- a/src/pages/index.ts
+++ b/src/pages/index.ts
@@ -34,10 +34,7 @@ export const routes: RouteRecordRaw[] = [
   {
     name: 'magnetHandler',
     path: '/magnet/:url',
-    component: () => import('./MagnetHandler.vue'),
-    meta: {
-      public: true
-    }
+    component: () => import('./MagnetHandler.vue')
   },
   {
     name: 'login',