Jelajahi Sumber

Fix User Watch Stats save button issue by using global config keys for permissions

- Updated userWatchStatsHomepagePermissions() to check global media server config keys (plexURL/plexToken, embyURL/embyToken, jellyfinURL/jellyfinToken) based on selected server
- This matches the pattern used by EmbyLiveTVTracker and ensures Organizr recognizes the required fields for enabling the save button
- Plugin still uses dedicated URL/token fields for functionality, but permissions now check global keys
- Resolves issue where save button wasn't appearing for User Watch Stats plugin
mgomon 9 bulan lalu
induk
melakukan
7106efdcd1
1 mengubah file dengan 30 tambahan dan 4 penghapusan
  1. 30 4
      api/homepage/userWatchStats.php

+ 30 - 4
api/homepage/userWatchStats.php

@@ -124,6 +124,32 @@ trait HomepageUserWatchStats
     }
     public function userWatchStatsHomepagePermissions($key = null)
     {
+        // Get the selected media server to determine which global config keys to check
+        $mediaServer = $this->config['homepageUserWatchStatsService'] ?? 'plex';
+        
+        // Determine the appropriate global config keys based on selected media server
+        $urlKey = '';
+        $tokenKey = '';
+        
+        switch (strtolower($mediaServer)) {
+            case 'plex':
+                $urlKey = 'plexURL';
+                $tokenKey = 'plexToken';
+                break;
+            case 'emby':
+                $urlKey = 'embyURL';
+                $tokenKey = 'embyToken';
+                break;
+            case 'jellyfin':
+                $urlKey = 'jellyfinURL';
+                $tokenKey = 'jellyfinToken';
+                break;
+            default:
+                $urlKey = 'plexURL';
+                $tokenKey = 'plexToken';
+                break;
+        }
+        
         $permissions = [
             'test' => [
                 'enabled' => [
@@ -133,8 +159,8 @@ trait HomepageUserWatchStats
                     'homepageUserWatchStatsAuth',
                 ],
                 'not_empty' => [
-                    'homepageUserWatchStatsURL',
-                    'homepageUserWatchStatsToken'
+                    $urlKey,
+                    $tokenKey
                 ]
             ],
             'main' => [
@@ -145,8 +171,8 @@ trait HomepageUserWatchStats
                     'homepageUserWatchStatsAuth'
                 ],
                 'not_empty' => [
-                    'homepageUserWatchStatsURL',
-                    'homepageUserWatchStatsToken'
+                    $urlKey,
+                    $tokenKey
                 ]
             ]
         ];