Procházet zdrojové kódy

Fix password bug that overwrites on save
Added default message on import user if plex not setup

causefx před 7 roky
rodič
revize
386ebbd2c3

+ 22 - 0
api/functions/normal-functions.php

@@ -168,6 +168,28 @@ function randString($length = 10, $chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
 	return $tmp;
 }
 
+function isEncrypted($password)
+{
+	switch (strlen($password)) {
+		case '24':
+			return (strpos($password, '==') !== false) ? true : false;
+			break;
+		case '44':
+			return (substr($password, -1, 1) == '=') ? true : false;
+			break;
+		case '64':
+			return true;
+		case '88':
+			return (strpos($password, '==') !== false) ? true : false;
+			break;
+		case '108':
+			return (substr($password, -1, 1) == '=') ? true : false;
+			break;
+		default:
+			return false;
+	}
+}
+
 function encrypt($password, $key = null)
 {
 	$key = (isset($GLOBALS['organizrHash'])) ? $GLOBALS['organizrHash'] : $key;

+ 8 - 2
api/functions/organizr-functions.php

@@ -1151,7 +1151,7 @@ function updateConfigMultipleForm($array)
 		}
 		// Hash
 		if ($v['type'] == 'password') {
-			if (strpos($v['value'], '==') !== false) {
+			if (isEncrypted($v['value'])) {
 				$v['value'] = $v['value'];
 			} else {
 				$v['value'] = encrypt($v['value']);
@@ -1855,9 +1855,15 @@ function guestHash($start, $end)
 
 function importUserButtons()
 {
+	$emptyButtons = '
+		<div class="col-md-12">
+            <div class="white-box bg-org">
+                <h3 class="box-title m-0" lang="en">Currently User import is available for Plex only.</h3> </div>
+        </div>
+	';
 	$buttons = '';
 	if (!empty($GLOBALS['plexToken'])) {
 		$buttons .= '<button class="btn bg-plex text-muted waves-effect waves-light importUsersButton" onclick="importUsers(\'plex\')" type="button"><span class="btn-label"><i class="mdi mdi-plex"></i></span><span lang="en">Import Plex Users</span></button>';
 	}
-	return $buttons;
+	return ($buttons !== '') ? $buttons : $emptyButtons;
 }

+ 1 - 0
js/functions.js

@@ -3914,6 +3914,7 @@ function ombiActions(id,action,type){
 	//console.log(id,action,type);
 	var msg = (activeInfo.user.groupID <= 1) ? '<a href="https://github.com/tidusjar/Ombi/issues/2176" target="_blank">Not Org Fault - Ask Ombi</a>' : 'Connection Error to Request Server';
 	ajaxloader('.preloader-'+id,'in');
+    ajaxloader('.mfp-content .white-popup .col-md-8 .white-box .user-bg','in');
 	organizrAPI('POST','api/?v1/ombi',{id:id, action:action, type:type}).success(function(data) {
 		var response = JSON.parse(data);
 		console.log(response.data);