Переглянути джерело

added secondary titles to recent added
new api endpoints: ping - version
renamed api ping to ping/list

causefx 7 роки тому
батько
коміт
e436d0664c
3 змінених файлів з 40 додано та 4 видалено
  1. 11 1
      api/functions/homepage-connect-functions.php
  2. 27 1
      api/index.php
  3. 2 2
      js/functions.js

+ 11 - 1
api/functions/homepage-connect-functions.php

@@ -100,6 +100,7 @@ function resolveEmbyItem($itemDetails)
 		case 'Series':
 			$embyItem['type'] = 'tv';
 			$embyItem['title'] = $item['Name'];
+			$embyItem['secondaryTitle'] = '';
 			$embyItem['summary'] = '';
 			$embyItem['ratingKey'] = $item['Id'];
 			$embyItem['thumb'] = $item['Id'];
@@ -112,6 +113,7 @@ function resolveEmbyItem($itemDetails)
 		case 'Episode':
 			$embyItem['type'] = 'tv';
 			$embyItem['title'] = $item['SeriesName'];
+			$embyItem['secondaryTitle'] = '';
 			$embyItem['summary'] = '';
 			$embyItem['ratingKey'] = $item['Id'];
 			$embyItem['thumb'] = (isset($item['SeriesId']) ? $item['SeriesId'] : $item['Id']);
@@ -127,6 +129,7 @@ function resolveEmbyItem($itemDetails)
 		case 'Audio':
 			$embyItem['type'] = 'music';
 			$embyItem['title'] = $item['Name'];
+			$embyItem['secondaryTitle'] = '';
 			$embyItem['summary'] = '';
 			$embyItem['ratingKey'] = $item['Id'];
 			$embyItem['thumb'] = $item['Id'];
@@ -141,6 +144,7 @@ function resolveEmbyItem($itemDetails)
 		case 'Movie':
 			$embyItem['type'] = 'movie';
 			$embyItem['title'] = $item['Name'];
+			$embyItem['secondaryTitle'] = '';
 			$embyItem['summary'] = '';
 			$embyItem['ratingKey'] = $item['Id'];
 			$embyItem['thumb'] = $item['Id'];
@@ -155,6 +159,7 @@ function resolveEmbyItem($itemDetails)
 		case 'Video':
 			$embyItem['type'] = 'video';
 			$embyItem['title'] = $item['Name'];
+			$embyItem['secondaryTitle'] = '';
 			$embyItem['summary'] = '';
 			$embyItem['ratingKey'] = $item['Id'];
 			$embyItem['thumb'] = $item['Id'];
@@ -309,6 +314,7 @@ function resolvePlexItem($item)
 		case 'season':
 			$plexItem['type'] = 'tv';
 			$plexItem['title'] = (string)$item['parentTitle'];
+			$plexItem['secondaryTitle'] = (string)$item['title'];
 			$plexItem['summary'] = (string)$item['parentSummary'];
 			$plexItem['ratingKey'] = (string)$item['parentRatingKey'];
 			$plexItem['thumb'] = (string)$item['thumb'];
@@ -320,6 +326,7 @@ function resolvePlexItem($item)
 		case 'episode':
 			$plexItem['type'] = 'tv';
 			$plexItem['title'] = (string)$item['grandparentTitle'];
+			$plexItem['secondaryTitle'] = (string)$item['parentTitle'];
 			$plexItem['summary'] = (string)$item['title'];
 			$plexItem['ratingKey'] = (string)$item['parentRatingKey'];
 			$plexItem['thumb'] = ($item['parentThumb'] ? (string)$item['parentThumb'] : (string)$item['grandparentThumb']);
@@ -334,6 +341,7 @@ function resolvePlexItem($item)
 			$useImage = (isset($item['live']) ? "plugins/images/cache/livetv.png" : null);
 			$plexItem['type'] = 'clip';
 			$plexItem['title'] = (isset($item['live']) ? 'Live TV' : (string)$item['title']);
+			$plexItem['secondaryTitle'] = '';
 			$plexItem['summary'] = (string)$item['summary'];
 			$plexItem['ratingKey'] = (string)$item['parentRatingKey'];
 			$plexItem['thumb'] = (string)$item['thumb'];
@@ -346,7 +354,8 @@ function resolvePlexItem($item)
 		case 'album':
 		case 'track':
 			$plexItem['type'] = 'music';
-			$plexItem['title'] = (string)$item['parentTitle'] . ' - ' . (string)$item['title'];
+			$plexItem['title'] = (string)$item['parentTitle'];
+			$plexItem['secondaryTitle'] = (string)$item['title'];
 			$plexItem['summary'] = (string)$item['title'];
 			$plexItem['ratingKey'] = (string)$item['parentRatingKey'];
 			$plexItem['thumb'] = (string)$item['thumb'];
@@ -360,6 +369,7 @@ function resolvePlexItem($item)
 		default:
 			$plexItem['type'] = 'movie';
 			$plexItem['title'] = (string)$item['title'];
+			$plexItem['secondaryTitle'] = (string)$item['year'];
 			$plexItem['summary'] = (string)$item['summary'];
 			$plexItem['ratingKey'] = (string)$item['ratingKey'];
 			$plexItem['thumb'] = (string)$item['thumb'];

+ 27 - 1
api/index.php

@@ -345,7 +345,7 @@ switch ($function) {
 				break;
 		}
 		break;
-	case 'v1_ping':
+	case 'v1_ping_list':
 		switch ($method) {
 			case 'POST':
 				$result['status'] = 'success';
@@ -1229,6 +1229,32 @@ switch ($function) {
 				break;
 		}
 		break;
+	case 'v1_version':
+		switch ($method) {
+			case 'GET':
+				$result['status'] = 'success';
+				$result['statusText'] = 'success';
+				$result['data'] = $GLOBALS['installedVersion'];
+				break;
+			default:
+				$result['status'] = 'error';
+				$result['statusText'] = 'The function requested is not defined for method: ' . $method;
+				break;
+		}
+		break;
+	case 'v1_ping':
+		switch ($method) {
+			case 'GET':
+				$result['status'] = 'success';
+				$result['statusText'] = 'success';
+				$result['data'] = 'pong';
+				break;
+			default:
+				$result['status'] = 'error';
+				$result['statusText'] = 'The function requested is not defined for method: ' . $method;
+				break;
+		}
+		break;
 	default:
 		//No Function Available
 		$result['status'] = 'error';

+ 2 - 2
js/functions.js

@@ -3324,7 +3324,7 @@ function buildRecentItem(array, type, extra=null){
 				<div class="hover-homepage-item">
 					<a class="btn default refreshImage" data-type="recent-item" data-image="`+v.originalImage+`" href="javascript:void(0);"><i class="mdi mdi-refresh mdi-24px"></i></a>
 				</div>
-				<span class="elip recent-title">`+v.title+`</span>
+				<span class="elip recent-title">`+v.title+`<br/>`+v.secondaryTitle+`</span>
 				<div id="`+v.uid+`-metadata-div" class="white-popup mfp-with-anim mfp-hide">
 			        <div class="col-md-8 col-md-offset-2 `+v.uid+`-metadata-info"></div>
 			    </div>
@@ -4950,7 +4950,7 @@ function getPingList(arrayItems){
     return (pingList.length > 0) ? pingUpdate(pingList,timeout): false;
 }
 function pingUpdate(pingList,timeout){
-    organizrAPI('POST','api/?v1/ping',{pingList:pingList}).success(function(data) {
+    organizrAPI('POST','api/?v1/ping/list',{pingList:pingList}).success(function(data) {
         var response = JSON.parse(data);
         if (response.data !== false || response.data !== null) {
             $('.menu-category-ping').each(function( index ) {