Explorar o código

update plex token grabber to oauth

CauseFX %!s(int64=4) %!d(string=hai) anos
pai
achega
5db7f6ef04
Modificáronse 4 ficheiros con 19 adicións e 13 borrados
  1. 2 2
      api/classes/organizr.class.php
  2. 1 1
      api/homepage/plex.php
  3. 1 1
      api/plugins/invites/plugin.php
  4. 15 9
      js/functions.js

+ 2 - 2
api/classes/organizr.class.php

@@ -2269,7 +2269,7 @@ class Organizr
 					'class' => 'getPlexTokenAuth plexAuth switchAuth',
 					'icon' => 'fa fa-ticket',
 					'text' => 'Retrieve',
-					'attr' => 'onclick="showPlexTokenForm(\'#settings-main-form [name=plexToken]\')"'
+					'attr' => 'onclick="PlexOAuth(oAuthSuccess,oAuthError, null, \'#settings-main-form [name=plexToken]\')"'
 				),
 				array(
 					'type' => 'password-alt',
@@ -2858,7 +2858,7 @@ class Organizr
 					'label' => 'Get Plex Token',
 					'icon' => 'fa fa-ticket',
 					'text' => 'Retrieve',
-					'attr' => 'onclick="showPlexTokenForm(\'#sso-form [name=plexToken]\')"'
+					'attr' => 'onclick="PlexOAuth(oAuthSuccess,oAuthError, null, \'#sso-form [name=plexToken]\')"'
 				],
 				[
 					'type' => 'password-alt',

+ 1 - 1
api/homepage/plex.php

@@ -36,7 +36,7 @@ trait PlexHomepageItem
 					$this->settingsOption('disable-cert-check', 'plexDisableCertCheck'),
 					$this->settingsOption('use-custom-certificate', 'plexUseCustomCertificate'),
 					$this->settingsOption('token', 'plexToken'),
-					$this->settingsOption('button', '', ['label' => 'Get Plex Token', 'icon' => 'fa fa-ticket', 'text' => 'Retrieve', 'attr' => 'onclick="showPlexTokenForm(\'#homepage-Plex-form [name=plexToken]\')"']),
+					$this->settingsOption('button', '', ['label' => 'Get Plex Token', 'icon' => 'fa fa-ticket', 'text' => 'Retrieve', 'attr' => 'onclick="PlexOAuth(oAuthSuccess,oAuthError, null, \'#homepage-Plex-form [name=plexToken]\')"']),
 					$this->settingsOption('password-alt', 'plexID', ['label' => 'Plex Machine']),
 					$this->settingsOption('button', '', ['label' => 'Get Plex Machine', 'icon' => 'fa fa-id-badge', 'text' => 'Retrieve', 'attr' => 'onclick="showPlexMachineForm(\'#homepage-Plex-form [name=plexID]\')"']),
 				],

+ 1 - 1
api/plugins/invites/plugin.php

@@ -271,7 +271,7 @@ class Invites extends Organizr
 					'label' => 'Get Plex Token',
 					'icon' => 'fa fa-ticket',
 					'text' => 'Retrieve',
-					'attr' => 'onclick="showPlexTokenForm(\'#INVITES-settings-items [name=plexToken]\')"'
+					'attr' => 'onclick="PlexOAuth(oAuthSuccess,oAuthError, null, \'#INVITES-settings-items [name=plexToken]\')"'
 				),
 				array(
 					'type' => 'password-alt',

+ 15 - 9
js/functions.js

@@ -9322,7 +9322,7 @@ getPlexOAuthPin = function () {
     return deferred;
 };
 var polling = null;
-function PlexOAuth(success, error, pre) {
+function PlexOAuth(success, error, pre, id = null) {
     if (typeof pre === "function") {
         pre()
     }
@@ -9357,7 +9357,7 @@ function PlexOAuth(success, error, pre) {
                     if (data.authToken){
                         closePlexOAuthWindow();
                         if (typeof success === "function") {
-                            success('plex',data.authToken)
+                            success('plex',data.authToken, id)
                         }
                     }
                 },
@@ -9396,15 +9396,21 @@ function encodeData(data) {
         return [key, data[key]].map(encodeURIComponent).join("=");
     }).join("&");
 }
-function oAuthSuccess(type,token){
+function oAuthSuccess(type,token, id = null){
     switch(type) {
         case 'plex':
-            $('#oAuth-Input').val(token);
-            $('#oAuthType-Input').val(type);
-            $('#login-username-Input').addClass('hidden');
-            $('#login-password-Input').addClass('hidden');
-            $('#oAuth-div').removeClass('hidden');
-            $('.login-button').first().trigger('click');
+        	if(id){
+		        $(id).val(token);
+		        $(id).change();
+		        messageSingle('',window.lang.translate('Grabbed Token - Please Save'),activeInfo.settings.notifications.position,'#FFF','success','5000');
+	        }else{
+		        $('#oAuth-Input').val(token);
+		        $('#oAuthType-Input').val(type);
+		        $('#login-username-Input').addClass('hidden');
+		        $('#login-password-Input').addClass('hidden');
+		        $('#oAuth-div').removeClass('hidden');
+		        $('.login-button').first().trigger('click');
+	        }
             break;
         default:
             break;